diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index b39fc6cf..53a857c7 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -6,6 +6,7 @@ Imports VERAG_PROG_ALLGEMEIN Imports s2industries.ZUGFeRD Imports System.IO Imports GrapeCity.ActiveReports.Core.Rendering.Tools +Imports System.Windows.Converters Public Class cFakturierung @@ -1182,8 +1183,8 @@ Public Class cFakturierung rpt.lblRechnungAn.Text = If(RECHNUNG.RechnungsName_1, "") & vbNewLine If If(RECHNUNG.RechnungsName_2, "") <> "" Then rpt.lblRechnungAn.Text &= RECHNUNG.RechnungsName_2 & vbNewLine - If If(RECHNUNG.RechnungsName_AdressZusatz, "") <> "" Then rpt.lblRechnungAn.Text &= RECHNUNG.RechnungsName_AdressZusatz & vbNewLine If If(RECHNUNG.RechnungsStraße, "") <> "" Then rpt.lblRechnungAn.Text &= RECHNUNG.RechnungsStraße & vbNewLine + If If(RECHNUNG.RechnungsName_AdressZusatz, "") <> "" Then rpt.lblRechnungAn.Text &= RECHNUNG.RechnungsName_AdressZusatz & vbNewLine If If(RECHNUNG.RechnungsOrt, "") <> "" Then rpt.lblRechnungAn.Text &= RECHNUNG.RechnungsOrt & vbNewLine If If(RECHNUNG.RechnungsLandKz, "") <> "" Then rpt.lblRechnungAn.Text &= cProgramFunctions.getLandBez_fromISO1Land(RECHNUNG.RechnungsLandKz, "", RECHNUNG.RechnungSprache).ToString.ToUpper @@ -1742,7 +1743,7 @@ Public Class cFakturierung Return False End Function - Shared Function createZUGFeRD(einzelrechnung As Boolean, Optional RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang = Nothing, Optional SR_DT As DataTable = Nothing, Optional rpt As rptSammelRechnungDruck = Nothing) As String + Shared Function createZUGFeRD(einzelrechnung As Boolean, Optional RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang = Nothing, Optional SR_DT As DataTable = Nothing, Optional rpt As rptSammelRechnungDruck = Nothing, Optional rptAnl As rptSammelRechnungAnlagenDruck = Nothing) As String Dim ZZTage = 10 Dim vatSeller As ElectronicAddressSchemeIdentifiers @@ -1798,7 +1799,7 @@ Public Class cFakturierung End If '----------------------------- - + desc.ActualDeliveryDate = (RECHNUNG.Abfertigungsdatum) Dim steuerProzent As Double = SQL.DLookup(" isnull([Steuersatz %],0)", "[Steuertabelle] ", "[Steuerschlüssel]='" & checkNull(RECHNUNG.Steuerschlüssel) & "'", "FMZOLL", 0) Dim steuerProzenFaktor As Double = 0 @@ -1859,73 +1860,78 @@ Public Class cFakturierung 'End If Dim isReverseCharge = isReverseChargeSumme(FIRMA, RECHNUNG) + If isReverseCharge Then + Select Case RECHNUNG.RechnungSprache + Case "EN" : desc.AddNote("The VAT liability is transferred to the recipient of the service (reverse charge system).", SubjectCodes.AAI) + Case Else : desc.AddNote("Die Umsatzsteuerschuld geht auf den Leistungsempfänger über (Reverse Charge Verfahren).", SubjectCodes.AAI) + End Select + End If + If RECHNUNG.SteuerfreierGesamtbetrag > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag), 0, TaxTypes.VAT, TaxCategoryCodes.Z) - End If + desc.AddApplicableTradeTax(Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag), 0, TaxTypes.VAT, TaxCategoryCodes.Z) + End If - If RECHNUNG.SteuerpflichtigerGesamtbetrag > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - RECHNUNG.SteuerfreierGesamtbetrag), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) - End If + If RECHNUNG.SteuerpflichtigerGesamtbetrag > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - RECHNUNG.SteuerfreierGesamtbetrag), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) + End If - Select Case FIRMA.Firma_ID - Case 21, 22, 23 '"UNISPED" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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, "")) + Select Case FIRMA.Firma_ID + Case 21, 22, 23 '"UNISPED" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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") + Case 24 'AMBAR" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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") - - - Case 20 '"IMEX" - If RECHNUNG.RechnungsLandKz = "TR" Then - desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank") - Else - If hasVK(RECHNUNG) Then - desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG") + Case 20 '"IMEX" + If RECHNUNG.RechnungsLandKz = "TR" Then + desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank") Else - If hasEUSTZOLL(RECHNUNG.RechnungsNr) Then - desc.AddCreditorFinancialAccount("AT62 4480 0365 7822 0001", "VBOEATWWOOE", ) + If hasVK(RECHNUNG) Then + desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG") Else - desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "VBOEATWWOOE", ,, "Volksbank Oberösterreich AG") + If hasEUSTZOLL(RECHNUNG.RechnungsNr) Then + 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 - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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 19 + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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 - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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 Else 'VERAG,ATILLA + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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 + End Select - Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RECHNUNG.RechnungsNr, ".xml", True, False) - Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) - desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) + Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RECHNUNG.RechnungsNr, ".xml", True, False) + Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) + desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) - stream.Flush() - stream.Close() - Return tmpPathZugpferd + stream.Flush() + stream.Close() + Return tmpPathZugpferd - ElseIf Not einzelrechnung AndAlso SR_DT IsNot Nothing Then + ElseIf Not einzelrechnung AndAlso SR_DT IsNot Nothing Then - '--------------------------------------------------------------------------------- - '--------------------------------SAMMELRECHNUNG----------------------------------- - '--------------------------------------------------------------------------------- + '--------------------------------------------------------------------------------- + '--------------------------------SAMMELRECHNUNG----------------------------------- + '--------------------------------------------------------------------------------- - Dim ROW As DataRow = SR_DT.Rows(0) + Dim ROW As DataRow = SR_DT.Rows(0) Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(ROW("Firma_ID")) Dim RECHNUNG_AD As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) @@ -1992,11 +1998,25 @@ Public Class cFakturierung 'If RECHNUNG.Besonderheiten IsNot Nothing Then ' desc.AddNote(RECHNUNG.Besonderheiten.ToString, SubjectCodes.AAI) 'End If - - If rpt.txtVermerk.Text IsNot Nothing AndAlso rpt.txtVermerk.Text <> "" Then desc.AddNote(rpt.txtVermerk.Text.ToString, SubjectCodes.AAI) + If rpt IsNot Nothing Then + If rpt.txtVermerk.Text IsNot Nothing AndAlso rpt.txtVermerk.Text <> "" Then desc.AddNote(rpt.txtVermerk.Text.ToString, SubjectCodes.AAI) + If rpt.txtInfo.Text IsNot Nothing AndAlso rpt.txtInfo.Text <> "" Then desc.AddNote(rpt.txtInfo.Text.ToString, SubjectCodes.AAI) + ElseIf rptAnl IsNot Nothing Then + If rptAnl.txtInfo.Text IsNot Nothing AndAlso rptAnl.txtInfo.Text <> "" Then desc.AddNote(rptAnl.txtInfo.Text.ToString, SubjectCodes.AAI) + End If desc.AddNote("Es bestehen Rabatt- und Bonusvereinbarungen.", SubjectCodes.AAK) + If ROW("AbfertigungsdatumVon") IsNot DBNull.Value Then + + Dim dt As DateTime = CType(ROW("AbfertigungsdatumVon"), DateTime) + + If IsDate(dt) Then desc.ActualDeliveryDate = (CDate(dt)) + + + End If + + desc.SetBuyer(ROW("RechnungsName 1") & " " & Rechnugnsname2, RechnungsOrt, RechnungsOrt, RechnungsStraße, GetCountryCodeFromLandKZ(RechnungsLandKz, vatBuyer), IIf(Not IsDBNull(ROW("RechnungsKundenNr")), ROW("RechnungsKundenNr"), "")) desc.SetSeller(FIRMA.Firma_Bez, FIRMA.Firma_Ort, FIRMA.Firma_Ort, FIRMA.Firma_Straße, GetCountryCodeFromLandKZ(FIRMA.Firma_LandKz, vatSeller)) @@ -2119,77 +2139,84 @@ Public Class cFakturierung duePayableAmount:=Convert.ToDecimal(duePayableAmount), roundingAmount:=0 'Der Betrag, der dem Rechnungsgesamtbetrag hinzuzufügen ist, um den zu zahlenden Betrag zu runden ) - - desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum) + If rpt IsNot Nothing Then + desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum) + desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rpt.Label2.Text) + ElseIf rptAnl IsNot Nothing Then + desc.AddTradePaymentTerms(rptAnl.Label2.Text, zahlungszieldatum) + desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rptAnl.Label2.Text) + End If 'If RECHNUNG.TextZZ.ToString.Contains("Abbuchungsauftrag") Then ' desc.SetPaymentMeansSepaDirectDebit("", ,"") 'Else - desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rpt.Label2.Text) + 'desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rpt.Label2.Text) 'End If + + Select Case FIRMA.Firma_ID - Case 21, 22, 23 '"UNISPED" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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 21, 22, 23 '"UNISPED" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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" - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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") + Case 24 'AMBAR" + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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") - Case 20 '"IMEX" - If RechnungsLandKz = "TR" Then - desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank") - Else - If hasVK(RechnungsNr, ROW("Buchungsjahr")) Then - desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG") + Case 20 '"IMEX" + If RechnungsLandKz = "TR" Then + desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "",,, "Garanti Bank") Else - If hasEUSTZOLL(RechnungsNr) Then - desc.AddCreditorFinancialAccount("AT62 4480 0365 7822 0001", "VBOEATWWOOE", ) + If hasVK(RechnungsNr, ROW("Buchungsjahr")) Then + desc.AddCreditorFinancialAccount("AT35 4480 0365 7822 0002", "VBOEATWWOOE",,, "Volksbank Oberösterreich AG") Else - desc.AddCreditorFinancialAccount("TR84 0006 2001 6040 0009 0987 13", "VBOEATWWOOE", ,, "Volksbank Oberösterreich AG") + If hasEUSTZOLL(RechnungsNr) Then + 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 - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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 19 + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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 - If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) - If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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 Else 'VERAG,ATILLA + If FIRMA.Firma_IBAN1 IsNot Nothing AndAlso FIRMA.Firma_BIC1 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung1 IsNot Nothing Then 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, "")) + If FIRMA.Firma_IBAN2 IsNot Nothing AndAlso FIRMA.Firma_BIC2 IsNot Nothing AndAlso FIRMA.Firma_Bankverbindung2 IsNot Nothing Then 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 + End Select - Dim isReverseCharge = IIf(getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), "") > 0, True, False) + Dim isReverseCharge = IIf(getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), "") > 0, True, False) - If Gesamt_RG_BetragSteuerfrei > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei), 0, TaxTypes.VAT, TaxCategoryCodes.Z) + If Gesamt_RG_BetragSteuerfrei > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei), 0, TaxTypes.VAT, TaxCategoryCodes.Z) + End If + + If Gesamt_RG_BetragSteuerpflichtig > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - Gesamt_RG_BetragSteuerfrei), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) + End If + + Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RechnungsNr, ".xml", True, False) + Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) + desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) + + stream.Flush() + stream.Close() + Return tmpPathZugpferd + End If - If Gesamt_RG_BetragSteuerpflichtig > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - Gesamt_RG_BetragSteuerfrei), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) - End If - - Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RechnungsNr, ".xml", True, False) - Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) - desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) - - stream.Flush() - stream.Close() - Return tmpPathZugpferd - - End If - @@ -2799,7 +2826,7 @@ Public Class cFakturierung End Function - Public Shared Function doSAMMELRechnungsDruck(Firma_ID As Integer, SammelrechungArt As Integer, DatumBis As Date, Rechnungsdatum As Date, PrinterName As String, Optional AnlageEinzelRg As Boolean = True, Optional Sammelrechnungsbericht As Boolean = True, Optional whereKdNr As String = "", Optional RechnungsdruckArt As Integer = -1, Optional ByRef listPDFs As List(Of String) = Nothing, Optional SB As String = "", ByRef Optional lastAktuelle_RgNr As Integer = -1, ByRef Optional DruckdatumUhrzeit As DateTime = Nothing, Optional AvisoIds As List(Of Integer) = Nothing, Optional AnlageExcelEvolog As Boolean = False, Optional ByRef SonstAnlagen As List(Of String) = Nothing, Optional vorschau As Boolean = False, Optional AnlageExcelTransferry360 As Boolean = False, Optional FakturierungsGruppe As String = "", Optional Abfertigungsart As String = "") As Boolean 'RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, Optional vorschau As Boolean = False, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "") As Boolean + Public Shared Function doSAMMELRechnungsDruck(Firma_ID As Integer, SammelrechungArt As Integer, DatumBis As Date, Rechnungsdatum As Date, PrinterName As String, Optional AnlageEinzelRg As Boolean = True, Optional Sammelrechnungsbericht As Boolean = True, Optional whereKdNr As String = "", Optional RechnungsdruckArt As Integer = -1, Optional ByRef listPDFs As List(Of String) = Nothing, Optional SB As String = "", ByRef Optional lastAktuelle_RgNr As Integer = -1, ByRef Optional DruckdatumUhrzeit As DateTime = Nothing, Optional AvisoIds As List(Of Integer) = Nothing, Optional AnlageExcelEvolog As Boolean = False, Optional ByRef SonstAnlagen As List(Of String) = Nothing, Optional vorschau As Boolean = False, Optional AnlageExcelTransferry360 As Boolean = False, Optional FakturierungsGruppe As String = "", Optional Abfertigungsart As String = "", Optional MDMRENrvoarhanden As Boolean = False) As Boolean 'RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, Optional vorschau As Boolean = False, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "") As Boolean 'If RECHNUNG Is Nothing Then MsgBox("Fehler beim Laden der Rechnungsdaten!") : Return False Try 'If whereKdNr <> "" Then whereKdNr = " AND RechnungsKundenNr IN(" & whereKdNr & ") " @@ -2868,10 +2895,12 @@ Public Class cFakturierung If kdTmp <> RG.RechnungsKundenNr Or FIRMATmp <> RG.Firma_ID Then 'Or FilialeTmp <> RG.FilialenNr ' KEIN doSAMMELRechnungsDruck_Abschnitt!!!! - Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr) + If Not MDMRENrvoarhanden Then Aktuelle_RgNr = getNewRgNr(Firma_ID, Buchungsjahr) + + End If - kdTmp = RG.RechnungsKundenNr + kdTmp = RG.RechnungsKundenNr FilialeTmp = RG.FilialenNr FIRMATmp = RG.Firma_ID Case Else @@ -2892,35 +2921,42 @@ Public Class cFakturierung If vorschau Then RG.[VorschauID] = VorschauID Else - RG.[RechnungsNr] = Aktuelle_RgNr If SammelrechungArt = 6 Then - RG.[Status] = 2 'Bei MDM Abrechnung; Druck später!! + If RechnungsdruckArt = 7 Then + RG.[Status] = 2 'Bei MDM Abrechnung; Druck später!! + Else + RG.[Status] = 4 ' Beim finalen Versenden der Sammelrechnung + End If + Else RG.[Status] = 3 End If + RG.[RechnungsNr] = Aktuelle_RgNr RG.[RechnungsDatum] = Rechnungsdatum.ToShortDateString RG.[Buchungsjahr] = Buchungsjahr RG.[DruckDatumZeit] = DruckdatumUhrzeit.ToString("dd.MM.yyyy HH:mm:ss.fff") End If RG.SAVE() - - If Not RG.checkRechnungsNrIsSet() AndAlso Not vorschau Then - MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen") - Return False - Else - found = True + If RechnungsdruckArt <> 7 Then + If Not RG.checkRechnungsNrIsSet() AndAlso Not vorschau Then + MsgBox("Rechnungsnummer wurde nicht in Datenbank eingetragen" & vbNewLine & "Vorgang wird abgebrochen") + Return False + Else + found = True + End If End If + End If Next 'Letzter Abschnitt: If found Then Dim path = "" - If Not SammelrechungArt = 6 Then doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart) + If Not (SammelrechungArt = 6 And RechnungsdruckArt = 7) Then doSAMMELRechnungsDruck_Abschnitt(Aktuelle_RgNr, Firma_ID, Buchungsjahr, DruckdatumUhrzeit, PrinterName, AnlageEinzelRg, Sammelrechnungsbericht, RechnungsdruckArt, path,, SB, AnlageExcelEvolog, SonstAnlagen, VorschauID, AnlageExcelTransferry360, FakturierungsGruppe, Abfertigungsart) If path <> "" Then listPDFs.Add(path) End If lastAktuelle_RgNr = Aktuelle_RgNr @@ -2951,7 +2987,7 @@ Public Class cFakturierung Else 'Dim RG_NR = New VERAG_PROG_ALLGEMEIN.cRechnungsnummern(Firma_ID, Buchungsjahr) 'RG_NR.INCREASE_RGNR() 'für die nächste Rechnung - dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, IIf(RechnungsdruckArt = 7, 2, 3), [VorschauID]) + dt = getSAMMELRechnung_Dt(RechnungsNr, DruckdatumUhrzeit, IIf(RechnungsdruckArt = 7, "2", "2, 3, 4"), [VorschauID]) End If ' 3-_> Anlagen gedruckt @@ -2969,7 +3005,7 @@ Public Class cFakturierung '-------------- ENDE -------------- doSAMMELRechnungsDruck_Abschnitt = doSAMMELRechnungDruck_Rechnungsdruck(dt, RechnungsNr, DruckdatumUhrzeit, 3, RechnungsdruckArt, pathPDF_SammelRg, PrinterName, SRDruckWiederholen, VorschauID) 'Sammelrechnung drucken - If Sammelrechnungsbericht Then If Not doSAMMELRechnungDruck_Rechnungsdruck_Sammelrechnungsbericht(RechnungsNr, DruckdatumUhrzeit, RechnungsdruckArt, pathPDF_SammelBericht, PrinterName, VorschauID) Then doSAMMELRechnungsDruck_Abschnitt = False 'Sammelrechnungsbericht drucken + If Sammelrechnungsbericht Then If Not doSAMMELRechnungDruck_Rechnungsdruck_Sammelrechnungsbericht(RechnungsNr, DruckdatumUhrzeit, RechnungsdruckArt, pathPDF_SammelBericht, PrinterName, VorschauID, dt) Then doSAMMELRechnungsDruck_Abschnitt = False 'Sammelrechnungsbericht drucken If AnlageEinzelRg Then If Not doSAMMELRechnungDruck_Rechnungsdruck_Anlagen(RechnungsNr, DruckdatumUhrzeit, PrinterName, pathPDF_Anlage, RechnungsdruckArt, VorschauID) Then doSAMMELRechnungsDruck_Abschnitt = False 'Anlagen drucken 'SONSTIGE ANLAGEN: @@ -3087,7 +3123,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 - 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") + SQL.loadDgvBySql("Select RK_ID FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(" & IIf(RechnungsdruckArt = 7, "2", "2, 3, 4") & ") 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 @@ -3301,7 +3337,7 @@ Public Class cFakturierung End Function - Shared Function doSAMMELRechnungDruck_Rechnungsdruck_Sammelrechnungsbericht(RechnungsNr As Integer, DruckdatumUhrzeit As Date, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "", Optional PrinterName As String = "", Optional VorschauID As String = "") As Boolean 'RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, Optional vorschau As Boolean = False, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "") As Boolean + Shared Function doSAMMELRechnungDruck_Rechnungsdruck_Sammelrechnungsbericht(RechnungsNr As Integer, DruckdatumUhrzeit As Date, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "", Optional PrinterName As String = "", Optional VorschauID As String = "", Optional SammelrechnungsDT As DataTable = Nothing) As Boolean 'RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang, Optional vorschau As Boolean = False, Optional Rechnugnsdruck As Integer = -1, Optional ByRef Path As String = "") As Boolean Try @@ -3310,7 +3346,7 @@ Public Class cFakturierung If Rechnugnsdruck = 7 Then dt = SQL.loadDgvBySql("Select * FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(2) And CONVERT(datetime,DruckDatumZeit ,104)='" & DruckdatumUhrzeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") Else - dt = SQL.loadDgvBySql("Select * FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(3,4) And CONVERT(datetime,DruckDatumZeit ,104)='" & DruckdatumUhrzeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") + dt = SQL.loadDgvBySql("Select * FROM Rechnungsausgang WHERE Rechnungsausgang.Status In(2,3,4) And CONVERT(datetime,DruckDatumZeit ,104)='" & DruckdatumUhrzeit.ToString("dd.MM.yyyy HH:mm:ss.fff") & "' and RechnungsNr='" & RechnungsNr & "' ORDER BY FilialenNr, AbfertigungsNr", "FMZOLL") End If Else @@ -3325,6 +3361,8 @@ Public Class cFakturierung Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(ROW("Firma_ID")) Dim KD_RG As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) + Dim isMDMRechnungsdruck = checkIfMDMSammelrechnung(Rechnugnsdruck, ROW("Status")) + If FIRMA Is Nothing Then MsgBox("Keine Firma gewählt!") : Return False @@ -3360,12 +3398,12 @@ Public Class cFakturierung Case "EN" Select Case BelegartenKz Case "AR" - rpt.lblUeberschriftRG_GS.Text = IIf(Rechnugnsdruck <> 7, "Attatchment to INVOICE", "INVOICE") + rpt.lblUeberschriftRG_GS.Text = IIf(Not isMDMRechnungsdruck, "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 = IIf(Rechnugnsdruck <> 7, "Attatchment to CREDIT NOTE", "CREDIT NOTE") + rpt.lblUeberschriftRG_GS.Text = IIf(Not isMDMRechnungsdruck, "Attatchment to CREDIT NOTE", "CREDIT NOTE") rpt.lblSummeUeberschrift.Text = "Credit Amount:" rpt.lblRgNrUeberschrift.Text = "Credit Note No.:" rpt.lblRgDatumUeberschrift.Text = "Credit Note Date:" @@ -3373,7 +3411,7 @@ Public Class cFakturierung Case Else Select Case BelegartenKz Case "AR" - rpt.lblUeberschriftRG_GS.Text = IIf(Rechnugnsdruck <> 7, "Anlage zur Sammelrechnung", "Sammelrechnung") + rpt.lblUeberschriftRG_GS.Text = IIf(Not isMDMRechnungsdruck, "Anlage zur Sammelrechnung", "Sammelrechnung") Case "AG" rpt.lblUeberschriftRG_GS.Text = "GUTSCHRIFT" rpt.lblSummeUeberschrift.Text = "Gutschriftsbetrag:" @@ -3421,8 +3459,8 @@ Public Class cFakturierung rpt.lblSachbearbeiter.Text = getSBRgName(FIRMA.Firma_ID, VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) 'könnten ja mehrerer SB die Rg-Anlagen geschreiben haben - rpt.lblFirmenbuch.Text = If(FIRMA.Firma_Firmenbuch, "").ToString.Replace("Firmenbuch: ", "").Trim - rpt.lblUID.Text = If(FIRMA.Firma_UID, "") + rpt.lblFirmenbuch.Text = If(FIRMA.Firma_Firmenbuch, "").ToString.Replace("Firmenbuch: ", "").Trim + rpt.lblUID.Text = If(FIRMA.Firma_UID, "").ToString.Replace("UID: ", "").Trim rpt.lblEORI.Text = If(FIRMA.Firma_EORI, "") rpt.txtKdAuftragsnummer.Text = If(ROW("KdAuftragsNr") IsNot DBNull.Value, ROW("KdAuftragsNr"), "") @@ -3435,14 +3473,36 @@ Public Class cFakturierung 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 Rechnugnsdruck = 7 Then + + + + If isMDMRechnungsdruck Then + + If getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), VorschauID) > 0 Then + Select Case ROW("RechnungSprache") + Case "EN" : rpt.txtInfo.Text = vbNewLine & vbNewLine & "The VAT liability is transferred to the recipient of the service (reverse charge system)." '"Attention! For EU customers! Since 1.1.2010, services are subject to the application of the reverse charge procedure. Transfer of the tax liability to the recipient of the service." + Case Else : rpt.txtInfo.Text = vbNewLine & vbNewLine & "Die Umsatzsteuerschuld geht auf den Leistungsempfänger über (Reverse Charge Verfahren)." '"Achtung! Für EU-Kunden! Seit 1.1.2010 unterliegen Leistungen der Anwendung des Reverse Charge Verfahrens. Übergang der Steuerschuld an den Leistungsempfänger." + End Select + Else : rpt.txtInfo.Text = "" : End If + + If ROW("Nettozahlungsziel") IsNot DBNull.Value AndAlso IsNumeric(ROW("Nettozahlungsziel")) Then + rpt.Label2.Text = ROW("Nettozahlungsziel") + Else + rpt.Label2.Text = "" + End If + + + If ROW("Text") IsNot DBNull.Value AndAlso ROW("Text") <> "" Then - rpt.txtInfo.Text = vbNewLine & vbNewLine & ROW("Text") + rpt.txtInfo.Text &= vbNewLine & vbNewLine & ROW("Text") + rpt.txtVermerk.Text = (If(ROW("Text"), "").ToString.Trim & vbNewLine & vbNewLine & If(ROW("Notiz"), "").ToString.Trim).ToString.Trim Else rpt.txtInfo.Text = "" + rpt.txtVermerk.Text = "" End If Else rpt.txtInfo.Text = "" + rpt.txtVermerk.Text = "" End If 'If If(ROW("RechnungsName 2") IsNot DBNull.Value, ROW("RechnungsName 2"), "") = "" Then @@ -3472,13 +3532,20 @@ 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" + rpt.lblSteuerfreiUeberschrift.Visible = Not isMDMRechnungsdruck + rpt.lblSteuerpflichtigUeberschrift.Visible = Not isMDMRechnungsdruck + rpt.lblDurchlaufposten.Visible = isMDMRechnungsdruck + rpt.lblSteuerplichtUeberschriftMDM.Visible = isMDMRechnungsdruck + Dim sumSteuerpflichtig As Double = 0 Dim sumSteuerfrei As Double = 0 + + + AddHandler rpt.Detail.Format, Sub() ' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString ' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString @@ -3546,7 +3613,7 @@ Public Class cFakturierung Dim KUNDE_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(RECHNUNG.RechnungsKundenNr) - If KUNDE_ERW.kde_FakturierungSR_Details OrElse Rechnugnsdruck = 7 Then + If KUNDE_ERW.kde_FakturierungSR_Details OrElse isMDMRechnungsdruck Then Dim subRpt = New rptSammelRechnungAnlagenDruck_Leistungen(rpt._LAN, RECHNUNG) @@ -3609,22 +3676,61 @@ Public Class cFakturierung ' RECHNUNG.SET_DruckdatumUhrzeit() 'End If + If isMDMRechnungsdruck Then + If Rechnugnsdruck = 4 Or Rechnugnsdruck = 2 Then + If ROW("RechnungsLandKz") IsNot DBNull.Value AndAlso ROW("RechnungsLandKz") <> "" AndAlso rpt.lblSteuerbetrag.Text = "" Then + rpt.txtInfo.Text &= vbNewLine & vbNewLine & (New SQL).getValueTxtBySql("SELECT Text FROM Rechnungstexte WHERE Firma_ID=0 AND EMailRechnung=1 AND Rechnungstexte.DrucksteuerungsKz='R' AND LandKZ='" & ROW("RechnungsLandKz") & "'", "FMZOLL") + End If + End If + + End If - 'ORIGINAL - Dim AD As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) + + 'ORIGINAL + Dim AD As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) 'Dim RG_Bezeichnung = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & " _Rechnung_" & RechnungsNr & ".pdf" Dim RG_Bezeichnung = "Rechnung_" & RechnungsNr & ".pdf" 'Rechnugnsdruck = Individuell für deise Rechnung, wird optional mitgegeben + + + Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(RG_Bezeichnung, ".pdf", , False) Dim pEx As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport rpt.Run(False) pEx.NeverEmbedFonts = "" pEx.Export(rpt.Document, tmpPath) + + + If isMDMRechnungsdruck AndAlso SammelrechnungsDT IsNot Nothing AndAlso SammelrechnungsDT.Rows.Count > 0 Then + + Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) + Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") + If enableZugpferd Then + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, SammelrechnungsDT, , rpt)) + Else + Dim Zugferdpath = createZUGFeRD(False, Nothing, SammelrechnungsDT,, rpt) + If Zugferdpath IsNot Nothing AndAlso Zugferdpath <> "" Then + Dim fileInfo_ZP As New FileInfo(Zugferdpath) + Dim ZUGF_DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "ZUGFERD", Now().Year & "_SR", "", "", fileInfo_ZP.Name, -1, False) + ZUGF_DS.uploadDataToDATENSERVER(Zugferdpath, fileInfo_ZP.Name, fileInfo_ZP.Extension,,,, True) + End If + + End If + + End If + + + Path = tmpPath + + + + + Select Case If(Rechnugnsdruck > 0, Rechnugnsdruck, If(AD.Rechnungsdruck, 0))'If(AD.Rechnungsdruck, 0) Case 0, 1 'DRUCKEN Return cProgramFunctions.printRpt(rpt, PrinterName, False) @@ -3746,11 +3852,12 @@ Public Class cFakturierung Dim rpt As New rptSammelRechnungDruck(ROW("RechnungSprache")) Dim firmaID = ROW("Firma_ID") - 'firmaID.ToString.Replace("15", "19") Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(firmaID) Dim KD_RG As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) + Dim isMDMRechnungsdruck = checkIfMDMSammelrechnung(Rechnugnsdruck, ROW("Status")) + If FIRMA Is Nothing Then MsgBox("Keine Firma gewählt!") : Return False @@ -4047,27 +4154,31 @@ Public Class cFakturierung p.NeverEmbedFonts = "" p.Export(rpt.Document, tmpPath) - Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) - Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") - If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, dt, rpt)) - Else - Dim Zugferdpath = createZUGFeRD(False, Nothing, dt, rpt) - If Zugferdpath IsNot Nothing AndAlso Zugferdpath <> "" Then - Dim fileInfo_ZP As New FileInfo(Zugferdpath) - Dim ZUGF_DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "ZUGFERD", Now().Year & "_SR", "", "", fileInfo_ZP.Name, -1, False) - ZUGF_DS.uploadDataToDATENSERVER(Zugferdpath, fileInfo_ZP.Name, fileInfo_ZP.Extension,,,, True) + If Not isMDMRechnungsdruck Then + + Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) + Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") + If enableZugpferd Then + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, dt, rpt)) + Else + Dim Zugferdpath = createZUGFeRD(False, Nothing, dt, rpt) + If Zugferdpath IsNot Nothing AndAlso Zugferdpath <> "" Then + Dim fileInfo_ZP As New FileInfo(Zugferdpath) + Dim ZUGF_DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "ZUGFERD", Now().Year & "_SR", "", "", fileInfo_ZP.Name, -1, False) + ZUGF_DS.uploadDataToDATENSERVER(Zugferdpath, fileInfo_ZP.Name, fileInfo_ZP.Extension,,,, True) + End If + End If End If Select Case If(Rechnugnsdruck > 0, Rechnugnsdruck, If(AD.Rechnungsdruck, 0))'If(AD.Rechnungsdruck, 0) - Case 0, 1 'DRUCKEN - Path = tmpPath 'wird für Therefore benötigt - Return cProgramFunctions.printRpt(rpt, PrinterName, False) + Case 0, 1 'DRUCKEN + Path = tmpPath 'wird für Therefore benötigt + Return cProgramFunctions.printRpt(rpt, PrinterName, False) 'Case 1 'FAX - Case 2 'MAIL + Case 2 'MAIL 'Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(RG_Bezeichnung, ".pdf", , False) 'Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport @@ -4075,70 +4186,75 @@ Public Class cFakturierung 'p.NeverEmbedFonts = "" 'p.Export(rpt.Document, tmpPath) 'rpt.Dispose() + + If isMDMRechnungsdruck Then Return True 'MDM-Sammelrechnungen nicht mitgeben! + Path = tmpPath - Try - Dim outl As New Outlook.Application - Dim Mail As Microsoft.Office.Interop.Outlook.MailItem - Mail = outl.CreateItem(0) - ' Mail.Subject = "Rechnung Nr. " & ROW("RechnungsNr") - ' Mail.HTMLBody = "Sehr geehrte Damen und Herren,

