Merge branch 'newMaster2024' of https://dev.azure.com/VeragAG/_git/SDL into newMaster2024

This commit is contained in:
2025-01-26 21:56:45 +01:00
19 changed files with 3123 additions and 2061 deletions

View File

@@ -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,<br><br>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,<br><br>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,<br><br>ekte baslikta yazan faturayi bulabilirsinz."
Mail.HTMLBody &= "<br><br><br>Saygilarimizla<br><br>" & 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,<br><br>im Anhang senden wir Ihnen die o.g. Rechnung."
Mail.HTMLBody &= "<br><br><br>Mit freundlichen Grüßen<br><br>" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID"))
Case Else
Mail.Subject = "Invoice No. " & ROW("RechnungsNr")
Mail.HTMLBody = "Dear Sir or Madam,<br><br>attached we send you the invoice mentioned above."
Mail.HTMLBody &= "<br><br><br>Best regards<br><br>" & 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,<br><br>ekte baslikta yazan faturayi bulabilirsinz."
Mail.HTMLBody &= "<br><br><br>Saygilarimizla<br><br>" & 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,<br><br>im Anhang senden wir Ihnen die o.g. Rechnung."
Mail.HTMLBody &= "<br><br><br>Mit freundlichen Grüßen<br><br>" & getSignature(ROW("RechnungsLandKz"), ROW("Firma_ID"))
Case Else
Mail.Subject = "Invoice No. " & ROW("RechnungsNr")
Mail.HTMLBody = "Dear Sir or Madam,<br><br>attached we send you the invoice mentioned above."
Mail.HTMLBody &= "<br><br><br>Best regards<br><br>" & 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