From 15c81d6254a18d43b32795901dab9ce76e86b62a Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Mon, 5 May 2025 17:37:02 +0200 Subject: [PATCH 1/3] FAktabr, UstAntrag, etc. --- SDL/Fakturierung/frmFaktEmail.vb | 27 ++++++++++++++++-- SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 28 +++++++++++++++---- SDL/My Project/AssemblyInfo.vb | 4 +-- SDL/USTV/frmMDM_USTVAntrag.vb | 7 +++-- .../Classes/USTV/cUSTVAntrag.vb | 7 +++-- 5 files changed, 58 insertions(+), 15 deletions(-) diff --git a/SDL/Fakturierung/frmFaktEmail.vb b/SDL/Fakturierung/frmFaktEmail.vb index 64aac63b..2be0bfe3 100644 --- a/SDL/Fakturierung/frmFaktEmail.vb +++ b/SDL/Fakturierung/frmFaktEmail.vb @@ -646,9 +646,30 @@ Public Class frmFaktEmail Mail.Display() - '------------------------------------------------------------------------------------------ - ' STB /FA - send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr) + If RECHNUNG.FilialenNr = 4817 And Firma_ID = 19 Then + + Dim SPEDBUCH = New VERAG_PROG_ALLGEMEIN.cSpeditionsbuch(RECHNUNG.FilialenNr, RECHNUNG.AbfertigungsNr, RECHNUNG.UnterNr) + + If SPEDBUCH.hasEntry AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then + + Dim USTV_ANTRAG As New cUSTVAntrag(RECHNUNG.ErfassungsNr) + Dim ANTR_ERSTATTUNG As New VERAG_PROG_ALLGEMEIN.cUStVErstattungPositionen(USTV_ANTRAG.UStVAn_ID, 1) + If Not ANTR_ERSTATTUNG.hasEntry Then + ANTR_ERSTATTUNG.GutschriftsDatum = RECHNUNG.RechnungsDatum + ANTR_ERSTATTUNG.GutschriftsNr = RECHNUNG.RechnungsNr + ANTR_ERSTATTUNG.UStVEr_Umrechnungskurs = 1 + ANTR_ERSTATTUNG.UStVEr_USteuerbetrag = RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + ANTR_ERSTATTUNG.UStVEr_USteuerbetragEUR = RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + ANTR_ERSTATTUNG.SAVE() + End If + End If + + + End If + + '------------------------------------------------------------------------------------------ + ' STB /FA + send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr) '------------------------------------------------------------------------------------------ Catch ex As Exception diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index 2eb57392..e097862b 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -1419,13 +1419,31 @@ Public Class usrCntlFaktAbrechnung POS.Preis = If(r.Cells("Preis").Value Is DBNull.Value, 0, CDbl(r.Cells("Preis").Value.ToString.Replace(".", ""))) POS.Anzahl = If(r.Cells("Anzahl").Value Is DBNull.Value, 0, r.Cells("Anzahl").Value) - If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Then 'MWST-Abrechnung! + If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10 Then 'MWST-Abrechnung! + Kompat. zu FM-Zoll Dim LeistungsBez = r.Cells("LeistungsBez").Value - If LeistungsBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.StartsWith(LeistungsBez.ToString) Then - POS.Anzahl = 1 - POS.Preis = SPEDBUCH.Rechnungsbetrag * -1 - End If + If LeistungsBez <> "" Then + Dim isMWST As Boolean = False + If SPEDBUCH.Packstücke.ToString.Contains("Mehrwertsteuerrückerstattung") Then + Dim LandNr As String = SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung ", "") + LandNr = LandNr.Substring(0, 2).Trim() + Dim LandBez = SQL.getValueTxtBySql("select LandKz from [Länderverzeichnis für die Außenhandelsstatistik] where LandNr = " & LandNr, "FMZOLL") + If LandBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung " & LandNr, "MWSt-Rückerstattung " & LandBez).StartsWith(LeistungsBez.ToString) Then isMWST = True + Else + + If SPEDBUCH.Packstücke.ToString().StartsWith(LeistungsBez.ToString) Then isMWST = True + + End If + If isMWST Then + POS.Anzahl = 1 + + If POS.Preis = 0 Then + POS.Preis = IIf(SPEDBUCH.Rechnungsbetrag IsNot Nothing, 0, SPEDBUCH.Rechnungsbetrag) * -1 + End If + + + End If + End If End If If POS.Anzahl = 0 And POS.BerechnungsartNr = 8 And POS.Preis <> 0 Then diff --git a/SDL/My Project/AssemblyInfo.vb b/SDL/My Project/AssemblyInfo.vb index d0b5114b..04cd0c6a 100644 --- a/SDL/My Project/AssemblyInfo.vb +++ b/SDL/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index 77075e4a..1279360b 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -19,6 +19,7 @@ Public Class frmMDM_USTVAntrag Dim von, bis As Date Dim func As New cMDMFunctionsAllgemein Dim dTLANDEU As New DataTable + Dim DiffernezbetragEUR As Double Sub New(UStVAn_ID) @@ -192,7 +193,7 @@ Public Class frmMDM_USTVAntrag Dim GesamtUSteuerEUR As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetragEUR),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtErstattungEUR As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetragEUR),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") - Dim DiffernezbetragEUR As Double = GesamtUSteuerEUR - GesamtErstattungEUR + DiffernezbetragEUR = GesamtUSteuerEUR - GesamtErstattungEUR Dim GesamtUSteuer As Double = SQL.DLookup("isnull(sum(UStVPo_USteuerbetrag),0)", "tblUStVPositionen", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") Dim GesamtErstattung As Double = SQL.DLookup("isnull(sum(UStVEr_USteuerbetrag),0)", "tblUStVErstattung", "UStVAn_ID='" & UStVAn_ID & "'", "FMZOLL", "0") @@ -2677,7 +2678,7 @@ Public Class frmMDM_USTVAntrag Exit Sub End If - If USTV_ANTRAG.UStVAn_ErstattungsbetragEUR = 0 Then + If DiffernezbetragEUR = 0 Then If Not vbYes = MsgBox("Der Erstattungsbetrag beträgt 0 EUR." & vbNewLine & "Fortfahren?", vbYesNo) Then Exit Sub End If @@ -2694,7 +2695,7 @@ Public Class frmMDM_USTVAntrag .Abfertigungsanzahl = 1 .Packstücke = "MWSt-Rückerstattung " & Antrag_LandKz & " / " & USTV_ANTRAG.UStVAn_ReDatVon & " - " & USTV_ANTRAG.UStVAn_ReDatBis .VermittlerKundenNr = USTV_ANTRAG.UStVAn_KuNr - .Rechnungsbetrag = USTV_ANTRAG.UStVAn_ErstattungsbetragEUR * -1 + .Rechnungsbetrag = DiffernezbetragEUR * -1 If .SAVE() Then MsgBox("Sped-Eintrag wurde angelegt") init() diff --git a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb index 97ee76ac..3ec5fc4e 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/USTV/cUSTVAntrag.vb @@ -1,7 +1,6 @@  Imports System.Data.SqlClient Imports System.Reflection -Imports Org.BouncyCastle.Ocsp Public Class cUSTVAntrag @@ -475,6 +474,8 @@ Public Class cUStVErstattungPositionen Property UStVEr_Zeitstempel As Object = Nothing Property UStVEr_daId As Object = Nothing + Public hasEntry = False + Dim SQL As New SQL @@ -514,6 +515,8 @@ Public Class cUStVErstattungPositionen Public Sub LOAD(UStVAn_ID, UStVEr_ID) Try + hasEntry = False + Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE UStVAn_ID=@UStVAn_ID AND UStVEr_ID=@UStVEr_ID ", conn) cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID) @@ -529,7 +532,7 @@ Public Class cUStVErstattungPositionen propInfo.SetValue(Me, dr.Item(i.Text)) End If Next - + hasEntry = True End If dr.Close() End Using From af7630f1df8500436dea364b5f7458a151e355b9 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Tue, 6 May 2025 10:38:39 +0200 Subject: [PATCH 2/3] MDMFunct., Fakt. --- SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 8 ++++---- VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index e097862b..467f8901 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -1763,7 +1763,7 @@ Public Class usrCntlFaktAbrechnung 'Anhänge aus USTVA -> SPED-BUCH + Excel Pos-Liste If SPEDBUCH IsNot Nothing Then If FIRMA IsNot Nothing Then - If FIRMA.Firma_ID = 19 AndAlso SPEDBUCH.ErfassungsNr > 0 AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then + If FIRMA.Firma_ID = 19 AndAlso SPEDBUCH.ErfassungsNr <> "" AndAlso SPEDBUCH.ErfassungsNr > 0 AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115) Then Dim func As New cMDMFunctionsAllgemein() Dim dt = SQL.loadDgvBySql("SELECT UStVPo_daId, UStVPo_ID,UStVPo_SchnittstellenNr, UStVPo_ReNr, UStVPo_ReDat FROM tblUStVPositionen where UStVAn_ID='" & SPEDBUCH.ErfassungsNr & "' AND UStVPo_SchnittstellenNr <> 1 order by UStVPo_ID", "FMZOLL") @@ -1798,14 +1798,14 @@ Public Class usrCntlFaktAbrechnung End If Dim pfadExcel As String = func.generateExcelPosList(USTV, "", "", "", False) 'soll immer alle POS bekommen! laut Lidya! 28.04.2025 - If pfadExcel <> "" Then + If pfadExcel <> "" Then - Dim FI As New FileInfo(pfadExcel) + Dim FI As New FileInfo(pfadExcel) Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", SPEDBUCH.AbfertigungsNr & FI.Extension, USTV.UStVAn_KuNr, False) DS.uploadDataToDATENSERVER(pfadExcel, FI.Name, FI.Extension,,,, True) .Rows.Add(0, "POS-LIST", DS.da_name, DS.da_id, DS.da_id) - End If End If + End If End If End If diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb b/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb index 86d807dc..c17f8080 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cMDMFunctionsAllgemein.vb @@ -1098,7 +1098,7 @@ Public Class cMDMFunctionsAllgemein Dim header1 As String = "" Dim header2 As String = "" Dim AD As New cAdressen(USTV_ANTRAG.UStVAn_KuNr) - If Antrag_LandKz <> "" AndAlso SteuerNR <> "" Then + If Antrag_LandKz <> "" Then header1 = "Statement itemising VAT amounts relating to the period covered by this application" header2 = "VAT NO.: " & USTV_ANTRAG.UStVAn_Steuernummer & " " & "Name/Company: " & AD.Name_1 & " " & AD.Name_2 & " " & "VAT in " & Antrag_LandKz & ": " & SteuerNR End If From d78c1cc70ab4f4997d028e8bf7726063502de52d Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Tue, 6 May 2025 15:36:52 +0200 Subject: [PATCH 3/3] fakt, Abrechnung, ustva. --- SDL/Fakturierung/usrCntlFaktAbrechnung.vb | 79 ++++++++++++++--------- SDL/USTV/frmMDM_USTVAntrag.vb | 1 - SDL/buchhaltung/frmBU_Mahnlauf.vb | 39 +++++------ 3 files changed, 70 insertions(+), 49 deletions(-) diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb index 467f8901..1e351273 100644 --- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb +++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb @@ -2,6 +2,7 @@ Imports System.IO Imports System.Web.UI.WebControls.Expressions Imports Chilkat +Imports com.sun.org.apache.bcel.internal.generic Imports VERAG_PROG_ALLGEMEIN Public Class usrCntlFaktAbrechnung @@ -1401,11 +1402,11 @@ Public Class usrCntlFaktAbrechnung Try If dgvOfferteDetailsUebersicht.Columns IsNot Nothing AndAlso dgvOfferteDetailsUebersicht.Columns("LeistungsNr") IsNot Nothing Then dgvOfferteDetailsUebersicht.Sort(dgvOfferteDetailsUebersicht.Columns("LeistungsNr"), System.ComponentModel.ListSortDirection.Ascending) Catch ex As Exception - End Try - - Try + Dim landNr As String = "" + Dim landBez = CheckLandNr_getLandBezFromLandNr(landNr) + For Each r As DataGridViewRow In dgvOfferteDetailsUebersicht.Rows If r.Cells("Anzahl").Value IsNot DBNull.Value AndAlso Not IsNumeric(r.Cells("Anzahl").Value) Then r.Cells("Anzahl").Value = 0 If r.Cells("Preis").Value IsNot DBNull.Value AndAlso Not IsNumeric(r.Cells("Preis").Value) Then r.Cells("Preis").Value = 0 @@ -1419,32 +1420,10 @@ Public Class usrCntlFaktAbrechnung POS.Preis = If(r.Cells("Preis").Value Is DBNull.Value, 0, CDbl(r.Cells("Preis").Value.ToString.Replace(".", ""))) POS.Anzahl = If(r.Cells("Anzahl").Value Is DBNull.Value, 0, r.Cells("Anzahl").Value) - If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10 Then 'MWST-Abrechnung! + Kompat. zu FM-Zoll - Dim LeistungsBez = r.Cells("LeistungsBez").Value - If LeistungsBez <> "" Then - Dim isMWST As Boolean = False - If SPEDBUCH.Packstücke.ToString.Contains("Mehrwertsteuerrückerstattung") Then - Dim LandNr As String = SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung ", "") - LandNr = LandNr.Substring(0, 2).Trim() - Dim LandBez = SQL.getValueTxtBySql("select LandKz from [Länderverzeichnis für die Außenhandelsstatistik] where LandNr = " & LandNr, "FMZOLL") + '-----------------------MWST-Abrechnung! + Kompat. zu FM-Zoll + setMWSTABRfromSPEDinPOS(r, POS, landNr, landBez) + '-----------------------MWST-Abrechnung! + Kompat. zu FM-Zoll - If LandBez <> "" AndAlso SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung " & LandNr, "MWSt-Rückerstattung " & LandBez).StartsWith(LeistungsBez.ToString) Then isMWST = True - Else - - If SPEDBUCH.Packstücke.ToString().StartsWith(LeistungsBez.ToString) Then isMWST = True - - End If - If isMWST Then - POS.Anzahl = 1 - - If POS.Preis = 0 Then - POS.Preis = IIf(SPEDBUCH.Rechnungsbetrag IsNot Nothing, 0, SPEDBUCH.Rechnungsbetrag) * -1 - End If - - - End If - End If - End If If POS.Anzahl = 0 And POS.BerechnungsartNr = 8 And POS.Preis <> 0 Then POS.Preis = 0 'Wenn Anzahl =0 bei Berart 8, dann Preis auch 0 @@ -1791,7 +1770,7 @@ Public Class usrCntlFaktAbrechnung If DAID <> "" AndAlso IsNumeric(DAID) Then Dim daidno As Integer = CInt(DAID) Dim ds As New cDATENSERVER(daidno) - .Rows.Add(0, nameLief, ds.da_name, ds.da_id, ds.da_id) + .Rows.Add(1, nameLief, ds.da_name, ds.da_id, ds.da_id) End If Next @@ -1803,7 +1782,7 @@ Public Class usrCntlFaktAbrechnung Dim FI As New FileInfo(pfadExcel) Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", SPEDBUCH.AbfertigungsNr & FI.Extension, USTV.UStVAn_KuNr, False) DS.uploadDataToDATENSERVER(pfadExcel, FI.Name, FI.Extension,,,, True) - .Rows.Add(0, "POS-LIST", DS.da_name, DS.da_id, DS.da_id) + .Rows.Add(1, "POS-LIST", DS.da_name, DS.da_id, DS.da_id) End If End If @@ -4364,6 +4343,46 @@ Nächste_Textzeile_lesen: End Try End Sub + Private Function CheckLandNr_getLandBezFromLandNr(ByRef LandNr As String) As String + Dim landbez As String = "" + If SPEDBUCH Is Nothing Then Return landbez + If SPEDBUCH.Packstücke.ToString.Contains("Mehrwertsteuerrückerstattung") Then + LandNr = SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung ", "") + LandNr = LandNr.Substring(0, 2).Trim() + If IsNumeric(LandNr) Then + landbez = SQL.getValueTxtBySql("select LandKz from [Länderverzeichnis für die Außenhandelsstatistik] where LandNr = " & LandNr, "FMZOLL") + Return landbez + ElseIf LandNr = "AT" Then + landbez = LandNr + Return landbez + End If + End If + Return landbez + End Function + + Private Sub setMWSTABRfromSPEDinPOS(r As DataGridViewRow, POS As cRechnungsausgangPositionen, LandNr As String, LandBez As String) + + If SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10 Then + Dim LeistungsBez = r.Cells("LeistungsBez").Value + If LeistungsBez <> "" Then + Dim isMWST As Boolean = False + If LandBez <> "" AndAlso LandNr <> "" Then + If SPEDBUCH.Packstücke.ToString.Replace("Mehrwertsteuerrückerstattung " & LandNr, "MWSt-Rückerstattung " & LandBez).StartsWith(LeistungsBez.ToString) Then isMWST = True + Else + If SPEDBUCH.Packstücke.ToString().StartsWith(LeistungsBez.ToString) Then isMWST = True + End If + + If isMWST Then + POS.Anzahl = 1 + + If POS.Preis = 0 Then + POS.Preis = IIf(SPEDBUCH.Rechnungsbetrag Is Nothing, 0, SPEDBUCH.Rechnungsbetrag) * -1 + End If + + End If + End If + End If + End Sub End Class \ No newline at end of file diff --git a/SDL/USTV/frmMDM_USTVAntrag.vb b/SDL/USTV/frmMDM_USTVAntrag.vb index 1279360b..928f08a6 100644 --- a/SDL/USTV/frmMDM_USTVAntrag.vb +++ b/SDL/USTV/frmMDM_USTVAntrag.vb @@ -2719,7 +2719,6 @@ Public Class frmMDM_USTVAntrag - End Sub Private Sub initdgvErstattungen(Optional posIndex As Integer = -1) diff --git a/SDL/buchhaltung/frmBU_Mahnlauf.vb b/SDL/buchhaltung/frmBU_Mahnlauf.vb index fee5dc56..233fe891 100644 --- a/SDL/buchhaltung/frmBU_Mahnlauf.vb +++ b/SDL/buchhaltung/frmBU_Mahnlauf.vb @@ -46,21 +46,20 @@ Public Class frmBU_Mahnlauf " & If(MyComboBox1._value > 0, " and max(si_mahnstufe)>='" & MyComboBox1._value & "'", "") & " ORDER BY KTO.c_name" - Dim sqlStringVerag360 = "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, - + Dim sqlStringVerag360 = "SELECT i_personenkonto Konto,KTO.c_name, KTO.c_landid Land,max(KTO.dec_aktuellersaldo) as Saldo,/*KTO.c_plz + ' ' + KTO.c_ort Ort,isnull(KTO.c_email,'') Email, */ " & + "cast(min (OWNFIELD_Belegdatum)as date) as 'ältesteRg', sum(eur_bruttobetrag+eur_zahlung) as Ausstand,min(op.d_netto) Faelligkeit,max(si_mahnstufe) as MS,max(KTO.dec_wert3) as Risiko, cast(MAX(d_mahnung)as date) Mahndatum,max(Kunden.UStV_Summe3470BetragEUR) as '3470' ,max(Kunden.UStV_SummeVZBetragEUR) as V, 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' + when max(si_mahnstufe) = 1 Then 'telefonisch' + when max(si_mahnstufe) = 2 Then 'Freitag' + when max(si_mahnstufe) = 3 Then 'Donnerstag' + when max(si_mahnstufe) = 4 Then 'Mittwoch' + when max(si_mahnstufe) >= 5 Then 'gesperrt' else '-' - End as sperre" & If(cbxNurFaellig.Checked, "", ",SUM(CASE WHEN op.d_netto(1) ", "") & " " & If(KdNr > 0, " AND i_personenkonto ='" & KdNr & "'", "") & " @@ -124,34 +123,38 @@ Public Class frmBU_Mahnlauf .Columns("Land").Width = 40 - .Columns("Anzahl").Width = 40 If Firma_ID = 19 Then - .Columns("Zahlungsinfo").Width = 300 .Columns("ältesteRg").Width = 75 + .Columns("MS").Width = 50 + .Columns("Faelligkeit").Width = 75 + .Columns("Faelligkeit").HeaderText = "Fälligkeit" Else .Columns("Email").Width = 150 .Columns("Ort").Width = 150 - + .Columns("Anzahl").Width = 40 + .Columns("Faelligkeit").Width = 75 + .Columns("Faelligkeit").HeaderText = "Fälligkeit" + .Columns("Ausstand").HeaderText = "Betrag" + .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 If End With