anbei erhalten Sie die Rechnung Nr. " & ROW("RechnungsNr") & "." + Try + Dim outl As New Outlook.Application + Dim Mail As Microsoft.Office.Interop.Outlook.MailItem + Mail = outl.CreateItem(0) + ' Mail.Subject = "Rechnung Nr. " & ROW("RechnungsNr") + ' Mail.HTMLBody = "Sehr geehrte Damen und Herren,

anbei erhalten Sie die Rechnung Nr. " & ROW("RechnungsNr") & "." - ' Mail.Subject = " Rechnung Nr. " & ROW("RechnungsNr") - ' Mail.Subject = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & " Rechnung Nr. " & ROW("RechnungsNr") - Select Case ROW("RechnungsLandKz") - Case "TR" - Mail.Subject = "Invoice NO. " & ROW("RechnungsNr") - Mail.HTMLBody = "Sayin Bayanlar ve Baylar,

ekte baslikta yazan faturayi bulabilirsinz." - Mail.HTMLBody &= "


Saygilarimizla

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) - Case "A", "AT", "D", "DE", "CH" - Mail.Subject = "Rechnung Nr. " & ROW("RechnungsNr") - Mail.HTMLBody = "Sehr geehrte Damen und Herren,

im Anhang senden wir Ihnen die o.g. Rechnung." - Mail.HTMLBody &= "


Mit freundlichen Grüßen

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) - Case Else - Mail.Subject = "Invoice No. " & ROW("RechnungsNr") - Mail.HTMLBody = "Dear Sir or Madam,

attached we send you the invoice mentioned above." - Mail.HTMLBody &= "


Best regards

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) - End Select - Mail.Attachments.Add(tmpPath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , "Formular.pdf") - Mail.Display() + ' Mail.Subject = " Rechnung Nr. " & ROW("RechnungsNr") + ' Mail.Subject = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & " Rechnung Nr. " & ROW("RechnungsNr") + Select Case ROW("RechnungsLandKz") + Case "TR" + Mail.Subject = "Invoice NO. " & ROW("RechnungsNr") + Mail.HTMLBody = "Sayin Bayanlar ve Baylar,

ekte baslikta yazan faturayi bulabilirsinz." + Mail.HTMLBody &= "


Saygilarimizla

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) + Case "A", "AT", "D", "DE", "CH" + Mail.Subject = "Rechnung Nr. " & ROW("RechnungsNr") + Mail.HTMLBody = "Sehr geehrte Damen und Herren,

im Anhang senden wir Ihnen die o.g. Rechnung." + Mail.HTMLBody &= "


Mit freundlichen Grüßen

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) + Case Else + Mail.Subject = "Invoice No. " & ROW("RechnungsNr") + Mail.HTMLBody = "Dear Sir or Madam,

attached we send you the invoice mentioned above." + Mail.HTMLBody &= "


Best regards

" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID")) + End Select + Mail.Attachments.Add(tmpPath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , "Formular.pdf") + Mail.Display() - Catch ex As Exception - MsgBox("Fehler bim Öffnen des Mail-Programmes. PDF wird geladen!") + Catch ex As Exception + MsgBox("Fehler bim Öffnen des Mail-Programmes. PDF wird geladen!") + Process.Start(tmpPath) + End Try + rpt.Dispose() + Return True + + Case 3 'PDF + öffnen + + 'Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(RG_Bezeichnung, ".pdf", , False) + 'Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport + 'rpt.Run(True) + 'p.NeverEmbedFonts = "" + 'p.Export(rpt.Document, tmpPath) + + 'rpt.Dispose() + Path = tmpPath Process.Start(tmpPath) - End Try - rpt.Dispose() - Return True - - Case 3 'PDF + öffnen - + rpt.Dispose() + Return True + Case 4 'PDF 'Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(RG_Bezeichnung, ".pdf", , False) 'Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport 'rpt.Run(True) 'p.NeverEmbedFonts = "" 'p.Export(rpt.Document, tmpPath) - 'rpt.Dispose() - Path = tmpPath - Process.Start(tmpPath) - rpt.Dispose() - Return True - Case 4 'PDF - 'Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(RG_Bezeichnung, ".pdf", , False) - 'Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport - 'rpt.Run(True) - 'p.NeverEmbedFonts = "" - 'p.Export(rpt.Document, tmpPath) - 'rpt.Dispose() - Path = tmpPath - rpt.Dispose() - Return True + If isMDMRechnungsdruck Then Return True 'MDM-Sammelrechnungen nicht mitgeben! + + Path = tmpPath + rpt.Dispose() + Return True - End Select - End If + End Select + End If @@ -4197,4 +4313,16 @@ Public Class cFakturierung End If Return "" End Function + + Shared Function checkIfMDMSammelrechnung(Rechnungsdruck As Integer, Status As Integer) + + 'If (Rechnungsdruck = 7 OrElse Rechnungsdruck = 4 AndAlso (Status = 2 Or Status = 4)) Then Return True + + If (Rechnungsdruck = 7 OrElse Rechnungsdruck = 4 AndAlso (Status = 2 Or Status = 4) OrElse Rechnungsdruck = 3 AndAlso (Status = 2 Or Status = 4) OrElse Rechnungsdruck = 2 AndAlso (Status = 2 Or Status = 4)) Then Return True + + Return False + + + + End Function End Class diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.Designer.vb b/SDL/Fakturierung/frmAbrechnungsMaske.Designer.vb index b36a67f3..800aa1d6 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaske.Designer.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaske.Designer.vb @@ -86,6 +86,8 @@ Partial Class frmAbrechnungsMaske Me.btnVonJahr = New System.Windows.Forms.Button() Me.UsrCntlFaktAbrechnung1 = New SDL.usrCntlFaktAbrechnung() Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.lblKunde = New System.Windows.Forms.Label() + Me.KdSearchBox1 = New VERAG_PROG_ALLGEMEIN.KdSearchBox() Me.pnl.SuspendLayout() CType(Me.SplitContainer, System.ComponentModel.ISupportInitialize).BeginInit() Me.SplitContainer.Panel1.SuspendLayout() @@ -440,6 +442,8 @@ Partial Class frmAbrechnungsMaske 'Panel1 ' Me.Panel1.BackColor = System.Drawing.Color.White + Me.Panel1.Controls.Add(Me.KdSearchBox1) + Me.Panel1.Controls.Add(Me.lblKunde) Me.Panel1.Controls.Add(Me.PictureBox5) Me.Panel1.Controls.Add(Me.cbxGutschriftenAnVerag) Me.Panel1.Controls.Add(Me.MyComboBox1) @@ -472,7 +476,7 @@ Partial Class frmAbrechnungsMaske 'cbxGutschriftenAnVerag ' Me.cbxGutschriftenAnVerag.AutoSize = True - Me.cbxGutschriftenAnVerag.Location = New System.Drawing.Point(15, 59) + Me.cbxGutschriftenAnVerag.Location = New System.Drawing.Point(348, 44) Me.cbxGutschriftenAnVerag.Name = "cbxGutschriftenAnVerag" Me.cbxGutschriftenAnVerag.Size = New System.Drawing.Size(128, 17) Me.cbxGutschriftenAnVerag.TabIndex = 54 @@ -485,7 +489,7 @@ Partial Class frmAbrechnungsMaske Me.MyComboBox1._allowFreiText = False Me.MyComboBox1._value = "" Me.MyComboBox1.FormattingEnabled = True - Me.MyComboBox1.Location = New System.Drawing.Point(453, 28) + Me.MyComboBox1.Location = New System.Drawing.Point(453, 23) Me.MyComboBox1.Margin = New System.Windows.Forms.Padding(2) Me.MyComboBox1.Name = "MyComboBox1" Me.MyComboBox1.Size = New System.Drawing.Size(83, 21) @@ -494,7 +498,7 @@ Partial Class frmAbrechnungsMaske 'Label14 ' Me.Label14.AutoSize = True - Me.Label14.Location = New System.Drawing.Point(345, 31) + Me.Label14.Location = New System.Drawing.Point(345, 26) Me.Label14.Name = "Label14" Me.Label14.Size = New System.Drawing.Size(108, 13) Me.Label14.TabIndex = 52 @@ -505,7 +509,7 @@ Partial Class frmAbrechnungsMaske Me.cbx.AutoSize = True Me.cbx.Checked = True Me.cbx.CheckState = System.Windows.Forms.CheckState.Checked - Me.cbx.Location = New System.Drawing.Point(348, 54) + Me.cbx.Location = New System.Drawing.Point(348, 61) Me.cbx.Name = "cbx" Me.cbx.Size = New System.Drawing.Size(181, 17) Me.cbx.TabIndex = 34 @@ -518,7 +522,7 @@ Partial Class frmAbrechnungsMaske Me.MyComboBox3._allowFreiText = False Me.MyComboBox3._value = "" Me.MyComboBox3.FormattingEnabled = True - Me.MyComboBox3.Location = New System.Drawing.Point(453, 8) + Me.MyComboBox3.Location = New System.Drawing.Point(453, 3) Me.MyComboBox3.Margin = New System.Windows.Forms.Padding(2) Me.MyComboBox3.Name = "MyComboBox3" Me.MyComboBox3.Size = New System.Drawing.Size(83, 21) @@ -527,7 +531,7 @@ Partial Class frmAbrechnungsMaske 'Label5 ' Me.Label5.AutoSize = True - Me.Label5.Location = New System.Drawing.Point(345, 11) + Me.Label5.Location = New System.Drawing.Point(345, 6) Me.Label5.Name = "Label5" Me.Label5.Size = New System.Drawing.Size(103, 13) Me.Label5.TabIndex = 32 @@ -933,6 +937,43 @@ Partial Class frmAbrechnungsMaske Me.ContextMenuStrip1.Name = "ContextMenuStrip1" Me.ContextMenuStrip1.Size = New System.Drawing.Size(61, 4) ' + 'lblKunde + ' + Me.lblKunde.AutoSize = True + Me.lblKunde.Location = New System.Drawing.Point(12, 61) + Me.lblKunde.Name = "lblKunde" + Me.lblKunde.Size = New System.Drawing.Size(41, 13) + Me.lblKunde.TabIndex = 134 + Me.lblKunde.Text = "Kunde:" + ' + 'KdSearchBox1 + ' + Me.KdSearchBox1._AlleFirmenCLUSTER = False + Me.KdSearchBox1._AllowSetValue = False + Me.KdSearchBox1._autoSizeGross = False + Me.KdSearchBox1._display_Name1 = False + Me.KdSearchBox1._displayAVISO_Email = False + Me.KdSearchBox1._displayFullName = False + Me.KdSearchBox1._displayWoelflKd = False + Me.KdSearchBox1._hideIfListEmpty = True + Me.KdSearchBox1._loadKdData = False + Me.KdSearchBox1._searchName1 = True + Me.KdSearchBox1._UseFIRMA = "" + Me.KdSearchBox1._ValueKdAndName = True + Me.KdSearchBox1.dgvpos = "LEFT" + Me.KdSearchBox1.KdName = Nothing + Me.KdSearchBox1.KdNr = "-1" + Me.KdSearchBox1.kdNrField = Nothing + Me.KdSearchBox1.KdNrNullInt = Nothing + Me.KdSearchBox1.Location = New System.Drawing.Point(99, 58) + Me.KdSearchBox1.Name = "KdSearchBox1" + Me.KdSearchBox1.nurAktive = True + Me.KdSearchBox1.searchActive = True + Me.KdSearchBox1.Size = New System.Drawing.Size(154, 20) + Me.KdSearchBox1.TabIndex = 135 + Me.KdSearchBox1.TIMER_SEARCH = True + Me.KdSearchBox1.usrcntl = Nothing + ' 'frmAbrechnungsMaske ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -1024,4 +1065,6 @@ Partial Class frmAbrechnungsMaske Friend WithEvents ContextMenuStrip1 As ContextMenuStrip Friend WithEvents cbxGutschriftenAnVerag As CheckBox Friend WithEvents PictureBox5 As PictureBox + Friend WithEvents lblKunde As Label + Friend WithEvents KdSearchBox1 As VERAG_PROG_ALLGEMEIN.KdSearchBox End Class diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.vb b/SDL/Fakturierung/frmAbrechnungsMaske.vb index 5ff0d10a..225b767c 100644 --- a/SDL/Fakturierung/frmAbrechnungsMaske.vb +++ b/SDL/Fakturierung/frmAbrechnungsMaske.vb @@ -1,4 +1,5 @@ Imports DocumentFormat.OpenXml.Drawing.Diagrams +Imports GrapeCity.DataVisualization.Chart Imports Microsoft.Office.Interop Public Class frmAbrechnungsMaske @@ -128,6 +129,20 @@ Public Class frmAbrechnungsMaske MyComboBox2.Enabled = False End If + KdSearchBox1.initKdBox(Me) + + + + AddHandler KdSearchBox1.PropertyChanged, Sub() + Try + initDGV() + + Catch ex As Exception + MsgBox(ex.Message & ex.StackTrace) + End Try + End Sub + + End Sub Private Sub frmAbrechnungsMaske_Shown(sender As Object, e As EventArgs) Handles Me.Shown @@ -182,11 +197,11 @@ Public Class frmAbrechnungsMaske sqlstr &= " SELECT FilialenNr, AbfertigungsNr, cast(FilialenNr as varchar) + ' ' + cast(AbfertigungsNr as varchar) as PosNr, UnterNr, Firma_ID,Rechnungsausgang.Sammelrechnung as Art, [RechnungsName 1] as Rechnungsempfänger, (isnull(SteuerpflichtigerGesamtbetrag,0) + isnull(SteuerfreierGesamtbetrag,0)) as Betrag, RK_ID,RechnungsLandKz,RechnungsKundenNr" sqlstr &= ",(CASE WHEN Rechnungsdruck =0 THEN 'POST' WHEN Rechnungsdruck=1 THEN 'FAX' WHEN Rechnungsdruck=2 THEN 'E-MAIL' WHEN Rechnungsdruck=5 THEN 'MAIL+KOPIE' ELSE '-' END) as Rechnungsdruck " sqlstr &= " FROM Rechnungsausgang INNER JOIN Adressen ON AdressenNr=Rechnungsausgang.RechnungsKundenNr" - sqlstr &= " WHERE 1=1 " + sqlstr &= " WHERE 1=1 " - sqlstr &= getRGWhere(MyComboBox3._value) - ' sqlstr &= " AND (SteuerpflichtigerGesamtbetrag<>0 OR SteuerfreierGesamtbetrag<>0)" - sqlstr &= " ORDER BY FilialenNr, AbfertigungsNr, UnterNr " + sqlstr &= getRGWhere(MyComboBox3._value) + ' sqlstr &= " AND (SteuerpflichtigerGesamtbetrag<>0 OR SteuerfreierGesamtbetrag<>0)" + sqlstr &= " ORDER BY FilialenNr, AbfertigungsNr, UnterNr " End If .SET_SQL(sqlstr, "FMZOLL") @@ -236,26 +251,29 @@ Public Class frmAbrechnungsMaske If cbx.Checked Then - 'sqlstr &= " AND Status = 0 " - sqlstr &= " AND DruckDatumZeit BETWEEN '" & txtAbfertDat._value & " 00:00:00' AND '" & txtAbfertDatBis._value & " 23:59:59'" + 'sqlstr &= " AND Status = 0 " + sqlstr &= " AND DruckDatumZeit BETWEEN '" & txtAbfertDat._value & " 00:00:00' AND '" & txtAbfertDatBis._value & " 23:59:59'" + sqlstr &= IIf(filterSR = "MSR", " And (Status = 4)", "") - If MyTextBox2.Text <> "" Then - If MyTextBox3.Text <> "" Then - sqlstr &= " AND RechnungsNr BETWEEN '" & MyTextBox2.Text.Replace("*", "%") & "' AND '" & MyTextBox3.Text.Replace("*", "%") & "'" - Else - sqlstr &= " AND RechnungsNr LIKE '" & MyTextBox2.Text.Replace("*", "%") & "'" - End If + If MyTextBox2.Text <> "" Then + If MyTextBox3.Text <> "" Then + sqlstr &= " AND RechnungsNr BETWEEN '" & MyTextBox2.Text.Replace("*", "%") & "' AND '" & MyTextBox3.Text.Replace("*", "%") & "'" + Else + sqlstr &= " AND RechnungsNr LIKE '" & MyTextBox2.Text.Replace("*", "%") & "'" End If - Else + End If + Else sqlstr &= IIf(filterSR = "MSR", " And ((Status = 0 or Status = 2) or DruckDatumZeit is null)", " And (Status = 0 or DruckDatumZeit is null) ") End If - If MyComboBox1._value <> "" Then - sqlstr &= " And Rechnungsdruck='" & MyComboBox1._value & "' " - End If - If srchSB <> "" Then sqlstr &= " And Rechnungsausgang.Sachbearbeiter='" & srchSB & "' " - If cboFirma._value <> "" Then sqlstr &= " AND Rechnungsausgang.Firma_ID=" & cboFirma._value & " " - + If MyComboBox1._value <> "" Then + sqlstr &= " And Rechnungsdruck='" & MyComboBox1._value & "' " + End If + If srchSB <> "" Then sqlstr &= " And Rechnungsausgang.Sachbearbeiter='" & srchSB & "' " + If cboFirma._value <> "" Then sqlstr &= " AND Rechnungsausgang.Firma_ID=" & cboFirma._value & " " + + If KdSearchBox1.KdNr_value > 0 Then sqlstr &= " AND Rechnungsausgang.RechnungsKundenNr=" & KdSearchBox1.KdNr_value & " " + ' sqlstr &= " AND (SteuerpflichtigerGesamtbetrag<>0 OR SteuerfreierGesamtbetrag<>0)" @@ -271,6 +289,19 @@ Public Class frmAbrechnungsMaske cbxGutschriftenAnVerag.Checked = False End If + If sender Is MyComboBox3 Then + + lblKunde.Visible = MyComboBox3._value = "MSR" + KdSearchBox1.Visible = MyComboBox3._value = "MSR" + + If KdSearchBox1.KdNr_value > 0 AndAlso MyComboBox3._value <> "MSR" Then + KdSearchBox1.KdNr_value = -1 + + End If + + + End If + initDGV() End Sub Function checkSrchValues() As Boolean @@ -749,12 +780,12 @@ Public Class frmAbrechnungsMaske Private Sub Button4_Click(sender As Object, e As EventArgs) Handles btnWiederholeRgDruck.Click - + ContextMenuStrip1.Items.Clear() If Not ContextMenuStrip1.Items.ContainsKey("1") Then Dim print = New ToolStripMenuItem() With {.Text = "Drucken", .Name = "1", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} AddHandler print.Click, AddressOf mnuItem_Clicked - ContextMenuStrip1.Items.Add(print) + If cboFirma._value <> 19 Then ContextMenuStrip1.Items.Add(print) End If If Not ContextMenuStrip1.Items.ContainsKey("2") Then @@ -766,7 +797,7 @@ Public Class frmAbrechnungsMaske If Not ContextMenuStrip1.Items.ContainsKey("3") Then Dim pdf = New ToolStripMenuItem() With {.Text = "PDF", .Name = "3", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} AddHandler pdf.Click, AddressOf mnuItem_Clicked - ContextMenuStrip1.Items.Add(pdf) + If cboFirma._value <> 19 Then ContextMenuStrip1.Items.Add(pdf) End If ContextMenuStrip1.Show(Cursor.Position) diff --git a/SDL/Fakturierung/frmFaktEmail.vb b/SDL/Fakturierung/frmFaktEmail.vb index 38e55461..cbade4f6 100644 --- a/SDL/Fakturierung/frmFaktEmail.vb +++ b/SDL/Fakturierung/frmFaktEmail.vb @@ -1,4 +1,5 @@ Imports Microsoft.Office.Interop +Imports org.omg.PortableServer.POAPackage Imports VERAG_PROG_ALLGEMEIN @@ -113,6 +114,23 @@ Public Class frmFaktEmail If SR Then AD = New VERAG_PROG_ALLGEMEIN.cAdressen(KdNr) FISKAL = New cFiskal_Daten(KdNr) + + 'Prüfung, ob in der Sammelrechnung schon eine RE-Nr vergeben wurde! + If RechnungsNr = -1 Then + If SR_DT.Rows.Count > 0 Then + Dim displayView = New DataView(SR_DT, "RechnungsNr is not null", "RechnungsNr", DataViewRowState.CurrentRows) + Dim distinctDT_SR As DataTable = displayView.ToTable(True, "RechnungsNr", "DruckDatumZeit", "Rechnungsdatum") + If distinctDT_SR.Rows.Count = 1 Then + RechnungsNr = distinctDT_SR.Rows(0).Item("RechnungsNr") + DruckDatumZeit = distinctDT_SR.Rows(0).Item("DruckDatumZeit") + Rechnungsdatum = distinctDT_SR.Rows(0).Item("Rechnungsdatum") + End If + + End If + End If + + + setMailText(AD.LandKz) initList() cbxStb.Enabled = True : cbxStb.Checked = True @@ -135,10 +153,6 @@ Public Class frmFaktEmail If SPEDBUCH.DokumentId_VBD Then cbxVBD.Enabled = True : cbxVBD.Checked = True ' wbShowHTML(WebBrowser, cFakturierung.getSignature(RECHNUNG)) - - - - AD = New VERAG_PROG_ALLGEMEIN.cAdressen(RECHNUNG.RechnungsKundenNr) FISKAL = New cFiskal_Daten(RECHNUNG.RechnungsKundenNr) @@ -341,7 +355,7 @@ Public Class frmFaktEmail If SR Then Try - 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 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 FakturierungsGruppe <> "" Then additionalLine = "Abrechnungsstelle: " & FakturierungsGruppe.Replace("WAI", "Waidhaus") @@ -355,12 +369,17 @@ Public Class frmFaktEmail '----------------------------------------------------------------- Dim RechnungsNrisSet As Boolean = False Dim AD As New VERAG_PROG_ALLGEMEIN.cAdressen(KdNr) - If RechnungsNr <= 0 Then + If RechnungsNr <= 0 Then 'Bei Sammelrechnung 6 ist immer bereits eine RE-Nr vergeben! RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(Firma_ID, SammelrechungArt, DatumBis, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, KdNr, 4, listPDFs, SB, lastAktuelle_RgNr, DruckDatumZeit, AvisoIds, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked, FakturierungsGruppe, Abfertigungsart) RechnungsNr = lastAktuelle_RgNr Else Dim path = "" - cFakturierung.doSAMMELRechnungsDruck_Abschnitt(RechnungsNr, -1, -1, DruckDatumZeit, "", False, , 4, path, True,, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked) + + If SammelrechungArt = 6 Then + RechnungsNrisSet = cFakturierung.doSAMMELRechnungsDruck(19, SammelrechungArt, DatumBis, Rechnungsdatum, "", EinzelAnlagen, Sammelbericht, KdNr, 4, listPDFs, SB, lastAktuelle_RgNr, DruckDatumZeit, AvisoIds, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked, FakturierungsGruppe, Abfertigungsart, True) + Else + cFakturierung.doSAMMELRechnungsDruck_Abschnitt(RechnungsNr, -1, -1, DruckDatumZeit, "", False, , 4, path, True,, cbxExcelEvolog.Checked, SonstAnlagen,, cbxTransFerry.Checked) + End If lastAktuelle_RgNr = RechnungsNr listPDFs.Add(path) @@ -376,7 +395,7 @@ Public Class frmFaktEmail Dim RK_ID = sql.getValueTxtBySql("SELECT TOP 1 RK_ID FROM Rechnungsausgang WHERE RechnungsNr='" & RechnungsNr & "' AND Firma_ID='" & Firma_ID & "' ORDER BY DruckDatumZeit DESC", "FMZOLL") Dim RG_TMP As New VERAG_PROG_ALLGEMEIN.cRechnungsausgang(RK_ID) If RG_TMP IsNot Nothing Then - cFakturierung.doSAMMELRechnungsDruck_Abschnitt(RG_TMP.RechnungsNr, -1, -1, RG_TMP.DruckDatumZeit, cboPrinter.Text, False, , 3,, True) + cFakturierung.doSAMMELRechnungsDruck_Abschnitt(RG_TMP.RechnungsNr, IIf(SammelrechungArt = 6, 19, -1), -1, RG_TMP.DruckDatumZeit, cboPrinter.Text, False, , 3,, True) End If End If diff --git a/SDL/Fakturierung/frmFaktSammelRgDrucken.vb b/SDL/Fakturierung/frmFaktSammelRgDrucken.vb index 21d6d31f..8ba91b75 100644 --- a/SDL/Fakturierung/frmFaktSammelRgDrucken.vb +++ b/SDL/Fakturierung/frmFaktSammelRgDrucken.vb @@ -26,7 +26,8 @@ Public Class frmFaktSammelRgDrucken End Sub Private Sub RadioButton_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton.CheckedChanged, RadioButton1.CheckedChanged, RadioButton2.CheckedChanged, RadioButton3.CheckedChanged, RadioButton4.CheckedChanged, RadioButton6.CheckedChanged, RadioButton5.CheckedChanged - lblSB.Visible = False : cboSB.Visible = False + lblSB.Visible = False : cboSB.Visible = False : btn.Enabled = True : Button9.Enabled = True : Button8.Enabled = True + cboSB.changeItem("") If DirectCast(sender, RadioButton).Checked Then Sammelrechung = sender.tag Select Case Sammelrechung @@ -48,11 +49,13 @@ Public Class frmFaktSammelRgDrucken End If Case 5 : txtZeitraumBis.Text = Now.AddDays((Now.DayOfWeek) * -1).ToShortDateString - Case 6 : txtZeitraumBis.Text = Now.AddDays(-1).ToShortDateString ': lblSB.Visible = True : cboSB.Visible = True : cboSB.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) + Case 6 : txtZeitraumBis.Text = Now.AddDays(-1).ToShortDateString : lblSB.Visible = True : cboSB.Visible = True : cboSB.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) : btn.Enabled = False : Button9.Enabled = False : Button2.Enabled = False Case 7 : txtZeitraumBis.Text = Now.ToShortDateString : lblSB.Visible = True : cboSB.Visible = True : cboSB.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) End Select + initDGV() + End Sub diff --git a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb index 4b6e16e0..11302bfb 100644 --- a/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb +++ b/SDL/Fakturierung/rptSammelRechnungAnlagenDruck.Designer.vb @@ -87,6 +87,10 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.Line7 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.Line14 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.lblZwText = New GrapeCity.ActiveReports.SectionReportModel.Label() + Me.txtInfo = New GrapeCity.ActiveReports.SectionReportModel.TextBox() + Me.txtVermerk = New GrapeCity.ActiveReports.SectionReportModel.TextBox() + Me.Label1 = New GrapeCity.ActiveReports.SectionReportModel.Label() + Me.Label2 = New GrapeCity.ActiveReports.SectionReportModel.Label() Me.GroupHeader4 = New GrapeCity.ActiveReports.SectionReportModel.GroupHeader() Me.lblLeistungsdatumUeberschrift = New GrapeCity.ActiveReports.SectionReportModel.Label() Me.lblSteuerpflichtigUeberschrift = New GrapeCity.ActiveReports.SectionReportModel.Label() @@ -98,8 +102,9 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.Line16 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.Line15 = New GrapeCity.ActiveReports.SectionReportModel.Line() Me.Line17 = New GrapeCity.ActiveReports.SectionReportModel.Line() + Me.lblDurchlaufposten = New GrapeCity.ActiveReports.SectionReportModel.Label() + Me.lblSteuerplichtUeberschriftMDM = New GrapeCity.ActiveReports.SectionReportModel.Label() 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() @@ -152,12 +157,17 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.lblSteuerbetrag, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblSteuersatz, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblZwText, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtInfo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtVermerk, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Label1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Label2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblLeistungsdatumUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.lblSteuerpflichtigUeberschrift, System.ComponentModel.ISupportInitialize).BeginInit() 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.lblDurchlaufposten, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.lblSteuerplichtUeberschriftMDM, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me, System.ComponentModel.ISupportInitialize).BeginInit() ' 'PageHeader @@ -556,7 +566,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck ' 'lblFirmaWeb ' - Me.lblFirmaWeb.Height = 0.1181102! + Me.lblFirmaWeb.Height = 0.1181103! Me.lblFirmaWeb.HyperLink = Nothing Me.lblFirmaWeb.Left = 2.697638! Me.lblFirmaWeb.Name = "lblFirmaWeb" @@ -774,8 +784,8 @@ 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.txtInfo}) - Me.ReportFooter1.Height = 1.315354! + 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.txtVermerk, Me.Label1, Me.Label2}) + Me.ReportFooter1.Height = 1.315355! Me.ReportFooter1.KeepTogether = True Me.ReportFooter1.Name = "ReportFooter1" ' @@ -955,13 +965,13 @@ Partial Public Class rptSammelRechnungAnlagenDruck 'Line14 ' Me.Line14.Height = 0! - Me.Line14.Left = 3.858268! + Me.Line14.Left = 3.86063! Me.Line14.LineWeight = 1.0! Me.Line14.Name = "Line14" Me.Line14.Top = 1.05! Me.Line14.Width = 3.619685! - Me.Line14.X1 = 3.858268! - Me.Line14.X2 = 7.477953! + Me.Line14.X1 = 3.86063! + Me.Line14.X2 = 7.480315! Me.Line14.Y1 = 1.05! Me.Line14.Y2 = 1.05! ' @@ -977,10 +987,59 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.lblZwText.Visible = False Me.lblZwText.Width = 1.549212! ' + '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! + ' + 'txtVermerk + ' + Me.txtVermerk.Height = 0.06181115! + Me.txtVermerk.Left = 0! + Me.txtVermerk.Name = "txtVermerk" + Me.txtVermerk.Style = "font-size: 9pt; font-weight: normal; text-align: left; text-justify: auto; ddo-ch" & + "ar-set: 1" + Me.txtVermerk.Text = "Text" + Me.txtVermerk.Top = 1.253543! + Me.txtVermerk.Visible = False + Me.txtVermerk.Width = 7.422049! + ' + 'Label1 + ' + Me.Label1.Height = 0.1574803! + Me.Label1.HyperLink = Nothing + Me.Label1.Left = 4.500394! + Me.Label1.Name = "Label1" + Me.Label1.Style = "font-size: 8pt; font-weight: normal; text-align: right; vertical-align: middle; d" & + "do-char-set: 1" + Me.Label1.Text = "Zahlungsziel" + Me.Label1.Top = 1.096063! + Me.Label1.Visible = False + Me.Label1.Width = 0.8114166! + ' + 'Label2 + ' + Me.Label2.Height = 0.1574803! + Me.Label2.HyperLink = Nothing + Me.Label2.Left = 4.907872! + Me.Label2.Name = "Label2" + Me.Label2.Style = "font-size: 8pt; font-weight: bold; text-align: right; vertical-align: middle; ddo" & + "-char-set: 1" + Me.Label2.Text = "10 Tage" + Me.Label2.Top = 1.096063! + Me.Label2.Visible = False + Me.Label2.Width = 1.958268! + ' 'GroupHeader4 ' - Me.GroupHeader4.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.lblLeistungsdatumUeberschrift, Me.lblSteuerpflichtigUeberschrift, Me.lblPosNrUeberschrift, Me.lblSendungUeberschrift, Me.lblSteuerfreiUeberschrift, Me.Line4, Me.Line12, Me.Line16, Me.Line15, Me.Line17}) - Me.GroupHeader4.Height = 0.1944771! + Me.GroupHeader4.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.lblLeistungsdatumUeberschrift, Me.lblSteuerpflichtigUeberschrift, Me.lblPosNrUeberschrift, Me.lblSendungUeberschrift, Me.lblSteuerfreiUeberschrift, Me.Line4, Me.Line12, Me.Line16, Me.Line15, Me.Line17, Me.lblDurchlaufposten, Me.lblSteuerplichtUeberschriftMDM}) + Me.GroupHeader4.Height = 0.2361433! Me.GroupHeader4.KeepTogether = True Me.GroupHeader4.Name = "GroupHeader4" ' @@ -1111,22 +1170,39 @@ Partial Public Class rptSammelRechnungAnlagenDruck Me.Line17.Y1 = 0! Me.Line17.Y2 = 0.2047245! ' + 'lblDurchlaufposten + ' + Me.lblDurchlaufposten.DataField = "" + Me.lblDurchlaufposten.Height = 0.1433071! + Me.lblDurchlaufposten.HyperLink = Nothing + Me.lblDurchlaufposten.Left = 5.86378! + Me.lblDurchlaufposten.Name = "lblDurchlaufposten" + Me.lblDurchlaufposten.Style = "color: Black; font-size: 6.75pt; font-weight: bold; text-align: right; ddo-char-s" & + "et: 0" + Me.lblDurchlaufposten.Text = "Durchlaufposten /nicht steuerbar" + Me.lblDurchlaufposten.Top = 0! + Me.lblDurchlaufposten.Visible = False + Me.lblDurchlaufposten.Width = 1.616536! + ' + 'lblSteuerplichtUeberschriftMDM + ' + Me.lblSteuerplichtUeberschriftMDM.DataField = "" + Me.lblSteuerplichtUeberschriftMDM.Height = 0.1433071! + Me.lblSteuerplichtUeberschriftMDM.HyperLink = Nothing + Me.lblSteuerplichtUeberschriftMDM.Left = 4.761418! + Me.lblSteuerplichtUeberschriftMDM.Name = "lblSteuerplichtUeberschriftMDM" + Me.lblSteuerplichtUeberschriftMDM.Style = "color: Black; font-size: 6.75pt; font-weight: bold; text-align: center; text-just" & + "ify: auto; ddo-char-set: 1; ddo-font-vertical: none" + Me.lblSteuerplichtUeberschriftMDM.Text = "Steuerpflichtig" + Me.lblSteuerplichtUeberschriftMDM.Top = 0! + Me.lblSteuerplichtUeberschriftMDM.Visible = False + Me.lblSteuerplichtUeberschriftMDM.Width = 1.207481! + ' 'GroupFooter4 ' 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! @@ -1201,12 +1277,17 @@ Partial Public Class rptSammelRechnungAnlagenDruck CType(Me.lblSteuerbetrag, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblSteuersatz, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblZwText, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtInfo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtVermerk, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Label1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Label2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblLeistungsdatumUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.lblSteuerpflichtigUeberschrift, System.ComponentModel.ISupportInitialize).EndInit() 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.lblDurchlaufposten, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.lblSteuerplichtUeberschriftMDM, System.ComponentModel.ISupportInitialize).EndInit() CType(Me, System.ComponentModel.ISupportInitialize).EndInit() End Sub @@ -1228,7 +1309,7 @@ Partial Public Class rptSammelRechnungAnlagenDruck Private WithEvents lblSendungUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents lblPosNrUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents GroupFooter4 As GrapeCity.ActiveReports.SectionReportModel.GroupFooter - Private WithEvents lblSteuerpflichtigUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label + Public WithEvents lblSteuerpflichtigUeberschrift As GrapeCity.ActiveReports.SectionReportModel.Label Public WithEvents lblSteuerfrei As GrapeCity.ActiveReports.SectionReportModel.Label Public WithEvents lblSteuerfreiGes As GrapeCity.ActiveReports.SectionReportModel.Label Private WithEvents Line3 As GrapeCity.ActiveReports.SectionReportModel.Line @@ -1291,4 +1372,9 @@ Partial Public Class rptSammelRechnungAnlagenDruck Private WithEvents Line13 As GrapeCity.ActiveReports.SectionReportModel.Line Public WithEvents txtBank3 As GrapeCity.ActiveReports.SectionReportModel.TextBox Public WithEvents txtInfo As GrapeCity.ActiveReports.SectionReportModel.TextBox + Public WithEvents lblDurchlaufposten As GrapeCity.ActiveReports.SectionReportModel.Label + Public WithEvents txtVermerk As GrapeCity.ActiveReports.SectionReportModel.TextBox + Public WithEvents Label1 As GrapeCity.ActiveReports.SectionReportModel.Label + Public WithEvents Label2 As GrapeCity.ActiveReports.SectionReportModel.Label + Public WithEvents lblSteuerplichtUeberschriftMDM As GrapeCity.ActiveReports.SectionReportModel.Label End Class diff --git a/SDL/Formulare/KDFormulare/frmFormulare.vb b/SDL/Formulare/KDFormulare/frmFormulare.vb index 96815af3..33210035 100644 --- a/SDL/Formulare/KDFormulare/frmFormulare.vb +++ b/SDL/Formulare/KDFormulare/frmFormulare.vb @@ -2111,10 +2111,10 @@ Public Class FormularManagerNEU Dim fieldName = item.Name.ToLower().Trim() Select Case fieldName - Case "bank" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_anschrift") AndAlso dtKundenBank.Rows(0).Item("bnk_anschrift") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_anschrift"), "") - Case "iban" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_iban") AndAlso dtKundenBank.Rows(0).Item("bnk_iban") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_iban"), "") - Case "bic" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1 AndAlso Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_bic") AndAlso dtKundenBank.Rows(0).Item("bnk_bic") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_bic"), "") - Case "name1" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1, usrCntl.txtFirma.Text, "") + Case "bank" : odoc.FormFields(fieldName).Range.Text = IIf((Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_anschrift")) AndAlso dtKundenBank.Rows(0).Item("bnk_anschrift") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_anschrift"), "") + Case "iban" : odoc.FormFields(fieldName).Range.Text = IIf((Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_iban")) AndAlso dtKundenBank.Rows(0).Item("bnk_iban") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_iban"), "") + Case "bic" : odoc.FormFields(fieldName).Range.Text = IIf((Not IsDBNull(dtKundenBank.Rows(0).Item("bnk_bic")) AndAlso dtKundenBank.Rows(0).Item("bnk_bic") IsNot Nothing), dtKundenBank.Rows(0).Item("bnk_bic"), "") + Case "name1" : odoc.FormFields(fieldName).Range.Text = IIf(dtKundenBank.Rows.Count = 1, usrCntl.txtFirma.Text, "") End Select Next diff --git a/SDL/SDL.vbproj b/SDL/SDL.vbproj index be4d8e11..f5951ab4 100644 --- a/SDL/SDL.vbproj +++ b/SDL/SDL.vbproj @@ -880,6 +880,12 @@ UserControl + + usrCntlFakturierung.vb + + + UserControl + frmUSTVoffeneAntraege.vb @@ -3416,6 +3422,9 @@ subrptKontrolleLKW_Telotec.vb + + usrCntlFakturierung.vb + rptSpeditionsberichtRg.vb diff --git a/SDL/USTV/usrCntlUSTV.vb b/SDL/USTV/usrCntlUSTV.vb index c42cad0a..a15d2cd6 100644 --- a/SDL/USTV/usrCntlUSTV.vb +++ b/SDL/USTV/usrCntlUSTV.vb @@ -1,4 +1,5 @@ Imports System.ComponentModel +Imports com.sun.xml.internal.bind.v2.model.core Imports Microsoft.Office.Interop Imports VERAG_PROG_ALLGEMEIN @@ -317,7 +318,21 @@ Public Class usrCntlUSTV Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button1.Click - cProgramFunctions.genExcelFromDGV_NEW(dgvUSTV, True) + + + Dim dtNew As New DataTable + dtNew = TryCast(dgvUSTV.DataSource, DataTable) + + If dtNew.Rows.Count > 0 Then + + For Each col As DataColumn In dtNew.Columns + col.ColumnName = col.ColumnName.Replace("UStVAn_", "") + Next + + cProgramFunctions.genExcelFromDT_NEW(dtNew, {"J1:N" & (dtNew.Rows.Count + 1)},,,,, True) + End If + + End Sub Private Sub Button8_Click_1(sender As Object, e As EventArgs) Handles Button8.Click @@ -327,7 +342,7 @@ Public Class usrCntlUSTV ' AND cast( [UStVAn_USteuerbetragEUR] as decimal(17,2))-cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))<>0 ' AND UStVAn_AntragEingereichtAm is not null ' order by UStVAn_KuNr,UStVAn_Name,datepart(year,[UStVAn_ReDatVon] ) desc,LandKz,[UStVAn_ReDatVon] desc" - Dim sqlStr = "SELECT [UStVAn_ID],[UStVAn_KuNr],[UStVAn_Name],Adressen.LandKz as Land_Kunde, case when UstIdKz is not null and UstIdNr is not null THEN UstIdKz +'' + UstIdNr ELSE isnull(Steuernummer,'') END as SteuerUIDNr, LfdA .LandKz Land_Antrag,[UStVAn_ReDatVon],[UStVAn_ReDatBis] ,UStVAn_AntragEingereichtAm,[UStVAn_3470] ,[UStVAn_Währungscode],[UStVAn_USteuerbetrag],[UStVAn_Erstattungsbetrag],[UStVAn_USteuerbetragEUR],[UStVAn_ErstattungsbetragEUR],(cast([UStVAn_USteuerbetragEUR] as decimal(17,2)) - cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))) as Differenzbetrag, [UStVAn_Sachbearbeiter], UStVAn_AntragArt as Art, stnr.[StNrFürRückerstattungUSt] + Dim sqlStr = "SELECT [UStVAn_ID] as ID,[UStVAn_KuNr] as KundenNr,[UStVAn_Name] as Kundename,Adressen.LandKz as Land_Kunde, case when UstIdKz is not null and UstIdNr is not null THEN UstIdKz +'' + UstIdNr ELSE isnull(Steuernummer,'') END as SteuerUIDNr, LfdA .LandKz Land_Antrag,cast([UStVAn_ReDatVon] as Date),cast([UStVAn_ReDatBis] as Date) , cast(UStVAn_AntragEingereichtAm as Date) as EingereichtAm,[UStVAn_3470] as 3470 ,[UStVAn_Währungscode] as Währung,[UStVAn_USteuerbetrag] as Steuerbetrag,[UStVAn_Erstattungsbetrag] as Erstattungsbetrag,[UStVAn_USteuerbetragEUR] as SteuerbetragEUR,[UStVAn_ErstattungsbetragEUR],(cast([UStVAn_USteuerbetragEUR] as decimal(17,2)) - cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))) as DifferenzbetragEUR, [UStVAn_Sachbearbeiter] as Sachbearbeiter, UStVAn_AntragArt as Art, stnr.[StNrFürRückerstattungUSt] as SteuerNr FROM [tblUStVAntrag] inner join [Länderverzeichnis für die Außenhandelsstatistik] as LfdA on UStVAn_LandNr=Landnr inner join Adressen on AdressenNr=UStVAn_KuNr @@ -339,7 +354,7 @@ Public Class usrCntlUSTV Dim dt = SQL.loadDgvBySql(sqlStr, "FMZOLL") If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then - cProgramFunctions.genExcelFromDT_NEW(dt, {"J1:N" & (dt.Rows.Count + 1)}) + cProgramFunctions.genExcelFromDT_NEW(dt, {"J1:N" & (dt.Rows.Count + 1)},,,,, True) Else MsgBox("Keine Daten!") End If diff --git a/SDL/frmMain.Designer.vb b/SDL/frmMain.Designer.vb index e0517446..166876d7 100644 --- a/SDL/frmMain.Designer.vb +++ b/SDL/frmMain.Designer.vb @@ -319,14 +319,16 @@ Partial Class frmMain ' Me.FakturierungToolStripMenuItem.Enabled = False Me.FakturierungToolStripMenuItem.Name = "FakturierungToolStripMenuItem" - Me.FakturierungToolStripMenuItem.Size = New System.Drawing.Size(163, 22) + Me.FakturierungToolStripMenuItem.Size = New System.Drawing.Size(180, 22) Me.FakturierungToolStripMenuItem.Text = "Fakturierung" + Me.FakturierungToolStripMenuItem.Visible = False ' 'RechnungsdatenToolStripMenuItem ' Me.RechnungsdatenToolStripMenuItem.Name = "RechnungsdatenToolStripMenuItem" - Me.RechnungsdatenToolStripMenuItem.Size = New System.Drawing.Size(163, 22) + Me.RechnungsdatenToolStripMenuItem.Size = New System.Drawing.Size(180, 22) Me.RechnungsdatenToolStripMenuItem.Text = "Rechnungsdaten" + Me.RechnungsdatenToolStripMenuItem.Visible = False ' 'mnueBuchhaltung ' @@ -751,24 +753,24 @@ Partial Class frmMain 'ToolStripSeparator4 ' Me.ToolStripSeparator4.Name = "ToolStripSeparator4" - Me.ToolStripSeparator4.Size = New System.Drawing.Size(177, 6) + Me.ToolStripSeparator4.Size = New System.Drawing.Size(154, 6) ' 'NeuesPasswortToolStripMenuItem ' Me.NeuesPasswortToolStripMenuItem.Name = "NeuesPasswortToolStripMenuItem" - Me.NeuesPasswortToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.NeuesPasswortToolStripMenuItem.Size = New System.Drawing.Size(157, 22) Me.NeuesPasswortToolStripMenuItem.Text = "Neues Passwort" ' 'UpdateToolStripMenuItem ' Me.UpdateToolStripMenuItem.Name = "UpdateToolStripMenuItem" - Me.UpdateToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.UpdateToolStripMenuItem.Size = New System.Drawing.Size(157, 22) Me.UpdateToolStripMenuItem.Text = "Update" ' 'TESTToolStripMenuItem ' Me.TESTToolStripMenuItem.Name = "TESTToolStripMenuItem" - Me.TESTToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.TESTToolStripMenuItem.Size = New System.Drawing.Size(157, 22) Me.TESTToolStripMenuItem.Text = "TEST" Me.TESTToolStripMenuItem.Visible = False ' diff --git a/SDL/frmMain.vb b/SDL/frmMain.vb index 41b4ea29..7379dd9c 100644 --- a/SDL/frmMain.vb +++ b/SDL/frmMain.vb @@ -1124,6 +1124,17 @@ Public Class frmMain f.ShowDialog(Me) End Sub + Private Sub mneFakturierung_Click(sender As Object, e As EventArgs) Handles mneFakturierung.Click + If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("MDM_Fakturierung", Me) = 0 Then + clrPnlMain() + Dim usrCntl As New usrcntlFakturierung + usrCntl.Dock = System.Windows.Forms.DockStyle.Fill + pnlMain.Controls.Add(usrCntl) + Else + setInfo("err", "Berichte sind noch nicht freigegeben!", 3) + End If + End Sub + End Class diff --git a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb index 4eca4b03..852ba615 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.Designer.vb @@ -22,7 +22,6 @@ Partial Class usrCntlMDMAuswertungen 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. Private Sub InitializeComponent() - Me.components = New System.ComponentModel.Container() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(usrCntlMDMAuswertungen)) Me.GroupBox1 = New System.Windows.Forms.GroupBox() Me.lblAuswertungAb = New System.Windows.Forms.Label() @@ -121,7 +120,6 @@ Partial Class usrCntlMDMAuswertungen Me.MyComboBox2 = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.Label36 = New System.Windows.Forms.Label() Me.TabPage3 = New System.Windows.Forms.TabPage() - Me.UsrCntlWoelfl_IM_CSVRg1 = New SDL.usrCntlWoelfl_IM_CSVRg() Me.tbIDS = New System.Windows.Forms.TabPage() Me.Label60 = New System.Windows.Forms.Label() Me.GroupBox18 = New System.Windows.Forms.GroupBox() @@ -132,40 +130,6 @@ Partial Class usrCntlMDMAuswertungen Me.Label59 = New System.Windows.Forms.Label() Me.Button17 = New System.Windows.Forms.Button() Me.TabPage2 = New System.Windows.Forms.TabPage() - Me.Label61 = New System.Windows.Forms.Label() - Me.GroupBox19 = New System.Windows.Forms.GroupBox() - Me.MyDatagridview1 = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) - Me.lblAnzahlMautberichte = New System.Windows.Forms.Label() - Me.cbxDateMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox() - Me.Label69 = New System.Windows.Forms.Label() - Me.Label68 = New System.Windows.Forms.Label() - Me.cbxMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox() - Me.Label62 = New System.Windows.Forms.Label() - Me.Button18 = New System.Windows.Forms.Button() - Me.Label44 = New System.Windows.Forms.Label() - Me.GroupBox13 = New System.Windows.Forms.GroupBox() - Me.cbxAbfVerbotdrucken = New System.Windows.Forms.CheckBox() - Me.cbxRechnungsjournaldrucken = New System.Windows.Forms.CheckBox() - 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() - Me.Label67 = New System.Windows.Forms.Label() - Me.dtRechnungsdatum = New System.Windows.Forms.DateTimePicker() - Me.Label66 = New System.Windows.Forms.Label() - Me.Label65 = New System.Windows.Forms.Label() - Me.Label64 = New System.Windows.Forms.Label() - Me.Label63 = New System.Windows.Forms.Label() - Me.Label45 = New System.Windows.Forms.Label() - Me.Button14 = New System.Windows.Forms.Button() Me.Label35 = New System.Windows.Forms.Label() Me.GroupBox10 = New System.Windows.Forms.GroupBox() Me.Label38 = New System.Windows.Forms.Label() @@ -188,7 +152,6 @@ Partial Class usrCntlMDMAuswertungen Me.Label41 = New System.Windows.Forms.Label() Me.Button12 = New System.Windows.Forms.Button() Me.TabPage4 = New System.Windows.Forms.TabPage() - Me.UsrCntlMSE_KonvertCSV1 = New SDL.usrCntlMSE_KonvertCSV() Me.TabPage5 = New System.Windows.Forms.TabPage() Me.Label56 = New System.Windows.Forms.Label() Me.GroupBox17 = New System.Windows.Forms.GroupBox() @@ -213,6 +176,8 @@ 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.UsrCntlWoelfl_IM_CSVRg1 = New SDL.usrCntlWoelfl_IM_CSVRg() + Me.UsrCntlMSE_KonvertCSV1 = New SDL.usrCntlMSE_KonvertCSV() Me.GroupBox1.SuspendLayout() Me.GroupBox2.SuspendLayout() CType(Me.pic, System.ComponentModel.ISupportInitialize).BeginInit() @@ -234,9 +199,6 @@ Partial Class usrCntlMDMAuswertungen Me.tbIDS.SuspendLayout() Me.GroupBox18.SuspendLayout() Me.TabPage2.SuspendLayout() - Me.GroupBox19.SuspendLayout() - CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).BeginInit() - Me.GroupBox13.SuspendLayout() Me.GroupBox10.SuspendLayout() Me.tbPLOSE.SuspendLayout() Me.GroupBox12.SuspendLayout() @@ -1360,14 +1322,6 @@ Partial Class usrCntlMDMAuswertungen Me.TabPage3.Text = "WÖLFL" Me.TabPage3.UseVisualStyleBackColor = True ' - 'UsrCntlWoelfl_IM_CSVRg1 - ' - Me.UsrCntlWoelfl_IM_CSVRg1.BackColor = System.Drawing.Color.White - Me.UsrCntlWoelfl_IM_CSVRg1.Location = New System.Drawing.Point(6, 167) - Me.UsrCntlWoelfl_IM_CSVRg1.Name = "UsrCntlWoelfl_IM_CSVRg1" - Me.UsrCntlWoelfl_IM_CSVRg1.Size = New System.Drawing.Size(728, 97) - Me.UsrCntlWoelfl_IM_CSVRg1.TabIndex = 10 - ' 'tbIDS ' Me.tbIDS.Controls.Add(Me.Label60) @@ -1464,10 +1418,6 @@ Partial Class usrCntlMDMAuswertungen ' 'TabPage2 ' - Me.TabPage2.Controls.Add(Me.Label61) - Me.TabPage2.Controls.Add(Me.GroupBox19) - Me.TabPage2.Controls.Add(Me.Label44) - Me.TabPage2.Controls.Add(Me.GroupBox13) Me.TabPage2.Controls.Add(Me.Label35) Me.TabPage2.Controls.Add(Me.GroupBox10) Me.TabPage2.Location = New System.Drawing.Point(4, 22) @@ -1478,381 +1428,6 @@ Partial Class usrCntlMDMAuswertungen Me.TabPage2.Text = "Organisation" Me.TabPage2.UseVisualStyleBackColor = True ' - 'Label61 - ' - Me.Label61.AutoSize = True - Me.Label61.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label61.ForeColor = System.Drawing.SystemColors.ControlDarkDark - Me.Label61.Location = New System.Drawing.Point(15, 131) - Me.Label61.Name = "Label61" - Me.Label61.Size = New System.Drawing.Size(310, 17) - Me.Label61.TabIndex = 13 - Me.Label61.Text = "MDM Sammelabrechnung - Mautberichte" - ' - 'GroupBox19 - ' - Me.GroupBox19.Controls.Add(Me.MyDatagridview1) - Me.GroupBox19.Controls.Add(Me.lblAnzahlMautberichte) - Me.GroupBox19.Controls.Add(Me.cbxDateMautbericht) - Me.GroupBox19.Controls.Add(Me.Label69) - Me.GroupBox19.Controls.Add(Me.Label68) - Me.GroupBox19.Controls.Add(Me.cbxMautbericht) - Me.GroupBox19.Controls.Add(Me.Label62) - Me.GroupBox19.Controls.Add(Me.Button18) - Me.GroupBox19.Location = New System.Drawing.Point(14, 142) - Me.GroupBox19.Name = "GroupBox19" - Me.GroupBox19.Size = New System.Drawing.Size(697, 195) - Me.GroupBox19.TabIndex = 12 - Me.GroupBox19.TabStop = False - ' - 'MyDatagridview1 - ' - Me.MyDatagridview1.AKTUALISIERUNGS_INTERVALL = -1 - Me.MyDatagridview1.BackgroundColor = System.Drawing.SystemColors.Window - Me.MyDatagridview1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize - Me.MyDatagridview1.Location = New System.Drawing.Point(4, 71) - Me.MyDatagridview1.Name = "MyDatagridview1" - Me.MyDatagridview1.Size = New System.Drawing.Size(471, 124) - Me.MyDatagridview1.TabIndex = 34 - ' - '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 - ' - 'cbxDateMautbericht - ' - Me.cbxDateMautbericht._allowedValuesFreiText = Nothing - Me.cbxDateMautbericht._allowFreiText = False - Me.cbxDateMautbericht._value = "" - Me.cbxDateMautbericht.FormattingEnabled = True - Me.cbxDateMautbericht.Location = New System.Drawing.Point(265, 12) - Me.cbxDateMautbericht.Name = "cbxDateMautbericht" - Me.cbxDateMautbericht.Size = New System.Drawing.Size(87, 21) - Me.cbxDateMautbericht.TabIndex = 32 - ' - 'Label69 - ' - Me.Label69.AutoSize = True - Me.Label69.Location = New System.Drawing.Point(142, 19) - Me.Label69.Name = "Label69" - Me.Label69.Size = New System.Drawing.Size(38, 13) - Me.Label69.TabIndex = 31 - Me.Label69.Text = "Datum" - ' - 'Label68 - ' - Me.Label68.Location = New System.Drawing.Point(142, 57) - Me.Label68.Name = "Label68" - Me.Label68.Size = New System.Drawing.Size(333, 20) - Me.Label68.TabIndex = 30 - Me.Label68.Text = "Generiert Mautberichte" - ' - 'cbxMautbericht - ' - Me.cbxMautbericht._allowedValuesFreiText = Nothing - Me.cbxMautbericht._allowFreiText = False - Me.cbxMautbericht._value = "" - Me.cbxMautbericht.DropDownWidth = 200 - Me.cbxMautbericht.FormattingEnabled = True - Me.cbxMautbericht.Location = New System.Drawing.Point(265, 33) - Me.cbxMautbericht.Name = "cbxMautbericht" - Me.cbxMautbericht.Size = New System.Drawing.Size(152, 21) - Me.cbxMautbericht.TabIndex = 30 - ' - 'Label62 - ' - Me.Label62.AutoSize = True - Me.Label62.Location = New System.Drawing.Point(142, 36) - Me.Label62.Name = "Label62" - Me.Label62.Size = New System.Drawing.Size(102, 13) - Me.Label62.TabIndex = 5 - Me.Label62.Text = "Mautsummenbericht" - ' - 'Button18 - ' - Me.Button18.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button18.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.Button18.Location = New System.Drawing.Point(6, 19) - Me.Button18.Name = "Button18" - Me.Button18.Size = New System.Drawing.Size(121, 46) - Me.Button18.TabIndex = 4 - Me.Button18.Text = "Mautbericht" - Me.Button18.UseVisualStyleBackColor = True - ' - 'Label44 - ' - Me.Label44.AutoSize = True - Me.Label44.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label44.ForeColor = System.Drawing.SystemColors.ControlDarkDark - Me.Label44.Location = New System.Drawing.Point(15, 340) - Me.Label44.Name = "Label44" - Me.Label44.Size = New System.Drawing.Size(436, 17) - Me.Label44.TabIndex = 11 - Me.Label44.Text = "MDM Sammelabrechnung - MDM Sammelrechnung (Art=6)" - ' - 'GroupBox13 - ' - Me.GroupBox13.Controls.Add(Me.cbxAbfVerbotdrucken) - Me.GroupBox13.Controls.Add(Me.cbxRechnungsjournaldrucken) - 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) - Me.GroupBox13.Controls.Add(Me.Label67) - Me.GroupBox13.Controls.Add(Me.dtRechnungsdatum) - Me.GroupBox13.Controls.Add(Me.Label66) - Me.GroupBox13.Controls.Add(Me.Label65) - Me.GroupBox13.Controls.Add(Me.Label64) - Me.GroupBox13.Controls.Add(Me.Label63) - Me.GroupBox13.Controls.Add(Me.Label45) - Me.GroupBox13.Controls.Add(Me.Button14) - Me.GroupBox13.Location = New System.Drawing.Point(14, 351) - Me.GroupBox13.Name = "GroupBox13" - Me.GroupBox13.Size = New System.Drawing.Size(697, 326) - Me.GroupBox13.TabIndex = 10 - Me.GroupBox13.TabStop = False - ' - 'cbxAbfVerbotdrucken - ' - Me.cbxAbfVerbotdrucken.AutoSize = True - Me.cbxAbfVerbotdrucken.Checked = True - Me.cbxAbfVerbotdrucken.CheckState = System.Windows.Forms.CheckState.Checked - Me.cbxAbfVerbotdrucken.Location = New System.Drawing.Point(166, 220) - Me.cbxAbfVerbotdrucken.Name = "cbxAbfVerbotdrucken" - Me.cbxAbfVerbotdrucken.Size = New System.Drawing.Size(157, 17) - Me.cbxAbfVerbotdrucken.TabIndex = 47 - Me.cbxAbfVerbotdrucken.Text = "Abfertigungsverbot drucken" - Me.cbxAbfVerbotdrucken.UseVisualStyleBackColor = True - ' - 'cbxRechnungsjournaldrucken - ' - Me.cbxRechnungsjournaldrucken.AutoSize = True - Me.cbxRechnungsjournaldrucken.Checked = True - Me.cbxRechnungsjournaldrucken.CheckState = System.Windows.Forms.CheckState.Checked - Me.cbxRechnungsjournaldrucken.Location = New System.Drawing.Point(6, 220) - Me.cbxRechnungsjournaldrucken.Name = "cbxRechnungsjournaldrucken" - Me.cbxRechnungsjournaldrucken.Size = New System.Drawing.Size(154, 17) - Me.cbxRechnungsjournaldrucken.TabIndex = 46 - Me.cbxRechnungsjournaldrucken.Text = "Rechnungsjournal drucken" - Me.cbxRechnungsjournaldrucken.UseVisualStyleBackColor = True - ' - '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. aus RE entfernen" - Me.Button20.UseVisualStyleBackColor = True - ' - 'Label72 - ' - Me.Label72.Location = New System.Drawing.Point(96, 244) - 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(87, 266) - 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(9, 267) - 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(9, 244) - 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(209, 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(144, 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(147, 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(361, 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(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.UseVisualStyleBackColor = True - ' - 'Label70 - ' - Me.Label70.Location = New System.Drawing.Point(144, 126) - Me.Label70.Name = "Label70" - Me.Label70.Size = New System.Drawing.Size(541, 17) - Me.Label70.TabIndex = 30 - Me.Label70.Text = "5. Hängt Mautgesamtbericht an Sammenrechnungen an." - ' - 'cboSachbearbeiter - ' - Me.cboSachbearbeiter._allowedValuesFreiText = Nothing - Me.cboSachbearbeiter._allowFreiText = False - Me.cboSachbearbeiter._value = "" - Me.cboSachbearbeiter.FormattingEnabled = True - Me.cboSachbearbeiter.Location = New System.Drawing.Point(243, 36) - Me.cboSachbearbeiter.Name = "cboSachbearbeiter" - Me.cboSachbearbeiter.Size = New System.Drawing.Size(152, 21) - Me.cboSachbearbeiter.TabIndex = 29 - ' - 'Label67 - ' - Me.Label67.AutoSize = True - Me.Label67.Location = New System.Drawing.Point(148, 36) - Me.Label67.Name = "Label67" - Me.Label67.Size = New System.Drawing.Size(82, 13) - Me.Label67.TabIndex = 28 - Me.Label67.Text = "Sachbearbeiter:" - ' - 'dtRechnungsdatum - ' - Me.dtRechnungsdatum.Format = System.Windows.Forms.DateTimePickerFormat.[Short] - Me.dtRechnungsdatum.Location = New System.Drawing.Point(292, 10) - Me.dtRechnungsdatum.Name = "dtRechnungsdatum" - Me.dtRechnungsdatum.Size = New System.Drawing.Size(103, 20) - Me.dtRechnungsdatum.TabIndex = 26 - ' - 'Label66 - ' - Me.Label66.AutoSize = True - Me.Label66.Location = New System.Drawing.Point(148, 16) - Me.Label66.Name = "Label66" - Me.Label66.Size = New System.Drawing.Size(94, 13) - Me.Label66.TabIndex = 27 - Me.Label66.Text = "Rechnungsdatum:" - ' - 'Label65 - ' - Me.Label65.Location = New System.Drawing.Point(144, 109) - Me.Label65.Name = "Label65" - Me.Label65.Size = New System.Drawing.Size(541, 17) - Me.Label65.TabIndex = 8 - Me.Label65.Text = "4. Porto/Papiere und Banküberweisung/Bankspesen berechnen" - ' - 'Label64 - ' - Me.Label64.Location = New System.Drawing.Point(144, 92) - Me.Label64.Name = "Label64" - Me.Label64.Size = New System.Drawing.Size(541, 17) - Me.Label64.TabIndex = 7 - Me.Label64.Text = "3. Rechnungstext im RK eintragen" - ' - 'Label63 - ' - Me.Label63.Location = New System.Drawing.Point(144, 77) - Me.Label63.Name = "Label63" - Me.Label63.Size = New System.Drawing.Size(541, 17) - Me.Label63.TabIndex = 6 - Me.Label63.Text = "2. Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (" & - "+/-)" - ' - 'Label45 - ' - Me.Label45.Location = New System.Drawing.Point(144, 60) - Me.Label45.Name = "Label45" - Me.Label45.Size = New System.Drawing.Size(541, 17) - Me.Label45.TabIndex = 5 - Me.Label45.Text = "1. Einträge auf Sachbearbeiter ändern, damit die FMZOLL Abrechnung die entsprechn" & - "de Zuweisung findet." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) - ' - 'Button14 - ' - 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, 94) - Me.Button14.Name = "Button14" - Me.Button14.Size = New System.Drawing.Size(121, 49) - Me.Button14.TabIndex = 4 - Me.Button14.Text = "Durchführen" - Me.Button14.UseVisualStyleBackColor = True - ' 'Label35 ' Me.Label35.AutoSize = True @@ -2080,14 +1655,6 @@ Partial Class usrCntlMDMAuswertungen Me.TabPage4.Text = "MSE" Me.TabPage4.UseVisualStyleBackColor = True ' - 'UsrCntlMSE_KonvertCSV1 - ' - Me.UsrCntlMSE_KonvertCSV1.BackColor = System.Drawing.Color.White - Me.UsrCntlMSE_KonvertCSV1.Location = New System.Drawing.Point(7, 7) - Me.UsrCntlMSE_KonvertCSV1.Name = "UsrCntlMSE_KonvertCSV1" - Me.UsrCntlMSE_KonvertCSV1.Size = New System.Drawing.Size(728, 97) - Me.UsrCntlMSE_KonvertCSV1.TabIndex = 0 - ' 'TabPage5 ' Me.TabPage5.Controls.Add(Me.Label56) @@ -2347,6 +1914,22 @@ Partial Class usrCntlMDMAuswertungen Me.pnl.Size = New System.Drawing.Size(1057, 54) Me.pnl.TabIndex = 26 ' + 'UsrCntlWoelfl_IM_CSVRg1 + ' + Me.UsrCntlWoelfl_IM_CSVRg1.BackColor = System.Drawing.Color.White + Me.UsrCntlWoelfl_IM_CSVRg1.Location = New System.Drawing.Point(6, 167) + Me.UsrCntlWoelfl_IM_CSVRg1.Name = "UsrCntlWoelfl_IM_CSVRg1" + Me.UsrCntlWoelfl_IM_CSVRg1.Size = New System.Drawing.Size(728, 97) + Me.UsrCntlWoelfl_IM_CSVRg1.TabIndex = 10 + ' + 'UsrCntlMSE_KonvertCSV1 + ' + Me.UsrCntlMSE_KonvertCSV1.BackColor = System.Drawing.Color.White + Me.UsrCntlMSE_KonvertCSV1.Location = New System.Drawing.Point(7, 7) + Me.UsrCntlMSE_KonvertCSV1.Name = "UsrCntlMSE_KonvertCSV1" + Me.UsrCntlMSE_KonvertCSV1.Size = New System.Drawing.Size(728, 97) + Me.UsrCntlMSE_KonvertCSV1.TabIndex = 0 + ' 'usrCntlMDMAuswertungen ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -2391,11 +1974,6 @@ Partial Class usrCntlMDMAuswertungen Me.GroupBox18.PerformLayout() Me.TabPage2.ResumeLayout(False) Me.TabPage2.PerformLayout() - Me.GroupBox19.ResumeLayout(False) - Me.GroupBox19.PerformLayout() - CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).EndInit() - Me.GroupBox13.ResumeLayout(False) - Me.GroupBox13.PerformLayout() Me.GroupBox10.ResumeLayout(False) Me.GroupBox10.PerformLayout() Me.tbPLOSE.ResumeLayout(False) @@ -2545,10 +2123,6 @@ Partial Class usrCntlMDMAuswertungen Friend WithEvents UsrCntlWoelfl_IM_CSVRg1 As usrCntlWoelfl_IM_CSVRg Friend WithEvents TabPage4 As TabPage Friend WithEvents UsrCntlMSE_KonvertCSV1 As usrCntlMSE_KonvertCSV - Friend WithEvents Label44 As Label - Friend WithEvents GroupBox13 As GroupBox - Friend WithEvents Label45 As Label - Friend WithEvents Button14 As Button Friend WithEvents TabPage5 As TabPage Friend WithEvents Label48 As Label Friend WithEvents GroupBox14 As GroupBox @@ -2579,34 +2153,4 @@ Partial Class usrCntlMDMAuswertungen Friend WithEvents TextBox2 As TextBox Friend WithEvents Label59 As Label Friend WithEvents Button17 As Button - Friend WithEvents Label61 As Label - Friend WithEvents GroupBox19 As GroupBox - Friend WithEvents Label62 As Label - Friend WithEvents Button18 As Button - Friend WithEvents Label63 As Label - Friend WithEvents Label64 As Label - Friend WithEvents Label65 As Label - Friend WithEvents dtRechnungsdatum As DateTimePicker - Friend WithEvents Label66 As Label - Friend WithEvents Label67 As Label - Friend WithEvents cboSachbearbeiter As VERAG_PROG_ALLGEMEIN.MyComboBox - Friend WithEvents Label68 As Label - Friend WithEvents cbxMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox - Friend WithEvents Label69 As Label - 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 - Friend WithEvents MyDatagridview1 As VERAG_PROG_ALLGEMEIN.MyDatagridview - Friend WithEvents cbxAbfVerbotdrucken As CheckBox - Friend WithEvents cbxRechnungsjournaldrucken As CheckBox End Class diff --git a/SDL/mdm/usrCntlMDMAuswertungen.vb b/SDL/mdm/usrCntlMDMAuswertungen.vb index 5a6b91a6..3fe74c2c 100644 --- a/SDL/mdm/usrCntlMDMAuswertungen.vb +++ b/SDL/mdm/usrCntlMDMAuswertungen.vb @@ -2,6 +2,7 @@ Imports System.DirectoryServices.ActiveDirectory Imports System.IO Imports com.sun.org.apache.bcel.internal.generic +Imports com.sun.org.glassfish.external.statistics.annotations Imports com.sun.tools.internal.ws.wsdl.framework Imports java.awt.geom Imports javax.print.attribute.standard @@ -12,8 +13,6 @@ Imports VERAG_PROG_ALLGEMEIN Public Class usrCntlMDMAuswertungen - Dim PathMautberichte = "" - Private Sub btnWord_Click(sender As Object, e As EventArgs) Handles btnWord.Click If cbxDetails.Checked Then Dim frmPrintLayout As New frmPrintLayout("AuswertungMWSTOffeneAntraegeMitVorauszahlungDetails") @@ -43,8 +42,6 @@ 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) MyComboBox1.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True) @@ -60,21 +57,11 @@ Public Class usrCntlMDMAuswertungen datPLOSEVon.Value = CDate("01." & Now.AddMonths(-1).Month & "." & Now.AddMonths(-1).Year) datPLOSEBis.Value = CDate("01." & Now.Month & "." & Now.Year).AddDays(-1) - cbxMautbericht.Items.Clear() - cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht", "Gesamtbericht_EXCEL")) - cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautbericht AT DE MSE UTA", "Lieferantenbericht_PDF")) - cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht als CSV-Datei", "Gesamtbericht_CSV")) - - cbxDateMautbericht.Items.Clear() - cbxDateMautbericht.fillWithSQL("select distinct(cast(BillingDate as Date)) From tblMautbericht order by cast(BillingDate as Date) desc", False, "FMZOLL") - cboIDSDateType.Items.Clear() cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Rechnungsdatum", "RGDat")) cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat")) cboIDSDateType.changeItem("RGDat") - cboSachbearbeiter.fillWithSQL("select distinct(UPPER(sachbearbeiter)) from Rechnungsausgang where Sammelrechnung=6 and Firma_ID=19", False, "FMZOLL", True) - If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then tbcntr.TabPages.Remove(tbIDS) End If @@ -83,19 +70,6 @@ Public Class usrCntlMDMAuswertungen datLeereOBUVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year) datLeereOBUbis.Value = Now - 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 countCSV = 0 - Dim countPDF = 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") Then countCSV += 1 - If f.ToString.ToLower.EndsWith("_maut.pdf") Then countPDF += 1 - Next - End If - End If - lblAnzahlMautberichte.Text = countCSV + countPDF & "x Mautberichte (" & countCSV & "x CSV " & countPDF & "x PDF )" End Sub @@ -999,726 +973,6 @@ Public Class usrCntlMDMAuswertungen f.Show() End Sub - Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click - Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL - - Dim ok As Boolean = True - 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 - - End If - - If Sachbearbeiter = "" Then - MsgBox("Sachbearbeiter auswählen!") - Exit Sub - End If - - If PathMautberichte = "" OrElse Not Directory.Exists(PathMautberichte) Then - MsgBox("Pfad zu den Mautberichten nicht vorhanden!" & vbNewLine & "Vorang wird abgebrochen!") - Exit Sub - ElseIf Directory.Exists(PathMautberichte) Then - - If Directory.GetFiles(PathMautberichte) Is Nothing Then - MsgBox("Pfad " & PathMautberichte & " enthält keine Daten!" & vbNewLine & "Vorang wird abgebrochen!") - Exit Sub - End If - - - End If - - - - '---------------DONE - ' ' Sachbearbeiter im RK eintragen. - '140 Call SysCmd(acSysCmdSetStatus, "Sachbearbeiter im RK eintragen...") - '150 Call ReDruSchnSachbearbeiter - 'Update [Rechnungsausgang] SET [Sachbearbeiter] = @Sachbearbeiter WHERE([Firma_ID] = 1 Or [Firma_ID] = 15) And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] <> @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0); - - - '---------------DONE - ' ' Firma_ID im RK eintragen. - '180 Call SysCmd(acSysCmdSetStatus, "Firma_ID im RK eintragen...") - '190 Call ReDruSchnFirma_ID - 'Update [Rechnungsausgang] SET [Firma_ID] = @Firma_ID WHERE [Firma_ID] <> @Firma_ID And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] = @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0); - - - ' ' Rechnung oder Gutschrift im RK eintragen. - '220 Call SysCmd(acSysCmdSetStatus, "Re/Gu im RK eintragen...") - '230 Call ReDruSumReGu - - '---------------DONE - ' ' Rechnungstext im RK eintragen. - '260 Call SysCmd(acSysCmdSetStatus, "Text im RK eintragen...") - '270 Call Rechnungstext - - '---------------DONE - ' ' Porto/Papiere berechnen. - '300 Call SysCmd(acSysCmdSetStatus, "Porto/Papiere berechnen...") - '310 Call ReDruSchnPP - - '---------------DONE - ' ' Banküberweisung/Bankspesen berechnen - '340 Call SysCmd(acSysCmdSetStatus, "Banküberweisung/Bankspesen berechnen...") - '350 Call ReDruSchnBB - - - ' ' Druckinformationen im RK eintragen----- ALTER.......... - '380 Call SysCmd(acSysCmdSetStatus, "Druckinformationen im RK eintragen...") - '390 varDatumZeit = Now 'Druckdatum/Uhrzeit merken. - ' ' Parameter übergeben: Firma_ID, Status, Sammelrechnung, Sachbearbeiter, Buchungsjahr, Rechnungsdatum, DruckDatumZeit. - '400 strParameter = ParameterBereitstellen(Me![Firma_ID], 0, 6, Me![fldSachbearbeiter], Year(Me!fldRechnungsDatum), Me![fldRechnungsDatum], varDatumZeit) - '410 Set qdf = dbs.CreateQueryDef("") - - - 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 ok Then MsgBox("Fehler") : Exit Sub - - Dim dtREGU As DataTable = SQL.loadDgvBySql("SELECT [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, Sum([SteuerpflichtigerGesamtbetrag]+[SteuerfreierGesamtbetrag]) AS Sammelrechnungsbetrag - FROM Rechnungsausgang - WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' - GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL") - - - 'RECHNUNG ODER GUTSCHRIFT - 'Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (+/-) - - If dtREGU.Rows.Count > 0 Then - - For Each r In dtREGU.Rows - - Dim BelegartenNr As Integer - Dim BelegartenKz As String - Dim BelegartenBez As String - Dim Vorzeichen As String - - If r("Sammelrechnungsbetrag") >= 0 Then - - BelegartenNr = 70 - BelegartenKz = "AR" - BelegartenBez = "Rechnung" - Vorzeichen = "+" - - Else - BelegartenNr = 71 - BelegartenKz = "AG" - BelegartenBez = "Gutschrift" - Vorzeichen = "-" - - End If - - Dim steuersatz As Double = Math.Floor(r("Steuersatz %")) - - ok = SQL.doSQL("UPDATE [Rechnungsausgang] SET [BelegartenNr] = " & BelegartenNr & ", [BelegartenKz] = '" & BelegartenKz & "' , [BelegartenBez] = '" & BelegartenBez & "' , [Vorzeichen] = '" & Vorzeichen & "' - WHERE [Firma_ID] = 19 AND [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter])= '" & Sachbearbeiter & "' AND [RechnungsKundenNr] = " & r("RechnungsKundenNr") & " AND [Währungscode] = '" & r("Währungscode") & "' AND [Steuersatz %] = " & steuersatz & " AND [Lastschrift] = " & IIf(r("Lastschrift"), 1, 0) & "AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL") - - - If Not ok Then MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub - - Next - Else - - MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub - - End If - - Dim dtSammelrechnungen As New DataTable - - 'Rechnungstext im RK eintragen - setRechnungstext(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) - - ' Porto/Papiere berechnen. - PortoPapiere(Sachbearbeiter, rechnungsdatum) - - 'Berechnet Banküberweisung/Bankspesen. - Bankspesen(Sachbearbeiter, rechnungsdatum) - - 'Gesamtmautberichte an Sammelrechnung anhängen - If Not setMautgesamtberichtInRechnung(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then - 'MsgBox("Fehler beim Setzen der Gesamtmautberichte") - 'Exit Sub - End If - - 'Druckinformationen - If Not setStatus2(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then - MsgBox("Fehler beim Setzen der Druckinformationen") - Else - MsgBox("Erledigt.") - End If - - - End Sub - - Private Function PortoPapiere(Sachbearbeiter As String, rechnungsdatum As Date) As Boolean - - - ' Die Abfrage ermittelt aus den Rechnungspositonen, - ' das Vorkommen (Anzahl Porto/Papiere) pro RechnungsKundenNr - ' Status=0, Sammelrechnung=6, LeistungsNr=440. - - - Dim sqlString = "SELECT - Rechnungsausgang.Firma_ID, - Rechnungsausgang.Status, - Rechnungsausgang.Sammelrechnung, - Rechnungsausgang.Sachbearbeiter, - Rechnungsausgang.RechnungsKundenNr, - Rechnungsausgang.BelegartenNr, - Rechnungsausgang.Währungscode, - isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %], - cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift, - SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) AS AnzahlPP, - SUM(CASE WHEN LeistungsNr = 440 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivPP - FROM - Rechnungsausgang - INNER JOIN - RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID - WHERE - Rechnungsausgang.Status = 0 - AND Rechnungsausgang.Sammelrechnung = 6 - AND UPPER(Rechnungsausgang.Sachbearbeiter) = '" & Sachbearbeiter & "' - AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' - - GROUP BY - Rechnungsausgang.Firma_ID, - Rechnungsausgang.Status, - Rechnungsausgang.Sammelrechnung, - Rechnungsausgang.Sachbearbeiter, - Rechnungsausgang.RechnungsKundenNr, - Rechnungsausgang.BelegartenNr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.[Steuersatz %], - Rechnungsausgang.Lastschrift - HAVING - SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) > 0 - ORDER BY - Rechnungsausgang.Firma_ID, - Rechnungsausgang.Status, - Rechnungsausgang.Sammelrechnung, - Rechnungsausgang.Sachbearbeiter, - Rechnungsausgang.RechnungsKundenNr, - Rechnungsausgang.BelegartenNr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.[Steuersatz %], - Rechnungsausgang.Lastschrift" - - Dim dtPP As DataTable = (New SQL).loadDgvBySql(sqlString, "FMZOLL") - - If dtPP.Rows.Count > 0 Then - - For Each r In dtPP.Rows - - Dim intZlr As Integer = 0 - - ' Bei BetragExclusivPP kleiner als 150€ wird 1x P.P. verrechnet, bei grösser/gleich 150€ wird kein P.P. verrechnet. - ' Zähler auf die Anzahl der P.P. Löschungen einstellen. - - If Not IsDBNull(r("BetragExclusivPP")) AndAlso r("BetragExclusivPP") > 0 Then - - If r("BetragExclusivPP") < 150 Then - intZlr = r("AnzahlPP") - 1 - Else - intZlr = r("AnzahlPP") - End If - Else - If (0 - r("BetragExclusivPP")) < 150 Then - intZlr = r("AnzahlPP") - 1 - Else - intZlr = r("AnzahlPP") - 1 - End If - End If - If intZlr > 0 Then - - Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2) - Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".") - - ' Die Abfrage liest in der Tabelle Rechnungsausgang, - ' passend zu den durch die vorherige Abfrage bereitgestellten Parametern. - - Dim sqlStringRechnungen As String = "Select DISTINCT - Rechnungsausgang.OffertenNr, - Rechnungsausgang.RK_ID, - Rechnungsausgang.SteuerpflichtigerGesamtbetrag, - Rechnungsausgang.SteuerfreierGesamtbetrag, - Rechnungsausgang.upsize_ts - FROM Rechnungsausgang - WHERE - Rechnungsausgang.Firma_ID = " & r("Firma_ID") & " - And Rechnungsausgang.Status = " & r("Status") & " - And Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & " - And Rechnungsausgang.UPPER(Sachbearbeiter) = '" & Sachbearbeiter & "' - And Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & " - And Rechnungsausgang.BelegartenNr = " & r("BelegartenNr") & " - And Rechnungsausgang.Währungscode = '" & r("Währungscode") & "' - And Rechnungsausgang.[Steuersatz %] = " & SteuersatzString & " - And Rechnungsausgang.Lastschrift = " & IIf(r("Lastschrift"), 1, 0) & " - AND cast(Rechnungsausgang.Abfertigungsdatum as Date) = '" & rechnungsdatum & "' - ORDER by - Rechnungsausgang.OffertenNr" - - - - - Dim dtRechnungen As DataTable = (New SQL).loadDgvBySql(sqlStringRechnungen, "FMZOLL") - - If dtRechnungen.Rows.Count > 0 Then - - For Each re In dtRechnungen.Rows - - - - Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440", "FMZOLL") - - If dtREPOSANZ.Rows.Count > 0 Then - - Dim stgesBetr = re("SteuerpflichtigerGesamtbetrag") - Dim stfregesBetr = re("SteuerfreierGesamtbetrag") - - Dim RECHNUNG As New cRechnungsausgang(re("RK_ID")) - - For Each row In dtREPOSANZ.Rows - - intZlr = intZlr - row("Anzahl") - - If Not IsDBNull(row("SteuerpflichtigerBetrag")) AndAlso IsNumeric(row("SteuerpflichtigerBetrag")) Then stgesBetr = stgesBetr - CDbl(row("SteuerpflichtigerBetrag")) - If Not IsDBNull(row("SteuerfreierBetrag")) AndAlso IsNumeric(row("SteuerfreierBetrag")) Then stfregesBetr = stfregesBetr - CDbl(row("SteuerfreierBetrag")) - - If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, row("LeistungsNr"), row("Steuerpflichtig"), row("LeistungsBez"), row("IndexZkteing")) Then - RECHNUNG.SteuerfreierGesamtbetrag = stfregesBetr - RECHNUNG.SteuerpflichtigerGesamtbetrag = stgesBetr - RECHNUNG.SAVE(False) - End If - - If intZlr = 0 Then Exit For - - Next - End If - - - - Next - - End If - End If - - - - - - - Next - - End If - - End Function - - Private Function setRechnungstext(Sachbearbeiter As String, rechnungsdatum As Date, ByRef sammelRechnungen As DataTable) - - Dim varText As String = "" - Dim varNettozahlungsziel As Integer = 0 - Dim strFälligkeitsdatum As String - Dim strZahlbar As String - - Dim ok As Boolean = False - - Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql("SELECT [Firma_ID], [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] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' - ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL") - - If dtSelectedSammelrechnungen.Rows.Count > 0 Then - sammelRechnungen = dtSelectedSammelrechnungen - For Each rowRE In dtSelectedSammelrechnungen.Rows - - Select Case rowRE("BelegartenNr") - - Case 70 'RECHNUNG - If Not rowRE("Vorkasse") Then - If rowRE("Lastschrift") Then - varText = varText & "Der Rechnungsbetrag wurde durch erteilten Abbuchungsauftrag eingezogen." & vbCrLf - Else - If Not IsDBNull(rowRE("RechnungsKundenNr")) Then - 'Zahlungsziel aus Kundenstamm. - Dim ZZ = (New SQL).getValueTxtBySql("SELECT Kunden.Zahlungsziel from Kunden WHERE Kunden.KundenNr=" & rowRE("RechnungsKundenNr") & " AND Kunden.Zahlungsziel Is Not Null", "FMZOLL") - If ZZ <> "" AndAlso IsNumeric(ZZ) Then - varNettozahlungsziel = ZZ - strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") - End If - End If - - 'Zahlungsziel aus Offertenstamm. - If strFälligkeitsdatum = "" Then - If Not IsDBNull(rowRE("OffertenNr")) Then - Dim ZZOffert = (New SQL).getValueTxtBySql("SELECT Offertenstamm.Zahlungsziel FROM Offertenstamm WHERE Offertenstamm.OffertenNr = " & rowRE("OffertenNr") & " AND Offertenstamm.Zahlungsziel IS NOT NULL", "FMZOLL") - If ZZOffert <> "" AndAlso IsNumeric(ZZOffert) Then - varNettozahlungsziel = ZZOffert - strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") - End If - End If - - End If - - 'Zahlungsziel ermitteln. - If strFälligkeitsdatum = "" Then - If Not IsDBNull(rowRE("RK_ID")) Then - 'Zahlungsziel bei Kreditaufwendungen. - Dim ZZRKID = (New SQL).getValueTxtBySql("Select Case [Preis], [Anzahl] From [RechnungsausgangPositionen] Where [RK_ID] = " & rowRE("RK_ID") & " And [LeistungsNr] = 750 And [BerechnungsartNr] = 9", "FMZOLL") - If ZZRKID <> "" Then - strZahlbar = "Zahlbar innerhalb 10 Tagen abzüglich Pos. 750; ab 10 Tagen netto fällig." - Else - varNettozahlungsziel = 25 - strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") - End If - End If - - End If - - - 'Fälligkeitstext in Landessprache - If strFälligkeitsdatum <> "" Then strZahlbar = "Rechnung zahlbar spätestens bis " & strFälligkeitsdatum & "!" - - If Not IsDBNull(rowRE("RechnungsLandKz")) Then - - Dim ZZRLandKZ = (New SQL).getValueTxtBySql("SELECT tblZahlungszieltexte.Text FROM tblZahlungszieltexte WHERE tblZahlungszieltexte.LandKz='" & rowRE("RechnungsLandKz") & "' AND tblZahlungszieltexte.Text Is Not Null", "FMZOLL") - If ZZRLandKZ <> "" Then - strZahlbar = ZZRLandKZ & " " & strFälligkeitsdatum & "!" - End If - - End If - - varText &= strZahlbar & vbCrLf - - End If - End If - - ' Text bei Zoll oder EUSt drucken - Dim Zoll = (New SQL).getValueTxtBySql("Select LeistungsNr From dbo.RechnungsausgangPositionen Where RK_ID = " & rowRE("RK_ID") & " And LeistungsNr In (10, 60, 70)", "FMZOLL") - If Not IsDBNull(Zoll) AndAlso Zoll <> "" Then - varText = varText & "Alle Zollbelege bitte sofort auf Richtigkeit prüfen da Einspruch gemäß § 355 AO nur 1 Monat nach Datum des Zollbescheides möglich." & vbCrLf - End If - - Case 71 'GUTSCHRIFT - If rowRE("Lastschrift") Then - varText = varText & "Der Gutschriftsbetrag wurde mit erteilten Abbuchungsauftrag verrechnet." & vbCrLf - End If - End Select - - ok = (New SQL).doSQL("Update [Rechnungsausgang] Set [Text] = '" & varText & "', [Nettozahlungsziel] = " & varNettozahlungsziel & " WHERE [RK_ID] = " & rowRE("RK_ID"), "FMZOLL") - If Not ok Then MsgBox("Fehler") : Return False - - varText = "" - varNettozahlungsziel = 0 - strFälligkeitsdatum = "" - - Next - End If - - Return ok - - End Function - - - Private Function Bankspesen(Sachbearbeiter As String, rechnungsdatum As Date) - - Dim sqlBB = " Select Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift - From dbo.Rechnungsausgang - Where Status = 0 - And Sammelrechnung = 6 - And UPPER([Sachbearbeiter]) ='" & Sachbearbeiter & "' - AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' - Group By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift - Order By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift" - - - Dim dtBB As DataTable = (New SQL).loadDgvBySql(sqlBB, "FMZOLL") - - If dtBB.Rows.Count > 0 Then - - For Each r In dtBB.Rows - 'spSelectReDruSchnSumBS415 - Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2) - Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".") - - Dim sum As DataTable = (New SQL).loadDgvBySql("SELECT ISNULL(SUM(dbo.RechnungsausgangPositionen.Preis * dbo.RechnungsausgangPositionen.Anzahl),0) AS [Summe von Preis] - FROM dbo.Rechnungsausgang INNER JOIN - dbo.RechnungsausgangPositionen ON dbo.Rechnungsausgang.RK_ID = dbo.RechnungsausgangPositionen.RK_ID INNER JOIN - dbo.Leistungen ON dbo.RechnungsausgangPositionen.LeistungsNr = dbo.Leistungen.LeistungsNr - WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ") - AND (dbo.Rechnungsausgang.Status = " & r("Status") & ") - AND (dbo.Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & ") - AND (UPPER(dbo.Rechnungsausgang.[Sachbearbeiter]) = '" & r("Sachbearbeiter") & "') - AND (dbo.Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & ") - AND (dbo.Rechnungsausgang.BelegartenNr =" & r("BelegartenNr") & ") - AND (dbo.Rechnungsausgang.Währungscode = '" & r("Währungscode") & "') - AND (dbo.Rechnungsausgang.[Steuersatz %] =" & SteuersatzString & ") - AND (dbo.Rechnungsausgang.Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ") - AND (dbo.Leistungen.BS415 = 1)", "FMZOLL",) - If sum.Rows.Count > 0 Then - - For Each rowsum In sum.Rows - - Dim sumCurrenRow As Double = rowsum("Summe von Preis") - - If sumCurrenRow <> 0 Then - - Dim dtBankspesen As DataTable = (New SQL).loadDgvBySql("SELECT KundenNr, [Bankspesen %], [Bankspesen Mindestbetrag] FROM dbo.Kunden where KundenNr = " & r("RechnungsKundenNr"), "FMZOLL") - - If dtBankspesen.Rows.Count > 0 Then - - For Each rowBS In dtBankspesen.Rows - - If rowBS("Bankspesen %") = 0 And rowBS("Bankspesen Mindestbetrag") = 0 Then - - Else - - Dim query As String = "SELECT DISTINCT OffertenNr, RK_ID, SteuerpflichtigerGesamtbetrag, SteuerfreierGesamtbetrag, upsize_ts FROM Rechnungsausgang - WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ") - AND (Status = " & r("Status") & ") - AND (Sammelrechnung = " & r("Sammelrechnung") & ") - AND (UPPER([Sachbearbeiter]) = '" & r("Sachbearbeiter") & "') - AND (RechnungsKundenNr = " & r("RechnungsKundenNr") & ") - AND (BelegartenNr =" & r("BelegartenNr") & ") - AND (Währungscode = '" & r("Währungscode") & "') - AND ([Steuersatz %] =" & SteuersatzString & ") - AND (Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ") - ORDER BY OffertenNr" - - Dim dtRechnung As DataTable = (New SQL).loadDgvBySql(query, "FMZOLL") - - If dtRechnung.Rows.Count > 0 Then - - For Each re In dtRechnung.Rows - - Dim steuerpflichtigerGesamtbetrag As Double = CDbl(re("SteuerpflichtigerGesamtbetrag")) - Dim steuerfreiegerGesamtbetrag As Double = CDbl(re("SteuerfreierGesamtbetrag")) - - Dim dt415 As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing],SteuerpflichtigerBetrag, SteuerfreierBetrag, upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 415", "FMZOLL") - - If dt415.Rows.Count > 0 Then - - For Each r415 In dt415.Rows - - If Not IsDBNull(r415("SteuerpflichtigerBetrag")) AndAlso IsNumeric(r415("SteuerpflichtigerBetrag")) Then steuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag - CDbl(r415("SteuerpflichtigerBetrag")) - If Not IsDBNull(r415("SteuerfreierBetrag")) AndAlso IsNumeric(r415("SteuerfreierBetrag")) Then steuerfreiegerGesamtbetrag = steuerfreiegerGesamtbetrag - CDbl(r415("SteuerfreierBetrag")) - - Dim RECHNUNG As New cRechnungsausgang(re("RK_ID")) - - If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, r415("LeistungsNr"), r415("Steuerpflichtig"), r415("LeistungsBez"), r415("IndexZkteing")) Then - RECHNUNG.SteuerfreierGesamtbetrag = steuerfreiegerGesamtbetrag - RECHNUNG.SteuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag - RECHNUNG.SAVE(False) - End If - - - - Next - - - - End If - - - Next - - - If sumCurrenRow > 0 Then - Dim RElastEntry As DataRow = dtRechnung.Rows(dtRechnung.Rows.Count - 1) - - Dim NEWPOS As New cRechnungsausgangPositionen(RElastEntry("RK_ID")) - NEWPOS.Anzahl = 1 - NEWPOS.LeistungsNr = 415 - If steuersatz = 0 Then - NEWPOS.Steuerpflichtig = False - Else - Dim sql As New SQL - NEWPOS.Steuerpflichtig = (New VERAG_PROG_ALLGEMEIN.SQL).DLookup("Steuerpflichtig", "Leistungen", "LeistungsNr= 415", "FMZOLL") - End If - NEWPOS.LeistungsBez = "Überweisungs/Bankspesen" - - Dim preis As Double = 0 - If rowBS("Bankspesen %") > 0 Then - - If sumCurrenRow > 0 Then - - preis = Math.Floor(sumCurrenRow * rowBS("Bankspesen %") + 0.5) - Else - preis = Math.Floor(0 - sumCurrenRow * rowBS("Bankspesen %") + 0.5) - - End If - Else - preis = 0 - End If - - If preis < rowBS("Bankspesen Mindestbetrag") Then - preis = rowBS("Bankspesen Mindestbetrag") - End If - - If sumCurrenRow < 0 Then - preis = 0 - preis - End If - - Dim RECHNUNG As New cRechnungsausgang(RElastEntry("RK_ID")) - - If NEWPOS.Steuerpflichtig Then - NEWPOS.SteuerpflichtigerBetrag = preis - RECHNUNG.SteuerpflichtigerGesamtbetrag = RECHNUNG.SteuerpflichtigerGesamtbetrag + preis - - Else - NEWPOS.SteuerfreierBetrag = preis - RECHNUNG.SteuerfreierGesamtbetrag = RECHNUNG.SteuerfreierGesamtbetrag + preis - - End If - - NEWPOS.Preis = preis - If NEWPOS.INSERT(RElastEntry("RK_ID")) Then RECHNUNG.SAVE(False) - - - - End If - - End If - - End If - - Next - - End If - End If - - Next - - End If - - - Next - - End If - - End Function - - 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 - - End If - If Directory.Exists(PathMautberichte) Then - For Each f In Directory.GetFiles(PathMautberichte) - If f.Contains("_Maut.csv") Then - Dim FileCSV = New FileInfo(f) - If FileCSV.Name.Length > 10 Then - Dim KundenNr = FileCSV.Name.ToString.Substring(0, 6) - 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) - attachmentIsSet = AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum) - End If - - End If - - - 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) - attachmentIsSet = AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum) - End If - End If - End If - Next - - End If - - Return attachmentIsSet - - Catch ex As SystemException - - End Try - - End Function - - 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! -> ist DBteschnisch unterbunden mit PrimaryKey-Einschränkung!!! - - If Not IO.File.Exists(pathFile) Then Return False - - Dim fi As New System.IO.FileInfo(pathFile) - - Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "GESAMTBERICHT", rechnungsdatum.ToString("ddMMyyyy"), kdNr, "", fi.Name, kdNr) - If Not DS.uploadDataToDATENSERVER(pathFile, fi.Name, fi.Extension,,,, True) Then - MsgBox("Fehler beim Speichern: Datenserver! KDNR:" & kdNr) - Return False - End If - If CInt(DS.da_id) <= 0 Then - MsgBox("Keine DocId!") - Return False - End If - Dim da_id = DS.da_id - Dim destPath = DS.GET_TOP1_PATH - - If RECHNUNG IsNot Nothing Then - RECHNUNG.ANHAENGE.Clear() - Dim ANH As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge - ANH.dsId = CInt(DS.da_id) - ANH.Bezeichnung = DS.da_name - RECHNUNG.ANHAENGE.Add(ANH) - Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False, False) - Else - Return False - End If - - End Function - - Private Function setStatus2(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) As Boolean - - Dim cnt = 0 - - Dim reIsSet As Boolean = False - If dtSammelRechnugen.Rows.Count > 0 Then - For Each re In dtSammelRechnugen.Rows - - reIsSet = cFakturierung.doSAMMELRechnungsDruck(19, 6, rechnungsdatum, rechnungsdatum, "", False, False, re("RechnungsKundenNr"), 7, , , , Nothing, , ,,, ,, ) - - 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 - - - End Function Private Sub Button16_Click(sender As Object, e As EventArgs) Handles btnContractdaten.Click Try @@ -2155,558 +1409,7 @@ Public Class usrCntlMDMAuswertungen Me.Cursor = Cursors.Default End Sub - Private Sub UsrCntlMSE_KonvertCSV1_Load(sender As Object, e As EventArgs) Handles UsrCntlMSE_KonvertCSV1.Load - End Sub - - Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click - If cbxMautbericht._value = "" Then Exit Sub - If cbxDateMautbericht._value = "" Then Exit Sub - - Try - - - - - Select Case cbxMautbericht._value - 'nur intern - 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) - - 'für Kunde an RE anhängen - 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] - 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 - - 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 - - For Each csv As DataRow In distinctDT_CSV.Rows - - - - 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(";", ", ") & ";" - Next - outFile.WriteLine(clmns) - Next - outFile.Close() - - Next - - - MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.") - Else - MsgBox("Es wurden keine Daten bereitgestellt") - - End If - - - 'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL) - 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] - 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 - - 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! - 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 - - 'If pdf.Item(0) = 401026 Then - ' MsgBox("Test") - 'End If - - 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 countCSV = 0 - Dim countPDF = 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") Then countCSV += 1 - If f.ToString.ToLower.EndsWith("_maut.pdf") Then countPDF += 1 - Next - End If - End If - lblAnzahlMautberichte.Text = countCSV + countPDF & "x Mautberichte (" & countCSV & "x CSV " & countPDF & "x PDF )" - - Catch ex As System.Exception - VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) - - End Try - - End Sub - - - - Private Function createPDFMautbericht(kdnr As Integer, dt As DataTable, anhangsdatum As Date, path As String) As String - - Dim rpt As New rptPLOSE_Anhang - Dim sql As New VERAG_PROG_ALLGEMEIN.SQL - - rpt.DataSource = dt - - rpt.txtKunde.Text = kdnr & " " & New VERAG_PROG_ALLGEMEIN.cAdressen(kdnr).FullName - rpt.lblRgDatum.Text = anhangsdatum.ToShortDateString - - rpt.GroupHeaderKz.DataField = "Licence Plate Number" - - - rpt.txtNettoKzSum.Visible = False - rpt.txtNettoGesSum.Visible = False - rpt.txtNetto.Visible = False - rpt.txtNettoKatSum.Visible = False - rpt.lblNetto.Visible = False - - rpt.txtMWSTKzSum.Visible = False - rpt.txtMWSTGEsSum.Visible = False - rpt.txtMWST.Visible = False - rpt.txtMWSTKatSum.Visible = False - rpt.lblMWST.Visible = False - - 'rpt.lblBrutto.Text = "Total Amount ( EUR )" - 'rpt.Label4.Text = bis.ToShortDateString - 'rpt.Label2.Text = "UTA-KundenNr:" - rpt.TextBox1.Text = kdnr - ' rpt.Label1.Text = " UTA Fleet Management Service" - - rpt.lblSummeKennzeichen.Visible = False - rpt.lblService.Visible = False - - 'rpt.lblSummeKennzeichen.Location = New PointF(rpt.lblSummeKennzeichen.Location.X + 4.5, rpt.lblSummeKennzeichen.Location.Y) - 'rpt.lblSumKategorie.Location = New PointF(rpt.lblSumKategorie.Location.X + 4.5, rpt.lblSumKategorie.Location.Y) - 'rpt.lblGessumme.Location = New PointF(rpt.lblGessumme.Location.X + 4.5, rpt.lblGessumme.Location.Y) - - Dim sumNetto As Double = 0 - Dim sumMWST As Double = 0 - Dim sumBrutto As Double = 0 - - Dim sumNettoKat As Double = 0 - Dim sumMWSTKat As Double = 0 - Dim sumBruttoKat As Double = 0 - - Dim sumNettoGes As Double = 0 - Dim sumMWSTGes As Double = 0 - Dim sumBruttoGes As Double = 0 - - Dim cntKat = 0 - Dim cnt = 0 - rpt.GroupFooterKat.Visible = False - - AddHandler rpt.Detail.Format, Sub() - - rpt.txtKunde.Text = sql.isDbnullEmpty(rpt.Fields.Item("Customer No").Value, "") - rpt.txtKunde.Text &= " " & sql.isDbnullEmpty(rpt.Fields.Item("Customer name").Value, "") - - rpt.txtProdukt.Text = sql.isDbnullEmpty(rpt.Fields.Item("Product description").Value, "") 'sql.isDbnullEmpty(rpt.Fields.Item("plose_ProduktCode").Value, "") & " - " & sql.isDbnullEmpty(rpt.Fields.Item("plose_Produktbeschreibung").Value, "") - - - rpt.txtKartennummer.Text = sql.isDbnullEmpty(rpt.Fields.Item("Card number").Value, "") - rpt.txtEingang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Entry Terminal").Value, "") - rpt.txtAusgang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Exit Terminal").Value, "") - rpt.txtLand.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction Country").Value, "") - rpt.txtDatum.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction date").Value, "") - - rpt.txtNetto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Net Amount").Value, 2, "") - rpt.txtMWST.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("VAT Amount").Value, 2, "") - rpt.txtBrutto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 2, "") - - sumNetto += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_NettobetragWaehrungAbbuchung").Value, 4, 0) - sumMWST += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_MWSTBetragWaehrungAbbuchung").Value, 4, 0) - sumBrutto += sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 4, 0) - cnt += 1 - End Sub - - AddHandler rpt.GroupHeaderKz.Format, Sub() - rpt.txtKennzeichen.Text = sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, "") - If rpt.txtKennzeichen.Text = "" Then rpt.lblKennzeichen.Visible = False - End Sub - AddHandler rpt.GroupHeaderKat.Format, Sub() - rpt.lblKategorie.Text = "MAUT REPORT" - End Sub - - AddHandler rpt.GroupFooterKz.Format, Sub() - rpt.txtNettoKzSum.Text = sumNetto.ToString("N2") - rpt.txtMWSTKzSum.Text = sumMWST.ToString("N2") - rpt.txtBruttoKzSum.Text = sumBrutto.ToString("N2") - sumNettoGes += sumNetto - sumMWSTGes += sumMWST - sumBruttoGes += sumBrutto - - sumNetto = 0 - sumMWST = 0 - sumBrutto = 0 - - rpt.lblSummeKennzeichen.Text = rpt.lblSummeKennzeichen.Text.Replace("Kennzeichen", sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, "")) - End Sub - - - - AddHandler rpt.GroupFooterKat.Format, Sub() - sumNettoKat += sumNetto - sumMWSTKat += sumMWST - sumBruttoKat += sumBrutto - sumNetto = 0 - sumMWST = 0 - sumBrutto = 0 - - rpt.txtNettoKatSum.Text = sumNettoKat.ToString("N2") - rpt.txtMWSTKatSum.Text = sumMWSTKat.ToString("N2") - rpt.txtBruttoKatSum.Text = sumBruttoKat.ToString("N2") - cntKat += 1 - End Sub - AddHandler rpt.ReportFooter1.Format, Sub() - 'sumNettoGes += sumNettoKat - 'sumMWSTGes += sumMWSTKat - 'sumBruttoGes += sumBruttoKat - sumNettoKat = 0 - sumMWSTKat = 0 - sumBruttoKat = 0 - - sumNetto = 0 - sumMWST = 0 - sumBrutto = 0 - - rpt.txtNettoGesSum.Text = sumNettoGes.ToString("N2") - rpt.txtMWSTGEsSum.Text = sumMWSTGes.ToString("N2") - rpt.txtBruttoGesSum.Text = sumBruttoGes.ToString("N2") - - - - 'If cntKat <= 1 Then - ' rpt.GroupFooterKat.Visible = False - 'End If - End Sub - - 'print.Viewer.LoadDocument(rpt) - 'print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous - 'print.Show() - - - - Dim tmpPath = path & "\" & kdnr & "_Maut.pdf" - Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport - rpt.Run(False) - p.NeverEmbedFonts = "" - p.Export(rpt.Document, tmpPath) - - rpt.Dispose() - - Return tmpPath - - End Function - - Private Sub Button19_Click_1(sender As Object, e As EventArgs) Handles Button19.Click - - Dim Sachbearbeiter = cboSachbearbeiter._value - Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) - Dim rechnungsstatus As Integer = 2 - 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 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 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] = " & rechnungsstatus & " 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 > 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) - - If cbxRechnungsjournaldrucken.Checked Then - Dim dtRechnungsjournal As DataTable = (New SQL).loadDgvBySql("SELECT - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsLandKz, - Rechnungsausgang.RechnungsNr, - Rechnungsausgang.RechnungsDatum, - MIN(Rechnungsausgang.KundenNrZentrale) AS KundenNrZentrale, - MIN(Rechnungsausgang.RechnungsKundenNr) AS RechnungsKundenNr, - MIN(Rechnungsausgang.[RechnungsName 1]) AS [RechnungsName 1], - MAX(Rechnungsausgang.Abfertigungsdatum) AS Abfertigungsdatum, - SUM(RechnungsausgangPositionen.SteuerpflichtigerBetrag) AS SteuerpflichtigerGesamtbetrag, - SUM(RechnungsausgangPositionen.SteuerfreierBetrag) AS SteuerfreierGesamtbetrag, - MIN(Rechnungsausgang.[Steuersatz %]) AS [Steuersatz %], - Rechnungsausgang.Status, - Rechnungsausgang.DruckDatumZeit, - Rechnungsausgang.Sachbearbeiter - FROM - Rechnungsausgang - INNER JOIN - Filialen ON Rechnungsausgang.FilialenNr = Filialen.FilialenNr - INNER JOIN - RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID - WHERE - [Status] = " & rechnungsstatus & " AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null - GROUP BY - Rechnungsausgang.Buchungsjahr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsLandKz, - Rechnungsausgang.RechnungsNr, - Rechnungsausgang.RechnungsDatum, - Rechnungsausgang.Status, - Rechnungsausgang.DruckDatumZeit, - Rechnungsausgang.Sachbearbeiter - ORDER BY - Rechnungsausgang.Buchungsjahr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsLandKz, - Rechnungsausgang.RechnungsNr", "FMZOLL") - - cProgramFunctions.genExcelFromDT_NEW(dtRechnungsjournal, {"J1:J" & (dtRechnungsjournal.Rows.Count + 1), "K1:K" & (dtRechnungsjournal.Rows.Count + 1), "L1:L" & (dtRechnungsjournal.Rows.Count + 1)},, "RECHNUNGSJOURNAL VOM" & rechnungsdatum.ToShortDateString,,, True) - End If - - If cbxAbfVerbotdrucken.Checked Then - - Dim dtEbfertigungsverbot As DataTable = (New SQL).loadDgvBySql("SELECT - Rechnungsausgang.Buchungsjahr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsNr, - Rechnungsausgang.RechnungsDatum, - MIN(Rechnungsausgang.KundenNrZentrale) AS KundenNrZentrale, - MIN(Rechnungsausgang.RechnungsKundenNr) AS RechnungsKundenNr, - MIN(Rechnungsausgang.[RechnungsName 1]) AS [RechnungsName 1], - MAX(Rechnungsausgang.Abfertigungsdatum) AS Abfertigungsdatum, - SUM(RechnungsausgangPositionen.SteuerpflichtigerBetrag) AS SteuerpflichtigerGesamtbetrag, - SUM(RechnungsausgangPositionen.SteuerfreierBetrag) AS SteuerfreierGesamtbetrag, - MIN(Rechnungsausgang.[Steuersatz %]) AS [Steuersatz %], - Rechnungsausgang.Status, - Rechnungsausgang.DruckDatumZeit, - Rechnungsausgang.Sachbearbeiter - FROM - Rechnungsausgang - INNER JOIN - Filialen ON Rechnungsausgang.FilialenNr = Filialen.FilialenNr - INNER JOIN - Kunden ON Rechnungsausgang.RechnungsKundenNr = Kunden.KundenNr - INNER JOIN - RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID - WHERE - Kunden.Abfertigungsverbot = 1 AND [Status] = " & rechnungsstatus & " AND Rechnungsausgang.[Sammelrechnung] = 6 AND UPPER(Rechnungsausgang.[Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null - GROUP BY - Rechnungsausgang.Buchungsjahr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsNr, - Rechnungsausgang.RechnungsDatum, - Rechnungsausgang.Status, - Rechnungsausgang.DruckDatumZeit, - Rechnungsausgang.Sachbearbeiter - ORDER BY - Rechnungsausgang.Buchungsjahr, - Rechnungsausgang.Währungscode, - Rechnungsausgang.RechnungsNr;", "FMZOLL") - - cProgramFunctions.genExcelFromDT_NEW(dtEbfertigungsverbot, {"I1:I" & (dtEbfertigungsverbot.Rows.Count + 1), "J1:J" & (dtEbfertigungsverbot.Rows.Count + 1), "K1:K" & (dtEbfertigungsverbot.Rows.Count + 1)},, "RECHNUNGEN VOM " & rechnungsdatum.ToShortDateString & " MIT ABFERTIGUNGSVERBOT",,, True) - End If - - 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 - - - - Private Sub cbxDateMautbericht_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxDateMautbericht.SelectedValueChanged - With MyDatagridview1 - - - .Columns.Clear() - .SET_SQL("SELECT [Datenquelle] as Lieferant,sum([Net Amount]) as Netto,sum([VAT Amount]) as VAT,sum([Total Amount]) as Brutto - FROM [VERAG].[dbo].[tblMautbericht] - where cast([Billingdate] as date) = '" & cbxDateMautbericht._value & "' - group by [Datenquelle]", "FMZOLL") - .LOAD() - - - End With - - - - End Sub End Class diff --git a/SDL/seriendruck/usrCntlFakturierung.Designer.vb b/SDL/seriendruck/usrCntlFakturierung.Designer.vb new file mode 100644 index 00000000..148c6d0b --- /dev/null +++ b/SDL/seriendruck/usrCntlFakturierung.Designer.vb @@ -0,0 +1,736 @@ + +Partial Class usrcntlFakturierung + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(usrcntlFakturierung)) + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.btnMDMSammelrechnung = New System.Windows.Forms.Button() + Me.btnFakturierung = New System.Windows.Forms.Button() + Me.btnRechnugnsdaten = New System.Windows.Forms.Button() + Me.Label3 = New System.Windows.Forms.Label() + Me.Label61 = New System.Windows.Forms.Label() + Me.GBMautberichte = New System.Windows.Forms.GroupBox() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.MyDatagridview1 = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) + Me.Label5 = New System.Windows.Forms.Label() + Me.lblAnzahlMautberichte = New System.Windows.Forms.Label() + Me.pbMautAnh_Proz = New System.Windows.Forms.ProgressBar() + Me.lblMautAnh_Proz = New System.Windows.Forms.Label() + Me.cbxDateMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.Label69 = New System.Windows.Forms.Label() + Me.Label68 = New System.Windows.Forms.Label() + Me.cbxMautbericht = New VERAG_PROG_ALLGEMEIN.MyComboBox() + Me.Label62 = New System.Windows.Forms.Label() + Me.Button18 = New System.Windows.Forms.Button() + Me.Label44 = New System.Windows.Forms.Label() + Me.GBSammelrechnung = New System.Windows.Forms.GroupBox() + Me.PictureBox6 = New System.Windows.Forms.PictureBox() + Me.PictureBox5 = New System.Windows.Forms.PictureBox() + Me.PictureBox4 = New System.Windows.Forms.PictureBox() + Me.PictureBox3 = New System.Windows.Forms.PictureBox() + Me.PictureBox2 = New System.Windows.Forms.PictureBox() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.Label4 = New System.Windows.Forms.Label() + Me.cbxVorschau = New System.Windows.Forms.CheckBox() + Me.cbxAbfVerbotdrucken = New System.Windows.Forms.CheckBox() + Me.cbxRechnungsjournaldrucken = New System.Windows.Forms.CheckBox() + 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() + Me.Label67 = New System.Windows.Forms.Label() + Me.dtRechnungsdatum = New System.Windows.Forms.DateTimePicker() + Me.Label66 = New System.Windows.Forms.Label() + Me.Label65 = New System.Windows.Forms.Label() + Me.Label64 = New System.Windows.Forms.Label() + Me.Label63 = New System.Windows.Forms.Label() + Me.Label45 = New System.Windows.Forms.Label() + Me.Button14 = New System.Windows.Forms.Button() + Me.GroupBox1.SuspendLayout() + Me.GBMautberichte.SuspendLayout() + CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GBSammelrechnung.SuspendLayout() + CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox5, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox4, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox3, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.btnMDMSammelrechnung) + Me.GroupBox1.Controls.Add(Me.btnFakturierung) + Me.GroupBox1.Controls.Add(Me.btnRechnugnsdaten) + Me.GroupBox1.Location = New System.Drawing.Point(14, 20) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(697, 86) + Me.GroupBox1.TabIndex = 0 + Me.GroupBox1.TabStop = False + ' + 'btnMDMSammelrechnung + ' + Me.btnMDMSammelrechnung.Enabled = False + Me.btnMDMSammelrechnung.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnMDMSammelrechnung.ForeColor = System.Drawing.Color.Black + Me.btnMDMSammelrechnung.Location = New System.Drawing.Point(414, 19) + Me.btnMDMSammelrechnung.Name = "btnMDMSammelrechnung" + Me.btnMDMSammelrechnung.Size = New System.Drawing.Size(147, 44) + Me.btnMDMSammelrechnung.TabIndex = 51 + Me.btnMDMSammelrechnung.Text = "MDM Sammelrechnung" + Me.btnMDMSammelrechnung.UseVisualStyleBackColor = True + ' + 'btnFakturierung + ' + Me.btnFakturierung.Enabled = False + Me.btnFakturierung.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnFakturierung.ForeColor = System.Drawing.Color.Black + Me.btnFakturierung.Location = New System.Drawing.Point(6, 19) + Me.btnFakturierung.Name = "btnFakturierung" + Me.btnFakturierung.Size = New System.Drawing.Size(147, 43) + Me.btnFakturierung.TabIndex = 6 + Me.btnFakturierung.Text = "Fakturierung" + Me.btnFakturierung.UseVisualStyleBackColor = True + ' + 'btnRechnugnsdaten + ' + Me.btnRechnugnsdaten.Enabled = False + Me.btnRechnugnsdaten.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnRechnugnsdaten.ForeColor = System.Drawing.Color.Black + Me.btnRechnugnsdaten.Location = New System.Drawing.Point(201, 18) + Me.btnRechnugnsdaten.Name = "btnRechnugnsdaten" + Me.btnRechnugnsdaten.Size = New System.Drawing.Size(147, 44) + Me.btnRechnugnsdaten.TabIndex = 4 + Me.btnRechnugnsdaten.Text = "Rechnungsdaten" + Me.btnRechnugnsdaten.UseVisualStyleBackColor = True + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label3.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.Label3.Location = New System.Drawing.Point(15, 0) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(100, 17) + Me.Label3.TabIndex = 2 + Me.Label3.Text = "Fakturierung" + ' + 'Label61 + ' + Me.Label61.AutoSize = True + Me.Label61.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label61.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.Label61.Location = New System.Drawing.Point(11, 120) + Me.Label61.Name = "Label61" + Me.Label61.Size = New System.Drawing.Size(310, 17) + Me.Label61.TabIndex = 17 + Me.Label61.Text = "MDM Sammelabrechnung - Mautberichte" + ' + 'GBMautberichte + ' + Me.GBMautberichte.Controls.Add(Me.TextBox1) + Me.GBMautberichte.Controls.Add(Me.MyDatagridview1) + Me.GBMautberichte.Controls.Add(Me.Label5) + Me.GBMautberichte.Controls.Add(Me.lblAnzahlMautberichte) + Me.GBMautberichte.Controls.Add(Me.pbMautAnh_Proz) + Me.GBMautberichte.Controls.Add(Me.lblMautAnh_Proz) + Me.GBMautberichte.Controls.Add(Me.cbxDateMautbericht) + Me.GBMautberichte.Controls.Add(Me.Label69) + Me.GBMautberichte.Controls.Add(Me.Label68) + Me.GBMautberichte.Controls.Add(Me.cbxMautbericht) + Me.GBMautberichte.Controls.Add(Me.Label62) + Me.GBMautberichte.Controls.Add(Me.Button18) + Me.GBMautberichte.Enabled = False + Me.GBMautberichte.Location = New System.Drawing.Point(10, 131) + Me.GBMautberichte.Name = "GBMautberichte" + Me.GBMautberichte.Size = New System.Drawing.Size(697, 195) + Me.GBMautberichte.TabIndex = 16 + Me.GBMautberichte.TabStop = False + ' + 'TextBox1 + ' + Me.TextBox1.BackColor = System.Drawing.Color.White + Me.TextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None + Me.TextBox1.Location = New System.Drawing.Point(505, 41) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(106, 13) + Me.TextBox1.TabIndex = 105 + ' + 'MyDatagridview1 + ' + Me.MyDatagridview1.AKTUALISIERUNGS_INTERVALL = -1 + Me.MyDatagridview1.BackgroundColor = System.Drawing.SystemColors.Window + Me.MyDatagridview1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.MyDatagridview1.Location = New System.Drawing.Point(4, 71) + Me.MyDatagridview1.Name = "MyDatagridview1" + Me.MyDatagridview1.Size = New System.Drawing.Size(471, 124) + Me.MyDatagridview1.TabIndex = 34 + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(443, 41) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(56, 13) + Me.Label5.TabIndex = 102 + Me.Label5.Text = "Fortschritt:" + ' + '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 + ' + 'pbMautAnh_Proz + ' + Me.pbMautAnh_Proz.Location = New System.Drawing.Point(446, 12) + Me.pbMautAnh_Proz.Name = "pbMautAnh_Proz" + Me.pbMautAnh_Proz.Size = New System.Drawing.Size(245, 23) + Me.pbMautAnh_Proz.TabIndex = 103 + ' + 'lblMautAnh_Proz + ' + Me.lblMautAnh_Proz.Location = New System.Drawing.Point(622, 41) + Me.lblMautAnh_Proz.Name = "lblMautAnh_Proz" + Me.lblMautAnh_Proz.Size = New System.Drawing.Size(69, 13) + Me.lblMautAnh_Proz.TabIndex = 104 + Me.lblMautAnh_Proz.Text = "0%" + Me.lblMautAnh_Proz.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'cbxDateMautbericht + ' + Me.cbxDateMautbericht._allowedValuesFreiText = Nothing + Me.cbxDateMautbericht._allowFreiText = False + Me.cbxDateMautbericht._value = "" + Me.cbxDateMautbericht.FormattingEnabled = True + Me.cbxDateMautbericht.Location = New System.Drawing.Point(265, 12) + Me.cbxDateMautbericht.Name = "cbxDateMautbericht" + Me.cbxDateMautbericht.Size = New System.Drawing.Size(87, 21) + Me.cbxDateMautbericht.TabIndex = 32 + ' + 'Label69 + ' + Me.Label69.AutoSize = True + Me.Label69.Location = New System.Drawing.Point(142, 19) + Me.Label69.Name = "Label69" + Me.Label69.Size = New System.Drawing.Size(38, 13) + Me.Label69.TabIndex = 31 + Me.Label69.Text = "Datum" + ' + 'Label68 + ' + Me.Label68.Location = New System.Drawing.Point(142, 57) + Me.Label68.Name = "Label68" + Me.Label68.Size = New System.Drawing.Size(333, 20) + Me.Label68.TabIndex = 30 + Me.Label68.Text = "Generiert Mautberichte" + ' + 'cbxMautbericht + ' + Me.cbxMautbericht._allowedValuesFreiText = Nothing + Me.cbxMautbericht._allowFreiText = False + Me.cbxMautbericht._value = "" + Me.cbxMautbericht.DropDownWidth = 200 + Me.cbxMautbericht.FormattingEnabled = True + Me.cbxMautbericht.Location = New System.Drawing.Point(265, 33) + Me.cbxMautbericht.Name = "cbxMautbericht" + Me.cbxMautbericht.Size = New System.Drawing.Size(152, 21) + Me.cbxMautbericht.TabIndex = 30 + ' + 'Label62 + ' + Me.Label62.AutoSize = True + Me.Label62.Location = New System.Drawing.Point(142, 36) + Me.Label62.Name = "Label62" + Me.Label62.Size = New System.Drawing.Size(102, 13) + Me.Label62.TabIndex = 5 + Me.Label62.Text = "Mautsummenbericht" + ' + 'Button18 + ' + Me.Button18.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button18.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.Button18.Location = New System.Drawing.Point(6, 19) + Me.Button18.Name = "Button18" + Me.Button18.Size = New System.Drawing.Size(121, 46) + Me.Button18.TabIndex = 4 + Me.Button18.Text = "Mautbericht" + Me.Button18.UseVisualStyleBackColor = True + ' + 'Label44 + ' + Me.Label44.AutoSize = True + Me.Label44.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label44.ForeColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) + Me.Label44.Location = New System.Drawing.Point(11, 329) + Me.Label44.Name = "Label44" + Me.Label44.Size = New System.Drawing.Size(436, 17) + Me.Label44.TabIndex = 15 + Me.Label44.Text = "MDM Sammelabrechnung - MDM Sammelrechnung (Art=6)" + ' + 'GBSammelrechnung + ' + Me.GBSammelrechnung.Controls.Add(Me.PictureBox6) + Me.GBSammelrechnung.Controls.Add(Me.PictureBox5) + Me.GBSammelrechnung.Controls.Add(Me.PictureBox4) + Me.GBSammelrechnung.Controls.Add(Me.PictureBox3) + Me.GBSammelrechnung.Controls.Add(Me.PictureBox2) + Me.GBSammelrechnung.Controls.Add(Me.PictureBox1) + Me.GBSammelrechnung.Controls.Add(Me.Label4) + Me.GBSammelrechnung.Controls.Add(Me.cbxVorschau) + Me.GBSammelrechnung.Controls.Add(Me.cbxAbfVerbotdrucken) + Me.GBSammelrechnung.Controls.Add(Me.cbxRechnungsjournaldrucken) + Me.GBSammelrechnung.Controls.Add(Me.Button20) + Me.GBSammelrechnung.Controls.Add(Me.Label72) + Me.GBSammelrechnung.Controls.Add(Me.KdSearchBox3) + Me.GBSammelrechnung.Controls.Add(Me.rbkunde) + Me.GBSammelrechnung.Controls.Add(Me.rbAlleKunden) + Me.GBSammelrechnung.Controls.Add(Me.txtPloseAnh_Einarbeitung) + Me.GBSammelrechnung.Controls.Add(Me.Label71) + Me.GBSammelrechnung.Controls.Add(Me.pbPloseAnh_Proz) + Me.GBSammelrechnung.Controls.Add(Me.lblPloseAnh_Proz) + Me.GBSammelrechnung.Controls.Add(Me.Button19) + Me.GBSammelrechnung.Controls.Add(Me.Label70) + Me.GBSammelrechnung.Controls.Add(Me.cboSachbearbeiter) + Me.GBSammelrechnung.Controls.Add(Me.Label67) + Me.GBSammelrechnung.Controls.Add(Me.dtRechnungsdatum) + Me.GBSammelrechnung.Controls.Add(Me.Label66) + Me.GBSammelrechnung.Controls.Add(Me.Label65) + Me.GBSammelrechnung.Controls.Add(Me.Label64) + Me.GBSammelrechnung.Controls.Add(Me.Label63) + Me.GBSammelrechnung.Controls.Add(Me.Label45) + Me.GBSammelrechnung.Controls.Add(Me.Button14) + Me.GBSammelrechnung.Enabled = False + Me.GBSammelrechnung.Location = New System.Drawing.Point(10, 340) + Me.GBSammelrechnung.Name = "GBSammelrechnung" + Me.GBSammelrechnung.Size = New System.Drawing.Size(697, 393) + Me.GBSammelrechnung.TabIndex = 14 + Me.GBSammelrechnung.TabStop = False + ' + 'PictureBox6 + ' + Me.PictureBox6.BackgroundImage = CType(resources.GetObject("PictureBox6.BackgroundImage"), System.Drawing.Image) + Me.PictureBox6.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox6.Location = New System.Drawing.Point(151, 149) + Me.PictureBox6.Name = "PictureBox6" + Me.PictureBox6.Size = New System.Drawing.Size(14, 14) + Me.PictureBox6.TabIndex = 105 + Me.PictureBox6.TabStop = False + Me.PictureBox6.Visible = False + ' + 'PictureBox5 + ' + Me.PictureBox5.BackgroundImage = CType(resources.GetObject("PictureBox5.BackgroundImage"), System.Drawing.Image) + Me.PictureBox5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox5.Location = New System.Drawing.Point(151, 132) + Me.PictureBox5.Name = "PictureBox5" + Me.PictureBox5.Size = New System.Drawing.Size(14, 14) + Me.PictureBox5.TabIndex = 104 + Me.PictureBox5.TabStop = False + Me.PictureBox5.Visible = False + ' + 'PictureBox4 + ' + Me.PictureBox4.BackgroundImage = CType(resources.GetObject("PictureBox4.BackgroundImage"), System.Drawing.Image) + Me.PictureBox4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox4.Location = New System.Drawing.Point(151, 115) + Me.PictureBox4.Name = "PictureBox4" + Me.PictureBox4.Size = New System.Drawing.Size(14, 14) + Me.PictureBox4.TabIndex = 103 + Me.PictureBox4.TabStop = False + Me.PictureBox4.Visible = False + ' + 'PictureBox3 + ' + Me.PictureBox3.BackgroundImage = CType(resources.GetObject("PictureBox3.BackgroundImage"), System.Drawing.Image) + Me.PictureBox3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox3.Location = New System.Drawing.Point(151, 98) + Me.PictureBox3.Name = "PictureBox3" + Me.PictureBox3.Size = New System.Drawing.Size(14, 14) + Me.PictureBox3.TabIndex = 102 + Me.PictureBox3.TabStop = False + Me.PictureBox3.Visible = False + ' + 'PictureBox2 + ' + Me.PictureBox2.BackgroundImage = CType(resources.GetObject("PictureBox2.BackgroundImage"), System.Drawing.Image) + Me.PictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox2.Location = New System.Drawing.Point(151, 81) + Me.PictureBox2.Name = "PictureBox2" + Me.PictureBox2.Size = New System.Drawing.Size(14, 14) + Me.PictureBox2.TabIndex = 101 + Me.PictureBox2.TabStop = False + Me.PictureBox2.Visible = False + ' + 'PictureBox1 + ' + Me.PictureBox1.BackgroundImage = Global.SDL.My.Resources.Resources.ok + Me.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox1.Location = New System.Drawing.Point(151, 67) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(14, 14) + Me.PictureBox1.TabIndex = 95 + Me.PictureBox1.TabStop = False + Me.PictureBox1.Visible = False + ' + 'Label4 + ' + Me.Label4.Location = New System.Drawing.Point(171, 132) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(541, 17) + Me.Label4.TabIndex = 100 + Me.Label4.Text = "5. Banküberweisung/Bankspesen berechnen" + ' + 'cbxVorschau + ' + Me.cbxVorschau.AutoSize = True + Me.cbxVorschau.Checked = True + Me.cbxVorschau.CheckState = System.Windows.Forms.CheckState.Checked + Me.cbxVorschau.Location = New System.Drawing.Point(329, 256) + Me.cbxVorschau.Name = "cbxVorschau" + Me.cbxVorschau.Size = New System.Drawing.Size(109, 17) + Me.cbxVorschau.TabIndex = 48 + Me.cbxVorschau.Text = "als PDF anzeigen" + Me.cbxVorschau.UseVisualStyleBackColor = True + ' + 'cbxAbfVerbotdrucken + ' + Me.cbxAbfVerbotdrucken.AutoSize = True + Me.cbxAbfVerbotdrucken.Checked = True + Me.cbxAbfVerbotdrucken.CheckState = System.Windows.Forms.CheckState.Checked + Me.cbxAbfVerbotdrucken.Location = New System.Drawing.Point(166, 256) + Me.cbxAbfVerbotdrucken.Name = "cbxAbfVerbotdrucken" + Me.cbxAbfVerbotdrucken.Size = New System.Drawing.Size(157, 17) + Me.cbxAbfVerbotdrucken.TabIndex = 47 + Me.cbxAbfVerbotdrucken.Text = "Abfertigungsverbot drucken" + Me.cbxAbfVerbotdrucken.UseVisualStyleBackColor = True + ' + 'cbxRechnungsjournaldrucken + ' + Me.cbxRechnungsjournaldrucken.AutoSize = True + Me.cbxRechnungsjournaldrucken.Checked = True + Me.cbxRechnungsjournaldrucken.CheckState = System.Windows.Forms.CheckState.Checked + Me.cbxRechnungsjournaldrucken.Location = New System.Drawing.Point(6, 256) + Me.cbxRechnungsjournaldrucken.Name = "cbxRechnungsjournaldrucken" + Me.cbxRechnungsjournaldrucken.Size = New System.Drawing.Size(154, 17) + Me.cbxRechnungsjournaldrucken.TabIndex = 46 + Me.cbxRechnungsjournaldrucken.Text = "Rechnungsjournal drucken" + Me.cbxRechnungsjournaldrucken.UseVisualStyleBackColor = True + ' + '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. aus RE entfernen" + Me.Button20.UseVisualStyleBackColor = True + ' + 'Label72 + ' + Me.Label72.Location = New System.Drawing.Point(96, 280) + Me.Label72.Name = "Label72" + Me.Label72.Size = New System.Drawing.Size(589, 19) + Me.Label72.TabIndex = 42 + Me.Label72.Text = "* hier wird eine RE-Nr erzeugt, die Rechnungen gelten dann als ""gedruckt"" und kön" & + "nen somit nicht mehr geändert werden." + ' + '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(87, 302) + 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(9, 303) + 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(9, 280) + 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(209, 212) + 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(144, 212) + 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(147, 183) + 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(361, 212) + 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(10, 183) + Me.Button19.Name = "Button19" + Me.Button19.Size = New System.Drawing.Size(121, 49) + Me.Button19.TabIndex = 32 + Me.Button19.Text = "RE.Nr setzen*" + Me.Button19.UseVisualStyleBackColor = True + ' + 'Label70 + ' + Me.Label70.Location = New System.Drawing.Point(171, 149) + Me.Label70.Name = "Label70" + Me.Label70.Size = New System.Drawing.Size(498, 17) + Me.Label70.TabIndex = 30 + Me.Label70.Text = "6. Hängt Mautgesamtbericht an Sammenrechnungen an." + ' + 'cboSachbearbeiter + ' + Me.cboSachbearbeiter._allowedValuesFreiText = Nothing + Me.cboSachbearbeiter._allowFreiText = False + Me.cboSachbearbeiter._value = "" + Me.cboSachbearbeiter.FormattingEnabled = True + Me.cboSachbearbeiter.Location = New System.Drawing.Point(243, 36) + Me.cboSachbearbeiter.Name = "cboSachbearbeiter" + Me.cboSachbearbeiter.Size = New System.Drawing.Size(152, 21) + Me.cboSachbearbeiter.TabIndex = 29 + ' + 'Label67 + ' + Me.Label67.AutoSize = True + Me.Label67.Location = New System.Drawing.Point(148, 36) + Me.Label67.Name = "Label67" + Me.Label67.Size = New System.Drawing.Size(82, 13) + Me.Label67.TabIndex = 28 + Me.Label67.Text = "Sachbearbeiter:" + ' + 'dtRechnungsdatum + ' + Me.dtRechnungsdatum.Format = System.Windows.Forms.DateTimePickerFormat.[Short] + Me.dtRechnungsdatum.Location = New System.Drawing.Point(292, 10) + Me.dtRechnungsdatum.Name = "dtRechnungsdatum" + Me.dtRechnungsdatum.Size = New System.Drawing.Size(103, 20) + Me.dtRechnungsdatum.TabIndex = 26 + ' + 'Label66 + ' + Me.Label66.AutoSize = True + Me.Label66.Location = New System.Drawing.Point(148, 16) + Me.Label66.Name = "Label66" + Me.Label66.Size = New System.Drawing.Size(94, 13) + Me.Label66.TabIndex = 27 + Me.Label66.Text = "Rechnungsdatum:" + ' + 'Label65 + ' + Me.Label65.Location = New System.Drawing.Point(171, 115) + Me.Label65.Name = "Label65" + Me.Label65.Size = New System.Drawing.Size(541, 17) + Me.Label65.TabIndex = 8 + Me.Label65.Text = "4. Porto/Papiere berechnen" + ' + 'Label64 + ' + Me.Label64.Location = New System.Drawing.Point(171, 98) + Me.Label64.Name = "Label64" + Me.Label64.Size = New System.Drawing.Size(541, 17) + Me.Label64.TabIndex = 7 + Me.Label64.Text = "3. Rechnungstext im RK eintragen" + ' + 'Label63 + ' + Me.Label63.Location = New System.Drawing.Point(171, 81) + Me.Label63.Name = "Label63" + Me.Label63.Size = New System.Drawing.Size(541, 17) + Me.Label63.TabIndex = 6 + Me.Label63.Text = "2. Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (" & + "+/-)" + ' + 'Label45 + ' + Me.Label45.Location = New System.Drawing.Point(171, 64) + Me.Label45.Name = "Label45" + Me.Label45.Size = New System.Drawing.Size(530, 17) + Me.Label45.TabIndex = 5 + Me.Label45.Text = "1. Einträge auf Sachbearbeiter ändern." + ' + 'Button14 + ' + 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, 94) + Me.Button14.Name = "Button14" + Me.Button14.Size = New System.Drawing.Size(121, 49) + Me.Button14.TabIndex = 4 + Me.Button14.Text = "Rechnungspos. berechnen" + Me.Button14.UseVisualStyleBackColor = True + ' + 'usrcntlFakturierung + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.BackColor = System.Drawing.Color.White + Me.Controls.Add(Me.Label61) + Me.Controls.Add(Me.GBMautberichte) + Me.Controls.Add(Me.Label44) + Me.Controls.Add(Me.GBSammelrechnung) + Me.Controls.Add(Me.Label3) + Me.Controls.Add(Me.GroupBox1) + Me.Name = "usrcntlFakturierung" + Me.Size = New System.Drawing.Size(1149, 866) + Me.GroupBox1.ResumeLayout(False) + Me.GBMautberichte.ResumeLayout(False) + Me.GBMautberichte.PerformLayout() + CType(Me.MyDatagridview1, System.ComponentModel.ISupportInitialize).EndInit() + Me.GBSammelrechnung.ResumeLayout(False) + Me.GBSammelrechnung.PerformLayout() + CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox5, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox4, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox3, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents btnRechnugnsdaten As System.Windows.Forms.Button + Friend WithEvents btnFakturierung As System.Windows.Forms.Button + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents Label61 As Label + Friend WithEvents GBMautberichte As GroupBox + Friend WithEvents MyDatagridview1 As VERAG_PROG_ALLGEMEIN.MyDatagridview + Friend WithEvents lblAnzahlMautberichte As Label + Friend WithEvents cbxDateMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox + Friend WithEvents Label69 As Label + Friend WithEvents Label68 As Label + Friend WithEvents cbxMautbericht As VERAG_PROG_ALLGEMEIN.MyComboBox + Friend WithEvents Label62 As Label + Friend WithEvents Button18 As Button + Friend WithEvents Label44 As Label + Friend WithEvents GBSammelrechnung As GroupBox + Friend WithEvents cbxVorschau As CheckBox + Friend WithEvents cbxAbfVerbotdrucken As CheckBox + Friend WithEvents cbxRechnungsjournaldrucken As CheckBox + Friend WithEvents Button20 As Button + Friend WithEvents Label72 As Label + Friend WithEvents KdSearchBox3 As VERAG_PROG_ALLGEMEIN.KdSearchBox + Friend WithEvents rbkunde As RadioButton + Friend WithEvents rbAlleKunden As RadioButton + Friend WithEvents txtPloseAnh_Einarbeitung As TextBox + Friend WithEvents Label71 As Label + Friend WithEvents pbPloseAnh_Proz As ProgressBar + Friend WithEvents lblPloseAnh_Proz As Label + Friend WithEvents Button19 As Button + Friend WithEvents Label70 As Label + Friend WithEvents cboSachbearbeiter As VERAG_PROG_ALLGEMEIN.MyComboBox + Friend WithEvents Label67 As Label + Friend WithEvents dtRechnungsdatum As DateTimePicker + Friend WithEvents Label66 As Label + Friend WithEvents Label65 As Label + Friend WithEvents Label64 As Label + Friend WithEvents Label63 As Label + Friend WithEvents Label45 As Label + Friend WithEvents Button14 As Button + Friend WithEvents btnMDMSammelrechnung As Button + Friend WithEvents PictureBox1 As PictureBox + Friend WithEvents Label4 As Label + Friend WithEvents TextBox1 As TextBox + Friend WithEvents Label5 As Label + Friend WithEvents pbMautAnh_Proz As ProgressBar + Friend WithEvents lblMautAnh_Proz As Label + Friend WithEvents PictureBox6 As PictureBox + Friend WithEvents PictureBox5 As PictureBox + Friend WithEvents PictureBox4 As PictureBox + Friend WithEvents PictureBox3 As PictureBox + Friend WithEvents PictureBox2 As PictureBox +End Class diff --git a/SDL/seriendruck/usrCntlFakturierung.resx b/SDL/seriendruck/usrCntlFakturierung.resx new file mode 100644 index 00000000..1fda1b15 --- /dev/null +++ b/SDL/seriendruck/usrCntlFakturierung.resx @@ -0,0 +1,241 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABEhJREFUSEtj + oDZg4WThlrSSdLPOtc53zHaMl5SUZGBnZ4fKUhMwMjCK6IloGhUYZdn32a/wX+Z/0Ge2z0L9eH0rQVVB + QSZ2JqhCKgEBNQFFoyKjnPAj4cdjz8d+jb8U/z/iaMR9z2WeE3XSdByEdYWFGVkYGaHKKQdWTVYF4YfC + j8VdjPsHwiALYezo89HTzWrNHNj42VigyikHDv0OC2POxrwDWYSOgZY+DNoRNMV5urMdVDn5gFOUU0rJ + VynOd7XvBSwW/QHiHx4LPPYDQ6DUpMzEEKqNPMDKw8on5ywXBHT9w+hT0d/QLPsefTr6Rei+0Iuqwaox + XGJcElBt5AMFT4UIYDBtjzkT8zPuQtxfNAuv+G/wn6CdoG3Bp8AnysjMSH78MXMyc0tZSbnZtNksDtsf + 9hJoODiRgC26EPcD6IDbPit9Oo3yjWz4Ffm5gXmTGaqVPMAuwC6il6ZXgx5vsedif4YfDH/kNsdtIlDe + VlRflDo5HpeFkUcj33jM89gqbigux8bNBlVNIeCR4pFX9ldO8F7qfTLyWORHmGUx52N+2/XYrRTRFTFh + 42PjAMYZVAcOwMzBzA2MXHUFDwVLGXsZDS4JLjZ0TeyC7CLghDLVeWvU8ahPyL7z3+u/STNdMwSqFD8A + pSBeOV41rTitYr/1ftNd57jmKnorygKDjpUBqQgU1BA0NKsym4JsESifAfFzyxmWXhKeEqxQpfgBpxin + lEqgSnLI3pBn0Wei30aeiNzlucQzWdxEXBKY1+DJGYeF12IuxBTJe8srsfAQkfKBQckFzJgp7vPdD4KS + d9ylOJAhL4AF73aHCQ5RwKpGjomViZWVl1VAP0u/wXeN70WYZbEXYi/7b/Lv0c3Q1eGR5eGBGokfKLgp + hALjZBuyq0EYaOkHoIErzWvN/cWMxSSAcSoLTO57oXK/gPhp4PbAqUAfO7MLsbMBHUVcTQD2FVLGRbIQ + LA5MfdNdZrnYolkIcswSs0ozL2Aw80KNIg5I20h7ApN5lGWdZQfQoPtAA8F1GZLFD4HVznGQZUD6NUgs + 8kjka5t2m25pW2kzFm4yShFgvuGVMJEwNq0wrXSd6bopeGfwA2RLkTHIUrfZbnvkXOWCQYkNagT5QNZZ + NsCu225Z9MnoD8By8TfQEkQ5eTHuJzDRHAMmnkJ2EXYhqBbKADCIeIGZ29t9nvvSqJNRL4AW/UKy8L7P + ap8Juum6BsBCgHotI25JbgkZBxkHtVC1JGDc7Qa2UX4CE8n3oJ1B64GpMlpYR5ifmZ2Zyq0iKFANUk3x + WOhxEFgYvLZus64EJhQtqBTtALDEsQ/aHnRf3FTcASpEWwBsbQkBLQW1uqiTUJABFxcXg7y8PJupqSm/ + nZ2diL29vSgyBooJm5ub88nKyrIC1VLezgQ2zRk9PT0F6urqVCdNmmQwbdo0Y2Q8efJk3ebmZkVXV1de + CQkJEjM9AwMAOTMC2xlgxuQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABEhJREFUSEtj + oDZg4WThlrSSdLPOtc53zHaMl5SUZGBnZ4fKUhMwMjCK6IloGhUYZdn32a/wX+Z/0Ge2z0L9eH0rQVVB + QSZ2JqhCKgEBNQFFoyKjnPAj4cdjz8d+jb8U/z/iaMR9z2WeE3XSdByEdYWFGVkYGaHKKQdWTVYF4YfC + j8VdjPsHwiALYezo89HTzWrNHNj42VigyikHDv0OC2POxrwDWYSOgZY+DNoRNMV5urMdVDn5gFOUU0rJ + VynOd7XvBSwW/QHiHx4LPPYDQ6DUpMzEEKqNPMDKw8on5ywXBHT9w+hT0d/QLPsefTr6Rei+0Iuqwaox + XGJcElBt5AMFT4UIYDBtjzkT8zPuQtxfNAuv+G/wn6CdoG3Bp8AnysjMSH78MXMyc0tZSbnZtNksDtsf + 9hJoODiRgC26EPcD6IDbPit9Oo3yjWz4Ffm5gXmTGaqVPMAuwC6il6ZXgx5vsedif4YfDH/kNsdtIlDe + VlRflDo5HpeFkUcj33jM89gqbigux8bNBlVNIeCR4pFX9ldO8F7qfTLyWORHmGUx52N+2/XYrRTRFTFh + 42PjAMYZVAcOwMzBzA2MXHUFDwVLGXsZDS4JLjZ0TeyC7CLghDLVeWvU8ahPyL7z3+u/STNdMwSqFD8A + pSBeOV41rTitYr/1ftNd57jmKnorygKDjpUBqQgU1BA0NKsym4JsESifAfFzyxmWXhKeEqxQpfgBpxin + lEqgSnLI3pBn0Wei30aeiNzlucQzWdxEXBKY1+DJGYeF12IuxBTJe8srsfAQkfKBQckFzJgp7vPdD4KS + d9ylOJAhL4AF73aHCQ5RwKpGjomViZWVl1VAP0u/wXeN70WYZbEXYi/7b/Lv0c3Q1eGR5eGBGokfKLgp + hALjZBuyq0EYaOkHoIErzWvN/cWMxSSAcSoLTO57oXK/gPhp4PbAqUAfO7MLsbMBHUVcTQD2FVLGRbIQ + LA5MfdNdZrnYolkIcswSs0ozL2Aw80KNIg5I20h7ApN5lGWdZQfQoPtAA8F1GZLFD4HVznGQZUD6NUgs + 8kjka5t2m25pW2kzFm4yShFgvuGVMJEwNq0wrXSd6bopeGfwA2RLkTHIUrfZbnvkXOWCQYkNagT5QNZZ + NsCu225Z9MnoD8By8TfQEkQ5eTHuJzDRHAMmnkJ2EXYhqBbKADCIeIGZ29t9nvvSqJNRL4AW/UKy8L7P + ap8Juum6BsBCgHotI25JbgkZBxkHtVC1JGDc7Qa2UX4CE8n3oJ1B64GpMlpYR5ifmZ2Zyq0iKFANUk3x + WOhxEFgYvLZus64EJhQtqBTtALDEsQ/aHnRf3FTcASpEWwBsbQkBLQW1uqiTUJABFxcXg7y8PJupqSm/ + nZ2diL29vSgyBooJm5ub88nKyrIC1VLezgQ2zRk9PT0F6urqVCdNmmQwbdo0Y2Q8efJk3ebmZkVXV1de + CQkJEjM9AwMAOTMC2xlgxuQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABEhJREFUSEtj + oDZg4WThlrSSdLPOtc53zHaMl5SUZGBnZ4fKUhMwMjCK6IloGhUYZdn32a/wX+Z/0Ge2z0L9eH0rQVVB + QSZ2JqhCKgEBNQFFoyKjnPAj4cdjz8d+jb8U/z/iaMR9z2WeE3XSdByEdYWFGVkYGaHKKQdWTVYF4YfC + j8VdjPsHwiALYezo89HTzWrNHNj42VigyikHDv0OC2POxrwDWYSOgZY+DNoRNMV5urMdVDn5gFOUU0rJ + VynOd7XvBSwW/QHiHx4LPPYDQ6DUpMzEEKqNPMDKw8on5ywXBHT9w+hT0d/QLPsefTr6Rei+0Iuqwaox + XGJcElBt5AMFT4UIYDBtjzkT8zPuQtxfNAuv+G/wn6CdoG3Bp8AnysjMSH78MXMyc0tZSbnZtNksDtsf + 9hJoODiRgC26EPcD6IDbPit9Oo3yjWz4Ffm5gXmTGaqVPMAuwC6il6ZXgx5vsedif4YfDH/kNsdtIlDe + VlRflDo5HpeFkUcj33jM89gqbigux8bNBlVNIeCR4pFX9ldO8F7qfTLyWORHmGUx52N+2/XYrRTRFTFh + 42PjAMYZVAcOwMzBzA2MXHUFDwVLGXsZDS4JLjZ0TeyC7CLghDLVeWvU8ahPyL7z3+u/STNdMwSqFD8A + pSBeOV41rTitYr/1ftNd57jmKnorygKDjpUBqQgU1BA0NKsym4JsESifAfFzyxmWXhKeEqxQpfgBpxin + lEqgSnLI3pBn0Wei30aeiNzlucQzWdxEXBKY1+DJGYeF12IuxBTJe8srsfAQkfKBQckFzJgp7vPdD4KS + d9ylOJAhL4AF73aHCQ5RwKpGjomViZWVl1VAP0u/wXeN70WYZbEXYi/7b/Lv0c3Q1eGR5eGBGokfKLgp + hALjZBuyq0EYaOkHoIErzWvN/cWMxSSAcSoLTO57oXK/gPhp4PbAqUAfO7MLsbMBHUVcTQD2FVLGRbIQ + LA5MfdNdZrnYolkIcswSs0ozL2Aw80KNIg5I20h7ApN5lGWdZQfQoPtAA8F1GZLFD4HVznGQZUD6NUgs + 8kjka5t2m25pW2kzFm4yShFgvuGVMJEwNq0wrXSd6bopeGfwA2RLkTHIUrfZbnvkXOWCQYkNagT5QNZZ + NsCu225Z9MnoD8By8TfQEkQ5eTHuJzDRHAMmnkJ2EXYhqBbKADCIeIGZ29t9nvvSqJNRL4AW/UKy8L7P + ap8Juum6BsBCgHotI25JbgkZBxkHtVC1JGDc7Qa2UX4CE8n3oJ1B64GpMlpYR5ifmZ2Zyq0iKFANUk3x + WOhxEFgYvLZus64EJhQtqBTtALDEsQ/aHnRf3FTcASpEWwBsbQkBLQW1uqiTUJABFxcXg7y8PJupqSm/ + nZ2diL29vSgyBooJm5ub88nKyrIC1VLezgQ2zRk9PT0F6urqVCdNmmQwbdo0Y2Q8efJk3ebmZkVXV1de + CQkJEjM9AwMAOTMC2xlgxuQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABEhJREFUSEtj + oDZg4WThlrSSdLPOtc53zHaMl5SUZGBnZ4fKUhMwMjCK6IloGhUYZdn32a/wX+Z/0Ge2z0L9eH0rQVVB + QSZ2JqhCKgEBNQFFoyKjnPAj4cdjz8d+jb8U/z/iaMR9z2WeE3XSdByEdYWFGVkYGaHKKQdWTVYF4YfC + j8VdjPsHwiALYezo89HTzWrNHNj42VigyikHDv0OC2POxrwDWYSOgZY+DNoRNMV5urMdVDn5gFOUU0rJ + VynOd7XvBSwW/QHiHx4LPPYDQ6DUpMzEEKqNPMDKw8on5ywXBHT9w+hT0d/QLPsefTr6Rei+0Iuqwaox + XGJcElBt5AMFT4UIYDBtjzkT8zPuQtxfNAuv+G/wn6CdoG3Bp8AnysjMSH78MXMyc0tZSbnZtNksDtsf + 9hJoODiRgC26EPcD6IDbPit9Oo3yjWz4Ffm5gXmTGaqVPMAuwC6il6ZXgx5vsedif4YfDH/kNsdtIlDe + VlRflDo5HpeFkUcj33jM89gqbigux8bNBlVNIeCR4pFX9ldO8F7qfTLyWORHmGUx52N+2/XYrRTRFTFh + 42PjAMYZVAcOwMzBzA2MXHUFDwVLGXsZDS4JLjZ0TeyC7CLghDLVeWvU8ahPyL7z3+u/STNdMwSqFD8A + pSBeOV41rTitYr/1ftNd57jmKnorygKDjpUBqQgU1BA0NKsym4JsESifAfFzyxmWXhKeEqxQpfgBpxin + lEqgSnLI3pBn0Wei30aeiNzlucQzWdxEXBKY1+DJGYeF12IuxBTJe8srsfAQkfKBQckFzJgp7vPdD4KS + d9ylOJAhL4AF73aHCQ5RwKpGjomViZWVl1VAP0u/wXeN70WYZbEXYi/7b/Lv0c3Q1eGR5eGBGokfKLgp + hALjZBuyq0EYaOkHoIErzWvN/cWMxSSAcSoLTO57oXK/gPhp4PbAqUAfO7MLsbMBHUVcTQD2FVLGRbIQ + LA5MfdNdZrnYolkIcswSs0ozL2Aw80KNIg5I20h7ApN5lGWdZQfQoPtAA8F1GZLFD4HVznGQZUD6NUgs + 8kjka5t2m25pW2kzFm4yShFgvuGVMJEwNq0wrXSd6bopeGfwA2RLkTHIUrfZbnvkXOWCQYkNagT5QNZZ + NsCu225Z9MnoD8By8TfQEkQ5eTHuJzDRHAMmnkJ2EXYhqBbKADCIeIGZ29t9nvvSqJNRL4AW/UKy8L7P + ap8Juum6BsBCgHotI25JbgkZBxkHtVC1JGDc7Qa2UX4CE8n3oJ1B64GpMlpYR5ifmZ2Zyq0iKFANUk3x + WOhxEFgYvLZus64EJhQtqBTtALDEsQ/aHnRf3FTcASpEWwBsbQkBLQW1uqiTUJABFxcXg7y8PJupqSm/ + nZ2diL29vSgyBooJm5ub88nKyrIC1VLezgQ2zRk9PT0F6urqVCdNmmQwbdo0Y2Q8efJk3ebmZkVXV1de + CQkJEjM9AwMAOTMC2xlgxuQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAABGdBTUEAALGPC/xhBQAABEhJREFUSEtj + oDZg4WThlrSSdLPOtc53zHaMl5SUZGBnZ4fKUhMwMjCK6IloGhUYZdn32a/wX+Z/0Ge2z0L9eH0rQVVB + QSZ2JqhCKgEBNQFFoyKjnPAj4cdjz8d+jb8U/z/iaMR9z2WeE3XSdByEdYWFGVkYGaHKKQdWTVYF4YfC + j8VdjPsHwiALYezo89HTzWrNHNj42VigyikHDv0OC2POxrwDWYSOgZY+DNoRNMV5urMdVDn5gFOUU0rJ + VynOd7XvBSwW/QHiHx4LPPYDQ6DUpMzEEKqNPMDKw8on5ywXBHT9w+hT0d/QLPsefTr6Rei+0Iuqwaox + XGJcElBt5AMFT4UIYDBtjzkT8zPuQtxfNAuv+G/wn6CdoG3Bp8AnysjMSH78MXMyc0tZSbnZtNksDtsf + 9hJoODiRgC26EPcD6IDbPit9Oo3yjWz4Ffm5gXmTGaqVPMAuwC6il6ZXgx5vsedif4YfDH/kNsdtIlDe + VlRflDo5HpeFkUcj33jM89gqbigux8bNBlVNIeCR4pFX9ldO8F7qfTLyWORHmGUx52N+2/XYrRTRFTFh + 42PjAMYZVAcOwMzBzA2MXHUFDwVLGXsZDS4JLjZ0TeyC7CLghDLVeWvU8ahPyL7z3+u/STNdMwSqFD8A + pSBeOV41rTitYr/1ftNd57jmKnorygKDjpUBqQgU1BA0NKsym4JsESifAfFzyxmWXhKeEqxQpfgBpxin + lEqgSnLI3pBn0Wei30aeiNzlucQzWdxEXBKY1+DJGYeF12IuxBTJe8srsfAQkfKBQckFzJgp7vPdD4KS + d9ylOJAhL4AF73aHCQ5RwKpGjomViZWVl1VAP0u/wXeN70WYZbEXYi/7b/Lv0c3Q1eGR5eGBGokfKLgp + hALjZBuyq0EYaOkHoIErzWvN/cWMxSSAcSoLTO57oXK/gPhp4PbAqUAfO7MLsbMBHUVcTQD2FVLGRbIQ + LA5MfdNdZrnYolkIcswSs0ozL2Aw80KNIg5I20h7ApN5lGWdZQfQoPtAA8F1GZLFD4HVznGQZUD6NUgs + 8kjka5t2m25pW2kzFm4yShFgvuGVMJEwNq0wrXSd6bopeGfwA2RLkTHIUrfZbnvkXOWCQYkNagT5QNZZ + NsCu225Z9MnoD8By8TfQEkQ5eTHuJzDRHAMmnkJ2EXYhqBbKADCIeIGZ29t9nvvSqJNRL4AW/UKy8L7P + ap8Juum6BsBCgHotI25JbgkZBxkHtVC1JGDc7Qa2UX4CE8n3oJ1B64GpMlpYR5ifmZ2Zyq0iKFANUk3x + WOhxEFgYvLZus64EJhQtqBTtALDEsQ/aHnRf3FTcASpEWwBsbQkBLQW1uqiTUJABFxcXg7y8PJupqSm/ + nZ2diL29vSgyBooJm5ub88nKyrIC1VLezgQ2zRk9PT0F6urqVCdNmmQwbdo0Y2Q8efJk3ebmZkVXV1de + CQkJEjM9AwMAOTMC2xlgxuQAAAAASUVORK5CYII= + + + \ No newline at end of file diff --git a/SDL/seriendruck/usrCntlFakturierung.vb b/SDL/seriendruck/usrCntlFakturierung.vb new file mode 100644 index 00000000..dd85bc32 --- /dev/null +++ b/SDL/seriendruck/usrCntlFakturierung.vb @@ -0,0 +1,1445 @@ +Imports System.IO +Imports Microsoft.Office.Interop +Imports VERAG_PROG_ALLGEMEIN + +Public Class usrcntlFakturierung + + Dim FMZOLL_SQL As New FMZOLL_SQL + Dim PathMautberichte = "" + + Private Sub Button1_Click(sender As Object, e As EventArgs) Handles btnFakturierung.Click + Me.Cursor = Cursors.WaitCursor + Dim f As New SDL.frmAbrechnungsMaske + f.Show(Me) + Me.Cursor = Cursors.Default + End Sub + + Private Sub Button2_Click(sender As Object, e As EventArgs) + Dim f As New SDL.frmRechnungenSuche + f.Show(Me) + End Sub + + + + Private Sub usrCntlFakturierung_Load(sender As Object, e As EventArgs) Handles Me.Load + + KdSearchBox3.initKdBox(Me.FindForm) + + cbxMautbericht.Items.Clear() + cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht", "Gesamtbericht_EXCEL")) + cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautbericht AT DE MSE UTA", "Lieferantenbericht_PDF")) + cbxMautbericht.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Mautsummenbericht als CSV-Datei", "Gesamtbericht_CSV")) + + cbxDateMautbericht.Items.Clear() + cbxDateMautbericht.fillWithSQL("select distinct(cast(BillingDate as Date)) From tblMautbericht order by cast(BillingDate as Date) desc", False, "FMZOLL") + + cboSachbearbeiter.fillWithSQL("select distinct(UPPER(sachbearbeiter)) from Rechnungsausgang where Sammelrechnung=6 and Firma_ID=19", False, "FMZOLL", True) + + 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 countCSV = 0 + Dim countPDF = 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") Then countCSV += 1 + If f.ToString.ToLower.EndsWith("_maut.pdf") Then countPDF += 1 + Next + End If + End If + lblAnzahlMautberichte.Text = countCSV + countPDF & "x Mautberichte (" & countCSV & "x CSV " & countPDF & "x PDF )" + + + + If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("MDM_FAKTURIERUNG", "SDL") = 0 Then + + btnMDMSammelrechnung.Enabled = True + GBMautberichte.Enabled = True + GBSammelrechnung.Enabled = True + btnFakturierung.Enabled = True + btnRechnugnsdaten.Enabled = True + + + + End If + + + End Sub + + Private Sub Button20_Click(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 + + Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click + + Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL + + Dim ok As Boolean = True + Dim Sachbearbeiter = cboSachbearbeiter._value + Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) + + PictureBox1.Visible = False + PictureBox2.Visible = False + PictureBox3.Visible = False + PictureBox4.Visible = False + PictureBox5.Visible = False + PictureBox6.Visible = 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 + + If PathMautberichte = "" OrElse Not Directory.Exists(PathMautberichte) Then + MsgBox("Pfad zu den Mautberichten nicht vorhanden!" & vbNewLine & "Vorang wird abgebrochen!") + Exit Sub + ElseIf Directory.Exists(PathMautberichte) Then + + If Directory.GetFiles(PathMautberichte) Is Nothing Then + MsgBox("Pfad " & PathMautberichte & " enthält keine Daten!" & vbNewLine & "Vorang wird abgebrochen!") + Exit Sub + End If + + + End If + + + '---------------DONE + ' ' Sachbearbeiter im RK eintragen. + '140 Call SysCmd(acSysCmdSetStatus, "Sachbearbeiter im RK eintragen...") + '150 Call ReDruSchnSachbearbeiter + 'Update [Rechnungsausgang] SET [Sachbearbeiter] = @Sachbearbeiter WHERE([Firma_ID] = 1 Or [Firma_ID] = 15) And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] <> @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0); + + + '---------------DONE + ' ' Firma_ID im RK eintragen. + '180 Call SysCmd(acSysCmdSetStatus, "Firma_ID im RK eintragen...") + '190 Call ReDruSchnFirma_ID + 'Update [Rechnungsausgang] SET [Firma_ID] = @Firma_ID WHERE [Firma_ID] <> @Firma_ID And [Status] = 0 And [Sammelrechnung] = 6 And [Sachbearbeiter] = @Sachbearbeiter And (SteuerpflichtigerGesamtbetrag <> 0 Or SteuerfreierGesamtbetrag <> 0); + + + ' ' Rechnung oder Gutschrift im RK eintragen. + '220 Call SysCmd(acSysCmdSetStatus, "Re/Gu im RK eintragen...") + '230 Call ReDruSumReGu + + '---------------DONE + ' ' Rechnungstext im RK eintragen. + '260 Call SysCmd(acSysCmdSetStatus, "Text im RK eintragen...") + '270 Call Rechnungstext + + '---------------DONE + ' ' Porto/Papiere berechnen. + '300 Call SysCmd(acSysCmdSetStatus, "Porto/Papiere berechnen...") + '310 Call ReDruSchnPP + + '---------------DONE + ' ' Banküberweisung/Bankspesen berechnen + '340 Call SysCmd(acSysCmdSetStatus, "Banküberweisung/Bankspesen berechnen...") + '350 Call ReDruSchnBB + + + ' ' Druckinformationen im RK eintragen----- ALTER.......... + '380 Call SysCmd(acSysCmdSetStatus, "Druckinformationen im RK eintragen...") + '390 varDatumZeit = Now 'Druckdatum/Uhrzeit merken. + ' ' Parameter übergeben: Firma_ID, Status, Sammelrechnung, Sachbearbeiter, Buchungsjahr, Rechnungsdatum, DruckDatumZeit. + '400 strParameter = ParameterBereitstellen(Me![Firma_ID], 0, 6, Me![fldSachbearbeiter], Year(Me!fldRechnungsDatum), Me![fldRechnungsDatum], varDatumZeit) + '410 Set qdf = dbs.CreateQueryDef("") + + + ok = SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='" & Sachbearbeiter & "' where Sammelrechnung=6 and Firma_ID=19 and UPPER([Sachbearbeiter])<>'" & Sachbearbeiter & "' and Abfertigungsdatum = '" & dtRechnungsdatum.Value & "'", "FMZOLL") + + showPic(ok, PictureBox1) + 'If Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then Exit Sub + + If Not ok Then Exit Sub + + Dim dtREGU As DataTable = SQL.loadDgvBySql("SELECT [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], isnull([Steuersatz %],0) as [Steuersatz %], cast([Lastschrift] as bit) as Lastschrift, Sum([SteuerpflichtigerGesamtbetrag]+[SteuerfreierGesamtbetrag]) AS Sammelrechnungsbetrag + FROM Rechnungsausgang + WHERE [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + GROUP BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift]", "FMZOLL") + + + 'RECHNUNG ODER GUTSCHRIFT + 'Rechnung oder Gutschrift im RK eintragen, abhängig vom Sammelrechnungsbetrag (+/-) + + If dtREGU.Rows.Count > 0 Then + + For Each r In dtREGU.Rows + + Dim BelegartenNr As Integer + Dim BelegartenKz As String + Dim BelegartenBez As String + Dim Vorzeichen As String + + If r("Sammelrechnungsbetrag") >= 0 Then + + BelegartenNr = 70 + BelegartenKz = "AR" + BelegartenBez = "Rechnung" + Vorzeichen = "+" + + Else + BelegartenNr = 71 + BelegartenKz = "AG" + BelegartenBez = "Gutschrift" + Vorzeichen = "-" + + End If + + Dim steuersatz As Double = Math.Floor(r("Steuersatz %")) + + ok = SQL.doSQL("UPDATE [Rechnungsausgang] SET [BelegartenNr] = " & BelegartenNr & ", [BelegartenKz] = '" & BelegartenKz & "' , [BelegartenBez] = '" & BelegartenBez & "' , [Vorzeichen] = '" & Vorzeichen & "' + WHERE [Firma_ID] = 19 AND [Status] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter])= '" & Sachbearbeiter & "' AND [RechnungsKundenNr] = " & r("RechnungsKundenNr") & " AND [Währungscode] = '" & r("Währungscode") & "' AND [Steuersatz %] = " & steuersatz & " AND [Lastschrift] = " & IIf(r("Lastschrift"), 1, 0) & "AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "'", "FMZOLL") + + + If Not ok Then MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub + + Next + showPic(ok, PictureBox2) + Else + showPic(ok, PictureBox2) + MsgBox("Rechnungsdruck wird abgebrochen." & vbCrLf & "Rechnungen/Gutschriften nicht gefunden.") : Exit Sub + + End If + + Dim dtSammelrechnungen As New DataTable + + 'Rechnungstext im RK eintragen + showPic(setRechnungstext(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen), PictureBox3) + + ' Porto/Papiere berechnen. + showPic(PortoPapiere(Sachbearbeiter, rechnungsdatum), PictureBox4) + + 'Berechnet Banküberweisung/Bankspesen. + showPic(Bankspesen(Sachbearbeiter, rechnungsdatum), PictureBox5) + + 'Gesamtmautberichte an Sammelrechnung anhängen + Dim okMaut As Boolean = False + okMaut = setMautgesamtberichtInRechnung(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) + + showPic(okMaut, PictureBox6) + + If Not okMaut Then + MsgBox("Fehler beim Setzen der Gesamtmautberichte") + End If + + + End Sub + + Private Function PortoPapiere(Sachbearbeiter As String, rechnungsdatum As Date) As Boolean + + + ' Die Abfrage ermittelt aus den Rechnungspositonen, + ' das Vorkommen (Anzahl Porto/Papiere) pro RechnungsKundenNr + ' Status=0, Sammelrechnung=6, LeistungsNr=440. + Dim isSet As Boolean = False + Dim sqlString = "SELECT + Rechnungsausgang.Firma_ID, + Rechnungsausgang.Status, + Rechnungsausgang.Sammelrechnung, + Rechnungsausgang.Sachbearbeiter, + Rechnungsausgang.RechnungsKundenNr, + Rechnungsausgang.BelegartenNr, + Rechnungsausgang.Währungscode, + isnull(Rechnungsausgang.[Steuersatz %],0) as [Steuersatz %], + cast(Rechnungsausgang.Lastschrift as bit) as Lastschrift, + SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) AS AnzahlPP, + SUM(CASE WHEN LeistungsNr = 440 THEN 0 ELSE SteuerpflichtigerBetrag + SteuerfreierBetrag END) AS BetragExclusivPP + FROM + Rechnungsausgang + INNER JOIN + RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID + WHERE + Rechnungsausgang.Status = 0 + AND Rechnungsausgang.Sammelrechnung = 6 + AND UPPER(Rechnungsausgang.Sachbearbeiter) = '" & Sachbearbeiter & "' + AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + + GROUP BY + Rechnungsausgang.Firma_ID, + Rechnungsausgang.Status, + Rechnungsausgang.Sammelrechnung, + Rechnungsausgang.Sachbearbeiter, + Rechnungsausgang.RechnungsKundenNr, + Rechnungsausgang.BelegartenNr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.[Steuersatz %], + Rechnungsausgang.Lastschrift + HAVING + SUM(CASE WHEN LeistungsNr = 440 THEN Anzahl ELSE 0 END) > 0 + ORDER BY + Rechnungsausgang.Firma_ID, + Rechnungsausgang.Status, + Rechnungsausgang.Sammelrechnung, + Rechnungsausgang.Sachbearbeiter, + Rechnungsausgang.RechnungsKundenNr, + Rechnungsausgang.BelegartenNr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.[Steuersatz %], + Rechnungsausgang.Lastschrift" + + Dim dtPP As DataTable = (New SQL).loadDgvBySql(sqlString, "FMZOLL") + + If dtPP.Rows.Count > 0 Then + + For Each r In dtPP.Rows + + Dim intZlr As Integer = 0 + + ' Bei BetragExclusivPP kleiner als 150€ wird 1x P.P. verrechnet, bei grösser/gleich 150€ wird kein P.P. verrechnet. + ' Zähler auf die Anzahl der P.P. Löschungen einstellen. + + If Not IsDBNull(r("BetragExclusivPP")) AndAlso r("BetragExclusivPP") > 0 Then + + If r("BetragExclusivPP") < 150 Then + intZlr = r("AnzahlPP") - 1 + Else + intZlr = r("AnzahlPP") + End If + Else + If (0 - r("BetragExclusivPP")) < 150 Then + intZlr = r("AnzahlPP") - 1 + Else + intZlr = r("AnzahlPP") - 1 + End If + End If + If intZlr > 0 Then + + Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2) + Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".") + + ' Die Abfrage liest in der Tabelle Rechnungsausgang, + ' passend zu den durch die vorherige Abfrage bereitgestellten Parametern. + + Dim sqlStringRechnungen As String = "Select DISTINCT + Rechnungsausgang.OffertenNr, + Rechnungsausgang.RK_ID, + Rechnungsausgang.SteuerpflichtigerGesamtbetrag, + Rechnungsausgang.SteuerfreierGesamtbetrag, + Rechnungsausgang.upsize_ts + FROM Rechnungsausgang + WHERE + Rechnungsausgang.Firma_ID = " & r("Firma_ID") & " + And Rechnungsausgang.Status = " & r("Status") & " + And Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & " + And Rechnungsausgang.UPPER(Sachbearbeiter) = '" & Sachbearbeiter & "' + And Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & " + And Rechnungsausgang.BelegartenNr = " & r("BelegartenNr") & " + And Rechnungsausgang.Währungscode = '" & r("Währungscode") & "' + And Rechnungsausgang.[Steuersatz %] = " & SteuersatzString & " + And Rechnungsausgang.Lastschrift = " & IIf(r("Lastschrift"), 1, 0) & " + AND cast(Rechnungsausgang.Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + ORDER by + Rechnungsausgang.OffertenNr" + + + + + Dim dtRechnungen As DataTable = (New SQL).loadDgvBySql(sqlStringRechnungen, "FMZOLL") + + If dtRechnungen.Rows.Count > 0 Then + + For Each re In dtRechnungen.Rows + + + + Dim dtREPOSANZ As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing], Anzahl, SteuerpflichtigerBetrag, SteuerfreierBetrag,upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 440", "FMZOLL") + + If dtREPOSANZ.Rows.Count > 0 Then + + Dim stgesBetr = re("SteuerpflichtigerGesamtbetrag") + Dim stfregesBetr = re("SteuerfreierGesamtbetrag") + + Dim RECHNUNG As New cRechnungsausgang(re("RK_ID")) + + For Each row In dtREPOSANZ.Rows + + intZlr = intZlr - row("Anzahl") + + If Not IsDBNull(row("SteuerpflichtigerBetrag")) AndAlso IsNumeric(row("SteuerpflichtigerBetrag")) Then stgesBetr = stgesBetr - CDbl(row("SteuerpflichtigerBetrag")) + If Not IsDBNull(row("SteuerfreierBetrag")) AndAlso IsNumeric(row("SteuerfreierBetrag")) Then stfregesBetr = stfregesBetr - CDbl(row("SteuerfreierBetrag")) + + If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, row("LeistungsNr"), row("Steuerpflichtig"), row("LeistungsBez"), row("IndexZkteing")) Then + RECHNUNG.SteuerfreierGesamtbetrag = stfregesBetr + RECHNUNG.SteuerpflichtigerGesamtbetrag = stgesBetr + isSet = RECHNUNG.SAVE(False) + End If + + If intZlr = 0 Then Exit For + + Next + End If + + + + Next + + End If + End If + + + + + + + Next + + Else + isSet = True + + End If + + Return isSet + + End Function + + Private Function setRechnungstext(Sachbearbeiter As String, rechnungsdatum As Date, ByRef sammelRechnungen As DataTable) As Boolean + + Dim varText As String = "" + Dim varNettozahlungsziel As Integer = 0 + Dim strFälligkeitsdatum As String + Dim strZahlbar As String + + Dim ok As Boolean = False + + Dim dtSelectedSammelrechnungen As DataTable = (New SQL).loadDgvBySql("SELECT [Firma_ID], [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] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]", "FMZOLL") + Try + + + If dtSelectedSammelrechnungen.Rows.Count > 0 Then + sammelRechnungen = dtSelectedSammelrechnungen + For Each rowRE In dtSelectedSammelrechnungen.Rows + + Select Case rowRE("BelegartenNr") + + Case 70 'RECHNUNG + If Not rowRE("Vorkasse") Then + If rowRE("Lastschrift") Then + varText = varText & "Der Rechnungsbetrag wurde durch erteilten Abbuchungsauftrag eingezogen." & vbCrLf + Else + If Not IsDBNull(rowRE("RechnungsKundenNr")) Then + 'Zahlungsziel aus Kundenstamm. + Dim ZZ = (New SQL).getValueTxtBySql("SELECT Kunden.Zahlungsziel from Kunden WHERE Kunden.KundenNr=" & rowRE("RechnungsKundenNr") & " AND Kunden.Zahlungsziel Is Not Null", "FMZOLL") + If ZZ <> "" AndAlso IsNumeric(ZZ) Then + varNettozahlungsziel = ZZ + strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") + End If + End If + + 'Zahlungsziel aus Offertenstamm. + If strFälligkeitsdatum = "" Then + If Not IsDBNull(rowRE("OffertenNr")) Then + Dim ZZOffert = (New SQL).getValueTxtBySql("SELECT Offertenstamm.Zahlungsziel FROM Offertenstamm WHERE Offertenstamm.OffertenNr = " & rowRE("OffertenNr") & " AND Offertenstamm.Zahlungsziel IS NOT NULL", "FMZOLL") + If ZZOffert <> "" AndAlso IsNumeric(ZZOffert) Then + varNettozahlungsziel = ZZOffert + strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") + End If + End If + + End If + + 'Zahlungsziel ermitteln. + If strFälligkeitsdatum = "" Then + If Not IsDBNull(rowRE("RK_ID")) Then + 'Zahlungsziel bei Kreditaufwendungen. + Dim ZZRKID = (New SQL).getValueTxtBySql("Select Case [Preis], [Anzahl] From [RechnungsausgangPositionen] Where [RK_ID] = " & rowRE("RK_ID") & " And [LeistungsNr] = 750 And [BerechnungsartNr] = 9", "FMZOLL") + If ZZRKID <> "" Then + strZahlbar = "Zahlbar innerhalb 10 Tagen abzüglich Pos. 750; ab 10 Tagen netto fällig." + Else + varNettozahlungsziel = 25 + strFälligkeitsdatum = DateAdd("d", varNettozahlungsziel, dtRechnungsdatum.Value).ToString("dd.MM.yyyy") + End If + End If + + End If + + + 'Fälligkeitstext in Landessprache + If strFälligkeitsdatum <> "" Then strZahlbar = "Rechnung zahlbar spätestens bis " & strFälligkeitsdatum & "!" + + If Not IsDBNull(rowRE("RechnungsLandKz")) Then + + Dim ZZRLandKZ = (New SQL).getValueTxtBySql("SELECT tblZahlungszieltexte.Text FROM tblZahlungszieltexte WHERE tblZahlungszieltexte.LandKz='" & rowRE("RechnungsLandKz") & "' AND tblZahlungszieltexte.Text Is Not Null", "FMZOLL") + If ZZRLandKZ <> "" Then + strZahlbar = ZZRLandKZ & " " & strFälligkeitsdatum & "!" + End If + + End If + + varText &= strZahlbar & vbCrLf + + End If + End If + + ' Text bei Zoll oder EUSt drucken + Dim Zoll = (New SQL).getValueTxtBySql("Select LeistungsNr From dbo.RechnungsausgangPositionen Where RK_ID = " & rowRE("RK_ID") & " And LeistungsNr In (10, 60, 70)", "FMZOLL") + If Not IsDBNull(Zoll) AndAlso Zoll <> "" Then + varText = varText & "Alle Zollbelege bitte sofort auf Richtigkeit prüfen da Einspruch gemäß § 355 AO nur 1 Monat nach Datum des Zollbescheides möglich." & vbCrLf + End If + + Case 71 'GUTSCHRIFT + If rowRE("Lastschrift") Then + varText = varText & "Der Gutschriftsbetrag wurde mit erteilten Abbuchungsauftrag verrechnet." & vbCrLf + End If + End Select + + ok = (New SQL).doSQL("Update [Rechnungsausgang] Set [Text] = '" & varText & "', [Nettozahlungsziel] = " & varNettozahlungsziel & " WHERE [RK_ID] = " & rowRE("RK_ID"), "FMZOLL") + If Not ok Then MsgBox("Fehler") : Return False + + varText = "" + varNettozahlungsziel = 0 + strFälligkeitsdatum = "" + + Next + End If + + Return ok + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + + Return False + + End Function + + + Private Function Bankspesen(Sachbearbeiter As String, rechnungsdatum As Date) + + Dim isSet As Boolean = False + + Dim sqlBB = " Select Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift + From dbo.Rechnungsausgang + Where Status = 0 + And Sammelrechnung = 6 + And UPPER([Sachbearbeiter]) ='" & Sachbearbeiter & "' + AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + Group By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift + Order By Firma_ID, Status, Sammelrechnung, Sachbearbeiter, RechnungsKundenNr, BelegartenNr, Währungscode, [Steuersatz %], Lastschrift" + + + Dim dtBB As DataTable = (New SQL).loadDgvBySql(sqlBB, "FMZOLL") + + Try + + + + If dtBB.Rows.Count > 0 Then + + For Each r In dtBB.Rows + 'spSelectReDruSchnSumBS415 + Dim steuersatz As Double = Math.Round(r("Steuersatz %"), 2) + Dim SteuersatzString As String = steuersatz.ToString.Replace(",", ".") + + Dim sum As DataTable = (New SQL).loadDgvBySql("SELECT ISNULL(SUM(dbo.RechnungsausgangPositionen.Preis * dbo.RechnungsausgangPositionen.Anzahl),0) AS [Summe von Preis] + FROM dbo.Rechnungsausgang INNER JOIN + dbo.RechnungsausgangPositionen ON dbo.Rechnungsausgang.RK_ID = dbo.RechnungsausgangPositionen.RK_ID INNER JOIN + dbo.Leistungen ON dbo.RechnungsausgangPositionen.LeistungsNr = dbo.Leistungen.LeistungsNr + WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ") + AND (dbo.Rechnungsausgang.Status = " & r("Status") & ") + AND (dbo.Rechnungsausgang.Sammelrechnung = " & r("Sammelrechnung") & ") + AND (UPPER(dbo.Rechnungsausgang.[Sachbearbeiter]) = '" & r("Sachbearbeiter") & "') + AND (dbo.Rechnungsausgang.RechnungsKundenNr = " & r("RechnungsKundenNr") & ") + AND (dbo.Rechnungsausgang.BelegartenNr =" & r("BelegartenNr") & ") + AND (dbo.Rechnungsausgang.Währungscode = '" & r("Währungscode") & "') + AND (dbo.Rechnungsausgang.[Steuersatz %] =" & SteuersatzString & ") + AND (dbo.Rechnungsausgang.Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ") + AND (dbo.Leistungen.BS415 = 1)", "FMZOLL",) + If sum.Rows.Count > 0 Then + + For Each rowsum In sum.Rows + + Dim sumCurrenRow As Double = rowsum("Summe von Preis") + + If sumCurrenRow <> 0 Then + + Dim dtBankspesen As DataTable = (New SQL).loadDgvBySql("SELECT KundenNr, [Bankspesen %], [Bankspesen Mindestbetrag] FROM dbo.Kunden where KundenNr = " & r("RechnungsKundenNr"), "FMZOLL") + + If dtBankspesen.Rows.Count > 0 Then + + For Each rowBS In dtBankspesen.Rows + + If rowBS("Bankspesen %") = 0 And rowBS("Bankspesen Mindestbetrag") = 0 Then + + Else + + Dim query As String = "SELECT DISTINCT OffertenNr, RK_ID, SteuerpflichtigerGesamtbetrag, SteuerfreierGesamtbetrag, upsize_ts FROM Rechnungsausgang + WHERE (dbo.Rechnungsausgang.Firma_ID = " & r("Firma_ID") & ") + AND (Status = " & r("Status") & ") + AND (Sammelrechnung = " & r("Sammelrechnung") & ") + AND (UPPER([Sachbearbeiter]) = '" & r("Sachbearbeiter") & "') + AND (RechnungsKundenNr = " & r("RechnungsKundenNr") & ") + AND (BelegartenNr =" & r("BelegartenNr") & ") + AND (Währungscode = '" & r("Währungscode") & "') + AND ([Steuersatz %] =" & SteuersatzString & ") + AND (Lastschrift =" & IIf(r("Lastschrift"), 1, 0) & ") + ORDER BY OffertenNr" + + Dim dtRechnung As DataTable = (New SQL).loadDgvBySql(query, "FMZOLL") + + If dtRechnung.Rows.Count > 0 Then + + For Each re In dtRechnung.Rows + + Dim steuerpflichtigerGesamtbetrag As Double = CDbl(re("SteuerpflichtigerGesamtbetrag")) + Dim steuerfreiegerGesamtbetrag As Double = CDbl(re("SteuerfreierGesamtbetrag")) + + Dim dt415 As DataTable = (New SQL).loadDgvBySql("Select [RK_ID], [LeistungsNr], cast([Steuerpflichtig] as bit) as Steuerpflichtig, [LeistungsBez],[IndexZkteing],SteuerpflichtigerBetrag, SteuerfreierBetrag, upsize_ts From RechnungsausgangPositionen Where RechnungsausgangPositionen.RK_ID = " & re("RK_ID") & " And RechnungsausgangPositionen.LeistungsNr = 415", "FMZOLL") + + If dt415.Rows.Count > 0 Then + + For Each r415 In dt415.Rows + + If Not IsDBNull(r415("SteuerpflichtigerBetrag")) AndAlso IsNumeric(r415("SteuerpflichtigerBetrag")) Then steuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag - CDbl(r415("SteuerpflichtigerBetrag")) + If Not IsDBNull(r415("SteuerfreierBetrag")) AndAlso IsNumeric(r415("SteuerfreierBetrag")) Then steuerfreiegerGesamtbetrag = steuerfreiegerGesamtbetrag - CDbl(r415("SteuerfreierBetrag")) + + Dim RECHNUNG As New cRechnungsausgang(re("RK_ID")) + + If RECHNUNG.DELETE_POSITIONEN(RECHNUNG.RK_ID, r415("LeistungsNr"), r415("Steuerpflichtig"), r415("LeistungsBez"), r415("IndexZkteing")) Then + RECHNUNG.SteuerfreierGesamtbetrag = steuerfreiegerGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag = steuerpflichtigerGesamtbetrag + isSet = RECHNUNG.SAVE(False) + End If + + + + Next + + + + End If + + + Next + + + If sumCurrenRow > 0 Then + Dim RElastEntry As DataRow = dtRechnung.Rows(dtRechnung.Rows.Count - 1) + + Dim NEWPOS As New cRechnungsausgangPositionen(RElastEntry("RK_ID")) + NEWPOS.Anzahl = 1 + NEWPOS.LeistungsNr = 415 + If steuersatz = 0 Then + NEWPOS.Steuerpflichtig = False + Else + Dim sql As New SQL + NEWPOS.Steuerpflichtig = (New VERAG_PROG_ALLGEMEIN.SQL).DLookup("Steuerpflichtig", "Leistungen", "LeistungsNr= 415", "FMZOLL") + End If + NEWPOS.LeistungsBez = "Überweisungs/Bankspesen" + + Dim preis As Double = 0 + If rowBS("Bankspesen %") > 0 Then + + If sumCurrenRow > 0 Then + + preis = Math.Floor(sumCurrenRow * rowBS("Bankspesen %") + 0.5) + Else + preis = Math.Floor(0 - sumCurrenRow * rowBS("Bankspesen %") + 0.5) + + End If + Else + preis = 0 + End If + + If preis < rowBS("Bankspesen Mindestbetrag") Then + preis = rowBS("Bankspesen Mindestbetrag") + End If + + If sumCurrenRow < 0 Then + preis = 0 - preis + End If + + Dim RECHNUNG As New cRechnungsausgang(RElastEntry("RK_ID")) + + If NEWPOS.Steuerpflichtig Then + NEWPOS.SteuerpflichtigerBetrag = preis + RECHNUNG.SteuerpflichtigerGesamtbetrag = RECHNUNG.SteuerpflichtigerGesamtbetrag + preis + + Else + NEWPOS.SteuerfreierBetrag = preis + RECHNUNG.SteuerfreierGesamtbetrag = RECHNUNG.SteuerfreierGesamtbetrag + preis + + End If + + NEWPOS.Preis = preis + If NEWPOS.INSERT(RElastEntry("RK_ID")) Then RECHNUNG.SAVE(False) + + + + End If + + End If + + End If + + Next + + End If + End If + + Next + + Else + isSet = True + + End If + + + Next + + Else + isSet = True + + End If + + Return isSet + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + + Return False + + End Function + + 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 + + End If + If Directory.Exists(PathMautberichte) Then + For Each f In Directory.GetFiles(PathMautberichte) + If f.Contains("_Maut.csv") Then + Dim FileCSV = New FileInfo(f) + If FileCSV.Name.Length > 10 Then + Dim KundenNr = FileCSV.Name.ToString.Substring(0, 6) + 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) + attachmentIsSet = AddAttachementToRE(FileCSV.FullName, KundenNr, RECHNUNG, rechnungsdatum) + End If + + End If + + + 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) + attachmentIsSet = AddAttachementToRE(FilePDF.FullName, KundenNr, RECHNUNG, rechnungsdatum) + End If + End If + End If + Next + + End If + + Return attachmentIsSet + + Catch ex As SystemException + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + + Return False + + End Function + + 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! -> ist DBteschnisch unterbunden mit PrimaryKey-Einschränkung!!! + + If Not IO.File.Exists(pathFile) Then Return False + + Dim fi As New System.IO.FileInfo(pathFile) + + Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("MDM", "GESAMTBERICHT", rechnungsdatum.ToString("ddMMyyyy"), kdNr, "", fi.Name, kdNr) + If Not DS.uploadDataToDATENSERVER(pathFile, fi.Name, fi.Extension,,,, True) Then + MsgBox("Fehler beim Speichern: Datenserver! KDNR:" & kdNr) + Return False + End If + If CInt(DS.da_id) <= 0 Then + MsgBox("Keine DocId!") + Return False + End If + Dim da_id = DS.da_id + Dim destPath = DS.GET_TOP1_PATH + + If RECHNUNG IsNot Nothing Then + RECHNUNG.ANHAENGE.Clear() + Dim ANH As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge + ANH.dsId = CInt(DS.da_id) + ANH.Bezeichnung = DS.da_name + RECHNUNG.ANHAENGE.Add(ANH) + Return RECHNUNG.SAVE_ANHAENGE(RECHNUNG.RK_ID, False, False) + Else + MsgBox("Rechnung nicht initialisiert.") + Return False + End If + + End Function + + Private Function setStatus2(Sachbearbeiter As String, rechnungsdatum As Date, dtSammelRechnugen As DataTable) As Boolean + + Dim cnt = 0 + + Dim reIsSet As Boolean = False + If dtSammelRechnugen.Rows.Count > 0 Then + For Each re In dtSammelRechnugen.Rows + + reIsSet = cFakturierung.doSAMMELRechnungsDruck(19, 6, rechnungsdatum, rechnungsdatum, "", False, False, re("RechnungsKundenNr"), 7, , , , Nothing, , ,,, ,, ) + + If Not reIsSet Then + Return reIsSet + End If + + 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() + + 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 + + + End Function + + Private Sub Button19_Click(sender As Object, e As EventArgs) Handles Button19.Click + Dim Sachbearbeiter = cboSachbearbeiter._value + Dim rechnungsdatum As Date = CDate(dtRechnungsdatum.Text) + Dim rechnungsstatus As Integer = 0 + 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 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 Rechnungsnummern setzen?" & 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 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] = 0 AND [Sammelrechnung] = 6 AND UPPER([Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' + ORDER BY [Firma_ID], [Status], [Sammelrechnung], [Sachbearbeiter], [RechnungsKundenNr], [Währungscode], [Steuersatz %], [Lastschrift], [RK_ID]" + + + Dim dtSammelrechnungen As DataTable = (New SQL).loadDgvBySql(SQLString, "FMZOLL") + + If dtSammelrechnungen.Rows.Count > 0 Then + + For Each rowSARE In dtSammelrechnungen.Rows + + If Not setStatus2(Sachbearbeiter, rechnungsdatum, dtSammelrechnungen) Then + MsgBox("Fehler beim Setzen der Rechnungsnummer" & vbNewLine & "Vorgang wird abgebrochen!") + Exit Sub + End If + + Next + + End If + + + + Dim SQLStringGruppierteSammelrechnung = "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(SQLStringGruppierteSammelrechnung, "FMZOLL") + + If dtSelectedSammelrechnungen.Rows.Count > 0 Then + + If cbxVorschau.Checked 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 > 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 + + End If + + + + + If cbxRechnungsjournaldrucken.Checked Then + Dim dtRechnungsjournal As DataTable = (New SQL).loadDgvBySql("SELECT + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsLandKz, + Rechnungsausgang.RechnungsNr, + Rechnungsausgang.RechnungsDatum, + MIN(Rechnungsausgang.KundenNrZentrale) AS KundenNrZentrale, + MIN(Rechnungsausgang.RechnungsKundenNr) AS RechnungsKundenNr, + MIN(Rechnungsausgang.[RechnungsName 1]) AS [RechnungsName 1], + MAX(Rechnungsausgang.Abfertigungsdatum) AS Abfertigungsdatum, + SUM(RechnungsausgangPositionen.SteuerpflichtigerBetrag) AS SteuerpflichtigerGesamtbetrag, + SUM(RechnungsausgangPositionen.SteuerfreierBetrag) AS SteuerfreierGesamtbetrag, + MIN(Rechnungsausgang.[Steuersatz %]) AS [Steuersatz %], + Rechnungsausgang.Status, + Rechnungsausgang.DruckDatumZeit, + Rechnungsausgang.Sachbearbeiter + FROM + Rechnungsausgang + INNER JOIN + Filialen ON Rechnungsausgang.FilialenNr = Filialen.FilialenNr + INNER JOIN + RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID + 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 + GROUP BY + Rechnungsausgang.Buchungsjahr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsLandKz, + Rechnungsausgang.RechnungsNr, + Rechnungsausgang.RechnungsDatum, + Rechnungsausgang.Status, + Rechnungsausgang.DruckDatumZeit, + Rechnungsausgang.Sachbearbeiter + ORDER BY + Rechnungsausgang.Buchungsjahr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsLandKz, + Rechnungsausgang.RechnungsNr", "FMZOLL") + + cProgramFunctions.genExcelFromDT_NEW(dtRechnungsjournal, {"J1:J" & (dtRechnungsjournal.Rows.Count + 1), "K1:K" & (dtRechnungsjournal.Rows.Count + 1), "L1:L" & (dtRechnungsjournal.Rows.Count + 1)},, "RECHNUNGSJOURNAL VOM" & rechnungsdatum.ToShortDateString,,, True) + End If + + If cbxAbfVerbotdrucken.Checked Then + + Dim dtEbfertigungsverbot As DataTable = (New SQL).loadDgvBySql("SELECT + Rechnungsausgang.Buchungsjahr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsNr, + Rechnungsausgang.RechnungsDatum, + MIN(Rechnungsausgang.KundenNrZentrale) AS KundenNrZentrale, + MIN(Rechnungsausgang.RechnungsKundenNr) AS RechnungsKundenNr, + MIN(Rechnungsausgang.[RechnungsName 1]) AS [RechnungsName 1], + MAX(Rechnungsausgang.Abfertigungsdatum) AS Abfertigungsdatum, + SUM(RechnungsausgangPositionen.SteuerpflichtigerBetrag) AS SteuerpflichtigerGesamtbetrag, + SUM(RechnungsausgangPositionen.SteuerfreierBetrag) AS SteuerfreierGesamtbetrag, + MIN(Rechnungsausgang.[Steuersatz %]) AS [Steuersatz %], + Rechnungsausgang.Status, + Rechnungsausgang.DruckDatumZeit, + Rechnungsausgang.Sachbearbeiter + FROM + Rechnungsausgang + INNER JOIN + Filialen ON Rechnungsausgang.FilialenNr = Filialen.FilialenNr + INNER JOIN + Kunden ON Rechnungsausgang.RechnungsKundenNr = Kunden.KundenNr + INNER JOIN + RechnungsausgangPositionen ON Rechnungsausgang.RK_ID = RechnungsausgangPositionen.RK_ID + WHERE + Kunden.Abfertigungsverbot = 1 AND [Status] = 2 AND Rechnungsausgang.[Sammelrechnung] = 6 AND UPPER(Rechnungsausgang.[Sachbearbeiter]) = '" & Sachbearbeiter & "' AND ([SteuerpflichtigerGesamtbetrag] <> 0 OR [SteuerfreierGesamtbetrag] <> 0) AND cast(Abfertigungsdatum as Date) = '" & rechnungsdatum & "' and RechnungsNr is not null + GROUP BY + Rechnungsausgang.Buchungsjahr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsNr, + Rechnungsausgang.RechnungsDatum, + Rechnungsausgang.Status, + Rechnungsausgang.DruckDatumZeit, + Rechnungsausgang.Sachbearbeiter + ORDER BY + Rechnungsausgang.Buchungsjahr, + Rechnungsausgang.Währungscode, + Rechnungsausgang.RechnungsNr;", "FMZOLL") + + cProgramFunctions.genExcelFromDT_NEW(dtEbfertigungsverbot, {"I1:I" & (dtEbfertigungsverbot.Rows.Count + 1), "J1:J" & (dtEbfertigungsverbot.Rows.Count + 1), "K1:K" & (dtEbfertigungsverbot.Rows.Count + 1)},, "RECHNUNGEN VOM " & rechnungsdatum.ToShortDateString & " MIT ABFERTIGUNGSVERBOT",,, True) + End If + + + + Else + + MsgBox("Keine Sammelrechnung zum " & rechnungsdatum.ToShortDateString & " von " & Sachbearbeiter & " vorhanden!") + End If + End Sub + + Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click + If cbxMautbericht._value = "" Then Exit Sub + If cbxDateMautbericht._value = "" Then Exit Sub + + Try + + + + + Select Case cbxMautbericht._value + 'nur intern + 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) + + 'für Kunde an RE anhängen + 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] + 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 + + Dim displayView = New DataView(dtBerichtkunden_CSV, "", "Customer No", DataViewRowState.CurrentRows) + Dim distinctDT_CSV As DataTable = displayView.ToTable(True, "Customer No") + Dim cnt As Integer = 0 + + '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 + + + + 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(";", ", ") & ";" + Next + outFile.WriteLine(clmns) + Next + outFile.Close() + + If True Then 'cnt Mod 10 = 0 Then + TextBox1.Text = cnt & " / " & dtBerichtkunden_CSV.Rows.Count + Dim proz As Double = (cnt / dtBerichtkunden_CSV.Rows.Count) * 100 + pbMautAnh_Proz.Value = proz + lblMautAnh_Proz.Text = proz.ToString("N2") & " %" + 'GroupBox12.Refresh() + My.Application.DoEvents() + End If + cnt += 1 + + Next + + pbMautAnh_Proz.Value = 100 + TextBox1.Text = dtBerichtkunden_CSV.Rows.Count & " / " & dtBerichtkunden_CSV.Rows.Count + lblMautAnh_Proz.Text = "100.00 %" + + + MsgBox("CSV-Berichte wurden unter " & PathMautberichte & "erzeugt.") + Else + MsgBox("Es wurden keine Daten bereitgestellt") + + End If + + + 'für Kunde an RE anhängen (Tool Report to Verag Invoice aus FMZOLL) + 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] + 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 + + Dim cnt = 0 + + 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! + 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 + + 'If pdf.Item(0) = 401026 Then + ' MsgBox("Test") + 'End If + + Dim dt_PDF_selected = dtBerichtkunden_PDF.Select("[Customer No] ='" & pdf.Item(0) & "'").CopyToDataTable + + createPDFMautbericht(pdf.Item(0), dt_PDF_selected, cbxDateMautbericht._value, PathMautberichte) + + + + If True Then 'cnt Mod 10 = 0 Then + TextBox1.Text = cnt & " / " & dtBerichtkunden_PDF.Rows.Count + Dim proz As Double = (cnt / dtBerichtkunden_PDF.Rows.Count) * 100 + pbMautAnh_Proz.Value = proz + lblMautAnh_Proz.Text = proz.ToString("N2") & " %" + 'GroupBox12.Refresh() + My.Application.DoEvents() + End If + cnt += 1 + + Next + + pbMautAnh_Proz.Value = 100 + TextBox1.Text = dtBerichtkunden_PDF.Rows.Count & " / " & dtBerichtkunden_PDF.Rows.Count + lblMautAnh_Proz.Text = "100.00 %" + + MsgBox("PDF-Berichte wurden unter " & PathMautberichte & "erzeugt.") + + Else + MsgBox("Es wurden keine Daten bereitgestellt") + + End If + + + End Select + + + Dim countCSV = 0 + Dim countPDF = 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") Then countCSV += 1 + If f.ToString.ToLower.EndsWith("_maut.pdf") Then countPDF += 1 + Next + End If + End If + lblAnzahlMautberichte.Text = countCSV + countPDF & "x Mautberichte (" & countCSV & "x CSV " & countPDF & "x PDF )" + + Catch ex As System.Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + + End Try + End Sub + + Private Function createPDFMautbericht(kdnr As Integer, dt As DataTable, anhangsdatum As Date, path As String) As String + + Dim rpt As New rptPLOSE_Anhang + Dim sql As New VERAG_PROG_ALLGEMEIN.SQL + + rpt.DataSource = dt + + rpt.txtKunde.Text = kdnr & " " & New VERAG_PROG_ALLGEMEIN.cAdressen(kdnr).FullName + rpt.lblRgDatum.Text = anhangsdatum.ToShortDateString + + rpt.GroupHeaderKz.DataField = "Licence Plate Number" + + + rpt.txtNettoKzSum.Visible = False + rpt.txtNettoGesSum.Visible = False + rpt.txtNetto.Visible = False + rpt.txtNettoKatSum.Visible = False + rpt.lblNetto.Visible = False + + rpt.txtMWSTKzSum.Visible = False + rpt.txtMWSTGEsSum.Visible = False + rpt.txtMWST.Visible = False + rpt.txtMWSTKatSum.Visible = False + rpt.lblMWST.Visible = False + + 'rpt.lblBrutto.Text = "Total Amount ( EUR )" + 'rpt.Label4.Text = bis.ToShortDateString + 'rpt.Label2.Text = "UTA-KundenNr:" + rpt.TextBox1.Text = kdnr + ' rpt.Label1.Text = " UTA Fleet Management Service" + + rpt.lblSummeKennzeichen.Visible = False + rpt.lblService.Visible = False + + 'rpt.lblSummeKennzeichen.Location = New PointF(rpt.lblSummeKennzeichen.Location.X + 4.5, rpt.lblSummeKennzeichen.Location.Y) + 'rpt.lblSumKategorie.Location = New PointF(rpt.lblSumKategorie.Location.X + 4.5, rpt.lblSumKategorie.Location.Y) + 'rpt.lblGessumme.Location = New PointF(rpt.lblGessumme.Location.X + 4.5, rpt.lblGessumme.Location.Y) + + Dim sumNetto As Double = 0 + Dim sumMWST As Double = 0 + Dim sumBrutto As Double = 0 + + Dim sumNettoKat As Double = 0 + Dim sumMWSTKat As Double = 0 + Dim sumBruttoKat As Double = 0 + + Dim sumNettoGes As Double = 0 + Dim sumMWSTGes As Double = 0 + Dim sumBruttoGes As Double = 0 + + Dim cntKat = 0 + Dim cnt = 0 + rpt.GroupFooterKat.Visible = False + + AddHandler rpt.Detail.Format, Sub() + + rpt.txtKunde.Text = sql.isDbnullEmpty(rpt.Fields.Item("Customer No").Value, "") + rpt.txtKunde.Text &= " " & sql.isDbnullEmpty(rpt.Fields.Item("Customer name").Value, "") + + rpt.txtProdukt.Text = sql.isDbnullEmpty(rpt.Fields.Item("Product description").Value, "") 'sql.isDbnullEmpty(rpt.Fields.Item("plose_ProduktCode").Value, "") & " - " & sql.isDbnullEmpty(rpt.Fields.Item("plose_Produktbeschreibung").Value, "") + + + rpt.txtKartennummer.Text = sql.isDbnullEmpty(rpt.Fields.Item("Card number").Value, "") + rpt.txtEingang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Entry Terminal").Value, "") + rpt.txtAusgang.Text = sql.isDbnullEmpty(rpt.Fields.Item("Exit Terminal").Value, "") + rpt.txtLand.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction Country").Value, "") + rpt.txtDatum.Text = sql.isDbnullEmpty(rpt.Fields.Item("Transaction date").Value, "") + + rpt.txtNetto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Net Amount").Value, 2, "") + rpt.txtMWST.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("VAT Amount").Value, 2, "") + rpt.txtBrutto.Text = sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 2, "") + + sumNetto += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_NettobetragWaehrungAbbuchung").Value, 4, 0) + sumMWST += 0 'SQL.isDbnullEmptyDbl(rpt.Fields.Item("plose_MWSTBetragWaehrungAbbuchung").Value, 4, 0) + sumBrutto += sql.isDbnullEmptyDbl(rpt.Fields.Item("Total Amount").Value, 4, 0) + cnt += 1 + End Sub + + AddHandler rpt.GroupHeaderKz.Format, Sub() + rpt.txtKennzeichen.Text = sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, "") + If rpt.txtKennzeichen.Text = "" Then rpt.lblKennzeichen.Visible = False + End Sub + AddHandler rpt.GroupHeaderKat.Format, Sub() + rpt.lblKategorie.Text = "MAUT REPORT" + End Sub + + AddHandler rpt.GroupFooterKz.Format, Sub() + rpt.txtNettoKzSum.Text = sumNetto.ToString("N2") + rpt.txtMWSTKzSum.Text = sumMWST.ToString("N2") + rpt.txtBruttoKzSum.Text = sumBrutto.ToString("N2") + sumNettoGes += sumNetto + sumMWSTGes += sumMWST + sumBruttoGes += sumBrutto + + sumNetto = 0 + sumMWST = 0 + sumBrutto = 0 + + rpt.lblSummeKennzeichen.Text = rpt.lblSummeKennzeichen.Text.Replace("Kennzeichen", sql.isDbnullEmpty(rpt.Fields.Item("Licence Plate Number").Value, "")) + End Sub + + + + AddHandler rpt.GroupFooterKat.Format, Sub() + sumNettoKat += sumNetto + sumMWSTKat += sumMWST + sumBruttoKat += sumBrutto + sumNetto = 0 + sumMWST = 0 + sumBrutto = 0 + + rpt.txtNettoKatSum.Text = sumNettoKat.ToString("N2") + rpt.txtMWSTKatSum.Text = sumMWSTKat.ToString("N2") + rpt.txtBruttoKatSum.Text = sumBruttoKat.ToString("N2") + cntKat += 1 + End Sub + AddHandler rpt.ReportFooter1.Format, Sub() + 'sumNettoGes += sumNettoKat + 'sumMWSTGes += sumMWSTKat + 'sumBruttoGes += sumBruttoKat + sumNettoKat = 0 + sumMWSTKat = 0 + sumBruttoKat = 0 + + sumNetto = 0 + sumMWST = 0 + sumBrutto = 0 + + rpt.txtNettoGesSum.Text = sumNettoGes.ToString("N2") + rpt.txtMWSTGEsSum.Text = sumMWSTGes.ToString("N2") + rpt.txtBruttoGesSum.Text = sumBruttoGes.ToString("N2") + + + + 'If cntKat <= 1 Then + ' rpt.GroupFooterKat.Visible = False + 'End If + End Sub + + 'print.Viewer.LoadDocument(rpt) + 'print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous + 'print.Show() + + + + Dim tmpPath = path & "\" & kdnr & "_Maut.pdf" + Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport + rpt.Run(False) + p.NeverEmbedFonts = "" + p.Export(rpt.Document, tmpPath) + + rpt.Dispose() + + Return tmpPath + + End Function + + Private Sub cbxDateMautbericht_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxDateMautbericht.SelectedValueChanged + With MyDatagridview1 + + + .Columns.Clear() + .SET_SQL("SELECT [Datenquelle] as Lieferant,sum([Net Amount]) as Netto,sum([VAT Amount]) as VAT,sum([Total Amount]) as Brutto + FROM [VERAG].[dbo].[tblMautbericht] + where cast([Billingdate] as date) = '" & cbxDateMautbericht._value & "' + group by [Datenquelle]", "FMZOLL") + .LOAD() + + + End With + End Sub + + Private Sub KdSearchBox3_TextChanged(sender As Object, e As EventArgs) Handles KdSearchBox3.TextChanged + rbkunde.Checked = True + End Sub + + Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles btnMDMSammelrechnung.Click + + Dim f As New frmFaktSammelRgDrucken(19) + f.ShowDialog(Me) + + End Sub + + Sub showPic(ok As Boolean, pic As PictureBox) + pic.Visible = True + If ok Then + pic.BackgroundImage = My.Resources.ok + Else + pic.BackgroundImage = My.Resources.del + End If + + End Sub + + Private Sub btnRechnugnsdaten_Click(sender As Object, e As EventArgs) Handles btnRechnugnsdaten.Click + Dim f As New SDL.frmRechnungenSuche + f.Show(Me) + End Sub +End Class diff --git a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.Designer.vb b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.Designer.vb index bfd5dea4..964c5d17 100644 --- a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.Designer.vb +++ b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.Designer.vb @@ -28,6 +28,7 @@ Partial Class frmMitarbeitersuche Me.Button4 = New System.Windows.Forms.Button() Me.btnClose = New System.Windows.Forms.Button() Me.PictureBox2 = New System.Windows.Forms.PictureBox() + Me.sbMitarbeiter = New VERAG_PROG_ALLGEMEIN.MySearchBox() Me.pnlMain = New System.Windows.Forms.Panel() Me.pnl = New System.Windows.Forms.Panel() Me.Button3 = New System.Windows.Forms.Button() @@ -82,7 +83,7 @@ Partial Class frmMitarbeitersuche Me.lblFirma = New System.Windows.Forms.Label() Me.Label4 = New System.Windows.Forms.Label() Me.Label3 = New System.Windows.Forms.Label() - Me.sbMitarbeiter = New VERAG_PROG_ALLGEMEIN.MySearchBox() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.pnlSrch.SuspendLayout() CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit() Me.pnlMain.SuspendLayout() @@ -155,6 +156,32 @@ Partial Class frmMitarbeitersuche Me.PictureBox2.TabIndex = 18 Me.PictureBox2.TabStop = False ' + 'sbMitarbeiter + ' + Me.sbMitarbeiter._allowFreitext = False + Me.sbMitarbeiter._AllowSetValue = False + Me.sbMitarbeiter._allowSpaceAsSplitter = True + Me.sbMitarbeiter._autoSizeGross = False + Me.sbMitarbeiter._hideIfListEmpty = True + Me.sbMitarbeiter._value = Nothing + Me.sbMitarbeiter.conn_art = "FMZOLL" + Me.sbMitarbeiter.dgvpos = "LEFT" + Me.sbMitarbeiter.DISPLAY_PARAM = Nothing + Me.sbMitarbeiter.Font = New System.Drawing.Font("Microsoft Sans Serif", 14.0!) + Me.sbMitarbeiter.INVISIBLE_COLUMNS = Nothing + Me.sbMitarbeiter.key_visible = False + Me.sbMitarbeiter.KEYPARAM = Nothing + Me.sbMitarbeiter.Location = New System.Drawing.Point(45, 11) + Me.sbMitarbeiter.Name = "sbMitarbeiter" + Me.sbMitarbeiter.searchActive = True + Me.sbMitarbeiter.Size = New System.Drawing.Size(582, 29) + Me.sbMitarbeiter.SQL_ORDER_BY = Nothing + Me.sbMitarbeiter.SQL_SELECT = Nothing + Me.sbMitarbeiter.SQL_WHERE = Nothing + Me.sbMitarbeiter.SQL_WhereParamList = Nothing + Me.sbMitarbeiter.TabIndex = 0 + Me.sbMitarbeiter.usrcntl = Nothing + ' 'pnlMain ' Me.pnlMain.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink @@ -790,31 +817,10 @@ Partial Class frmMitarbeitersuche Me.Label3.Text = "Niederlassung:" Me.Label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' - 'sbMitarbeiter + 'ContextMenuStrip1 ' - Me.sbMitarbeiter._allowFreitext = False - Me.sbMitarbeiter._AllowSetValue = False - Me.sbMitarbeiter._allowSpaceAsSplitter = True - Me.sbMitarbeiter._autoSizeGross = False - Me.sbMitarbeiter._hideIfListEmpty = True - Me.sbMitarbeiter._value = Nothing - Me.sbMitarbeiter.conn_art = "FMZOLL" - Me.sbMitarbeiter.dgvpos = "LEFT" - Me.sbMitarbeiter.DISPLAY_PARAM = Nothing - Me.sbMitarbeiter.Font = New System.Drawing.Font("Microsoft Sans Serif", 14.0!) - Me.sbMitarbeiter.INVISIBLE_COLUMNS = Nothing - Me.sbMitarbeiter.key_visible = False - Me.sbMitarbeiter.KEYPARAM = Nothing - Me.sbMitarbeiter.Location = New System.Drawing.Point(45, 11) - Me.sbMitarbeiter.Name = "sbMitarbeiter" - Me.sbMitarbeiter.searchActive = True - Me.sbMitarbeiter.Size = New System.Drawing.Size(582, 29) - Me.sbMitarbeiter.SQL_ORDER_BY = Nothing - Me.sbMitarbeiter.SQL_SELECT = Nothing - Me.sbMitarbeiter.SQL_WHERE = Nothing - Me.sbMitarbeiter.SQL_WhereParamList = Nothing - Me.sbMitarbeiter.TabIndex = 0 - Me.sbMitarbeiter.usrcntl = Nothing + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(61, 4) ' 'frmMitarbeitersuche ' @@ -913,4 +919,5 @@ Partial Class frmMitarbeitersuche Friend WithEvents PictureBox5 As Windows.Forms.PictureBox Friend WithEvents btnAkten As Windows.Forms.Button Friend WithEvents Button3 As Windows.Forms.Button + Friend WithEvents ContextMenuStrip1 As Windows.Forms.ContextMenuStrip End Class diff --git a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.resx b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.resx index d584bd9e..c477c7b6 100644 --- a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.resx +++ b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.resx @@ -117,6 +117,9 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 17, 17 + diff --git a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.vb b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.vb index ec2d816c..30ee1a4b 100644 --- a/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.vb +++ b/VERAG_PROG_ALLGEMEIN/Mitarbeiterverzeichnis/frmMitarbeitersuche.vb @@ -516,8 +516,44 @@ Public Class frmMitarbeitersuche End Sub Private Sub Button1_Click_2(sender As Object, e As EventArgs) Handles Button1.Click - Dim webAddress As String = "https://zeit.verag.ag/webterminal/" - Process.Start(webAddress) + + + + If Not ContextMenuStrip1.Items.ContainsKey("timas_old") Then + Dim plose = New ToolStripMenuItem() With {.Text = "TimasWEB", .Name = "timas_old", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} + ContextMenuStrip1.Items.Add(plose) + AddHandler plose.Click, AddressOf mnuItemTimas_Clicked + End If + + If Not ContextMenuStrip1.Items.ContainsKey("timas_new") Then + Dim plose = New ToolStripMenuItem() With {.Text = "Timas ÜBERSICHT", .Name = "timas_new", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)} + ContextMenuStrip1.Items.Add(plose) + AddHandler plose.Click, AddressOf mnuItemTimas_Clicked + End If + + ContextMenuStrip1.Show(Cursor.Position) + + + End Sub + + Private Sub mnuItemTimas_Clicked(sender As Object, e As EventArgs) + + ContextMenuStrip1.Hide() + Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem) + + Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) + + If item IsNot Nothing Then + If item.Name = "timas_new" Then + Process.Start(Paramslist.GET_PARAMETER_VALUE(item.Name)) + ElseIf item.Name = "timas_old" Then + Process.Start(Paramslist.GET_PARAMETER_VALUE(item.Name)) + End If + + End If + + + End Sub Private Sub PictureBox5_Click(sender As Object, e As EventArgs) Handles PictureBox5.Click