MDM Datenverarbeitung, FIBU, etc.

This commit is contained in:
2026-05-18 15:47:22 +02:00
parent 5a33d15ab0
commit 4bb79a1763
3 changed files with 498 additions and 315 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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