MDM Fakt.

This commit is contained in:
2025-02-04 17:04:12 +01:00
parent addeb0c6e4
commit 2ec5ebc44c
9 changed files with 366 additions and 193 deletions

View File

@@ -5,7 +5,8 @@ Imports Microsoft.Office.Interop
Imports VERAG_PROG_ALLGEMEIN
Imports s2industries.ZUGFeRD
Imports System.IO
Imports GrapeCity.ActiveReports.SectionReportModel
Imports GrapeCity.ActiveReports
Public Class cFakturierung
@@ -2829,7 +2830,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 = "", 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
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, Optional MDMREkopie As Integer = 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 & ") "
@@ -2959,7 +2960,7 @@ Public Class cFakturierung
'Letzter Abschnitt:
If found Then
Dim path = ""
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 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,,, MDMREkopie)
If path <> "" Then listPDFs.Add(path)
End If
lastAktuelle_RgNr = Aktuelle_RgNr
@@ -3553,19 +3554,38 @@ Public Class cFakturierung
rpt.lblEORIUeberschrift.Visible = Not isMDMRechnungsdruck
rpt.txtAbfertigungsart.Visible = Not isMDMRechnungsdruck
Dim sumSteuerpflichtig As Double = 0
Dim sumSteuerfrei As Double = 0
Dim watermark As New Label()
watermark.Font = New Font("Arial", 72, FontStyle.Bold)
watermark.ForeColor = Color.LightGray
watermark.Angle = 45 ' Rotate watermark
watermark.Left = 2.0F
watermark.Top = 5.0F
watermark.Width = 6.0F
watermark.Height = 1.5F
watermark.BackColor = Color.Transparent
' Ensure the PageHeader section exists
If Sammelrechnungskopie Then
Select Case ROW("RechnungSprache")
Case "EN" : rpt.lblUeberschriftRG_GS.Text &= " - COPY"
Case Else : rpt.lblUeberschriftRG_GS.Text &= " - KOPIE"
Case "EN" : rpt.lblUeberschriftRG_GS.Text &= " - COPY" : watermark.Text = "INVALID"
Case Else : rpt.lblUeberschriftRG_GS.Text &= " - KOPIE" : watermark.Text = "UNGÜLTIG"
End Select
rpt.Sections("Detail").Controls.Add(watermark)
End If
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
@@ -3596,9 +3616,8 @@ Public Class cFakturierung
If If(RECHNUNG.Handling, "") <> "" Then
rpt.txtSendungsdetails.Text &= "Handling: " & RECHNUNG.Handling.ToString.Replace(vbNewLine, ", ").Replace(vbCr, ", ").Replace(vbLf, ", ") & vbNewLine
End If
If True Then 'ANLAGEN
Dim Anlagen = ""
If True Then 'ANLAGEN
Dim Anlagen = ""
If If(RECHNUNG.Anlage_1, "") <> "" Then Anlagen &= RECHNUNG.Anlage_1 & ", "
If If(RECHNUNG.Anlage_2, "") <> "" Then Anlagen &= RECHNUNG.Anlage_2 & ", "
If If(RECHNUNG.Anlage_3, "") <> "" Then Anlagen &= RECHNUNG.Anlage_3 & ", "
@@ -3641,17 +3660,15 @@ Public Class cFakturierung
rpt.lblSteuerfrei.Font = New Font(rpt.lblSteuerfrei.Font, FontStyle.Bold)
rpt.lblSteuerpflichtig.Font = New Font(rpt.lblSteuerfrei.Font, FontStyle.Bold)
'txtPackstuecke.Top += SubReport.Height
'txtKdAuftragsnummer.Top += SubReport.Height
'txtSendungsdetails.Top += SubReport.Height
Else
rpt.SubReport.Report = Nothing
End If
' rpt.Line10.AnchorBottom = True
' rpt.Line10.Height = rpt.Detail.Height
End If
' rpt.Line10.AnchorBottom = True
' rpt.Line10.Height = rpt.Detail.Height
End If
End Sub
@@ -3672,6 +3689,7 @@ Public Class cFakturierung
Dim tmpSteuerbetrag = CDbl((sumSteuerpflichtig * steuerProz))
If tmpSteuerbetrag = 0 Then
rpt.lblSteuerbetrag.Visible = False
rpt.lblSteuersatz.Visible = False
End If
rpt.lblSteuersatz.Text = steuerBez
@@ -3691,10 +3709,10 @@ Public Class cFakturierung
End Sub
'DruckDatumUhrzeit wird gesetzt, falls noch ungedruckt...
'If RECHNUNG.DruckDatumZeit Is Nothing Then
' RECHNUNG.SET_DruckdatumUhrzeit()
'End If
'DruckDatumUhrzeit wird gesetzt, falls noch ungedruckt...
'If RECHNUNG.DruckDatumZeit Is Nothing Then
' RECHNUNG.SET_DruckdatumUhrzeit()
'End If
If isMDMRechnungsdruck Then
@@ -3713,7 +3731,7 @@ Public Class cFakturierung
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
'Rechnugnsdruck = Individuell für deise Rechnung, wird optional mitgegeben
@@ -3726,20 +3744,18 @@ Public Class cFakturierung
If isMDMRechnungsdruck AndAlso SammelrechnungsDT IsNot Nothing AndAlso SammelrechnungsDT.Rows.Count > 0 Then
Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID)
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)
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
End If