BU_Mahnlauf, ustva

This commit is contained in:
2025-04-04 11:49:54 +02:00
parent 30ac9b018b
commit 3d39da0357
5 changed files with 171 additions and 76 deletions

View File

@@ -25,6 +25,7 @@ Partial Class frmBU_Mahnlauf
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmBU_Mahnlauf))
Me.Panel1 = New System.Windows.Forms.Panel()
Me.cbxZahlungseingaenge = New System.Windows.Forms.CheckBox()
Me.cbxNurFaellig = New System.Windows.Forms.CheckBox()
Me.MyComboBox1 = New VERAG_PROG_ALLGEMEIN.MyComboBox()
Me.Label7 = New System.Windows.Forms.Label()
@@ -55,7 +56,6 @@ Partial Class frmBU_Mahnlauf
Me.Button2 = New System.Windows.Forms.Button()
Me.Button1 = New System.Windows.Forms.Button()
Me.MyTextBox2 = New VERAG_PROG_ALLGEMEIN.MyTextBox()
Me.cbxZahlungseingaenge = New System.Windows.Forms.CheckBox()
Me.Panel1.SuspendLayout()
Me.pnlTop.SuspendLayout()
Me.Panel2.SuspendLayout()
@@ -83,6 +83,17 @@ Partial Class frmBU_Mahnlauf
Me.Panel1.Size = New System.Drawing.Size(1287, 127)
Me.Panel1.TabIndex = 0
'
'cbxZahlungseingaenge
'
Me.cbxZahlungseingaenge.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.cbxZahlungseingaenge.AutoSize = True
Me.cbxZahlungseingaenge.Location = New System.Drawing.Point(568, 87)
Me.cbxZahlungseingaenge.Name = "cbxZahlungseingaenge"
Me.cbxZahlungseingaenge.Size = New System.Drawing.Size(114, 17)
Me.cbxZahlungseingaenge.TabIndex = 39
Me.cbxZahlungseingaenge.Text = "Zahlungseingänge"
Me.cbxZahlungseingaenge.UseVisualStyleBackColor = True
'
'cbxNurFaellig
'
Me.cbxNurFaellig.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
@@ -490,17 +501,6 @@ Partial Class frmBU_Mahnlauf
Me.MyTextBox2.TabIndex = 39
Me.MyTextBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'cbxZahlungseingaenge
'
Me.cbxZahlungseingaenge.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.cbxZahlungseingaenge.AutoSize = True
Me.cbxZahlungseingaenge.Location = New System.Drawing.Point(568, 87)
Me.cbxZahlungseingaenge.Name = "cbxZahlungseingaenge"
Me.cbxZahlungseingaenge.Size = New System.Drawing.Size(114, 17)
Me.cbxZahlungseingaenge.TabIndex = 39
Me.cbxZahlungseingaenge.Text = "Zahlungseingänge"
Me.cbxZahlungseingaenge.UseVisualStyleBackColor = True
'
'frmBU_Mahnlauf
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)

View File

