diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index c3dd234b..6b5de5e6 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -5,6 +5,7 @@ Imports Microsoft.Office.Interop Imports VERAG_PROG_ALLGEMEIN Imports s2industries.ZUGFeRD Imports System.IO +Imports GrapeCity.ActiveReports.Core.Rendering.Tools Public Class cFakturierung @@ -1736,7 +1737,7 @@ Public Class cFakturierung Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function @@ -1828,7 +1829,7 @@ Public Class cFakturierung 'Summe aller Rechnungspositions-Nettobeträge der Rechnung Dim lineTotalAmont = sumNetto 'Der Gesamtbetrag der Umsatzsteuer für die Rechnung, - Dim taxTotalAmount = IIf(RECHNUNG.SteuerpflichtigerGesamtbetrag <> 0, Math.round(Convert.ToDecimal(RECHNUNG.SteuerpflichtigerGesamtbetrag) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) + Dim taxTotalAmount = IIf(RECHNUNG.SteuerpflichtigerGesamtbetrag <> 0, Math.Round(Convert.ToDecimal(RECHNUNG.SteuerpflichtigerGesamtbetrag) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) ' Die Gesamtsumme der Rechnung ohne Umsatzsteuer ' RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 Dim taxBasisAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 - taxTotalAmount) 'Der Gesamtbetrag der Rechnung mit Umsatzsteuer @@ -1851,6 +1852,12 @@ Public Class cFakturierung desc.AddTradePaymentTerms(RECHNUNG.TextZZ, zahlungszieldatum) + 'If RECHNUNG.TextZZ.ToString.Contains("Abbuchungsauftrag") Then + ' desc.SetPaymentMeansSepaDirectDebit("", "") + 'Else + desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, RECHNUNG.TextZZ) + 'End If + Dim isReverseCharge = isReverseChargeSumme(FIRMA, RECHNUNG) If RECHNUNG.SteuerfreierGesamtbetrag > 0 Then @@ -1863,17 +1870,17 @@ Public Class cFakturierung Select Case FIRMA.Firma_ID Case 21, 22, 23 '"UNISPED" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) Case 26 'VERAG-UNISPED" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) Case 24 'AMBAR" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) desc.AddCreditorFinancialAccount("TR90 0006 2001 6040 0009 0804 66", "TGBATRISXXX",,, "Garanti Bank Türkei – Euro Konto") @@ -1892,9 +1899,14 @@ Public Class cFakturierung End If End If End If + + + Case 19 + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + Case Else 'VERAG,ATILLA - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) End Select @@ -2088,7 +2100,7 @@ Public Class cFakturierung 'Summe aller Rechnungspositions-Nettobeträge der Rechnung Dim lineTotalAmont = sumNetto 'Der Gesamtbetrag der Umsatzsteuer für die Rechnung, - Dim taxTotalAmount = IIf(Gesamt_RG_BetragSteuerpflichtig <> 0, Math.round(Convert.ToDecimal(Gesamt_RG_BetragSteuerpflichtig) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) + Dim taxTotalAmount = IIf(Gesamt_RG_BetragSteuerpflichtig <> 0, Math.Round(Convert.ToDecimal(Gesamt_RG_BetragSteuerpflichtig) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) ' Die Gesamtsumme der Rechnung ohne Umsatzsteuer ' RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 Dim taxBasisAmount = Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei + Gesamt_RG_BetragSteuerpflichtig + 0 - 0 - taxTotalAmount) 'Der Gesamtbetrag der Rechnung mit Umsatzsteuer @@ -2110,19 +2122,25 @@ Public Class cFakturierung desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum) + 'If RECHNUNG.TextZZ.ToString.Contains("Abbuchungsauftrag") Then + ' desc.SetPaymentMeansSepaDirectDebit("", "") + 'Else + desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rpt.Label2.Text) + 'End If + Select Case FIRMA.Firma_ID Case 21, 22, 23 '"UNISPED" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) Case 26 'VERAG-UNISPED" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) Case 24 'AMBAR" - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) desc.AddCreditorFinancialAccount("TR90 0006 2001 6040 0009 0804 66", "TGBATRISXXX",,, "Garanti Bank Türkei – Euro Konto") @@ -2138,19 +2156,19 @@ Public Class cFakturierung desc.AddCreditorFinancialAccount("AT62 4480 0365 7822 0001", "VBOEATWWOOE", ) Else desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "VBOEATWWOOE", ,, "Volksbank Oberösterreich AG") + End If End If End If - End If + + Case 19 + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + Case Else 'VERAG,ATILLA - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN1, FIRMA.Firma_BIC1,,, FIRMA.Firma_Bankverbindung1) - desc.AddCreditorFinancialAccount(FIRMA.Firma_IBAN2, FIRMA.Firma_BIC2,,, FIRMA.Firma_Bankverbindung2) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN1 IsNot Nothing, FIRMA.Firma_IBAN1.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC1 IsNot Nothing, FIRMA.Firma_BIC1.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung1 IsNot Nothing, FIRMA.Firma_Bankverbindung1, "")) + desc.AddCreditorFinancialAccount(IIf(FIRMA.Firma_IBAN2 IsNot Nothing, FIRMA.Firma_IBAN2.ToString.Replace("IBAN: ", ""), ""), IIf(FIRMA.Firma_BIC2 IsNot Nothing, FIRMA.Firma_BIC2.ToString.Replace("BIC: ", ""), ""),,, IIf(FIRMA.Firma_Bankverbindung2 IsNot Nothing, FIRMA.Firma_Bankverbindung2, "")) End Select - - - - Dim isReverseCharge = IIf(getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), "") > 0, True, False) @@ -2245,7 +2263,7 @@ Public Class cFakturierung End If End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Sub @@ -2258,7 +2276,7 @@ Public Class cFakturierung Next End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Sub @@ -2276,7 +2294,7 @@ Public Class cFakturierung Process.Start(pathPDF) End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Sub @@ -2294,7 +2312,7 @@ Public Class cFakturierung End If End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return "" End Function @@ -2908,7 +2926,7 @@ Public Class cFakturierung lastAktuelle_RgNr = Aktuelle_RgNr Return True Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function @@ -2929,18 +2947,14 @@ Public Class cFakturierung Dim dt As DataTable If SRDruckWiederholen Then - dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, "3,4,5") ' 3,4,5-_> irgendebbs + dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, "3,4,5", ) ' 3,4,5-_> irgendebbs Else 'Dim RG_NR = New VERAG_PROG_ALLGEMEIN.cRechnungsnummern(Firma_ID, Buchungsjahr) 'RG_NR.INCREASE_RGNR() 'für die nächste Rechnung - If RechnungsdruckArt = 7 Then - dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, 2, [VorschauID]) - Else - dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, 3, [VorschauID]) - - End If - ' 3-_> Anlagen gedruckt + dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, IIf(RechnungsdruckArt = 7, 2, 3), [VorschauID]) End If + ' 3-_> Anlagen gedruckt + If dt Is Nothing OrElse dt.Rows.Count <= 0 Then MsgBox("ERR03: Keine Daten!") : Return False @@ -3073,12 +3087,7 @@ Public Class cFakturierung Shared Function doSAMMELRechnungDruck_Rechnungsdruck_Anlagen(RechnungsNr As Integer, DruckDatumZeit As Date, PrinterName As String, Optional ByRef pathPDF_Anlage As List(Of String) = Nothing, Optional RechnungsdruckArt As Integer = -1, Optional VorschauID As String = "") As Boolean Dim dt As DataTable If VorschauID = "" Then - If RechnungsdruckArt = 7 Then - SQL.loadDgvBySql("Select RK_ID FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(2) And Convert(DateTime, DruckDatumZeit, 104) ='" & DruckDatumZeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") - Else - SQL.loadDgvBySql("Select RK_ID FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(3) And Convert(DateTime, DruckDatumZeit, 104) ='" & DruckDatumZeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") - End If - + SQL.loadDgvBySql("Select RK_ID FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(" & IIf(RechnungsdruckArt = 7, "2", "3") & ") And Convert(DateTime, DruckDatumZeit, 104) ='" & DruckDatumZeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") Else SQL.loadDgvBySql("SELECT RK_ID FROM Rechnungsausgang WHERE RechnungsNr is null AND VorschauID='" & VorschauID & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") End If @@ -3182,7 +3191,7 @@ Public Class cFakturierung End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function @@ -3286,7 +3295,7 @@ Public Class cFakturierung End If Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function @@ -3347,26 +3356,25 @@ Public Class cFakturierung ' If ROW("SteuerpflichtigerBetrag") IsNot DBNull.Value AndAlso IsNumeric(ROW("SteuerpflichtigerBetrag")) Then Gesamt_RG_Betrag += ROW("SteuerpflichtigerBetrag") Dim BelegartenKz = "AR" 'If(Gesamt_RG_Betrag < 0, "AG", "AR") - - Select Case ROW("RechnungSprache") + Select Case ROW("RechnungSprache") Case "EN" Select Case BelegartenKz Case "AR" - rpt.lblUeberschriftRG_GS.Text = "Attatchment to INVOICE" - rpt.lblSummeUeberschrift.Text = "Invoice Amount:" + rpt.lblUeberschriftRG_GS.Text = IIf(Rechnugnsdruck <> 7, "Attatchment to INVOICE", "INVOICE") + rpt.lblSummeUeberschrift.Text = "Invoice Amount:" rpt.lblRgNrUeberschrift.Text = "Invoice No.:" rpt.lblRgDatumUeberschrift.Text = "Invoice Date:" Case "AG" - rpt.lblUeberschriftRG_GS.Text = "Attatchment to CREDIT NOTE" - rpt.lblSummeUeberschrift.Text = "Credit Amount:" + rpt.lblUeberschriftRG_GS.Text = IIf(Rechnugnsdruck <> 7, "Attatchment to CREDIT NOTE", "CREDIT NOTE") + rpt.lblSummeUeberschrift.Text = "Credit Amount:" rpt.lblRgNrUeberschrift.Text = "Credit Note No.:" rpt.lblRgDatumUeberschrift.Text = "Credit Note Date:" End Select Case Else Select Case BelegartenKz Case "AR" - rpt.lblUeberschriftRG_GS.Text = "Anlage zur Sammelrechnung" - Case "AG" + rpt.lblUeberschriftRG_GS.Text = IIf(Rechnugnsdruck <> 7, "Anlage zur Sammelrechnung", "Sammelrechnung") + Case "AG" rpt.lblUeberschriftRG_GS.Text = "GUTSCHRIFT" rpt.lblSummeUeberschrift.Text = "Gutschriftsbetrag:" rpt.lblRgNrUeberschrift.Text = "Gutschrifts-Nr.:" @@ -3377,14 +3385,17 @@ Public Class cFakturierung - initRgFirmaSammelRg_Bericht(rpt, FIRMA, RechnungsNr, ROW("RechnungsLandKz"), ROW("Buchungsjahr")) + + + initRgFirmaSammelRg_Bericht(rpt, FIRMA, RechnungsNr, ROW("RechnungsLandKz"), ROW("Buchungsjahr")) Select Case ROW("Firma_ID") Case 1 ' rpt.picVERAG.Image= My.Resources.Verag_AG_Logo : rpt.Picture1.Image = My.Resources.aeo_AT_imex is eh standard Case 4 : rpt.picVERAG.Image = My.Resources.Verag_AG_Logo : rpt.Picture1.Image = Nothing Case 7 : rpt.picVERAG.Image = My.Resources.Atilla_big_med : rpt.Picture1.Image = Nothing Case 11 : rpt.picVERAG.Image = My.Resources.Verag_Customs_Service_GMBH_Logo : rpt.Picture1.Image = My.Resources.aeo_CS - Case 20 : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Picture1.Image = My.Resources.aeo_AT_imex + Case 19 : rpt.picVERAG.Image = My.Resources.VERAG_360 : rpt.Picture1.Image = Nothing + Case 20 : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Picture1.Image = My.Resources.aeo_AT_imex Case 21 : rpt.picVERAG.Image = My.Resources.Unisped_logo : rpt.Picture1.Image = My.Resources.unisped_aeo_AT Case 22 : rpt.picVERAG.Image = My.Resources.Unisped_DE_logo : rpt.Picture1.Image = My.Resources.unisped_aeo_DE Case 23 : rpt.picVERAG.Image = My.Resources.Unisped_ZS_logo : rpt.Picture1.Image = My.Resources.unisped_aeo_ZS_AT @@ -3422,22 +3433,24 @@ Public Class cFakturierung If ROW("RechnungsName_AdressZusatz") IsNot DBNull.Value AndAlso ROW("RechnungsName_AdressZusatz") <> "" Then rpt.lblRechnungAn.Text &= ROW("RechnungsName_AdressZusatz") & vbNewLine If ROW("RechnungsStraße") IsNot DBNull.Value AndAlso ROW("RechnungsStraße") <> "" Then rpt.lblRechnungAn.Text &= ROW("RechnungsStraße") & vbNewLine If ROW("RechnungsOrt") IsNot DBNull.Value AndAlso ROW("RechnungsOrt") <> "" Then rpt.lblRechnungAn.Text &= ROW("RechnungsOrt") & vbNewLine - If ROW("RechnungsLandKz") IsNot DBNull.Value AndAlso ROW("RechnungsLandKz") <> "" Then rpt.lblRechnungAn.Text &= cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper + If ROW("RechnungsLandKz") IsNot DBNull.Value AndAlso ROW("RechnungsLandKz") <> "" Then rpt.lblRechnungAn.Text &= cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper - 'If If(ROW("RechnungsName 2") IsNot DBNull.Value, ROW("RechnungsName 2"), "") = "" Then - ' rpt.lblRechnung_Name1.Text = "" - ' rpt.lblRechnung_Name2.Text = ROW("RechnungsName 1") - 'Else - ' rpt.lblRechnung_Name1.Text = ROW("RechnungsName 1") - ' rpt.lblRechnung_Name2.Text = If(ROW("RechnungsName 2") IsNot DBNull.Value, ROW("RechnungsName 2"), "") - 'End If + If Rechnugnsdruck = 7 Then If ROW("Text") IsNot DBNull.Value AndAlso ROW("Text") <> "" Then rpt.txtInfo.Text = vbNewLine & vbNewLine & ROW("Text") - 'rpt.lblRechnung_Strasse.Text = If(ROW("RechnungsStraße") IsNot DBNull.Value, ROW("RechnungsStraße"), "") - 'rpt.lblRechnung_Ort.Text = If(ROW("RechnungsOrt") IsNot DBNull.Value, ROW("RechnungsOrt"), "") - 'rpt.lblRechnung_Land.Text = cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper + 'If If(ROW("RechnungsName 2") IsNot DBNull.Value, ROW("RechnungsName 2"), "") = "" Then + ' rpt.lblRechnung_Name1.Text = "" + ' rpt.lblRechnung_Name2.Text = ROW("RechnungsName 1") + 'Else + ' rpt.lblRechnung_Name1.Text = ROW("RechnungsName 1") + ' rpt.lblRechnung_Name2.Text = If(ROW("RechnungsName 2") IsNot DBNull.Value, ROW("RechnungsName 2"), "") + 'End If + + 'rpt.lblRechnung_Strasse.Text = If(ROW("RechnungsStraße") IsNot DBNull.Value, ROW("RechnungsStraße"), "") + 'rpt.lblRechnung_Ort.Text = If(ROW("RechnungsOrt") IsNot DBNull.Value, ROW("RechnungsOrt"), "") + 'rpt.lblRechnung_Land.Text = cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper - If KD_RG IsNot Nothing AndAlso If(KD_RG.Steuernummer, "") <> String.Empty Then + If KD_RG IsNot Nothing AndAlso If(KD_RG.Steuernummer, "") <> String.Empty Then rpt.lblRechnung_Steuernummer.Text = If(KD_RG.LandKz, "") & " " & If(KD_RG.Steuernummer, "").ToString.Trim ' rpt.lblRechnung_UID.Text = If(KD_RG.UstIdKz, "") & " " & If(KD_RG.UstIdNr, "").ToString.Trim Else @@ -3451,9 +3464,10 @@ Public Class cFakturierung rpt.lblRechnung_UID.Visible = (rpt.lblRechnung_UID.Text <> String.Empty) rpt.lblRechnung_UID_Ueberschrift.Visible = (rpt.lblRechnung_UID.Text <> String.Empty) + If Rechnugnsdruck = 7 Then rpt.lblSteuerfreiUeberschrift.Text = "DURCHLAUFPOSTEN/nicht steuerbar" - Dim sumSteuerpflichtig As Double = 0 + Dim sumSteuerpflichtig As Double = 0 Dim sumSteuerfrei As Double = 0 @@ -3526,10 +3540,14 @@ Public Class cFakturierung Dim KUNDE_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(RECHNUNG.RechnungsKundenNr) If KUNDE_ERW.kde_FakturierungSR_Details OrElse Rechnugnsdruck = 7 Then Dim subRpt = New rptSammelRechnungAnlagenDruck_Leistungen(rpt._LAN, RECHNUNG) + + rpt.SubReport.Report = subRpt rpt.lblSteuerfrei.Font = New Font(rpt.lblSteuerfrei.Font, FontStyle.Bold) rpt.lblSteuerpflichtig.Font = New Font(rpt.lblSteuerfrei.Font, FontStyle.Bold) + + 'txtPackstuecke.Top += SubReport.Height 'txtKdAuftragsnummer.Top += SubReport.Height 'txtSendungsdetails.Top += SubReport.Height @@ -3670,7 +3688,7 @@ Public Class cFakturierung Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function @@ -4117,7 +4135,7 @@ Public Class cFakturierung Catch ex As Exception - MsgBox(ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.vb b/SDL/Fakturierung/frmAbrechnungsMaske.vb index 1f7a2d78..e84ae3d2 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaske.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaske.vb @@ -247,8 +247,8 @@ Public Class frmAbrechnungsMaske End If End If Else - sqlstr &= " And (Status = 0 or DruckDatumZeit is null) " - End If + sqlstr &= " And (Status = 0 or DruckDatumZeit is null) " + End If If MyComboBox1._value <> "" Then sqlstr &= " And Rechnungsdruck='" & MyComboBox1._value & "' " diff --git a/SDL/Fakturierung/frmFaktEmail.Designer.vb b/SDL/Fakturierung/frmFaktEmail.Designer.vb index 790c0c42..b10d3dbc 100644 --- a/SDL/Fakturierung/frmFaktEmail.Designer.vb +++ b/SDL/Fakturierung/frmFaktEmail.Designer.vb @@ -82,6 +82,7 @@ Partial Class frmFaktEmail Me.clmnAnhId = New System.Windows.Forms.DataGridViewTextBoxColumn() Me.Label7 = New System.Windows.Forms.Label() Me.Button5 = New System.Windows.Forms.Button() + Me.lklcc = New System.Windows.Forms.LinkLabel() CType(Me.dgvEmailBCC, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmailCC, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.dgvEmail, System.ComponentModel.ISupportInitialize).BeginInit() @@ -291,7 +292,7 @@ Partial Class frmFaktEmail ' Me.lkl.Location = New System.Drawing.Point(67, 27) Me.lkl.Name = "lkl" - Me.lkl.Size = New System.Drawing.Size(539, 18) + Me.lkl.Size = New System.Drawing.Size(220, 18) Me.lkl.TabIndex = 0 ' 'Label3 @@ -688,12 +689,20 @@ Partial Class frmFaktEmail Me.Button5.Text = "RO" Me.Button5.UseVisualStyleBackColor = True ' + 'lklcc + ' + Me.lklcc.Location = New System.Drawing.Point(295, 27) + Me.lklcc.Name = "lklcc" + Me.lklcc.Size = New System.Drawing.Size(220, 18) + Me.lklcc.TabIndex = 94 + ' 'frmFaktEmail ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.BackColor = System.Drawing.Color.WhiteSmoke Me.ClientSize = New System.Drawing.Size(750, 850) + Me.Controls.Add(Me.lklcc) Me.Controls.Add(Me.Button5) Me.Controls.Add(Me.Label7) Me.Controls.Add(Me.dgvAnhaenge) @@ -799,4 +808,5 @@ Partial Class frmFaktEmail Friend WithEvents clmnDsId As DataGridViewTextBoxColumn Friend WithEvents clmnAnhId As DataGridViewTextBoxColumn Friend WithEvents Button5 As Button + Friend WithEvents lklcc As LinkLabel End Class diff --git a/SDL/Fakturierung/frmFaktEmail.vb b/SDL/Fakturierung/frmFaktEmail.vb index a7e31061..38e55461 100644 --- a/SDL/Fakturierung/frmFaktEmail.vb +++ b/SDL/Fakturierung/frmFaktEmail.vb @@ -156,6 +156,7 @@ Public Class frmFaktEmail If AD.AdressenNr = 800020 Then cbxTransFerry.Checked = True 'TRANS FERRY 360 If AD.E_Mail IsNot Nothing AndAlso AD.E_Mail <> "" Then lkl.Text = """" & AD.E_Mail & """ anfügen" : lkl.Tag = AD.E_Mail + If AD.E_Mail2 IsNot Nothing AndAlso AD.E_Mail2 <> "" Then lklcc.Text = """" & AD.E_Mail2 & """ anfügen" : lklcc.Tag = AD.E_Mail2 lblKunde.Text = AD.AdressenNr & " - " & AD.Ordnungsbegriff Dim email_receipt As String = "" @@ -224,6 +225,7 @@ Public Class frmFaktEmail Dim txtRgNr = "" Dim BelegartenNr = "70" + Dim steuerbetrag As Double = 0 Try If SR Then @@ -231,6 +233,7 @@ Public Class frmFaktEmail If SR_DT IsNot Nothing AndAlso SR_DT.Rows.Count > 0 Then BelegartenNr = SR_DT.Rows(0)("BelegartenNr") For Each r In SR_DT.Rows + steuerbetrag += r("steuerpflichtigerGesamtbetrag") If BelegartenNr <> r("BelegartenNr") Then BelegartenNr = "70" : Exit For 'Im Zweifel 70 Next End If @@ -279,25 +282,50 @@ Public Class frmFaktEmail TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & "" End Select Else + + Dim mailText As String = "" + If steuerbetrag = 0 Then + mailText &= (New SQL).getValueTxtBySql("SELECT Text FROM Rechnungstexte WHERE Firma_ID=0 AND EMailRechnung=1 AND Rechnungstexte.DrucksteuerungsKz='R' AND LandKZ='" & RechnungsLandKz & "'", "FMZOLL") + End If + Select Case RechnungsLandKz Case "TR" txtSubject.Text = If(BelegartenNr = 71, "Kredi Nr. ", "Fatura Nr. ") & txtRgNr - TextHTML = "Sayin yetkili," & vbNewLine & vbNewLine & "ekte baslikta yazan faturayi bulabilirsinz." + TextHTML = "Sayin yetkili," & vbNewLine & vbNewLine & "ekte yeni Faturanizi ve Dökümünü bulabilirsiniz." TextHTML &= TextHTMLADD + TextHTML &= "" & vbNewLine & "Fatura kopileri kdv iadesi icin kullanilamaz." + If mailText <> "" Then TextHTML &= mailText & vbNewLine TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Saygilarimizla" & vbNewLine & vbNewLine & "" Case "A", "AT", "D", "DE", "CH" txtSubject.Text = If(BelegartenNr = 71, "Gutschrift Nr. ", "Rechnung Nr. ") & txtRgNr - TextHTML = "Sehr geehrte Damen und Herren" & vbNewLine & vbNewLine & "im Anhang senden wir Ihnen die o.g. " & If(BelegartenNr = 71, "Gutschrift(en).", "Rechnung(en).") + TextHTML = "Sehr geehrte Kunde" & vbNewLine & vbNewLine & "anbei unsere neue " & If(BelegartenNr = 71, "Gutschrift(en)", "Rechnung(en)") & " der letzten Abrechnungsperiode mit den dazugehörigen Anhängen." TextHTML &= TextHTMLADD + TextHTML &= "" & vbNewLine & "Da es sich bei den beigefügten Rechnungen nur um Kopien handelt, dürfen diese NICHT zur MWST-Rückerstattung verwendet werden. " + If mailText <> "" Then TextHTML &= mailText & vbNewLine TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Mit freundlichen Grüßen" & vbNewLine & vbNewLine & "" + Case "HR", "SRB", "SLO" + txtSubject.Text = If(BelegartenNr = 71, "Credit No. ", "Invoice No. ") & txtRgNr + TextHTML = "Postovani komitente" & vbNewLine & vbNewLine & "u prilogu novi " & If(BelegartenNr = 71, "kredit", "racun") & " sa specifikacijma za prethodni period. " + TextHTML &= TextHTMLADD + TextHTML &= "" & vbNewLine & "Prilozeni racuni nisu dopusteni za povrat PDV-a, jer su samo kopije." + If mailText <> "" Then TextHTML &= mailText & vbNewLine + TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & "" + Case "RO" + txtSubject.Text = If(BelegartenNr = 71, "Credit No. ", "Invoice No. ") & txtRgNr + TextHTML = "Stimate client" & vbNewLine & vbNewLine & "Va transmitem factura " & If(BelegartenNr = 71, "kredit", "racun") & " referitoare ultimei perioade de decontare impreuna cu anexele aferente." + TextHTML &= TextHTMLADD + TextHTML &= "" & vbNewLine & "Prilozeni racuni nisu dopusteni za povrat PDV-a, jer su samo kopije." + If mailText <> "" Then TextHTML &= mailText & vbNewLine + TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & "" Case Else txtSubject.Text = If(BelegartenNr = 71, "Credit No. ", "Invoice No. ") & txtRgNr - TextHTML = "Dear Sir or Madam," & vbNewLine & vbNewLine & "attached we send you the invoice mentioned above." + TextHTML = "Dear Customer" & vbNewLine & vbNewLine & "Enclosed is our new " & If(BelegartenNr = 71, "credit note", "invoice") & " for the last billing period with the associated attachments." TextHTML &= TextHTMLADD + TextHTML &= "" & vbNewLine & "Since the attached invoices are only copies, the may NOT be used for VAT refunds." + If mailText <> "" Then TextHTML &= mailText & vbNewLine TextHTML &= "" & vbNewLine & vbNewLine & vbNewLine & "Best regards" & vbNewLine & vbNewLine & "" End Select - End If @@ -313,7 +341,7 @@ Public Class frmFaktEmail If SR Then Try - If RechnungsNr > 1 OrElse vbYes = MsgBox("Möchten Sie das PDF als Mail-Anhang erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnung gilt somit als gedruckt und kann nicht mehr bearbeitet werden.", vbYesNoCancel) Then + If RechnungsNr > 1 OrElse IIf(Rechnungsdruck = 2, True, vbYes = MsgBox("Möchten Sie das PDF als Mail-Anhang erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnung gilt somit als gedruckt und kann nicht mehr bearbeitet werden.", vbYesNoCancel)) Then If FakturierungsGruppe <> "" Then additionalLine = "Abrechnungsstelle: " & FakturierungsGruppe.Replace("WAI", "Waidhaus") @@ -468,130 +496,131 @@ Public Class frmFaktEmail additionalLine = "Abrechnungsstelle: " & RECHNUNG.FakturierungsGruppe.Replace("WAI", "Waidhaus") End If + If RECHNUNG.Status <> 0 OrElse vbYes = MsgBox("Möchten Sie das PDF als Mail-Anhang erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnung gilt somit als gedruckt und kann nicht mehr bearbeitet werden.", vbYesNoCancel) Then - abfNr = " Pos-Nr.: " & RECHNUNG.FilialenNr & "-" & RECHNUNG.AbfertigungsNr & "-" & RECHNUNG.SpeditionsbuchUnterNr + abfNr = " Pos-Nr.: " & RECHNUNG.FilialenNr & "-" & RECHNUNG.AbfertigungsNr & "-" & RECHNUNG.SpeditionsbuchUnterNr - Try - Dim outl As New Outlook.Application - Dim Mail As Microsoft.Office.Interop.Outlook.MailItem - Mail = outl.CreateItem(0) + Try + Dim outl As New Outlook.Application + Dim Mail As Microsoft.Office.Interop.Outlook.MailItem + Mail = outl.CreateItem(0) - If Firma_ID = 24 Then - Try - Dim oAccount As Outlook.Account - Dim accountToSent = SDL.cFakturierung.getDefaultMail("AMBAR",, True) + If Firma_ID = 24 Then + Try + Dim oAccount As Outlook.Account + Dim accountToSent = SDL.cFakturierung.getDefaultMail("AMBAR",, True) - If outl.Session.Accounts.Count > 0 Then - For Each oAccount In outl.Session.Accounts - If oAccount.SmtpAddress = accountToSent Then - Mail.SendUsingAccount = oAccount - Exit For - End If - Next - End If - Catch ex As Exception - VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Ermitteln des Mail-Accounts." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) - End Try + If outl.Session.Accounts.Count > 0 Then + For Each oAccount In outl.Session.Accounts + If oAccount.SmtpAddress = accountToSent Then + Mail.SendUsingAccount = oAccount + Exit For + End If + Next + End If + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Ermitteln des Mail-Accounts." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try - End If + End If - 'Mail-Adressen eintragen - '----------------------------------------------------------------- - For Each r In dgvEmail.Rows - If r.cells(0).value <> "" Then Mail.To &= r.cells(0).value & ";" - Next - For Each r In dgvEmailCC.Rows - If r.cells(0).value <> "" Then Mail.CC &= r.cells(0).value & ";" - Next - For Each r In dgvEmailBCC.Rows - If r.cells(0).value <> "" Then Mail.BCC &= r.cells(0).value & ";" - Next + 'Mail-Adressen eintragen + '----------------------------------------------------------------- + For Each r In dgvEmail.Rows + If r.cells(0).value <> "" Then Mail.To &= r.cells(0).value & ";" + Next + For Each r In dgvEmailCC.Rows + If r.cells(0).value <> "" Then Mail.CC &= r.cells(0).value & ";" + Next + For Each r In dgvEmailBCC.Rows + If r.cells(0).value <> "" Then Mail.BCC &= r.cells(0).value & ";" + Next - 'Rechnung erstellen: - '----------------------------------------------------------------- - Dim pathRG = "" + 'Rechnung erstellen: + '----------------------------------------------------------------- + Dim pathRG = "" - If Not cFakturierung.doRechnungsDruck(RECHNUNG, Rechnungsdatum,, 4, pathRG,, cbxOriginalPrint.Checked) Then - Exit Sub - End If + If Not cFakturierung.doRechnungsDruck(RECHNUNG, Rechnungsdatum,, 4, pathRG,, cbxOriginalPrint.Checked) Then + Exit Sub + End If - 'If Not RECHNUNG.checkRechnungsNrIsSet() Then - ' MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen") - ' Exit Sub - 'End If + 'If Not RECHNUNG.checkRechnungsNrIsSet() Then + ' MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen") + ' Exit Sub + 'End If - RechnungsNr = RECHNUNG.RechnungsNr + RechnungsNr = RECHNUNG.RechnungsNr - If cbxRgKopieDrucken.Checked Then - 'KOPIE DRUCK - cFakturierung.doRechnungsDruck(RECHNUNG,,, 1, "", cboPrinter.Text, False) - End If + If cbxRgKopieDrucken.Checked Then + 'KOPIE DRUCK + cFakturierung.doRechnungsDruck(RECHNUNG,,, 1, "", cboPrinter.Text, False) + End If - If pathRG <> "" Then ATTACHMENTS.Add(New cFakt_MailATTach(pathRG, If(RECHNUNG.BelegartenKz = "AR", "Rechnung.pdf", "Gutschrift.pdf"))) + If pathRG <> "" Then ATTACHMENTS.Add(New cFakt_MailATTach(pathRG, If(RECHNUNG.BelegartenKz = "AR", "Rechnung.pdf", "Gutschrift.pdf"))) - RichTextBox.Text = RichTextBox.Text.Replace("%RgNr%", RechnungsNr) - txtSubject.Text = txtSubject.Text.Replace("%RgNr%", RechnungsNr) & abfNr + RichTextBox.Text = RichTextBox.Text.Replace("%RgNr%", RechnungsNr) + txtSubject.Text = txtSubject.Text.Replace("%RgNr%", RechnungsNr) & abfNr - Dim TextHTML = "
" & RichTextBox.Text.Replace(ControlChars.Lf, "
") & cFakturierung.getSignature(RECHNUNG.RechnungsLandKz, RECHNUNG.Firma_ID,,,, additionalLine,, IIf(Firma_ID = "24", True, False)) & "
" + Dim TextHTML = "
" & RichTextBox.Text.Replace(ControlChars.Lf, "
") & cFakturierung.getSignature(RECHNUNG.RechnungsLandKz, RECHNUNG.Firma_ID,,,, additionalLine,, IIf(Firma_ID = "24", True, False)) & "
" - Mail.HTMLBody = TextHTML - Mail.Subject = txtSubject.Text + Mail.HTMLBody = TextHTML + Mail.Subject = txtSubject.Text - ' Mail.HTMLBody = Mail.HTMLBody.Replace("%RgNr%", RECHNUNG.RechnungsNr) - ' Mail.Subject = Mail.Subject.Replace("%RgNr%", RECHNUNG.RechnungsNr & abfNr) + ' Mail.HTMLBody = Mail.HTMLBody.Replace("%RgNr%", RECHNUNG.RechnungsNr) + ' Mail.Subject = Mail.Subject.Replace("%RgNr%", RECHNUNG.RechnungsNr & abfNr) - '----------------------------------------------------------------- + '----------------------------------------------------------------- - 'Steuerbescheid/VDB anfügen - '----------------------------------------------------------------- - getAnhaengeSingle() - '----------------------------------------------------------------- + 'Steuerbescheid/VDB anfügen + '----------------------------------------------------------------- + getAnhaengeSingle() + '----------------------------------------------------------------- - 'Rechnungsanhänge anfügen - '----------------------------------------------------------------- - RECHNUNG.LOAD_ANHAENGE() - For Each ANH In RECHNUNG.ANHAENGE - ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung)) - Next - '----------------------------------------------------------------- + 'Rechnungsanhänge anfügen + '----------------------------------------------------------------- + RECHNUNG.LOAD_ANHAENGE() + For Each ANH In RECHNUNG.ANHAENGE + ATTACHMENTS.Add(New cFakt_MailATTach(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(ANH.dsId), ANH.Bezeichnung)) + Next + '----------------------------------------------------------------- - 'Anhang an Mail anfügen - '----------------------------------------------------------------- - addAttachments(Mail, RECHNUNG.RechnungsNr, cbxMergePDF.Checked) - '----------------------------------------------------------------- + 'Anhang an Mail anfügen + '----------------------------------------------------------------- + addAttachments(Mail, RECHNUNG.RechnungsNr, cbxMergePDF.Checked) + '----------------------------------------------------------------- - If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" Then - Try - Mail.SentOnBehalfOfName = "buchhaltung@ambarlog.de" - Catch ex2 As Exception - VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex2.Message, ex2.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) - End Try - End If + If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" Then + Try + Mail.SentOnBehalfOfName = "buchhaltung@ambarlog.de" + Catch ex2 As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex2.Message, ex2.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + End If - Mail.Display() + Mail.Display() - '------------------------------------------------------------------------------------------ - ' STB /FA - send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr) - '------------------------------------------------------------------------------------------ + '------------------------------------------------------------------------------------------ + ' STB /FA + send_StbFAMail(RECHNUNG.RechnungsKundenNr, " Rg-Nr.: " & RechnungsNr & abfNr, RECHNUNG.RechnungsNr) + '------------------------------------------------------------------------------------------ - Catch ex As Exception - VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Öffnen des Mail-Programmes." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) - 'Process.Start(a) - End Try + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Fehler beim Öffnen des Mail-Programmes." & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + 'Process.Start(a) + End Try + End If End If - End If - ATTACHMENTS.Clear() + ATTACHMENTS.Clear() End Sub @@ -953,6 +982,9 @@ Public Class frmFaktEmail dgvAnhaenge.ClearSelection() End Sub + Private Sub lklcc_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles lklcc.LinkClicked + dgvEmailCC.Rows.Add(lklcc.Tag) + End Sub End Class diff --git a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb index fa558e2a..4b6e16e0 100644 --- a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb +++ b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb @@ -31,10 +31,10 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.txtPackstuecke = New GrapeCity.ActiveReports.SectionReportModel.TextBox() Me.SubReport = New GrapeCity.ActiveReports.SectionReportModel.SubReport() Me.PageFooter = New GrapeCity.ActiveReports.SectionReportModel.PageFooter() + Me.txtBank1 = New GrapeCity.ActiveReports.SectionReportModel.TextBox() Me.Line2 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.ReportInfo2 = New GrapeCity.ActiveReports.SectionReportModel.ReportInfo() Me.lblBankUeberschrift = New GrapeCity.ActiveReports.SectionReportModel.Label() - Me.txtBank1 = New GrapeCity.ActiveReports.SectionReportModel.TextBox() Me.txtBank2 = New GrapeCity.ActiveReports.SectionReportModel.TextBox() Me.txtDisclaimer = New GrapeCity.ActiveReports.SectionReportModel.TextBox() Me.txtBank3 = New GrapeCity.ActiveReports.SectionReportModel.TextBox() @@ -99,6 +99,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.Line15 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.Line17 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.GroupFooter4 = New GrapeCity.ActiveReports.SectionReportModel.GroupFooter() + Me.txtInfo = New GrapeCity.ActiveReports.SectionReportModel.TextBox() CType(Me.lblPosNr, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblDatum, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblSteuerfrei, System.ComponentModel.ISupportInitialize).BeginInit() @@ -107,9 +108,9 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.txtAbfertigungsart, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtSendungsdetails, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtPackstuecke, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtBank1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.ReportInfo2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblBankUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtBank1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtBank2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtDisclaimer, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtBank3, System.ComponentModel.ISupportInitialize).BeginInit() @@ -156,6 +157,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.lblPosNrUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblSendungUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblSteuerfreiUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtInfo, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me, System.ComponentModel.ISupportInitialize).BeginInit() ' 'PageHeader @@ -305,6 +307,18 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.PageFooter.Height = 0.8791339! Me.PageFooter.Name = "PageFooter" ' + 'txtBank1 + ' + Me.txtBank1.Height = 0.4181103! + Me.txtBank1.Left = 1.129134! + Me.txtBank1.Name = "txtBank1" + Me.txtBank1.Style = "font-size: 8pt; font-weight: normal; text-align: left; text-justify: auto; ddo-ch" & + "ar-set: 1" + Me.txtBank1.Text = "Deutschland:" & Global.Microsoft.VisualBasic.ChrW(10) & "Raiffeisenbank Suben" & Global.Microsoft.VisualBasic.ChrW(10) & "IBAN: AT54 3445 5000 0420 7791" & Global.Microsoft.VisualBasic.ChrW(10) & "BIC: RZOOAT2L455" & + "" + Me.txtBank1.Top = 0.1173228! + Me.txtBank1.Width = 1.899606! + ' 'Line2 ' Me.Line2.Height = 0! @@ -340,18 +354,6 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.lblBankUeberschrift.Top = 0.1173228! Me.lblBankUeberschrift.Width = 1.155512! ' - 'txtBank1 - ' - Me.txtBank1.Height = 0.4181103! - Me.txtBank1.Left = 1.129134! - Me.txtBank1.Name = "txtBank1" - Me.txtBank1.Style = "font-size: 8pt; font-weight: normal; text-align: left; text-justify: auto; ddo-ch" & - "ar-set: 1" - Me.txtBank1.Text = "Deutschland:" & Global.Microsoft.VisualBasic.ChrW(10) & "Raiffeisenbank Suben" & Global.Microsoft.VisualBasic.ChrW(10) & "IBAN: AT54 3445 5000 0420 7791" & Global.Microsoft.VisualBasic.ChrW(10) & "BIC: RZOOAT2L455" & - "" - Me.txtBank1.Top = 0.1173228! - Me.txtBank1.Width = 1.899606! - ' 'txtBank2 ' Me.txtBank2.Height = 0.4181103! @@ -399,14 +401,14 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'lblRgNr ' - Me.lblRgNr.Height = 0.1574803! + Me.lblRgNr.Height = 0.2094488! Me.lblRgNr.HyperLink = Nothing Me.lblRgNr.Left = 5.511811! Me.lblRgNr.Name = "lblRgNr" Me.lblRgNr.Style = "font-size: 12pt; font-weight: bold; text-align: right; vertical-align: middle; dd" & "o-char-set: 1" Me.lblRgNr.Text = "18000000" - Me.lblRgNr.Top = 0.7503937! + Me.lblRgNr.Top = 0.6984252! Me.lblRgNr.Width = 1.958268! ' 'lblRgNrUeberschrift @@ -494,19 +496,19 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'lblFirmaOrt ' - Me.lblFirmaOrt.Height = 0.1181102! + Me.lblFirmaOrt.Height = 0.1700786! Me.lblFirmaOrt.HyperLink = Nothing Me.lblFirmaOrt.Left = 0.01417317! Me.lblFirmaOrt.Name = "lblFirmaOrt" Me.lblFirmaOrt.Style = "font-size: 7pt; font-weight: normal; text-align: left; vertical-align: middle; dd" & "o-char-set: 1" Me.lblFirmaOrt.Text = "A-4975 Suben" - Me.lblFirmaOrt.Top = 0.7503937! + Me.lblFirmaOrt.Top = 0.6984252! Me.lblFirmaOrt.Width = 1.19685! ' 'lblFirmaStrasse ' - Me.lblFirmaStrasse.Height = 0.1181102! + Me.lblFirmaStrasse.Height = 0.1181103! Me.lblFirmaStrasse.HyperLink = Nothing Me.lblFirmaStrasse.Left = 0.01417319! Me.lblFirmaStrasse.Name = "lblFirmaStrasse" @@ -518,19 +520,19 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'lblFirmaTel ' - Me.lblFirmaTel.Height = 0.1181103! + Me.lblFirmaTel.Height = 0.1700788! Me.lblFirmaTel.HyperLink = Nothing Me.lblFirmaTel.Left = 1.211024! Me.lblFirmaTel.Name = "lblFirmaTel" Me.lblFirmaTel.Style = "font-size: 7pt; font-weight: normal; text-align: left; vertical-align: middle; dd" & "o-char-set: 1" Me.lblFirmaTel.Text = "Tel. +43 7711 2777 - 0" - Me.lblFirmaTel.Top = 0.7503937! + Me.lblFirmaTel.Top = 0.6984252! Me.lblFirmaTel.Width = 1.28189! ' 'lblFirmaFax ' - Me.lblFirmaFax.Height = 0.1181103! + Me.lblFirmaFax.Height = 0.1181102! Me.lblFirmaFax.HyperLink = Nothing Me.lblFirmaFax.Left = 1.211024! Me.lblFirmaFax.Name = "lblFirmaFax" @@ -542,19 +544,19 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'lblFirmaEmail ' - Me.lblFirmaEmail.Height = 0.1181103! + Me.lblFirmaEmail.Height = 0.1700786! Me.lblFirmaEmail.HyperLink = Nothing Me.lblFirmaEmail.Left = 2.697638! Me.lblFirmaEmail.Name = "lblFirmaEmail" Me.lblFirmaEmail.Style = "font-size: 7pt; font-weight: normal; text-align: right; vertical-align: middle; d" & "do-char-set: 1" Me.lblFirmaEmail.Text = "rechnungsversand@verag.ag" - Me.lblFirmaEmail.Top = 0.7503935! + Me.lblFirmaEmail.Top = 0.6984252! Me.lblFirmaEmail.Width = 1.436614! ' 'lblFirmaWeb ' - Me.lblFirmaWeb.Height = 0.1181103! + Me.lblFirmaWeb.Height = 0.1181102! Me.lblFirmaWeb.HyperLink = Nothing Me.lblFirmaWeb.Left = 2.697638! Me.lblFirmaWeb.Name = "lblFirmaWeb" @@ -772,7 +774,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'ReportFooter1 ' - Me.ReportFooter1.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.Line8, Me.Line9, Me.lblSummeUeberschrift, Me.lblSteuerfreiGes, Me.lblSteuerpflichtigGes, Me.lblSumme, Me.Label46, Me.Line1, Me.Line5, Me.lblZWSumme, Me.lblSteuerbetrag, Me.lblSteuersatz, Me.Line6, Me.Line7, Me.Line14, Me.lblZwText}) + Me.ReportFooter1.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.Line8, Me.Line9, Me.lblSummeUeberschrift, Me.lblSteuerfreiGes, Me.lblSteuerpflichtigGes, Me.lblSumme, Me.Label46, Me.Line1, Me.Line5, Me.lblZWSumme, Me.lblSteuerbetrag, Me.lblSteuersatz, Me.Line6, Me.Line7, Me.Line14, Me.lblZwText, Me.txtInfo}) Me.ReportFooter1.Height = 1.315354! Me.ReportFooter1.KeepTogether = True Me.ReportFooter1.Name = "ReportFooter1" @@ -1114,6 +1116,17 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.GroupFooter4.Height = 0! Me.GroupFooter4.Name = "GroupFooter4" ' + 'txtInfo + ' + Me.txtInfo.Height = 0.518504! + Me.txtInfo.Left = 0.01417327! + Me.txtInfo.Name = "txtInfo" + Me.txtInfo.Style = "font-size: 9pt; font-weight: normal; text-align: left; text-justify: auto; ddo-ch" & + "ar-set: 1" + Me.txtInfo.Text = "ZusatzText" + Me.txtInfo.Top = 0.1035433! + Me.txtInfo.Width = 3.661417! + ' 'rptSammelRechnungAnlagenDruck ' Me.PageSettings.Margins.Bottom = 0.3937008! @@ -1144,9 +1157,9 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.txtAbfertigungsart, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtSendungsdetails, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtPackstuecke, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtBank1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.ReportInfo2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblBankUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtBank1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtBank2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtDisclaimer, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtBank3, System.ComponentModel.ISupportInitialize).EndInit() @@ -1193,6 +1206,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.lblPosNrUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblSendungUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblSteuerfreiUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtInfo, System.ComponentModel.ISupportInitialize).EndInit() CType(Me, System.ComponentModel.ISupportInitialize).EndInit() End Sub @@ -1210,7 +1224,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck Public WithEvents ReportFooter1 As GrapeCity.ActiveReports.SectionReportModel.ReportFooter Private WithEvents GroupHeader4 As GrapeCity.ActiveReports.SectionReportModel.GroupHeader Private WithEvents Line4 As GrapeCity.ActiveReports.SectionReportModel.Line - Private WithEvents lblSteuerfreiUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label + Public WithEvents lblSteuerfreiUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents lblSendungUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents lblPosNrUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents GroupFooter4 As GrapeCity.ActiveReports.SectionReportModel.GroupFooter @@ -1276,4 +1290,5 @@ Partial Public Class rptSammelRechnungAnlagenDruck Public WithEvents lblRechnungAn As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents Line13 As GrapeCity.ActiveReports.SectionReportModel.Line Public WithEvents txtBank3 As GrapeCity.ActiveReports.SectionReportModel.TextBox + Public WithEvents txtInfo As GrapeCity.ActiveReports.SectionReportModel.TextBox End Class diff --git a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck_Leistungen.vb b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck_Leistungen.vb index f2a34fe5..8c72d3d9 100644 --- a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck_Leistungen.vb +++ b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck_Leistungen.vb @@ -26,6 +26,7 @@ Public Class rptSammelRechnungAnlagenDruck_Leistungen lblSteuerpflichtig.Text = "" If Me.Fields.Item("clmnAnzahl") IsNot Nothing AndAlso Me.Fields.Item("clmnAnzahl").Value IsNot Nothing Then txtAbfertigungsart.Text &= Me.Fields.Item("clmnAnzahl").Value.ToString & "x " If Me.Fields.Item("clmnLeistung") IsNot Nothing AndAlso Me.Fields.Item("clmnLeistung").Value IsNot Nothing Then txtAbfertigungsart.Text &= Me.Fields.Item("clmnLeistung").Value.ToString + If Me.Fields.Item("clmnLeistungsNr") IsNot Nothing AndAlso Me.Fields.Item("clmnLeistungsNr").Value IsNot Nothing Then txtAbfertigungsart.Text &= " (" & Me.Fields.Item("clmnLeistungsNr").Value.ToString & ") " If Me.Fields.Item("clmnSteuerfreierBetrag") IsNot Nothing AndAlso Me.Fields.Item("clmnSteuerfreierBetrag").Value IsNot Nothing AndAlso CDbl(Me.Fields.Item("clmnSteuerfreierBetrag").Value) > 0 Then lblSteuerfrei.Text = CDbl(Me.Fields.Item("clmnSteuerfreierBetrag").Value.ToString).ToString("N2") End If @@ -43,11 +44,12 @@ Public Class rptSammelRechnungAnlagenDruck_Leistungen dt.Columns.Add("clmnSteuerfreierBetrag") dt.Columns.Add("clmnSteuerpflichtigerBetrag") dt.Columns.Add("clmnAnzahl") + dt.Columns.Add("clmnLeistungsNr") RECHNUNG.ORDER_POSITIONEN() For Each POS In RECHNUNG.POSITIONEN - dt.Rows.Add(POS.LeistungsBez, POS.SteuerfreierBetrag, POS.SteuerpflichtigerBetrag, POS.Anzahl) + dt.Rows.Add(POS.LeistungsBez, POS.SteuerfreierBetrag, POS.SteuerpflichtigerBetrag, POS.Anzahl, POS.LeistungsNr) Next Me.DataSource = dt diff --git a/SDL/kunden/usrcntlKundeBearbeitenFull.vb b/SDL/kunden/usrcntlKundeBearbeitenFull.vb index 3ecef127..605c2f9e 100644 --- a/SDL/kunden/usrcntlKundeBearbeitenFull.vb +++ b/SDL/kunden/usrcntlKundeBearbeitenFull.vb @@ -361,7 +361,7 @@ Public Class usrcntlKundeBearbeitenFull cbxSonst_CsvMSE.Checked = loadValue(ADRESSE.MSEExportCSV, False) cbxSonst_CsvUTA.Checked = loadValue(ADRESSE.UTAExportCSV, False) cbxUIDMehrfachverwendung.Checked = KUNDE_ERW.kde_UIDMehrfachverwendung - cbxkeineMWSt.Checked = KUNDE_ERW.kde_keineMWSt + cbxkeineMWSt.Checked = loadValue(KUNDE_ERW.kde_keineMWSt, False) txtAbf_ZollVmVom.Enabled = cbxAbf_ZollVM.Checked @@ -710,6 +710,7 @@ Public Class usrcntlKundeBearbeitenFull KUNDE_ERW.kde_API_Tradeshift = cbxAPITradeshift.Checked KUNDE_ERW.kde_Fakturierung_Sprache = isLeerNothing(cboRechnungSprache._value) KUNDE_ERW.kde_CreditSaveId = isLeerNothing(txtCreditsafe.Text) + KUNDE_ERW.kde_keineMWSt = cbxkeineMWSt.Checked diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb index 06d598bb..17a3be98 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.vb @@ -1234,7 +1234,7 @@ Public Class frmMDMDatenverarbetiung For Each csv As DataRow In distinctDT_CSV.Rows - Dim dt_CSV_selected = SQL.loadDgvBySql_Param("SELECT * FROM tblUTAImportNew where [Rechnungsdatum] = '" & DateTimePicker2.Text & "' and Kundennummer = " & csv.Item("Customer ID"), "FMZOLL") + Dim dt_CSV_selected = SQL.loadDgvBySql_Param("SELECT * FROM tblUTAImportNew where [Rechnungsdatum] = '" & DateTimePicker2.Text & "' and Kundennummer = " & csv.Item("Customer ID"), "FMZOLL") dt_CSV_selected.ParentRelations.Clear() dt_CSV_selected.ChildRelations.Clear() dt_CSV_selected.Constraints.Clear() @@ -1305,7 +1305,7 @@ Public Class frmMDMDatenverarbetiung End If If Not Directory.Exists(dirAnhang) Then Directory.CreateDirectory(dirAnhang) For Each f In Directory.GetFiles(dir) - File.Copy(f, dirAnhang & (New FileInfo(f)).Name) + File.Copy(f, dirAnhang & (New FileInfo(f)).Name, True) Next pbPloseAnh_Proz.Value = 100 txtPloseAnh_Einarbeitung.Text = dt_Main.Rows.Count & " / " & dt_Main.Rows.Count @@ -1457,7 +1457,7 @@ Public Class frmMDMDatenverarbetiung End If For Each f In Directory.GetFiles(dir) - File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name) + File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name, True) Next 'IN FMZOLL / DB MautD einfügen --> Mautbericht @@ -1603,7 +1603,7 @@ Public Class frmMDMDatenverarbetiung End If For Each f In Directory.GetFiles(dir) - File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name) + File.Copy(f, dirAnhang & "\" & (New FileInfo(f)).Name, True) Next pbPloseAnh_Proz.Value = 100 @@ -4061,6 +4061,7 @@ Public Class frmMDMDatenverarbetiung sum(trans.transaction_gross_amount) As [Summe Transaction Amount ( EUR )], sum(trans.msts_fee_amount) As [Summe Admin Fee Amount ( EUR )], sum(trans.msts_fee_amount) As [Summe Fees And Costs Amount ( EUR )], + sum(trans.msts_vat_amount) As [Summe VAT Amount ( EUR )], sum(trans.transaction_gross_amount) As [Summe Total Amount ( EUR )] From [VERAG].[dbo].[tblMSESettlements] as bills diff --git a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb index d7beb44c..08030299 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb @@ -141,6 +141,15 @@ Partial Class usrCntlMDMAuswertungen Me.Button18 = New System.Windows.Forms.Button() Me.Label44 = New System.Windows.Forms.Label() Me.GroupBox13 = New System.Windows.Forms.GroupBox() + Me.Button20 = New System.Windows.Forms.Button() + Me.Label72 = New System.Windows.Forms.Label() + Me.KdSearchBox3 = New VERAG_PROG_ALLGEMEIN.KdSearchBox() + Me.rbkunde = New System.Windows.Forms.RadioButton() + Me.rbAlleKunden = New System.Windows.Forms.RadioButton() + Me.txtPloseAnh_Einarbeitung = New System.Windows.Forms.TextBox() + Me.Label71 = New System.Windows.Forms.Label() + Me.pbPloseAnh_Proz = New System.Windows.Forms.ProgressBar() + Me.lblPloseAnh_Proz = New System.Windows.Forms.Label() Me.Button19 = New System.Windows.Forms.Button() Me.Label70 = New System.Windows.Forms.Label() Me.cboSachbearbeiter = New VERAG_PROG_ALLGEMEIN.MyComboBox() @@ -199,6 +208,7 @@ Partial Class usrCntlMDMAuswertungen Me.btnContractdaten = New System.Windows.Forms.Button() Me.Button15 = New System.Windows.Forms.Button() Me.pnl = New System.Windows.Forms.Panel() + Me.lblAnzahlMautberichte = New System.Windows.Forms.Label() Me.GroupBox1.SuspendLayout() Me.GroupBox2.SuspendLayout() CType(Me.pic, System.ComponentModel.ISupportInitialize).BeginInit() @@ -1476,6 +1486,7 @@ Partial Class usrCntlMDMAuswertungen ' 'GroupBox19 ' + Me.GroupBox19.Controls.Add(Me.lblAnzahlMautberichte) Me.GroupBox19.Controls.Add(Me.cbxDateMautbericht) Me.GroupBox19.Controls.Add(Me.Label69) Me.GroupBox19.Controls.Add(Me.Label68) @@ -1512,7 +1523,7 @@ Partial Class usrCntlMDMAuswertungen ' Me.Label68.Location = New System.Drawing.Point(142, 57) Me.Label68.Name = "Label68" - Me.Label68.Size = New System.Drawing.Size(541, 20) + Me.Label68.Size = New System.Drawing.Size(333, 20) Me.Label68.TabIndex = 30 Me.Label68.Text = "Generiert Mautbericht und hängt sie an den Sammelrechnungen an." ' @@ -1561,6 +1572,15 @@ Partial Class usrCntlMDMAuswertungen ' 'GroupBox13 ' + Me.GroupBox13.Controls.Add(Me.Button20) + Me.GroupBox13.Controls.Add(Me.Label72) + Me.GroupBox13.Controls.Add(Me.KdSearchBox3) + Me.GroupBox13.Controls.Add(Me.rbkunde) + Me.GroupBox13.Controls.Add(Me.rbAlleKunden) + Me.GroupBox13.Controls.Add(Me.txtPloseAnh_Einarbeitung) + Me.GroupBox13.Controls.Add(Me.Label71) + Me.GroupBox13.Controls.Add(Me.pbPloseAnh_Proz) + Me.GroupBox13.Controls.Add(Me.lblPloseAnh_Proz) Me.GroupBox13.Controls.Add(Me.Button19) Me.GroupBox13.Controls.Add(Me.Label70) Me.GroupBox13.Controls.Add(Me.cboSachbearbeiter) @@ -1574,19 +1594,123 @@ Partial Class usrCntlMDMAuswertungen Me.GroupBox13.Controls.Add(Me.Button14) Me.GroupBox13.Location = New System.Drawing.Point(14, 298) Me.GroupBox13.Name = "GroupBox13" - Me.GroupBox13.Size = New System.Drawing.Size(697, 168) + Me.GroupBox13.Size = New System.Drawing.Size(697, 278) Me.GroupBox13.TabIndex = 10 Me.GroupBox13.TabStop = False ' + 'Button20 + ' + Me.Button20.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button20.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.Button20.Location = New System.Drawing.Point(10, 28) + Me.Button20.Name = "Button20" + Me.Button20.Size = New System.Drawing.Size(121, 49) + Me.Button20.TabIndex = 43 + Me.Button20.Text = "Mautanh. löschen" + Me.Button20.UseVisualStyleBackColor = True + ' + 'Label72 + ' + Me.Label72.Location = New System.Drawing.Point(97, 226) + Me.Label72.Name = "Label72" + Me.Label72.Size = New System.Drawing.Size(541, 17) + Me.Label72.TabIndex = 42 + Me.Label72.Text = "* bei der Vorschau wird bereits eine RE-NR erzeugt und kann nicht mehr geändert w" & + "erden." + ' + 'KdSearchBox3 + ' + Me.KdSearchBox3._AlleFirmenCLUSTER = False + Me.KdSearchBox3._AllowSetValue = True + Me.KdSearchBox3._autoSizeGross = False + Me.KdSearchBox3._display_Name1 = False + Me.KdSearchBox3._displayAVISO_Email = False + Me.KdSearchBox3._displayFullName = False + Me.KdSearchBox3._displayWoelflKd = False + Me.KdSearchBox3._hideIfListEmpty = True + Me.KdSearchBox3._loadKdData = False + Me.KdSearchBox3._searchName1 = True + Me.KdSearchBox3._UseFIRMA = "" + Me.KdSearchBox3._ValueKdAndName = True + Me.KdSearchBox3.dgvpos = "LEFT" + Me.KdSearchBox3.KdName = "" + Me.KdSearchBox3.KdNr = "-1" + Me.KdSearchBox3.kdNrField = Nothing + Me.KdSearchBox3.KdNrNullInt = Nothing + Me.KdSearchBox3.Location = New System.Drawing.Point(88, 248) + Me.KdSearchBox3.Name = "KdSearchBox3" + Me.KdSearchBox3.nurAktive = True + Me.KdSearchBox3.searchActive = True + Me.KdSearchBox3.Size = New System.Drawing.Size(350, 20) + Me.KdSearchBox3.TabIndex = 41 + Me.KdSearchBox3.TIMER_SEARCH = True + Me.KdSearchBox3.usrcntl = Nothing + ' + 'rbkunde + ' + Me.rbkunde.AutoSize = True + Me.rbkunde.Location = New System.Drawing.Point(10, 249) + Me.rbkunde.Name = "rbkunde" + Me.rbkunde.Size = New System.Drawing.Size(59, 17) + Me.rbkunde.TabIndex = 40 + Me.rbkunde.Text = "Kunde:" + Me.rbkunde.UseVisualStyleBackColor = True + ' + 'rbAlleKunden + ' + Me.rbAlleKunden.AutoSize = True + Me.rbAlleKunden.Checked = True + Me.rbAlleKunden.Location = New System.Drawing.Point(10, 226) + Me.rbAlleKunden.Name = "rbAlleKunden" + Me.rbAlleKunden.Size = New System.Drawing.Size(81, 17) + Me.rbAlleKunden.TabIndex = 39 + Me.rbAlleKunden.TabStop = True + Me.rbAlleKunden.Text = "alle Kunden" + Me.rbAlleKunden.UseVisualStyleBackColor = True + ' + 'txtPloseAnh_Einarbeitung + ' + Me.txtPloseAnh_Einarbeitung.BackColor = System.Drawing.Color.White + Me.txtPloseAnh_Einarbeitung.BorderStyle = System.Windows.Forms.BorderStyle.None + Me.txtPloseAnh_Einarbeitung.Location = New System.Drawing.Point(216, 186) + Me.txtPloseAnh_Einarbeitung.Name = "txtPloseAnh_Einarbeitung" + Me.txtPloseAnh_Einarbeitung.Size = New System.Drawing.Size(106, 13) + Me.txtPloseAnh_Einarbeitung.TabIndex = 38 + ' + 'Label71 + ' + Me.Label71.AutoSize = True + Me.Label71.Location = New System.Drawing.Point(151, 186) + Me.Label71.Name = "Label71" + Me.Label71.Size = New System.Drawing.Size(56, 13) + Me.Label71.TabIndex = 35 + Me.Label71.Text = "Fortschritt:" + ' + 'pbPloseAnh_Proz + ' + Me.pbPloseAnh_Proz.Location = New System.Drawing.Point(154, 157) + Me.pbPloseAnh_Proz.Name = "pbPloseAnh_Proz" + Me.pbPloseAnh_Proz.Size = New System.Drawing.Size(283, 23) + Me.pbPloseAnh_Proz.TabIndex = 36 + ' + 'lblPloseAnh_Proz + ' + Me.lblPloseAnh_Proz.Location = New System.Drawing.Point(368, 186) + Me.lblPloseAnh_Proz.Name = "lblPloseAnh_Proz" + Me.lblPloseAnh_Proz.Size = New System.Drawing.Size(69, 13) + Me.lblPloseAnh_Proz.TabIndex = 37 + Me.lblPloseAnh_Proz.Text = "0%" + Me.lblPloseAnh_Proz.TextAlign = System.Drawing.ContentAlignment.TopRight + ' 'Button19 ' Me.Button19.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.Button19.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button19.Location = New System.Drawing.Point(6, 91) + Me.Button19.Location = New System.Drawing.Point(10, 157) Me.Button19.Name = "Button19" Me.Button19.Size = New System.Drawing.Size(121, 49) Me.Button19.TabIndex = 32 - Me.Button19.Text = "Vorschau" + Me.Button19.Text = "Vorschau*" Me.Button19.UseVisualStyleBackColor = True ' 'Label70 @@ -1672,7 +1796,7 @@ Partial Class usrCntlMDMAuswertungen ' Me.Button14.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.Button14.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button14.Location = New System.Drawing.Point(10, 21) + Me.Button14.Location = New System.Drawing.Point(10, 94) Me.Button14.Name = "Button14" Me.Button14.Size = New System.Drawing.Size(121, 49) Me.Button14.TabIndex = 4 @@ -2173,6 +2297,14 @@ Partial Class usrCntlMDMAuswertungen Me.pnl.Size = New System.Drawing.Size(1057, 54) Me.pnl.TabIndex = 26 ' + 'lblAnzahlMautberichte + ' + Me.lblAnzahlMautberichte.AutoSize = True + Me.lblAnzahlMautberichte.Location = New System.Drawing.Point(481, 57) + Me.lblAnzahlMautberichte.Name = "lblAnzahlMautberichte" + Me.lblAnzahlMautberichte.Size = New System.Drawing.Size(0, 13) + Me.lblAnzahlMautberichte.TabIndex = 33 + ' 'usrCntlMDMAuswertungen ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -2421,4 +2553,14 @@ Partial Class usrCntlMDMAuswertungen Friend WithEvents cbxDateMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox Friend WithEvents Label70 As Label Friend WithEvents Button19 As Button + Friend WithEvents Label71 As Label + Friend WithEvents pbPloseAnh_Proz As ProgressBar + Friend WithEvents lblPloseAnh_Proz As Label + Friend WithEvents txtPloseAnh_Einarbeitung As TextBox + Friend WithEvents KdSearchBox3 As VERAG_PROG_ALLGEMEIN.KdSearchBox + Friend WithEvents rbkunde As RadioButton + Friend WithEvents rbAlleKunden As RadioButton + Friend WithEvents Label72 As Label + Friend WithEvents Button20 As Button + Friend WithEvents lblAnzahlMautberichte As Label End Class diff --git a/SDL/mdm/usrCntlMDMAuswertungen.vb b/SDL/mdm/usrCntlMDMAuswertungen.vb index cf375605..d0465d00 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.vb @@ -1,6 +1,10 @@ Imports System.Data.SqlClient +Imports System.DirectoryServices.ActiveDirectory Imports System.IO +Imports com.sun.org.apache.bcel.internal.generic +Imports com.sun.tools.internal.ws.wsdl.framework Imports java.awt.geom +Imports javax.print.attribute.standard Imports Microsoft.Office.Interop.Outlook Imports Microsoft.VisualBasic.FileIO Imports VERAG_PROG_ALLGEMEIN @@ -39,6 +43,7 @@ Public Class usrCntlMDMAuswertungen datUeberfaelligeBestVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year) datUeberfaelligeBestBis.Value = Now kdUeberfaelligeBest.initKdBox(Me.FindForm) + KdSearchBox3.initKdBox(Me.FindForm) KdSearchBox1.initKdBox(Me.FindForm) @@ -78,7 +83,17 @@ Public Class usrCntlMDMAuswertungen datLeereOBUVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year) datLeereOBUbis.Value = Now - PathMautberichte = "C:\Users\d.breimaier\Desktop\MDM\Mautgesamtberichte" + PathMautberichte = (New SQL).getValueTxtBySql("SELECT TOP 1 [Param_value] FROM [tblPartnersystem_Paramter] WHERE Param_system='GESAMTMAUT' AND [Param_name]='ANLAGE_PFAD' AND Param_testsystem = " & IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, 1, 0), "FMZOLL") + + Dim count = 0 + If Directory.Exists(PathMautberichte) Then + If Directory.GetFiles(PathMautberichte) IsNot Nothing Then + For Each f In Directory.GetFiles(PathMautberichte) + If f.ToString.ToLower.EndsWith("_Maut.csv") Or f.ToString.ToLower.EndsWith("_Maut.pdf") Then count += 1 + Next + End If + End If + lblAnzahlMautberichte.Text = count & "x Mautberichte" End Sub @@ -989,6 +1004,8 @@ Public Class usrCntlMDMAuswertungen Dim Sachbearbeiter = cboSachbearbeiter._value Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) + + If rechnungsdatum > Today() Then MsgBox("Rechnungsdatum liegt in der Zukunft, nicht möglich") Exit Sub @@ -1059,7 +1076,7 @@ Public Class usrCntlMDMAuswertungen ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and UPPER([Sachbearbeiter])<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL") - If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub + 'If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub If Not ok Then MsgBox("Fehler") : Exit Sub @@ -1125,8 +1142,8 @@ Public Class usrCntlMDMAuswertungen 'Gesamtmautberichte an Sammelrechnung anhängen If Not setMautgesamtberichtInRechnung(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then - MsgBox("Fehler beim Setzen der Gesamtmautberichte") - Exit Sub + 'MsgBox("Fehler beim Setzen der Gesamtmautberichte") + 'Exit Sub End If 'Druckinformationen @@ -1589,7 +1606,7 @@ Public Class usrCntlMDMAuswertungen Private Function setMautgesamtberichtInRechnung(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) Try - + Dim attachmentIsSet As Boolean = False If dtSammelRechnugen.Rows.Count = 0 Then MsgBox("Keine Rechnungen für die Anlage der Mautgesamtberichte gefunden!" & vbNewLine & "Vorgang wird abgebrochen.") Return False @@ -1604,20 +1621,20 @@ Public Class usrCntlMDMAuswertungen If IsNumeric(KundenNr) Then Dim RK_ID As Integer = dtSammelRechnugen.AsEnumerable().Where(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = KundenNr).Select(Function(r) r.Field(Of Integer)("RK_ID")).FirstOrDefault() Dim RECHNUNG As New cRechnungsausgang(RK_ID) - AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum) + attachmentIsSet = AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum) End If End If - ElseIf f.Contains("Maut.pdf") Then + ElseIf f.Contains("_Maut.pdf") Then Dim FilePDF = New FileInfo(f) If FilePDF.Name.Length > 10 Then Dim KundenNr = FilePDF.Name.ToString.Substring(0, 6) If IsNumeric(KundenNr) Then Dim RK_ID As Integer = dtSammelRechnugen.AsEnumerable().Where(Function(r) r.Field(Of Integer)("RechnungsKundenNr") = CInt(KundenNr)).Select(Function(r) r.Field(Of Integer)("RK_ID")).FirstOrDefault() Dim RECHNUNG As New cRechnungsausgang(RK_ID) - AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum) + attachmentIsSet = AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum) End If End If End If @@ -1625,6 +1642,8 @@ Public Class usrCntlMDMAuswertungen End If + Return attachmentIsSet + Catch ex As SystemException End Try @@ -1633,7 +1652,7 @@ Public Class usrCntlMDMAuswertungen Private Function AddAttachementToRE(pathFile As String, kdNr As Integer, RECHNUNG As cRechnungsausgang, rechnungsdatum As Date) As Boolean - 'TODO: Prüfung, damit anhänge nicht doppelt eingearbeitet werden! + 'TODO: Prüfung, damit anhänge nicht doppelt eingearbeitet werden! -> ist DBteschnisch unterbunden mit PrimaryKey-Einschränkung!!! If Not IO.File.Exists(pathFile) Then Return False @@ -1657,7 +1676,7 @@ Public Class usrCntlMDMAuswertungen ANH.dsId = CInt(DS.da_id) ANH.Bezeichnung = DS.da_name RECHNUNG.ANHAENGE.Add(ANH) - Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False) + Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False, False) Else Return False End If @@ -1666,6 +1685,7 @@ Public Class usrCntlMDMAuswertungen Private Function setStatus4(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) As Boolean + Dim cnt = 0 'strParameter = ParameterBereitstellen(Me![Firma_ID], 0, 6, Me![fldSachbearbeiter], Year(Me!fldRechnungsDatum), Me![fldRechnungsDatum], varDatumZeit) 'Return (New SQL).doSQL("UPDATE [Rechnungsausgang] SET [Status] = 4 WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL") @@ -1677,11 +1697,24 @@ Public Class usrCntlMDMAuswertungen If Not reIsSet Then Return reIsSet + If True Then 'cnt Mod 10 = 0 Then + txtPloseAnh_Einarbeitung.Text = cnt & " / " & dtSammelRechnugen.Rows.Count + Dim proz As Double = (cnt / dtSammelRechnugen.Rows.Count) * 100 + pbPloseAnh_Proz.Value = proz + lblPloseAnh_Proz.Text = proz.ToString("N2") & " %" + 'GroupBox12.Refresh() + My.Application.DoEvents() + End If + cnt += 1 Next End If + pbPloseAnh_Proz.Value = 100 + txtPloseAnh_Einarbeitung.Text = dtSammelRechnugen.Rows.Count & " / " & dtSammelRechnugen.Rows.Count + lblPloseAnh_Proz.Text = "100.00 %" + Return reIsSet @@ -2130,110 +2163,128 @@ Public Class usrCntlMDMAuswertungen If cbxMautbericht._value = "" Then Exit Sub If cbxDateMautbericht._value = "" Then Exit Sub + Try - Select Case cbxMautbericht._value + + + Select Case cbxMautbericht._value 'nur intern - Case "Gesamtbericht_EXCEL" + Case "Gesamtbericht_EXCEL" - Dim dtGesamtbericht As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] From tblMautbericht INNER Join Adressen On tblMautbericht.[Customer No] = Adressen.AdressenNr Where cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL") - cProgramFunctions.genExcelFromDT_NEW(dtGesamtbericht, {"C1:C" & (dtGesamtbericht.Rows.Count + 1), "D1:D" & (dtGesamtbericht.Rows.Count + 1), "E1:E" & (dtGesamtbericht.Rows.Count + 1)},,,,, True) + Dim dtGesamtbericht As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] From tblMautbericht INNER Join Adressen On tblMautbericht.[Customer No] = Adressen.AdressenNr Where cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "'", "FMZOLL") + cProgramFunctions.genExcelFromDT_NEW(dtGesamtbericht, {"C1:C" & (dtGesamtbericht.Rows.Count + 1), "D1:D" & (dtGesamtbericht.Rows.Count + 1), "E1:E" & (dtGesamtbericht.Rows.Count + 1)},,,,, True) 'für Kunde an RE anhängen - Case "Gesamtbericht_CSV" + Case "Gesamtbericht_CSV" - Dim dtBerichtkunden_CSV As DataTable = (New SQL).loadDgvBySql("SELECT [Customer No], [Licence Plate Number], [Transaction Country], [Transaction date], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] + Dim dtBerichtkunden_CSV As DataTable = (New SQL).loadDgvBySql("SELECT [Customer No], [Licence Plate Number], [Transaction Country], [Transaction date], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], tblMautbericht.[Net Amount], tblMautbericht.[VAT Amount], tblMautbericht.[Total Amount] FROM Adressen INNER JOIN tblMautbericht ON Adressen.AdressenNr = tblMautbericht.[Customer No] WHERE Adressen.ExportMautberichtCSV=1 AND cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "' ORDER BY tblMautbericht.[Customer No], tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction Country], tblMautbericht.[Transaction date], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal]", "FMZOLL") - If dtBerichtkunden_CSV.Rows.Count > 0 Then + If dtBerichtkunden_CSV.Rows.Count > 0 Then - Dim displayView = New DataView(dtBerichtkunden_CSV, "", "Customer No", DataViewRowState.CurrentRows) - Dim distinctDT_CSV As DataTable = displayView.ToTable(True, "Customer No") + Dim displayView = New DataView(dtBerichtkunden_CSV, "", "Customer No", DataViewRowState.CurrentRows) + Dim distinctDT_CSV As DataTable = displayView.ToTable(True, "Customer No") - 'wenn bereits CSV-Datei im Ordner dann löschen! - If Directory.GetFiles(PathMautberichte) IsNot Nothing Then - For Each f In Directory.GetFiles(PathMautberichte) - If f.ToString.ToLower.EndsWith(".csv") Then File.Delete(f) - Next - End If + 'wenn bereits CSV-Datei im Ordner dann löschen! + If Directory.GetFiles(PathMautberichte) IsNot Nothing Then + For Each f In Directory.GetFiles(PathMautberichte) + If f.ToString.ToLower.EndsWith(".csv") Then File.Delete(f) + Next + End If - For Each csv As DataRow In distinctDT_CSV.Rows + For Each csv As DataRow In distinctDT_CSV.Rows - Dim dt_CSV_selected = dtBerichtkunden_CSV.Select("[Customer No] ='" & csv.Item(0) & "'").CopyToDataTable + Dim dt_CSV_selected = dtBerichtkunden_CSV.Select("[Customer No] ='" & csv.Item(0) & "'").CopyToDataTable - Dim fn As String = PathMautberichte & "\" & csv.Item("Customer No") & "_Maut.csv" - Dim outFile As System.IO.StreamWriter = My.Computer.FileSystem.OpenTextFileWriter(fn, False) - Dim clmns As String = "" - For i = 0 To dt_CSV_selected.Columns.Count - 1 - clmns &= dt_CSV_selected.Columns(i).ColumnName.ToString().Replace(";", ", ") & ";" - Next - outFile.WriteLine(clmns) - For i = 0 To dt_CSV_selected.Rows.Count - 1 - clmns = "" - For j = 0 To dt_CSV_selected.Columns.Count - 1 - clmns &= dt_CSV_selected.Rows(i)(j).ToString.Replace(";", ", ") & ";" + Dim fn As String = PathMautberichte & "\" & csv.Item("Customer No") & "_Maut.csv" + Dim outFile As System.IO.StreamWriter = My.Computer.FileSystem.OpenTextFileWriter(fn, False) + Dim clmns As String = "" + For i = 0 To dt_CSV_selected.Columns.Count - 1 + clmns &= dt_CSV_selected.Columns(i).ColumnName.ToString().Replace(";", ", ") & ";" Next outFile.WriteLine(clmns) + For i = 0 To dt_CSV_selected.Rows.Count - 1 + clmns = "" + For j = 0 To dt_CSV_selected.Columns.Count - 1 + clmns &= dt_CSV_selected.Rows(i)(j).ToString.Replace(";", ", ") & ";" + Next + outFile.WriteLine(clmns) + Next + outFile.Close() + Next - outFile.Close() - - Next - MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.") - Else - MsgBox("Es wurden keine Daten bereitgestellt") + MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.") + Else + MsgBox("Es wurden keine Daten bereitgestellt") - End If + End If 'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL) - Case "Lieferantenbericht_PDF" + Case "Lieferantenbericht_PDF" - Dim dtBerichtkunden_PDF As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction date], tblMautbericht.[Transaction Country], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], Sum(tblMautbericht.[Net Amount]) AS [Net Amount], Sum(tblMautbericht.[VAT Amount]) AS [VAT Amount], Sum(tblMautbericht.[Total Amount]) AS [Total Amount] + Dim dtBerichtkunden_PDF As DataTable = (New SQL).loadDgvBySql("SELECT tblMautbericht.[Customer No], Adressen.Ordnungsbegriff AS [Customer name], tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction date], tblMautbericht.[Transaction Country], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal], Sum(tblMautbericht.[Net Amount]) AS [Net Amount], Sum(tblMautbericht.[VAT Amount]) AS [VAT Amount], Sum(tblMautbericht.[Total Amount]) AS [Total Amount] FROM tblMautbericht INNER JOIN Adressen ON tblMautbericht.[Customer No] = Adressen.AdressenNr WHERE cast(BillingDate as Date) = '" & cbxDateMautbericht._value & "' GROUP BY tblMautbericht.[Customer No], Adressen.Ordnungsbegriff, tblMautbericht.[Licence Plate Number], tblMautbericht.[Transaction date], tblMautbericht.[Transaction Country], tblMautbericht.[Product description], tblMautbericht.[Card number], tblMautbericht.[Entry Terminal], tblMautbericht.[Exit Terminal] ", "FMZOLL") - If dtBerichtkunden_PDF.Rows.Count = 0 Then - MsgBox("Es wurden keine Daten bereitgestellt") - Exit Sub - End If + If dtBerichtkunden_PDF.Rows.Count = 0 Then + MsgBox("Es wurden keine Daten bereitgestellt") + Exit Sub + End If - Dim displayView = New DataView(dtBerichtkunden_PDF, "", "Customer No", DataViewRowState.CurrentRows) - Dim distinctDT_PDF As DataTable = displayView.ToTable(True, "Customer No") + Dim displayView = New DataView(dtBerichtkunden_PDF, "", "Customer No", DataViewRowState.CurrentRows) + Dim distinctDT_PDF As DataTable = displayView.ToTable(True, "Customer No") - 'wenn bereits PDF-Datei im Ordner dann löschen! + 'wenn bereits PDF-Datei im Ordner dann löschen! + If Directory.GetFiles(PathMautberichte) IsNot Nothing Then + For Each f In Directory.GetFiles(PathMautberichte) + If f.ToString.ToLower.EndsWith(".pdf") Then File.Delete(f) + Next + End If + + If distinctDT_PDF.Rows.Count > 1 Then + For Each pdf As DataRow In distinctDT_PDF.Rows + + Dim dt_PDF_selected = dtBerichtkunden_PDF.Select("[Customer No] ='" & pdf.Item(0) & "'").CopyToDataTable + + createPDFMautbericht(pdf.Item(0), dt_PDF_selected, cbxDateMautbericht._value, PathMautberichte) + + Next + + MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.") + + Else + MsgBox("Es wurden keine Daten bereitgestellt") + + End If + + + End Select + + + Dim count = 0 + If Directory.Exists(PathMautberichte) Then If Directory.GetFiles(PathMautberichte) IsNot Nothing Then For Each f In Directory.GetFiles(PathMautberichte) - If f.ToString.ToLower.EndsWith(".pdf") Then File.Delete(f) + If f.ToString.ToLower.EndsWith("_Maut.csv") Or f.ToString.ToLower.EndsWith("_Maut.pdf") Then count += 1 Next End If + End If + lblAnzahlMautberichte.Text = count & "x Mautberichte" - If distinctDT_PDF.Rows.Count > 1 Then - For Each pdf As DataRow In distinctDT_PDF.Rows - - Dim dt_PDF_selected = dtBerichtkunden_PDF.Select("[Customer No] ='" & pdf.Item(0) & "'").CopyToDataTable - - createPDFMautbericht(pdf.Item(0), dt_PDF_selected, cbxDateMautbericht._value, PathMautberichte) - - Next - - MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.") - - Else - MsgBox("Es wurden keine Daten bereitgestellt") - - End If - - - End Select + Catch ex As System.Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try End Sub @@ -2412,34 +2463,138 @@ Public Class usrCntlMDMAuswertungen Exit Sub End If + Dim cnt = 0 + Dim kdnr As Integer = -1 + + If rbkunde.Checked Then + If KdSearchBox3.KdNr > 0 Then + kdnr = KdSearchBox3.KdNr + Else + MsgBox("Kunde auswählen!") + Exit Sub + End If + End If + + If Not vbYes = MsgBox("Möchten Sie die Vorschau der Rechnugnen erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnungen gelten somit als gedruckt und können nicht mehr bearbeitet werden.", vbYesNoCancel) Then Exit Sub + Dim listPDFs As New List(Of String) - Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql("SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, [RK_ID], [BelegartenNr],cast([Vorkasse] as bit) as Vorkasse, [Nettozahlungsziel], [OffertenNr], [RechnungsLandKz], [Text] - FROM Rechnungsausgang - WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null - ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL") + 'Dim SQLString = "SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, [RK_ID], [BelegartenNr],cast([Vorkasse] as bit) as Vorkasse, [Nettozahlungsziel], [OffertenNr], [RechnungsLandKz], [Text] + ' FROM Rechnungsausgang + ' WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null " & IIf(kdnr > 0, " AND RechnungsKundenNr = " & kdnr, "") & " + ' ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]" + + + + Dim SQLString = "SELECT [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status] + FROM Rechnungsausgang + WHERE [Status] = 2 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null " & IIf(kdnr > 0, " AND RechnungsKundenNr = " & kdnr, "") & " + group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status] + ORDER BY [Firma_ID], [Status], RechnungsNr" + + Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql(SQLString, "FMZOLL") If dtSelectedSammelrechnungen.Rows.Count > 0 Then For Each rowRE In dtSelectedSammelrechnungen.Rows + Dim path = "" + cFakturierung.doSAMMELRechnungsDruck_Abschnitt(rowRE("RechnungsNr"), rowRE("Firma_ID"), rowRE("Buchungsjahr"), rowRE("DruckDatumZeit"), "", True, True, 7, path,, , , , , , , ) + If path <> "" Then listPDFs.Add(path) + + If True Then 'cnt Mod 10 = 0 Then + txtPloseAnh_Einarbeitung.Text = cnt & " / " & dtSelectedSammelrechnungen.Rows.Count + Dim proz As Double = (cnt / dtSelectedSammelrechnungen.Rows.Count) * 100 + pbPloseAnh_Proz.Value = proz + lblPloseAnh_Proz.Text = proz.ToString("N2") & " %" + 'GroupBox12.Refresh() + My.Application.DoEvents() + End If + cnt += 1 + Next - If listPDFs.Count > 1 Then - Dim pathPDF = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MDM_Sammelrechnung.pdf", ".pdf", False, False) - If FormularManagerNEU.MergePdfFiles(listPDFs, pathPDF) Then - Process.Start(pathPDF) - Else - MsgBox("Fehler beim zusammenführen der PDFs.") + If listPDFs.Count > 0 Then + + Dim pathPDF = listPDFs(0).ToString + + If listPDFs.Count > 1 Then + Dim pathPDFMerge = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("MDM_Sammelrechnung.pdf", ".pdf", False, False) + If Not FormularManagerNEU.MergePdfFiles(listPDFs, pathPDFMerge) Then + Exit Sub + MsgBox("Fehler beim Zusammenführen der PDFs.") + End If + End If + + pbPloseAnh_Proz.Value = 100 + txtPloseAnh_Einarbeitung.Text = dtSelectedSammelrechnungen.Rows.Count & " / " & dtSelectedSammelrechnungen.Rows.Count + lblPloseAnh_Proz.Text = "100.00 %" + Process.Start(pathPDF) + + Else + + MsgBox("Datei von " & rechnungsdatum.ToShortDateString & " konnte nicht erstellt werden!") + End If + Else + MsgBox("Keine Sammelrechnung zum " & rechnungsdatum.ToShortDateString & " von " & Sachbearbeiter & " vorhanden!") + End If + + + End Sub + + Private Sub KdSearchBox3_TextChanged(sender As Object, e As EventArgs) Handles KdSearchBox3.TextChanged + rbkunde.Checked = True + End Sub + + Private Sub Button20_Click_1(sender As Object, e As EventArgs) Handles Button20.Click + + Dim Sachbearbeiter = cboSachbearbeiter._value + Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) + Dim deleted As Boolean = False + + If rechnungsdatum > Today() Then + MsgBox("Rechnungsdatum liegt in der Zukunft, nicht möglich") + Exit Sub End If + If Sachbearbeiter = "" Then + MsgBox("Sachbearbeiter auswählen!") + Exit Sub + End If + + + Dim rechnungenMitGesamtmautanhant As String = (New SQL).getValueTxtBySqlVarList("SELECT COUNT(*) FROM Rechnungsausgang + inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID + WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv') + group by [Firma_ID], RechnungsNr,Buchungsjahr,DruckDatumZeit,[Status], RechnungsausgangAnhaenge.Bezeichnung ", "FMZOLL",, 0) + + If rechnungenMitGesamtmautanhant <> "" Then + + + If vbYes = MsgBox("Möchten Sie die " & rechnungenMitGesamtmautanhant & " Gesamtmautberichte (PDF und CSV) aus den Rechnungen vom entfernen?" & vbNewLine & "Die Mautberichte können erneut über 'Durchfüren' and die Rechnung gehängt werden.", vbYesNoCancel) Then + + deleted = (New SQL).doSQL("delete from RechnungsausgangAnhaenge where RechnungsausgangAnhaenge.RK_ID IN (SELECT Rechnungsausgang.RK_ID + FROM Rechnungsausgang + inner join RechnungsausgangAnhaenge on Rechnungsausgang.RK_ID = RechnungsausgangAnhaenge.RK_ID + WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')) and (RechnungsausgangAnhaenge.Bezeichnung like '%Maut.pdf' or RechnungsausgangAnhaenge.Bezeichnung like '%Maut.csv')", "FMZOLL") + + If deleted Then MsgBox("Anhänge wurden gelöscht") + + End If + Else + MsgBox("In den Rechnungen vom " & rechnungsdatum & " sind keine Gesamtmautberichte angehängt!") + End If + + End Sub End Class diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb b/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb index 65315d52..4f3169e6 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cRechnungsausgang.vb @@ -564,7 +564,7 @@ Public Class cRechnungsausgang End If Return True End Function - Public Function SAVE_ANHAENGE(RK_ID As Integer, Optional delete As Boolean = True) As Boolean + Public Function SAVE_ANHAENGE(RK_ID As Integer, Optional delete As Boolean = True, Optional showError As Boolean = True) As Boolean Select Case delete @@ -572,7 +572,7 @@ Public Class cRechnungsausgang If DELETE_ANHAENGE() Then For Each p In ANHAENGE - If Not p.INSERT(RK_ID) Then Return False + If Not p.INSERT(RK_ID, showError) Then Return False Next Else Return False @@ -581,7 +581,7 @@ Public Class cRechnungsausgang Case Else For Each p In ANHAENGE - If Not p.INSERT(RK_ID) Then Return False + If Not p.INSERT(RK_ID, showError) Then Return False Next End Select @@ -999,10 +999,10 @@ Public Class cRechnungsausgangAnhaenge Return list End Function - Public Function INSERT(RK_ID) As Boolean + Public Function INSERT(RK_ID As Integer, Optional showError As Boolean = True) As Boolean Me.RK_ID = RK_ID Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList() - Return SQL.doSQLVarList(getInsertCmd, "FMZOLL", , list) + Return SQL.doSQLVarList(getInsertCmd, "FMZOLL", showError, list) End Function