diff --git a/SDL/buchhaltung/usrCntlBH.Designer.vb b/SDL/buchhaltung/usrCntlBH.Designer.vb index a755f35d..fa11d670 100644 --- a/SDL/buchhaltung/usrCntlBH.Designer.vb +++ b/SDL/buchhaltung/usrCntlBH.Designer.vb @@ -154,10 +154,15 @@ Partial Class usrCntlBH Me.Button7 = New System.Windows.Forms.Button() Me.TabPage2 = New System.Windows.Forms.TabPage() Me.GroupBox14 = New System.Windows.Forms.GroupBox() - Me.txtJahr_FIBU = New VERAG_PROG_ALLGEMEIN.MyTextBox() - Me.Button18 = New System.Windows.Forms.Button() - Me.Button17 = New System.Windows.Forms.Button() - Me.Button16 = New System.Windows.Forms.Button() + Me.Label66 = New System.Windows.Forms.Label() + Me.txtLand = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.Label64 = New System.Windows.Forms.Label() + Me.txtKundeNrVon = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.txtKundeNrBis = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.Label65 = New System.Windows.Forms.Label() + Me.btn_ZV = New System.Windows.Forms.Button() + Me.btn_Laender = New System.Windows.Forms.Button() + Me.btn_Erloeskkonten = New System.Windows.Forms.Button() Me.Label62 = New System.Windows.Forms.Label() Me.GroupBox11 = New System.Windows.Forms.GroupBox() Me.Label57 = New System.Windows.Forms.Label() @@ -183,12 +188,8 @@ Partial Class usrCntlBH Me.txtZRvon = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.txtZRbis = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.Label51 = New System.Windows.Forms.Label() - Me.Label64 = New System.Windows.Forms.Label() - Me.txtKundeNrVon = New VERAG_PROG_ALLGEMEIN.MyTextBox() - Me.txtKundeNrBis = New VERAG_PROG_ALLGEMEIN.MyTextBox() - Me.Label65 = New System.Windows.Forms.Label() - Me.txtLand = New VERAG_PROG_ALLGEMEIN.MyTextBox() - Me.Label66 = New System.Windows.Forms.Label() + Me.txtJahr_FIBU = New VERAG_PROG_ALLGEMEIN.MyTextBox() + Me.Label63 = New System.Windows.Forms.Label() Me.pnl.SuspendLayout() Me.TabPage1.SuspendLayout() Me.GroupBox13.SuspendLayout() @@ -1942,83 +1943,157 @@ Partial Class usrCntlBH ' 'GroupBox14 ' + Me.GroupBox14.Controls.Add(Me.Label63) Me.GroupBox14.Controls.Add(Me.Label66) Me.GroupBox14.Controls.Add(Me.txtLand) Me.GroupBox14.Controls.Add(Me.Label64) Me.GroupBox14.Controls.Add(Me.txtKundeNrVon) Me.GroupBox14.Controls.Add(Me.txtKundeNrBis) Me.GroupBox14.Controls.Add(Me.Label65) - Me.GroupBox14.Controls.Add(Me.Button18) - Me.GroupBox14.Controls.Add(Me.Button17) - Me.GroupBox14.Controls.Add(Me.Button16) + Me.GroupBox14.Controls.Add(Me.btn_ZV) + Me.GroupBox14.Controls.Add(Me.btn_Laender) + Me.GroupBox14.Controls.Add(Me.btn_Erloeskkonten) Me.GroupBox14.Location = New System.Drawing.Point(20, 153) Me.GroupBox14.Name = "GroupBox14" Me.GroupBox14.Size = New System.Drawing.Size(841, 123) Me.GroupBox14.TabIndex = 38 Me.GroupBox14.TabStop = False ' - 'txtJahr_FIBU + 'Label66 ' - Me.txtJahr_FIBU._DateTimeOnly = False - Me.txtJahr_FIBU._numbersOnly = False - Me.txtJahr_FIBU._numbersOnlyKommastellen = "" - Me.txtJahr_FIBU._numbersOnlyTrennzeichen = True - Me.txtJahr_FIBU._Prozent = False - Me.txtJahr_FIBU._ShortDateNew = False - Me.txtJahr_FIBU._ShortDateOnly = False - Me.txtJahr_FIBU._TimeOnly = False - Me.txtJahr_FIBU._TimeOnly_Seconds = False - Me.txtJahr_FIBU._value = "0" - Me.txtJahr_FIBU._Waehrung = False - Me.txtJahr_FIBU._WaehrungZeichen = True - Me.txtJahr_FIBU.ForeColor = System.Drawing.Color.Black - Me.txtJahr_FIBU.Location = New System.Drawing.Point(175, 133) - Me.txtJahr_FIBU.MaxLineLength = -1 - Me.txtJahr_FIBU.MaxLines_Warning = "" - Me.txtJahr_FIBU.MaxLines_Warning_Label = Nothing - Me.txtJahr_FIBU.Name = "txtJahr_FIBU" - Me.txtJahr_FIBU.Size = New System.Drawing.Size(57, 20) - Me.txtJahr_FIBU.TabIndex = 76 - Me.txtJahr_FIBU.Text = "0" + Me.Label66.AutoSize = True + Me.Label66.Location = New System.Drawing.Point(153, 62) + Me.Label66.Name = "Label66" + Me.Label66.Size = New System.Drawing.Size(38, 13) + Me.Label66.TabIndex = 80 + Me.Label66.Text = "Land*:" ' - 'Button18 + 'txtLand ' - Me.Button18.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center - Me.Button18.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button18.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button18.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.Button18.Location = New System.Drawing.Point(23, 88) - Me.Button18.Name = "Button18" - Me.Button18.Size = New System.Drawing.Size(105, 29) - Me.Button18.TabIndex = 78 - Me.Button18.Text = "Zahlungsverhalten" - Me.Button18.UseVisualStyleBackColor = True + Me.txtLand._DateTimeOnly = False + Me.txtLand._numbersOnly = False + Me.txtLand._numbersOnlyKommastellen = "" + Me.txtLand._numbersOnlyTrennzeichen = False + Me.txtLand._Prozent = False + Me.txtLand._ShortDateNew = False + Me.txtLand._ShortDateOnly = False + Me.txtLand._TimeOnly = False + Me.txtLand._TimeOnly_Seconds = False + Me.txtLand._value = "" + Me.txtLand._Waehrung = False + Me.txtLand._WaehrungZeichen = False + Me.txtLand.ForeColor = System.Drawing.Color.Black + Me.txtLand.Location = New System.Drawing.Point(238, 59) + Me.txtLand.MaxLength = 10 + Me.txtLand.MaxLineLength = -1 + Me.txtLand.MaxLines_Warning = "" + Me.txtLand.MaxLines_Warning_Label = Nothing + Me.txtLand.Name = "txtLand" + Me.txtLand.Size = New System.Drawing.Size(70, 20) + Me.txtLand.TabIndex = 76 ' - 'Button17 + 'Label64 ' - Me.Button17.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center - Me.Button17.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button17.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button17.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.Button17.Location = New System.Drawing.Point(23, 54) - Me.Button17.Name = "Button17" - Me.Button17.Size = New System.Drawing.Size(105, 29) - Me.Button17.TabIndex = 77 - Me.Button17.Text = "Länder" - Me.Button17.UseVisualStyleBackColor = True + Me.Label64.AutoSize = True + Me.Label64.Location = New System.Drawing.Point(154, 96) + Me.Label64.Name = "Label64" + Me.Label64.Size = New System.Drawing.Size(86, 13) + Me.Label64.TabIndex = 76 + Me.Label64.Text = "Kunden-Nr von*:" ' - 'Button16 + 'txtKundeNrVon ' - Me.Button16.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center - Me.Button16.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button16.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button16.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.Button16.Location = New System.Drawing.Point(23, 19) - Me.Button16.Name = "Button16" - Me.Button16.Size = New System.Drawing.Size(105, 29) - Me.Button16.TabIndex = 76 - Me.Button16.Text = "Erlöskonten" - Me.Button16.UseVisualStyleBackColor = True + Me.txtKundeNrVon._DateTimeOnly = False + Me.txtKundeNrVon._numbersOnly = False + Me.txtKundeNrVon._numbersOnlyKommastellen = "" + Me.txtKundeNrVon._numbersOnlyTrennzeichen = True + Me.txtKundeNrVon._Prozent = False + Me.txtKundeNrVon._ShortDateNew = False + Me.txtKundeNrVon._ShortDateOnly = False + Me.txtKundeNrVon._TimeOnly = False + Me.txtKundeNrVon._TimeOnly_Seconds = False + Me.txtKundeNrVon._value = Nothing + Me.txtKundeNrVon._Waehrung = False + Me.txtKundeNrVon._WaehrungZeichen = True + Me.txtKundeNrVon.ForeColor = System.Drawing.Color.Black + Me.txtKundeNrVon.Location = New System.Drawing.Point(239, 93) + Me.txtKundeNrVon.MaxLineLength = -1 + Me.txtKundeNrVon.MaxLines_Warning = "" + Me.txtKundeNrVon.MaxLines_Warning_Label = Nothing + Me.txtKundeNrVon.Name = "txtKundeNrVon" + Me.txtKundeNrVon.Size = New System.Drawing.Size(70, 20) + Me.txtKundeNrVon.TabIndex = 78 + ' + 'txtKundeNrBis + ' + Me.txtKundeNrBis._DateTimeOnly = False + Me.txtKundeNrBis._numbersOnly = False + Me.txtKundeNrBis._numbersOnlyKommastellen = "" + Me.txtKundeNrBis._numbersOnlyTrennzeichen = True + Me.txtKundeNrBis._Prozent = False + Me.txtKundeNrBis._ShortDateNew = False + Me.txtKundeNrBis._ShortDateOnly = False + Me.txtKundeNrBis._TimeOnly = False + Me.txtKundeNrBis._TimeOnly_Seconds = False + Me.txtKundeNrBis._value = Nothing + Me.txtKundeNrBis._Waehrung = False + Me.txtKundeNrBis._WaehrungZeichen = True + Me.txtKundeNrBis.ForeColor = System.Drawing.Color.Black + Me.txtKundeNrBis.Location = New System.Drawing.Point(347, 93) + Me.txtKundeNrBis.MaxLineLength = -1 + Me.txtKundeNrBis.MaxLines_Warning = "" + Me.txtKundeNrBis.MaxLines_Warning_Label = Nothing + Me.txtKundeNrBis.Name = "txtKundeNrBis" + Me.txtKundeNrBis.Size = New System.Drawing.Size(70, 20) + Me.txtKundeNrBis.TabIndex = 79 + ' + 'Label65 + ' + Me.Label65.AutoSize = True + Me.Label65.Location = New System.Drawing.Point(318, 96) + Me.Label65.Name = "Label65" + Me.Label65.Size = New System.Drawing.Size(23, 13) + Me.Label65.TabIndex = 77 + Me.Label65.Text = "bis:" + ' + 'btn_ZV + ' + Me.btn_ZV.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center + Me.btn_ZV.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btn_ZV.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.btn_ZV.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.btn_ZV.Location = New System.Drawing.Point(23, 88) + Me.btn_ZV.Name = "btn_ZV" + Me.btn_ZV.Size = New System.Drawing.Size(105, 29) + Me.btn_ZV.TabIndex = 78 + Me.btn_ZV.Text = "Zahlungsverhalten" + Me.btn_ZV.UseVisualStyleBackColor = True + ' + 'btn_Laender + ' + Me.btn_Laender.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center + Me.btn_Laender.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btn_Laender.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.btn_Laender.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.btn_Laender.Location = New System.Drawing.Point(23, 54) + Me.btn_Laender.Name = "btn_Laender" + Me.btn_Laender.Size = New System.Drawing.Size(105, 29) + Me.btn_Laender.TabIndex = 77 + Me.btn_Laender.Text = "nach Länder" + Me.btn_Laender.UseVisualStyleBackColor = True + ' + 'btn_Erloeskkonten + ' + Me.btn_Erloeskkonten.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center + Me.btn_Erloeskkonten.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btn_Erloeskkonten.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.btn_Erloeskkonten.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.btn_Erloeskkonten.Location = New System.Drawing.Point(23, 19) + Me.btn_Erloeskkonten.Name = "btn_Erloeskkonten" + Me.btn_Erloeskkonten.Size = New System.Drawing.Size(105, 29) + Me.btn_Erloeskkonten.TabIndex = 76 + Me.btn_Erloeskkonten.Text = "Erlöskonten" + Me.btn_Erloeskkonten.UseVisualStyleBackColor = True ' 'Label62 ' @@ -2414,102 +2489,38 @@ Partial Class usrCntlBH Me.Label51.TabIndex = 36 Me.Label51.Text = "Zinsnachberechnung" ' - 'Label64 + 'txtJahr_FIBU ' - Me.Label64.AutoSize = True - Me.Label64.Location = New System.Drawing.Point(154, 96) - Me.Label64.Name = "Label64" - Me.Label64.Size = New System.Drawing.Size(82, 13) - Me.Label64.TabIndex = 76 - Me.Label64.Text = "Kunden-Nr von:" + Me.txtJahr_FIBU._DateTimeOnly = False + Me.txtJahr_FIBU._numbersOnly = False + Me.txtJahr_FIBU._numbersOnlyKommastellen = "" + Me.txtJahr_FIBU._numbersOnlyTrennzeichen = True + Me.txtJahr_FIBU._Prozent = False + Me.txtJahr_FIBU._ShortDateNew = False + Me.txtJahr_FIBU._ShortDateOnly = False + Me.txtJahr_FIBU._TimeOnly = False + Me.txtJahr_FIBU._TimeOnly_Seconds = False + Me.txtJahr_FIBU._value = "0" + Me.txtJahr_FIBU._Waehrung = False + Me.txtJahr_FIBU._WaehrungZeichen = True + Me.txtJahr_FIBU.ForeColor = System.Drawing.Color.Black + Me.txtJahr_FIBU.Location = New System.Drawing.Point(175, 133) + Me.txtJahr_FIBU.MaxLineLength = -1 + Me.txtJahr_FIBU.MaxLines_Warning = "" + Me.txtJahr_FIBU.MaxLines_Warning_Label = Nothing + Me.txtJahr_FIBU.Name = "txtJahr_FIBU" + Me.txtJahr_FIBU.Size = New System.Drawing.Size(57, 20) + Me.txtJahr_FIBU.TabIndex = 76 + Me.txtJahr_FIBU.Text = "0" ' - 'txtKundeNrVon + 'Label63 ' - Me.txtKundeNrVon._DateTimeOnly = False - Me.txtKundeNrVon._numbersOnly = False - Me.txtKundeNrVon._numbersOnlyKommastellen = "" - Me.txtKundeNrVon._numbersOnlyTrennzeichen = True - Me.txtKundeNrVon._Prozent = False - Me.txtKundeNrVon._ShortDateNew = False - Me.txtKundeNrVon._ShortDateOnly = False - Me.txtKundeNrVon._TimeOnly = False - Me.txtKundeNrVon._TimeOnly_Seconds = False - Me.txtKundeNrVon._value = Nothing - Me.txtKundeNrVon._Waehrung = False - Me.txtKundeNrVon._WaehrungZeichen = True - Me.txtKundeNrVon.ForeColor = System.Drawing.Color.Black - Me.txtKundeNrVon.Location = New System.Drawing.Point(239, 93) - Me.txtKundeNrVon.MaxLineLength = -1 - Me.txtKundeNrVon.MaxLines_Warning = "" - Me.txtKundeNrVon.MaxLines_Warning_Label = Nothing - Me.txtKundeNrVon.Name = "txtKundeNrVon" - Me.txtKundeNrVon.Size = New System.Drawing.Size(70, 20) - Me.txtKundeNrVon.TabIndex = 78 - ' - 'txtKundeNrBis - ' - Me.txtKundeNrBis._DateTimeOnly = False - Me.txtKundeNrBis._numbersOnly = False - Me.txtKundeNrBis._numbersOnlyKommastellen = "" - Me.txtKundeNrBis._numbersOnlyTrennzeichen = True - Me.txtKundeNrBis._Prozent = False - Me.txtKundeNrBis._ShortDateNew = False - Me.txtKundeNrBis._ShortDateOnly = False - Me.txtKundeNrBis._TimeOnly = False - Me.txtKundeNrBis._TimeOnly_Seconds = False - Me.txtKundeNrBis._value = Nothing - Me.txtKundeNrBis._Waehrung = False - Me.txtKundeNrBis._WaehrungZeichen = True - Me.txtKundeNrBis.ForeColor = System.Drawing.Color.Black - Me.txtKundeNrBis.Location = New System.Drawing.Point(347, 93) - Me.txtKundeNrBis.MaxLineLength = -1 - Me.txtKundeNrBis.MaxLines_Warning = "" - Me.txtKundeNrBis.MaxLines_Warning_Label = Nothing - Me.txtKundeNrBis.Name = "txtKundeNrBis" - Me.txtKundeNrBis.Size = New System.Drawing.Size(70, 20) - Me.txtKundeNrBis.TabIndex = 79 - ' - 'Label65 - ' - Me.Label65.AutoSize = True - Me.Label65.Location = New System.Drawing.Point(318, 96) - Me.Label65.Name = "Label65" - Me.Label65.Size = New System.Drawing.Size(23, 13) - Me.Label65.TabIndex = 77 - Me.Label65.Text = "bis:" - ' - 'txtLand - ' - Me.txtLand._DateTimeOnly = False - Me.txtLand._numbersOnly = False - Me.txtLand._numbersOnlyKommastellen = "" - Me.txtLand._numbersOnlyTrennzeichen = False - Me.txtLand._Prozent = False - Me.txtLand._ShortDateNew = False - Me.txtLand._ShortDateOnly = False - Me.txtLand._TimeOnly = False - Me.txtLand._TimeOnly_Seconds = False - Me.txtLand._value = "" - Me.txtLand._Waehrung = False - Me.txtLand._WaehrungZeichen = False - Me.txtLand.ForeColor = System.Drawing.Color.Black - Me.txtLand.Location = New System.Drawing.Point(238, 59) - Me.txtLand.MaxLength = 10 - Me.txtLand.MaxLineLength = -1 - Me.txtLand.MaxLines_Warning = "" - Me.txtLand.MaxLines_Warning_Label = Nothing - Me.txtLand.Name = "txtLand" - Me.txtLand.Size = New System.Drawing.Size(70, 20) - Me.txtLand.TabIndex = 76 - ' - 'Label66 - ' - Me.Label66.AutoSize = True - Me.Label66.Location = New System.Drawing.Point(153, 62) - Me.Label66.Name = "Label66" - Me.Label66.Size = New System.Drawing.Size(34, 13) - Me.Label66.TabIndex = 80 - Me.Label66.Text = "Land:" + Me.Label63.AutoSize = True + Me.Label63.Location = New System.Drawing.Point(725, 70) + Me.Label63.Name = "Label63" + Me.Label63.Size = New System.Drawing.Size(103, 13) + Me.Label63.TabIndex = 76 + Me.Label63.Text = "*wenn leer dann alle" ' 'usrCntlBH ' @@ -2723,13 +2734,14 @@ Partial Class usrCntlBH Friend WithEvents GroupBox14 As GroupBox Friend WithEvents Label62 As Label Friend WithEvents txtJahr_FIBU As VERAG_PROG_ALLGEMEIN.MyTextBox - Friend WithEvents Button18 As Button - Friend WithEvents Button17 As Button - Friend WithEvents Button16 As Button + Friend WithEvents btn_ZV As Button + Friend WithEvents btn_Laender As Button + Friend WithEvents btn_Erloeskkonten As Button Friend WithEvents Label66 As Label Friend WithEvents txtLand As VERAG_PROG_ALLGEMEIN.MyTextBox Friend WithEvents Label64 As Label Friend WithEvents txtKundeNrVon As VERAG_PROG_ALLGEMEIN.MyTextBox Friend WithEvents txtKundeNrBis As VERAG_PROG_ALLGEMEIN.MyTextBox Friend WithEvents Label65 As Label + Friend WithEvents Label63 As Label End Class diff --git a/SDL/buchhaltung/usrCntlBH.vb b/SDL/buchhaltung/usrCntlBH.vb index 9903d163..9635b28b 100644 --- a/SDL/buchhaltung/usrCntlBH.vb +++ b/SDL/buchhaltung/usrCntlBH.vb @@ -1,5 +1,7 @@ Imports System.Globalization Imports System.Text +Imports com.sun.xml.internal.rngom +Imports GrapeCity.Viewer.Common.Model Imports VERAG_PROG_ALLGEMEIN Public Class usrCntlBH @@ -72,9 +74,9 @@ Public Class usrCntlBH Else - End If + End If - MyListBox1.fillWithSQL("SELECT [Firma_ID],[Firma_Bez] FROM [VERAG].[dbo].[tblFirma] where Firma_ID NOT IN (20) order by [Firma_ID] ", False, "FMZOLL") + MyListBox1.fillWithSQL("SELECT [Firma_ID],[Firma_Bez] FROM [VERAG].[dbo].[tblFirma] where Firma_ID NOT IN (20) order by [Firma_ID] ", False, "FMZOLL") For i = 0 To MyListBox1.Items.Count - 1 If isMDM Then @@ -1470,7 +1472,7 @@ Public Class usrCntlBH If txtRE_Jahr.Text <> "" AndAlso IsNumeric(txtRE_Jahr.Text) AndAlso txtRE_Jahr.Text.Length = 4 Then - If txtRE_Monat.Text = "" OrElse txtRE_Monat.Text <> "" AndAlso IsNumeric(txtRE_Monat.Text) AndAlso CInt(txtRE_Monat.Text) > 0 AndAlso CInt(txtRE_Monat.Text) < 13 Then + If txtRE_Monat.Text = "" OrElse txtRE_Monat.Text <> "" AndAlso IsNumeric(txtRE_Monat.Text) AndAlso CInt(txtRE_Monat.Text) > 0 AndAlso CInt(txtRE_Monat.Text) < 13 Then Dim Bezeichnung As String = "" Dim SQL_RE As String = "" @@ -1577,15 +1579,17 @@ Public Class usrCntlBH If dt_RE.Rows.Count > 0 Then cProgramFunctions.genExcelFromDT_NEW(dt_RE,,, Bezeichnung,,, True) Me.Cursor = Cursors.Default - Else - MsgBox("keine Daten für den ausgewählten Zeitraum!") - Me.Cursor = Cursors.Default - End If - + Else + MsgBox("keine Daten für den ausgewählten Zeitraum!") + Me.Cursor = Cursors.Default End If End If + End If + + + Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) @@ -1623,149 +1627,296 @@ Public Class usrCntlBH End Sub - Private Sub Button16_Click(sender As Object, e As EventArgs) Handles Button16.Click, Button17.Click, Button18.Click + Private Sub Button16_Click(sender As Object, e As EventArgs) Handles btn_Erloeskkonten.Click, btn_Laender.Click, btn_ZV.Click If txtJahr_FIBU.Text <> "" AndAlso IsNumeric(txtJahr_FIBU.Text) AndAlso txtJahr_FIBU.TextLength = 4 Then Dim SQLString = "" Dim Bezeichnung As String = "" + Select Case sender.Name - Case "Button16" + Case "btn_Erloeskkonten" Bezeichnung = "Erlöskontenstatistik " & txtJahr_FIBU.Text - SQLString = "declare @Jahr as Integer = " & txtJahr_FIBU.Text & "; WITH Daten AS (SELECT bz.i_konto,k.c_name,YEAR(bz.d_beleg) AS Jahr,MONTH(bz.d_beleg) AS Monat, CASE WHEN bz.c_sollhabenkz = 'S' THEN bz.eur_betrag * -1 ELSE bz.eur_betrag END AS Betrag + SQLString = "declare @Jahr as Integer = " & txtJahr_FIBU.Text & " declare @Vorjahr as Integer = @Jahr - 1;WITH Daten AS ( + SELECT + bz.i_konto, + k.c_name, + YEAR(bz.d_beleg) AS Jahr, + MONTH(bz.d_beleg) AS Monat, + + CASE + WHEN bz.c_sollhabenkz = 'S' + THEN bz.eur_betrag * -1 + ELSE bz.eur_betrag + END AS Betrag + FROM FIBU2.dbo.fibu_belegzeile bz - INNER JOIN FIBU2.dbo.fibu_konto k ON bz.i_konto = k.i_konto - WHERE bz.i_firm_refid = 19 AND k.i_firm_refid = 19 AND bz.eur_betrag <> 0 AND bz.c_kennung = 'KO' AND bz.i_konto BETWEEN 4000 AND 4999 AND YEAR(bz.d_beleg) IN (@Jahr,@Jahr - 1)), Summen AS - (SELECT i_konto,c_name,Jahr,Monat,SUM(Betrag) AS Betrag + INNER JOIN FIBU2.dbo.fibu_konto k + ON bz.i_konto = k.i_konto + + WHERE bz.i_firm_refid = 19 + AND k.i_firm_refid = 19 + AND bz.eur_betrag <> 0 + AND bz.c_kennung = 'KO' + AND bz.i_konto BETWEEN 4000 AND 4999 + AND YEAR(bz.d_beleg) IN (@Jahr, @Vorjahr) + ), + + Summen AS ( + SELECT + i_konto, + c_name, + Jahr, + Monat, + SUM(Betrag) AS Betrag FROM Daten - GROUP BY i_konto,c_name,Jahr,Monat) + GROUP BY + i_konto, + c_name, + Jahr, + Monat + ), + + PivotDaten AS ( + SELECT + i_konto, + c_name, + Jahr, + + ISNULL([1],0) AS Jan, + ISNULL([2],0) AS Feb, + ISNULL([3],0) AS Mär, + ISNULL([4],0) AS Apr, + ISNULL([5],0) AS Mai, + ISNULL([6],0) AS Jun, + ISNULL([7],0) AS Jul, + ISNULL([8],0) AS Aug, + ISNULL([9],0) AS Sep, + ISNULL([10],0) AS Okt, + ISNULL([11],0) AS Nov, + ISNULL([12],0) AS Dez + + FROM Summen + PIVOT ( + SUM(Betrag) + FOR Monat IN ( + [1],[2],[3],[4],[5],[6], + [7],[8],[9],[10],[11],[12] + ) + ) p + ), + + Jahreswerte AS ( + SELECT*, Jan + Feb + Mär + Apr + Mai + Jun + Jul + Aug + Sep + Okt + Nov + Dez AS Gesamtsumme + FROM PivotDaten + ) + + -- Aktuelles Jahr + Vorjahr + SELECT + Konto, Bezeichnung, CAST(Jahr AS VARCHAR(10)) AS Zeile,Jan,Feb,Mär,Apr,Mai,Jun,Jul,Aug,Sep,Okt, Nov,Dez,Gesamtsumme + + FROM ( + SELECT + i_konto AS Konto, c_name AS Bezeichnung, Jahr,Jan,Feb,Mär,Apr,Mai,Jun,Jul, Aug,Sep,Okt,Nov,Dez,Gesamtsumme + + FROM Jahreswerte + ) x + + UNION ALL + + -- Prozentuale Veränderung + SELECT + a.i_konto AS Konto, + a.c_name AS Bezeichnung, + '% Veränderung' AS Zeile, + + CASE WHEN v.Jan = 0 THEN 100 + ELSE ROUND((a.Jan - v.Jan) * 100.0 / v.Jan, 2) + END AS Jan, + + CASE WHEN v.Feb = 0 THEN 100 + ELSE ROUND((a.Feb - v.Feb) * 100.0 / v.Feb, 2) + END AS Feb, + + CASE WHEN v.Mär = 0 THEN 100 + ELSE ROUND((a.Mär - v.Mär) * 100.0 / v.Mär, 2) + END AS Mär, + + CASE WHEN v.Apr = 0 THEN 100 + ELSE ROUND((a.Apr - v.Apr) * 100.0 / v.Apr, 2) + END AS Apr, + + CASE WHEN v.Mai = 0 THEN 100 + ELSE ROUND((a.Mai - v.Mai) * 100.0 / v.Mai, 2) + END AS Mai, + + CASE WHEN v.Jun = 0 THEN 100 + ELSE ROUND((a.Jun - v.Jun) * 100.0 / v.Jun, 2) + END AS Jun, + + CASE WHEN v.Jul = 0 THEN 100 + ELSE ROUND((a.Jul - v.Jul) * 100.0 / v.Jul, 2) + END AS Jul, + + CASE WHEN v.Aug = 0 THEN 100 + ELSE ROUND((a.Aug - v.Aug) * 100.0 / v.Aug, 2) + END AS Aug, + + CASE WHEN v.Sep = 0 THEN 100 + ELSE ROUND((a.Sep - v.Sep) * 100.0 / v.Sep, 2) + END AS Sep, + + CASE WHEN v.Okt = 0 THEN 100 + ELSE ROUND((a.Okt - v.Okt) * 100.0 / v.Okt, 2) + END AS Okt, + + CASE WHEN v.Nov = 0 THEN 100 + ELSE ROUND((a.Nov - v.Nov) * 100.0 / v.Nov, 2) + END AS Nov, + + CASE WHEN v.Dez = 0 THEN 100 + ELSE ROUND((a.Dez - v.Dez) * 100.0 / v.Dez, 2) + END AS Dez, + + CASE WHEN v.Gesamtsumme = 0 THEN 100 + ELSE ROUND((a.Gesamtsumme - v.Gesamtsumme) * 100.0 / v.Gesamtsumme, 2) + END AS Gesamtsumme + + FROM Jahreswerte a + INNER JOIN Jahreswerte v + ON a.i_konto = v.i_konto + AND a.Jahr = @Jahr + AND v.Jahr = @Vorjahr + + ORDER BY + Konto, Zeile desc" - --SELECT * FROM Summen ORDER BY i_konto, Jahr, Monat; - - SELECT i_konto as Konto, c_name as Bezeichnung,Jahr,[1] AS Jan,[2] AS Feb,[3] AS Mär,[4] AS Apr,[5] AS Mai,[6] AS Jun,[7] AS Jul,[8] AS Aug,[9] AS Sep,[10] AS Okt,[11] AS Nov,[12] AS Dez FROM Summen PIVOT (SUM(Betrag) FOR Monat IN ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])) p" - - Case "Button17" + Case "btn_Laender" Bezeichnung = "Länderstatistik " & txtJahr_FIBU.Text SQLString = "declare @Jahr as Integer = " & txtJahr_FIBU.Text & " declare @VJ_Jahr as Integer = @Jahr - 1 - declare @c_landid as NVARCHAR = '" & txtLand.Text & "'; - - WITH Base AS (SELECT k.c_landid,o.eur_bruttobetrag,YEAR(o.d_rechnung) AS jahr,MONTH(o.d_rechnung) AS monat FROM [FIBU2].dbo.op_debitor o JOIN [FIBU2].dbo.fibu_konto k ON o.i_personenkonto = k.i_konto - WHERE o.i_firm_refid = 19 AND k.i_firm_refid = 19 AND ISNULL(o.eur_bruttobetrag, 0) <> 0 " & IIf(txtLand.Text <> "", " AND k.c_landid = '" & txtLand.Text & "'", "") & " AND Year(o.d_rechnung) = @Jahr - ), Long AS ( SELECT c_landid, CONCAT(jahr, '_', monat) AS periode,jahr,monat,eur_bruttobetrag FROM Base - ), Agg AS (SELECT c_landid, jahr, monat, SUM(eur_bruttobetrag) AS betrag FROM Long GROUP BY c_landid, jahr, monat ) , - PivotMonate AS ( SELECT * FROM Agg PIVOT ( - SUM(betrag) - FOR monat IN ( - [1],[2],[3],[4],[5],[6], - [7],[8],[9],[10],[11],[12] - ) - ) p ), Final AS ( SELECT c_landid, - - -- aktuelles Jahr - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([1],0) ELSE 0 END) AS akt_Jan, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([2],0) ELSE 0 END) AS akt_Feb, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([3],0) ELSE 0 END) AS akt_Mär, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([4],0) ELSE 0 END) AS akt_Apr, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([5],0) ELSE 0 END) AS akt_Mai, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([6],0) ELSE 0 END) AS akt_Jun, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([7],0) ELSE 0 END) AS akt_Jul, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([8],0) ELSE 0 END) AS akt_Aug, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([9],0) ELSE 0 END) AS akt_Sep, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([10],0) ELSE 0 END) AS akt_Okt, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([11],0) ELSE 0 END) AS akt_Nov, - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([12],0) ELSE 0 END) AS akt_Dez, - - SUM(CASE WHEN jahr = @Jahr THEN ISNULL([1],0)+ISNULL([2],0)+ISNULL([3],0)+ISNULL([4],0)+ - ISNULL([5],0)+ISNULL([6],0)+ISNULL([7],0)+ISNULL([8],0)+ - ISNULL([9],0)+ISNULL([10],0)+ISNULL([11],0)+ISNULL([12],0) - ELSE 0 END) AS akt_jahr, - - -- Vorjahr - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([1],0) ELSE 0 END) AS vj_Jan, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([2],0) ELSE 0 END) AS vj_Feb, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([3],0) ELSE 0 END) AS vj_Mär, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([4],0) ELSE 0 END) AS vj_Apr, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([5],0) ELSE 0 END) AS vj_Mai, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([6],0) ELSE 0 END) AS vj_Jun, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([7],0) ELSE 0 END) AS vj_Jul, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([8],0) ELSE 0 END) AS vj_Aug, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([9],0) ELSE 0 END) AS vj_Sep, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([10],0) ELSE 0 END) AS vj_Okt, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([11],0) ELSE 0 END) AS vj_Nov, - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([12],0) ELSE 0 END) AS vj_Dez, - - SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([1],0)+ISNULL([2],0)+ISNULL([3],0)+ISNULL([4],0)+ - ISNULL([5],0)+ISNULL([6],0)+ISNULL([7],0)+ISNULL([8],0)+ - ISNULL([9],0)+ISNULL([10],0)+ISNULL([11],0)+ISNULL([12],0) - ELSE 0 END) AS vj_jahr - - FROM PivotMonate - GROUP BY c_landid - ) SELECT - c_landid, - - akt_Jan, - vj_Jan, - CASE WHEN vj_Jan = 0 THEN 100 ELSE akt_Jan * 100.0 / vj_Jan END AS 'Jan_%', - - akt_Feb, - vj_Feb, - CASE WHEN vj_Feb = 0 THEN 100 ELSE akt_Feb * 100.0 / vj_Feb END AS 'Feb_%', - - akt_Mär, - vj_Mär, - CASE WHEN vj_Mär = 0 THEN 100 ELSE akt_Mär * 100.0 / vj_Mär END AS 'Mär_%', - - akt_Apr, - vj_Apr, - CASE WHEN vj_Apr = 0 THEN 100 ELSE akt_Apr * 100.0 / vj_Apr END AS 'Apr_%', - - akt_Mai, - vj_Mai, - CASE WHEN vj_Mai = 0 THEN 100 ELSE akt_Mai * 100.0 / vj_Mai END AS 'Mai_%', - - akt_Jun, - vj_Jun, - CASE WHEN vj_Jun = 0 THEN 100 ELSE akt_Jun * 100.0 / vj_Jun END AS 'Jun_%', - - akt_Jul, - vj_Jul, - CASE WHEN vj_Jul = 0 THEN 100 ELSE akt_Jul * 100.0 / vj_Jul END AS 'Jul_%', - - akt_Aug, - vj_Aug, - CASE WHEN vj_Aug = 0 THEN 100 ELSE akt_Aug * 100.0 / vj_Aug END AS 'Aug_%', - - akt_Sep, - vj_Sep, - CASE WHEN vj_Sep = 0 THEN 100 ELSE akt_Sep * 100.0 / vj_Sep END AS 'Sep_%', - - akt_Okt, - vj_Okt, - CASE WHEN vj_Okt = 0 THEN 100 ELSE akt_Okt * 100.0 / vj_Okt END AS 'Okt_%', - - akt_Nov, - vj_Nov, - CASE WHEN vj_Nov = 0 THEN 100 ELSE akt_Nov * 100.0 / vj_Nov END AS 'Nov_%', - - akt_Dez, - vj_Dez, - CASE WHEN vj_Dez = 0 THEN 100 ELSE akt_Dez * 100.0 / vj_Dez END AS 'Dez_%', - - akt_jahr, - vj_jahr, - CASE WHEN vj_jahr = 0 THEN 100 ELSE akt_jahr * 100.0 / vj_jahr END AS 'Jahr_%' - FROM Final - ORDER BY c_landid;" + declare @c_landid as NVARCHAR(50) = '" & txtLand.Text & "'; + WITH Base AS + ( + SELECT k.c_landid, o.eur_bruttobetrag, YEAR(o.d_rechnung) AS jahr, MONTH(o.d_rechnung) AS monat + FROM [FIBU2].dbo.op_debitor o INNER JOIN [FIBU2].dbo.fibu_konto k ON o.i_personenkonto = k.i_konto + + WHERE o.i_firm_refid = 19 AND k.i_firm_refid = 19 AND ISNULL(o.eur_bruttobetrag,0) <> 0 " & IIf(txtLand.Text <> "", "AND k.c_landid = @c_landid", "") & " AND YEAR(o.d_rechnung) IN (@Jahr, @VJ_Jahr)), + + Agg AS + ( + SELECT c_landid,jahr,monat,SUM(eur_bruttobetrag) AS betrag + FROM Base + GROUP BY c_landid, jahr, monat), + + PivotMonate AS + ( SELECT * FROM Agg PIVOT + ( + SUM(betrag) + FOR monat IN ( + [1],[2],[3],[4],[5],[6], + [7],[8],[9],[10],[11],[12] + ) + ) p + ), + + Final AS + ( + SELECT + c_landid, + -- aktuelles Jahr + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([1],0) ELSE 0 END) AS akt_Jan, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([2],0) ELSE 0 END) AS akt_Feb, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([3],0) ELSE 0 END) AS akt_Mär, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([4],0) ELSE 0 END) AS akt_Apr, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([5],0) ELSE 0 END) AS akt_Mai, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([6],0) ELSE 0 END) AS akt_Jun, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([7],0) ELSE 0 END) AS akt_Jul, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([8],0) ELSE 0 END) AS akt_Aug, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([9],0) ELSE 0 END) AS akt_Sep, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([10],0) ELSE 0 END) AS akt_Okt, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([11],0) ELSE 0 END) AS akt_Nov, + SUM(CASE WHEN jahr = @Jahr THEN ISNULL([12],0) ELSE 0 END) AS akt_Dez, + -- Vorjahr + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([1],0) ELSE 0 END) AS vj_Jan, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([2],0) ELSE 0 END) AS vj_Feb, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([3],0) ELSE 0 END) AS vj_Mär, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([4],0) ELSE 0 END) AS vj_Apr, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([5],0) ELSE 0 END) AS vj_Mai, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([6],0) ELSE 0 END) AS vj_Jun, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([7],0) ELSE 0 END) AS vj_Jul, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([8],0) ELSE 0 END) AS vj_Aug, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([9],0) ELSE 0 END) AS vj_Sep, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([10],0) ELSE 0 END) AS vj_Okt, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([11],0) ELSE 0 END) AS vj_Nov, + SUM(CASE WHEN jahr = @VJ_Jahr THEN ISNULL([12],0) ELSE 0 END) AS vj_Dez + + FROM PivotMonate + GROUP BY c_landid + ) + + -- ===================================== + -- AKTUELLES JAHR + -- ===================================== + SELECT + c_landid,CAST(@Jahr AS VARCHAR(10)) AS Kennzahl,akt_Jan AS Jan,akt_Feb AS Feb,akt_Mär AS Mär,akt_Apr AS Apr,akt_Mai AS Mai,akt_Jun AS Jun, akt_Jul AS Jul,akt_Aug AS Aug,akt_Sep AS Sep,akt_Okt AS Okt,akt_Nov AS Nov,akt_Dez AS Dez,akt_Jan + akt_Feb + akt_Mär + akt_Apr + akt_Mai + akt_Jun + akt_Jul + akt_Aug + akt_Sep + akt_Okt + akt_Nov + akt_Dez AS Gesamt + + FROM Final + + UNION ALL + + SELECT c_landid,CAST(@VJ_Jahr AS VARCHAR(10)), vj_Jan,vj_Feb,vj_Mär,vj_Apr,vj_Mai,vj_Jun,vj_Jul,vj_Aug,vj_Sep,vj_Okt,vj_Nov,vj_Dez,vj_Jan + vj_Feb + vj_Mär + vj_Apr +vj_Mai + vj_Jun + vj_Jul + vj_Aug +vj_Sep + vj_Okt + vj_Nov + vj_Dez + FROM Final + + UNION ALL + + SELECT + c_landid, + '% Veränderung', + + CASE WHEN vj_Jan = 0 THEN 100 ELSE akt_Jan * 100.0 / vj_Jan END, + CASE WHEN vj_Feb = 0 THEN 100 ELSE akt_Feb * 100.0 / vj_Feb END, + CASE WHEN vj_Mär = 0 THEN 100 ELSE akt_Mär * 100.0 / vj_Mär END, + CASE WHEN vj_Apr = 0 THEN 100 ELSE akt_Apr * 100.0 / vj_Apr END, + CASE WHEN vj_Mai = 0 THEN 100 ELSE akt_Mai * 100.0 / vj_Mai END, + CASE WHEN vj_Jun = 0 THEN 100 ELSE akt_Jun * 100.0 / vj_Jun END, + CASE WHEN vj_Jul = 0 THEN 100 ELSE akt_Jul * 100.0 / vj_Jul END, + CASE WHEN vj_Aug = 0 THEN 100 ELSE akt_Aug * 100.0 / vj_Aug END, + CASE WHEN vj_Sep = 0 THEN 100 ELSE akt_Sep * 100.0 / vj_Sep END, + CASE WHEN vj_Okt = 0 THEN 100 ELSE akt_Okt * 100.0 / vj_Okt END, + CASE WHEN vj_Nov = 0 THEN 100 ELSE akt_Nov * 100.0 / vj_Nov END, + CASE WHEN vj_Dez = 0 THEN 100 ELSE akt_Dez * 100.0 / vj_Dez END, + + CASE + WHEN ( + vj_Jan + vj_Feb + vj_Mär + vj_Apr + + vj_Mai + vj_Jun + vj_Jul + vj_Aug + + vj_Sep + vj_Okt + vj_Nov + vj_Dez + ) = 0 + THEN 100 + ELSE + ( + (akt_Jan + akt_Feb + akt_Mär + akt_Apr + + akt_Mai + akt_Jun + akt_Jul + akt_Aug + + akt_Sep + akt_Okt + akt_Nov + akt_Dez) + + * 100.0 / + + (vj_Jan + vj_Feb + vj_Mär + vj_Apr + + vj_Mai + vj_Jun + vj_Jul + vj_Aug + + vj_Sep + vj_Okt + vj_Nov + vj_Dez) + ) + END + + FROM Final ORDER BY c_landid, Kennzahl desc;" - Case "Button18" - Bezeichnung = "Zahlungsverhalten " & txtJahr_FIBU.Text & " von " & txtKundeNrVon.Text & " - " & txtKundeNrBis.Text + Case "btn_ZV" + Bezeichnung = "Zahlungsverhalten " & txtJahr_FIBU.Text & " von " & txtKundeNrVon.Text & " - " & txtKundeNrBis.Text & " " & IIf(txtLand.Text <> "", txtLand.Text, "") SQLString = "declare @Jahr as Integer = " & txtJahr_FIBU.Text & "; WITH BaseData AS ( SELECT o.i_personenkonto, o.d_rechnung, o.d_netto, o.d_zahlung,ISNULL(o.eur_zahlung, 0) AS eur_zahlung,DATEDIFF(DAY, o.d_rechnung, o.d_netto) AS ZZ_Tage,DATEDIFF(DAY, o.d_rechnung, o.d_zahlung) AS ZOP_Tage, MONTH(o.d_zahlung) AS Monat FROM [FIBU2].dbo.op_debitor o @@ -1774,8 +1925,11 @@ Public Class usrCntlBH SELECT Monat,i_personenkonto as Konto,COUNT(*) AS Anzahl,SUM(-eur_zahlung) AS Zahlung,SUM(ZZ_Tage) AS ZZ_Tage,SUM(ZOP_Tage) AS ZOP_Tage FROM BaseData GROUP BY Monat, i_personenkonto - ) SELECT Kennzahl,i_personenkonto as Konto,[1] AS Jan,[2] AS Feb,[3] AS Mär,[4] AS Apr,[5] AS Mai,[6] AS Jun,[7] AS Jul,[8] AS Aug,[9] AS Sep,[10] AS Okt,[11] AS Nov,[12] AS Dez + ) SELECT Kennzahl,i_personenkonto as Konto,[1] AS Jan,[2] AS Feb,[3] AS Mär,[4] AS Apr,[5] AS Mai,[6] AS Jun,[7] AS Jul,[8] AS Aug,[9] AS Sep,[10] AS Okt,[11] AS Nov,[12] AS Dez, + Isnull([1],0) + isnull([2],0) + isnull([3],0) + isnull([4],0) + isnull([5],0) + isnull([6],0) + isnull([7],0) + isnull([8],0) + isnull([9],0) + isnull([10],0) + isnull([11],0) + isnull([12],0) AS Gesamtsumme + FROM ( + SELECT Monat, 'Zahlung' AS Kennzahl,i_personenkonto, SUM(-eur_zahlung) AS Wert FROM BaseData GROUP BY Monat,i_personenkonto @@ -1785,18 +1939,23 @@ Public Class usrCntlBH FROM BaseData GROUP BY Monat,i_personenkonto UNION ALL - - SELECT Monat, 'ZZ_Tage',i_personenkonto, SUM(ZZ_Tage) + SELECT Monat, 'Zahlungsziel',i_personenkonto, SUM(ZZ_Tage) / COUNT(*) FROM BaseData GROUP BY Monat,i_personenkonto UNION ALL - SELECT Monat, 'ZOP_Tage',i_personenkonto, SUM(ZOP_Tage) + SELECT Monat, 'Zahlung nach Tagen',i_personenkonto, SUM(ZOP_Tage) / COUNT(*) FROM BaseData GROUP BY Monat,i_personenkonto + + UNION ALL + + SELECT Monat, 'Zahlungsverspätung',i_personenkonto, (SUM(ZOP_Tage) / COUNT(*)) - (SUM(ZZ_Tage) / COUNT(*)) + FROM BaseData GROUP BY Monat,i_personenkonto + ) x PIVOT ( SUM(Wert) FOR Monat IN ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]) - ) p;" + ) p order by p.i_personenkonto, p.Kennzahl;" @@ -1807,8 +1966,30 @@ Public Class usrCntlBH Me.Cursor = Cursors.WaitCursor Dim dt_RE As DataTable = SQL.loadDgvBySql(SQLString, "FIBU") + Dim rangeAsBuchhaltung() As String + Dim lastRow = dt_RE.Rows.Count + 1 + + + Select Case sender.Name + Case "btn_Erloeskkonten" + rangeAsBuchhaltung = {"D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P"} _ + .Select(Function(c) $"{c}2:{c}{lastRow}") _ + .ToArray() + Case "btn_Laender" + rangeAsBuchhaltung = {"C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O"} _ + .Select(Function(c) $"{c}2:{c}{lastRow}") _ + .ToArray() + Case "btn_ZV" + rangeAsBuchhaltung = {"C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O"} _ + .Select(Function(c) $"{c}2:{c}{lastRow}") _ + .ToArray() + End Select + + + + If dt_RE.Rows.Count > 0 Then - cProgramFunctions.genExcelFromDT_NEW(dt_RE,,, Bezeichnung,,, True) + cProgramFunctions.genExcelFromDT_NEW(dt_RE,,, Bezeichnung,,, True,,,,,, rangeAsBuchhaltung) Me.Cursor = Cursors.Default Else MsgBox("keine Daten für den ausgewählten Zeitraum!") @@ -1822,15 +2003,4 @@ Public Class usrCntlBH End Sub - Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click - - End Sub - - Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click - - End Sub - - Private Sub GroupBox14_Enter(sender As Object, e As EventArgs) Handles GroupBox14.Enter - - End Sub End Class diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb index 64fe442a..4cbe29d3 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.vb @@ -2205,14 +2205,15 @@ Public Class frmMDMDatenverarbetiung ,turnoverdate as [Transaction Date] ,contractPartner as [Product description] ,[cardnumber] as [Card Number] + ,'' as [Entry Terminal] + ,'' as [Exit Terminal] ,[netAmount] as [Net Amount] ,[VATamount] as [VAT Amount] ,[totalAmount] as [Total Amount] FROM [VERAG].[dbo].[tblAsfinagMaut] INNER JOIN [VERAG].[dbo].Kreditkarten ON cardnumber = Kreditkarten.KartenNr INNER JOIN [VERAG].[dbo].Adressen ON Adressen.AdressenNr = Kreditkarten.AdressenNr - WHERE 1 = 1 " & sqlWhere & " - order by Adressen.AdressenNr" + WHERE 1 = 1 " & sqlWhere