@@ -71,29 +71,13 @@ Public Class frmBU_Mahnlauf
Dim sqlStringVerag360Zahlungseingaenge = "SELECT i_personenkonto Konto,KTO.c_name, KTO.c_landid Land,/*KTO.c_plz + ' ' + KTO.c_ort Ort,isnull(KTO.c_email,'') Email, */ " &
"isnull(( SELECT TOP 1 [Zahlungsinformationen] FROM [FMZOLL\SQLFMZOLL].[VERAG].[dbo].Kunden where KundenNr=i_personenkonto ) ,'') Zahlungsinfo, cast(min (OWNFIELD_Belegdatum)as date) as 'ältesteRg'," &
"count(*) Anzahl, sum(eur_bruttobetrag+eur_zahlung) Ausstand ,min(op.d_netto) Faelligkeit,max(si_mahnstufe) Mahnstufe, cast(MAX(d_mahnung)as date) Mahndatum, max(replace(KTO.c_zahlziel,'0/0/','')) ZZ,
case
when max(si_mahnstufe) = 1 and max((replace(KTO.c_zahlziel,'0/0/',''))) = 20 Then 'telefonisch'
when max(si_mahnstufe) = 1 and max((replace(KTO.c_zahlziel,'0/0/',''))) = 30 Then 'ZZ 30 Tage'
when max(si_mahnstufe) = 1 and cast(MAX(d_mahnung)as date) < (GETDATE()- 60) Then 'Sperre Donnerstag'
when max(si_mahnstufe) = 2 and max((replace(KTO.c_zahlziel,'0/0/',''))) = 20 Then 'Sperre Freitag'
when max(si_mahnstufe) = 2 and max((replace(KTO.c_zahlziel,'0/0/',''))) = 30 Then 'ZZ 30 Tage'
when max(si_mahnstufe) >= 3 Then 'Sperre Donnerstag'
else '-'
End as sperre" & If(cbxNurFaellig.Checked, "", ",SUM(CASE WHEN op.d_netto<getDATE() THEN (eur_bruttobetrag+eur_zahlung) ELSE 0 END) Summe_Faellig") & "
FROM op_debitor OP
RIGHT join fibu_konto KTO on i_personenkonto=i_konto AND KTO.i_firm_refid=OP.i_firm_refid
WHERE (OP.i_firm_refid = '" & Firma_ID & "') AND (dt_geloescht IS NULL)
" & If(cbxNurFaellig.Checked, " and op.d_netto<=getdate() and isnull(si_mahnflags,0) <>(1) ", "") & "
" & If(KdNr > 0, " AND i_personenkonto ='" & KdNr & "'", "") & "
" & If(KdTxt <> "", " AND KTO.c_name LIKE '" & KdTxt.Replace("*", "%") & "'", "") & "
group by i_personenkonto ,KTO.c_name,KTO.c_landid,KTO.c_ort,KTO.c_plz,KTO.c_email
HAVING sum(eur_bruttobetrag+eur_zahlung)>'" & MyTextBox1._value & "'
" & If(MyComboBox1._value > 0, " and max(si_mahnstufe)>='" & MyComboBox1._value & "'", "") & "
ORDER BY KTO.c_name"
Dim sqlStringVerag360Zahlungseingaenge = " SELECT cast(d_beleg as Date) as d_beleg ,c_urbelegid, c_buchtext, case when c_sollhabenkz = 'H' then eur_betrag else eur_betrag * -1 end as eur_betrag , BU.i_konto,KTO.c_landid
FROM [FIBU2].[dbo].[fibu_belegzeile] as BU
RIGHT join fibu_konto KTO on KTO.i_konto=BU.i_konto AND BU.i_firm_refid=KTO.i_firm_refid
where cast(d_beleg as date) = '03.04.2025' and BU.i_firm_refid=" & Firma_ID & " and (c_kennung = 'KE' or BU.i_konto in (5827, 5829) or LEFT(BU.i_konto,1) = 0 or c_kennung = 'DE')
and (BU.i_konto in (2800, 2801, 2802, 2803, 2811, 2812, 2813, 2814, 2817, 2818, 2822 ,2826, 2827, 2828, 2831, 2832, 2833, 2837, 2845) or i_gegenkonto in (2800, 2801, 2802, 2803, 2811, 2812, 2813, 2814, 2817, 2818, 2822 ,2826, 2827, 2828, 2831, 2832, 2833, 2837, 2845))
order by i_beleg_refid, i_zeilen_refid"
'MsgBox(sqlStr)
@@ -102,40 +86,67 @@ Public Class frmBU_Mahnlauf
.DataSource = dt_OP
If .Columns.Count = 0 Then Exit Sub
.Columns("c_name").HeaderText = "Firma"
.Columns("c_name").AutoSizeMode = DataGridViewAutoSizeColumnsMode.Fill
If zahlungseingaenge And Firma_ID = 19 Then
.Columns("c_buchtext").HeaderText = "Buchungstext"
.Columns("c_buchtext").AutoSizeMode = DataGridViewAutoSizeColumnsMode.Fill
.Columns("d_beleg").Width = 75
.Columns("d_beleg").HeaderText = "Belegdatum"
.Columns("c_urbelegid").Width = 90
.Columns("c_urbelegid").HeaderText = "BelegNr."
.Columns("i_konto").Width = 75
.Columns("i_konto").HeaderText = "KdNr/Konto"
.Columns("eur_betrag").Width = 75
.Columns("eur_betrag").HeaderText = "Betrag"
.Columns("c_landid").Width = 75
.Columns("c_landid").HeaderText = "Land"
.Columns("Land").Width = 40
.Columns("Anzahl").Width = 40
If Firma_ID = 19 Then
.Columns("Zahlungsinfo").Width = 300
.Columns("ältesteRg").Width = 75
Else
.Columns("Email").Width = 150
.Columns("Ort").Width = 150
.Columns("c_name").HeaderText = "Firma"
.Columns("c_name").AutoSizeMode = DataGridViewAutoSizeColumnsMode.Fill
.Columns("Land").Width = 40
.Columns("Anzahl").Width = 40
If Firma_ID = 19 Then
.Columns("Zahlungsinfo").Width = 300
.Columns("ältesteRg").Width = 75
Else
.Columns("Email").Width = 150
.Columns("Ort").Width = 150
End If
.Columns("Faelligkeit").Width = 75
.Columns("Faelligkeit").HeaderText = "Fälligkeit"
.Columns("Mahndatum").Width = 75
.Columns("Konto").Width = 75
.Columns("Konto").HeaderText = "KdNr/Konto"
.Columns("Ausstand").Width = 75
.Columns("Ausstand").HeaderText = "Betrag"
If Not cbxNurFaellig.Checked Then
.Columns("Summe_Faellig").Width = 75
.Columns("Summe_Faellig").HeaderText = "Summe fällig"
End If
.Columns("Mahnstufe").Width = 50
End If
.Columns("Faelligkeit").Width = 75
.Columns("Faelligkeit").HeaderText = "Fälligkeit"
.Columns("Mahndatum").Width = 75
.Columns("Konto").Width = 75
.Columns("Konto").HeaderText = "KdNr/Konto"
.Columns("Ausstand").Width = 75
.Columns("Ausstand").HeaderText = "Betrag"
If Not cbxNurFaellig.Checked Then
.Columns("Summe_Faellig").Width = 75
.Columns("Summe_Faellig").HeaderText = "Summe fällig"
End If
.Columns("Mahnstufe").Width = 50
End With
End Sub
@@ -1278,4 +1289,13 @@ Public Class frmBU_Mahnlauf
Private Sub cbxZahlungseingaenge_CheckedChanged(sender As Object, e As EventArgs) Handles cbxZahlungseingaenge.CheckedChanged
'initDGV(cbxZahlungseingaenge.Checked)
End Sub
Private Sub cboFirma_SelectedValueChanged(sender As Object, e As EventArgs) Handles cboFirma.SelectedValueChanged
If cboFirma._value <> "" AndAlso cboFirma._value = 19 Then
cbxZahlungseingaenge.Visible = True
Else
cbxZahlungseingaenge.Visible = False
cbxZahlungseingaenge.Checked = False
End If
End Sub
End Class