diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb
index 25b77251..e09f3dc8 100644
--- a/SDL/Fakturierung/cAutomailversand.vb
+++ b/SDL/Fakturierung/cAutomailversand.vb
@@ -173,6 +173,18 @@ Public Class cAutomailversand
Dim TextHTML = ""
TextHTML &= HTMLMail
+ TextHTML &= "
"
+ TextHTML &= "
"
+
+ Select Case AD.LandKz
+ Case "TR"
+ TextHTML &= "Saygilarimizla
"
+ Case "A", "AT", "D", "DE", "CH"
+ TextHTML &= "Mit freundlichen Grüßen
"
+ Case Else
+ TextHTML &= "Best regards
"
+ End Select
+ TextHTML &= VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "
"
TextHTML &= cFakturierung.getSignature(AD.LandKz, FirmaID, True, True,,,,, True, True)
HTMLMail = "
" & TextHTML & "
"
@@ -307,6 +319,21 @@ Public Class cAutomailversand
Dim TextHTML = ""
TextHTML &= HTMLMail
+ TextHTML &= "
"
+ TextHTML &= "
"
+
+ Select Case AD.LandKz
+ Case "TR"
+ TextHTML &= "Saygilarimizla
"
+ Case "A", "AT", "D", "DE", "CH"
+ TextHTML &= "Mit freundlichen Grüßen
"
+ Case Else
+ TextHTML &= "Best regards
"
+ End Select
+
+
+
+ TextHTML &= VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "
"
TextHTML &= cFakturierung.getSignature(AD.LandKz, FirmaID, True, True,,,,, True, True)
HTMLMail = "" & TextHTML & "
"
@@ -348,9 +375,18 @@ Public Class cAutomailversand
Select Case row.Item("RechnungsLandKz")
Case "TR" : spracheRechnung = "TR" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "Kredi", "Fatura")
- Case "RO" : spracheRechnung = "RO" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "nota de credit", "factura")
+ Case "RO"
+ If Firma_ID = 19 Then
+ spracheRechnung = "RO" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "nota de credit", "factura")
+ End If
+
Case "DE", "A", "AT", "D", "CH" : spracheRechnung = "DE" : belegtyp = If(BelegartenNr = 71, "Gutschrift", "Rechnung")
- Case "SRB", "HR", "SLO", "BIH", "MNE", "MK", "MO" : spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch!
+
+ Case "SRB", "HR", "SLO", "BIH", "MNE", "MK", "MO"
+ If Firma_ID = 19 Then
+ spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch!
+ End If
+
End Select
If listOfTextconserven.LIST.Any(Function(c) c.txt_sprache = spracheRechnung) Then
@@ -468,13 +504,26 @@ Public Class cAutomailversand
Dim belegtyp As String = If(BelegartenNr = 71, "credit note", "invoice")
+
+
Select Case row.Item("RechnungsLandKz")
- Case "TR", "RO", "DE", "SRB" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "Kredi", "Fatura")
- Case "A", "AT", "D", "CH", "DE" : spracheRechnung = "DE" : belegtyp = If(BelegartenNr = 71, "Gutschrift", "Rechnung")
- Case "HR", "SLO", "BIH", "MNE", "MK", "MO" : spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch!
+ Case "TR" : spracheRechnung = "TR" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "Kredi", "Fatura")
+ Case "RO"
+ If Firma_ID = 19 Then
+ spracheRechnung = "RO" : spracheRechnung = row.Item("RechnungsLandKz") : belegtyp = If(BelegartenNr = 71, "nota de credit", "factura")
+ End If
+
+ Case "DE", "A", "AT", "D", "CH" : spracheRechnung = "DE" : belegtyp = If(BelegartenNr = 71, "Gutschrift", "Rechnung")
+
+ Case "SRB", "HR", "SLO", "BIH", "MNE", "MK", "MO"
+ If Firma_ID = 19 Then
+ spracheRechnung = "SRB" : belegtyp = If(BelegartenNr = 71, "credit note", "invoice") 'Belegarten auf Englisch!
+ End If
+
End Select
+
If listOfTextconserven.LIST.Any(Function(c) c.txt_sprache = spracheRechnung) Then
@@ -544,7 +593,7 @@ Public Class cAutomailversand
Select Case AD.LandKz
Case "TR"
- TextHTML &= "Saygilarimizla
"
+ TextHTML &= "Saygilarimizla
"
Case "A", "AT", "D", "DE", "CH"
TextHTML &= "Mit freundlichen Grüßen
"
Case Else
diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb
index 280eb77e..70420423 100644
--- a/SDL/Fakturierung/cFakturierung.vb
+++ b/SDL/Fakturierung/cFakturierung.vb
@@ -2197,20 +2197,17 @@ Public Class cFakturierung
Dim rpt As New rptRechnungDruck_MDM(RECHNUNG.RechnungSprache, IIf(RECHNUNG.OffertenNr = 95, RECHNUNG.OffertenNr, Nothing), RECHNUNG.Firma_ID)
-
If RECHNUNG.POSITIONEN.Count = 0 Then MsgBox("Keine Daten vorhanden!") : Return False
Dim dtDataSource As New DataTable
-
dtDataSource.Columns.Add("LeistungsNr")
dtDataSource.Columns.Add("LeistungsBez")
dtDataSource.Columns.Add("Anzahl")
dtDataSource.Columns.Add("SteuerpflichtigerBetrag")
dtDataSource.Columns.Add("SteuerfreierBetrag")
dtDataSource.Columns.Add("Belegdaten")
-
Dim gsBetrTmp As Double = 0
+
For Each r In RECHNUNG.POSITIONEN
- ' dtDataSource.Rows.Add(r.LeistungsNr, r.LeistungsBez, r.Anzahl, r.SteuerpflichtigerBetrag, r.SteuerfreierBetrag, (If(r.Belegdaten, "") & " " & If(r.Aufschubfälligkeit, "")).ToString.Trim)
dtDataSource.Rows.Add(r.LeistungsNr, r.LeistungsBez, r.Anzahl, r.SteuerpflichtigerBetrag, r.SteuerfreierBetrag, If(r.Belegdaten, "").ToString.Trim)
@@ -2219,20 +2216,11 @@ Public Class cFakturierung
If gsBetrTmp = 0 Then MsgBox("Rechnungsbetrag ist EUR 0,- ") : Return False
-
Dim dataView As New DataView(dtDataSource)
dataView.Sort = " LeistungsNr "
Dim dtTmp As DataTable = dataView.ToTable()
-
- ' rpt.DataSource = SQL.loadDgvBySql("SELECT * FROM [Rechnungsausgangpositionen] where RK_ID ='" & RECHNUNG.RK_ID & "' ", "FMZOLL")
rpt.DataSource = dtTmp
- '' MsgBox(rpt.DataSource.rows.count)
- 'If rpt.DataSource.rows.count = 0 Then
- ' rpt.Dispose()
- ' MsgBox("Keine Daten vorhanden!")
- ' Return False
- 'End If
Dim sum = 0
Select Case RECHNUNG.RechnungSprache
@@ -2278,7 +2266,6 @@ Public Class cFakturierung
rpt.lblRgDatumUeberschrift.Text = "Kredi thrihi:"
End Select
-
Case Else
Select Case RECHNUNG.BelegartenKz
Case "AR"
@@ -2392,36 +2379,19 @@ Public Class cFakturierung
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
-
-
- 'If If(RECHNUNG.RechnungsName_2, "") = "" Then
- ' rpt.lblRechnung_Name1.Text = ""
- ' rpt.lblRechnung_Name2.Text = If(RECHNUNG.RechnungsName_1, "")
- 'Else
- ' rpt.lblRechnung_Name1.Text = If(RECHNUNG.RechnungsName_1, "")
- ' rpt.lblRechnung_Name2.Text = If(RECHNUNG.RechnungsName_2, "")
- 'End If
- 'rpt.lblRechnung_Strasse.Text = If(RECHNUNG.RechnungsStraße, "")
- 'rpt.lblRechnung_Ort.Text = If(RECHNUNG.RechnungsOrt, "")
- 'rpt.lblRechnung_Land.Text = cProgramFunctions.getLandBez_fromISO1Land(RECHNUNG.RechnungsLandKz, "", RECHNUNG.RechnungSprache).ToString.ToUpper
-
rpt.txtAbsender.Text = If(RECHNUNG.AbsenderName_1, "") & " " & If(RECHNUNG.AbsenderName_2, "") & vbNewLine & If(RECHNUNG.AbsenderOrt, "").ToString.Trim
rpt.txtEmpfaenger.Text = If(RECHNUNG.EmpfängerName_1, "") & " " & If(RECHNUNG.EmpfängerName_2, "") & vbNewLine & If(RECHNUNG.EmpfängerOrt, "").ToString.Trim
-
-
If KD_RG IsNot Nothing AndAlso If(KD_RG.Steuernummer, "") <> String.Empty Then
If RECHNUNG.Firma_ID = 4 Then
rpt.lblRechnung_Steuernummer.Text = If(KD_RG.Steuernummer, "").ToString.Trim 'ohne LandKz gewünscht
Else
rpt.lblRechnung_Steuernummer.Text = If(KD_RG.LandKz, "") & " " & If(KD_RG.Steuernummer, "").ToString.Trim
End If
-
- ' rpt.lblRechnung_UID.Text = If(KD_RG.UstIdKz, "") & " " & If(KD_RG.UstIdNr, "").ToString.Trim
Else
rpt.lblRechnung_Steuernummer.Text = ""
- ' rpt.lblRechnung_UID.Text = ""
End If
+
rpt.lblRechnung_Steuernummer.Visible = (rpt.lblRechnung_Steuernummer.Text <> String.Empty)
rpt.lblRechnung_Steuernummer_Ueberschrift.Visible = (rpt.lblRechnung_Steuernummer.Text <> String.Empty)
@@ -2618,12 +2588,9 @@ Public Class cFakturierung
End If
End If
- 'Dim cnt As Integer = 0
If RECHNUNG.Firma_ID = 19 Then
- 'rpt.lblSteuersatz.Visible = False
- 'rpt.lblSteuerbetrag.Visible = False
rpt.lblSteuerpflichtigGes.Visible = False
rpt.lblSteuerfreiGes.Visible = False
rpt.lblZwText.Visible = False
@@ -2636,20 +2603,10 @@ Public Class cFakturierung
Dim sumSteuerpflichtig As Double = 0
Dim sumSteuerfrei As Double = 0
- 'Dim Anz As Double = 0
- 'Dim gesSumBt As Double = 0
- 'Dim gesAnz As Double = 0
Dim vorzeichen = If(If(RECHNUNG.Vorzeichen, "") = "-", -1, 1)
- ' Dim KUNDE_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(RECHNUNG.RechnungsKundenNr)
-
- ' rpt.Line10.AnchorBottom = True
- ' rpt.Line10.Height = rpt.Detail.Height
-
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
rpt.lblLeistungNr.Text = checkNull(rpt.Fields.Item("LeistungsNr").Value)
rpt.txtLeistung.Text = checkNull(rpt.Fields.Item("LeistungsBez").Value)
@@ -2671,9 +2628,6 @@ 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
@@ -2753,7 +2707,6 @@ Public Class cFakturierung
End If
rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Anzahl").Value)
- ' rpt.lblBetrag.Text = rpt.Fields.Item("betrag").Value
Dim stPfl As Double = 0
Dim stFrei As Double = 0
@@ -2768,16 +2721,6 @@ Public Class cFakturierung
sumSteuerpflichtig += stPfl
sumSteuerfrei += stFrei
- ' Anz += 1
- ' gesAnz += 1
-
- ' If Anz Mod 2 = 0 Then
- ' rpt.Detail.BackColor = Color.FromArgb(240, 240, 240)
- 'Else
- ' rpt.Detail.BackColor = Color.White
- ' End If
- 'rpt.Line10.Height = rpt.Detail.Height
-
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
@@ -3534,49 +3477,6 @@ Public Class cFakturierung
Dim netPricePos = netUnitPrice * IIf(anzahl <> 0, Convert.ToDecimal(anzahl), 0)
sumNetto += netPricePos
-
-
- 'For Each search As GrapeCity.ActiveReports.SectionReportModel.ARControl In rpt.Detail.Controls
- ' If search.Name = "lblAnzahl" Then
- ' anzahl = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0)
- ' End If
-
- ' If search.Name = "lblSteuerpflichtig" Then
- ' SteuerpflichtigerBetrag = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0)
- ' End If
-
- ' If search.Name = "lblSteuerfrei" Then
- ' SteuerfreierBetrag = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0)
- ' End If
-
- ' If search.Name = "txtLeistung" Then
- ' bez = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.TextBox).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.TextBox).[Text], 0)
- ' End If
-
- 'If bez <> "" Then
-
- ' einzelpreis = IIf(SteuerpflichtigerBetrag > 0, SteuerpflichtigerBetrag / checkNull(anzahl), SteuerfreierBetrag / checkNull(anzahl))
-
- ' Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem(
- ' name:=checkNull(bez),
- ' billedQuantity:=Convert.ToDecimal(checkNull(anzahl)),
- ' unitCode:=QuantityCodes.C62, ' immer in Stück
- ' netUnitPrice:=Convert.ToDecimal(einzelpreis),
- ' grossUnitPrice:=Convert.ToDecimal(einzelpreis),
- ' categoryCode:=IIf(SteuerpflichtigerBetrag > 0, TaxCategoryCodes.S, TaxCategoryCodes.Z),
- ' taxPercent:=IIf(SteuerpflichtigerBetrag > 0, Convert.ToDecimal(steuerProzent * 100), 0),
- ' taxType:=IIf(SteuerpflichtigerBetrag > 0, TaxTypes.VAT, TaxTypes.VAT)
- ' )
- ' Dim netUnitPrice = Convert.ToDecimal(einzelpreis)
- ' Dim netPricePos = netUnitPrice * Convert.ToDecimal(checkNull(anzahl))
- ' sumNetto += netPricePos
-
- ' bez = ""
-
- ' End If
-
- 'Next
-
Next
@@ -3613,14 +3513,6 @@ Public Class cFakturierung
desc.SetPaymentMeans(PaymentMeansTypeCodes.SEPACreditTransfer, rptAnl.Label2.Text)
End If
- 'If RECHNUNG.TextZZ.ToString.Contains("Abbuchungsauftrag") Then
- ' desc.SetPaymentMeansSepaDirectDebit("", ,"")
- 'Else
- 'desc.SetPaymentMeans(PaymentMeansTypeCodes.PaymentToBankAccount, rpt.Label2.Text)
- 'End If
-
-
-
Select Case FIRMA.Firma_ID
Case 21, 22, 23 '"UNISPED"
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, ""))
@@ -3856,7 +3748,7 @@ Public Class cFakturierung
Return firma
End Function
Shared Function getSignature(RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang) As String
- Return getSignature(RECHNUNG.RechnungsLandKz, RECHNUNG.Firma_ID)
+ Return getSignature(RECHNUNG.RechnungsLandKz, RECHNUNG.Firma_ID,,,,,,,, useLogosFromDB)
End Function
Shared Function getSignature(Optional landKz = "", Optional firma = -1, Optional individuell = False, Optional displayFirmenmane = True, Optional special = "", Optional additionalLine = "", Optional departmentmailadress = True, Optional fakturierung = False, Optional firmenSignature = False, Optional useLogosFromDB = False) As String
@@ -3911,6 +3803,7 @@ Public Class cFakturierung
imgTag = "
"
Case 20 'Imex
+
imgTag = "
"
Case 24 'AMBAR
@@ -4354,35 +4247,6 @@ Public Class cFakturierung
Return sum
End Function
- 'Shared Function getSteuerfreiEUSTZOLL(FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen, RechnungsNr As String, RechnungsDatum As String, Firma_ID As Integer, Optional VorschauID As String = "") As Double
-
- ' Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
- ' Dim SqlStr = "SELECT SUM(dbo.RechnungsausgangPositionen.SteuerfreierBetrag) AS ReverseChargeSumme
- ' 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 1=1 "
-
- ' If VorschauID = "" Then
- ' SqlStr &= " AND (dbo.Rechnungsausgang.RechnungsNr = '" & RechnungsNr & "') AND (dbo.Rechnungsausgang.RechnungsDatum = '" & CDate(RechnungsDatum).ToShortDateString & "') "
- ' Else
- ' SqlStr &= " AND (dbo.Rechnungsausgang.VorschauID = '" & VorschauID & "') "
- ' End If
-
- ' SqlStr &= " AND Leistungen.Steuerpflichtig=0 "
- ' SqlStr &= " and Firma_ID= '" & Firma_ID & "' "
-
- ' Dim sum = SQL.getValueTxtBySql(SqlStr, "FMZOLL")
- ' If sum Is DBNull.Value Or sum = "" Then Return 0
- ' Return sum
- 'End Function
-
- ' 0-_> Rechnung angelegt
- ' 1-_> Einzel-Rg gedruckt
- ' 2-_> Anlagen zur Rg gedruckt
- ' 3-_> Sammel-Rg gedruckt
- ' 4-_> ? irgendwas mit SR 6 Maut/Diesel??
-
Public Shared Function GET_SR_SQLDT(Firma_ID As Integer, SammelrechungArt As Integer, DatumBis As Date, Optional whereKdNr As String = "", Optional SB As String = "", Optional AvisoIds As List(Of Integer) = Nothing, Optional FakturierungsGruppe As String = "", Optional Abfertigungsart As String = "", Optional AUTOMailversand As String = "", Optional RechnungsNrAlreadySet As Boolean = False, Optional RechnungNr As Integer = -1) As DataTable
If whereKdNr <> "" Then whereKdNr = " AND RechnungsKundenNr IN(" & whereKdNr & ") "
Dim whereAbfArt = ""
@@ -5612,19 +5476,19 @@ Public Class cFakturierung
'Mehrsprachigkeit bei Sammelrechnung vorerst deaktivieren!!!!
- 'Case "EN"
- ' Select Case BelegartenKz
- ' Case "AR"
- ' 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(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:"
- ' End Select
+ Case "EN"
+ Select Case BelegartenKz
+ Case "AR"
+ rpt.lblUeberschriftRG_GS.Text = IIf(Not isMDMRechnungsdruck, "Attachment 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(Not isMDMRechnungsdruck, "Attachment to CREDIT NOTE", "CREDIT NOTE")
+ rpt.lblSummeUeberschrift.Text = "Credit Amount:"
+ rpt.lblRgNrUeberschrift.Text = "Credit Note No.:"
+ rpt.lblRgDatumUeberschrift.Text = "Credit Note Date:"
+ End Select
Case Else
Select Case BelegartenKz
Case "AR"
@@ -5972,49 +5836,14 @@ Public Class cFakturierung
Dim ROW As DataRow = dt.Rows(0)
Dim rpt As New rptSammelRechnungDruck(ROW("RechnungSprache"))
-
Dim firmaID = ROW("Firma_ID")
-
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"), firmaID)
-
If FIRMA Is Nothing Then MsgBox("Keine Firma gewählt!") : Return False
-
-
- ' Dim dataView As New DataView(dtDataSource)
- ' dataView.Sort = " LeistungsNr "
- ' Dim dtTmp As DataTable = dataView.ToTable()
-
- ' rpt.DataSource = SQL.loadDgvBySql("SELECT * FROM [Rechnungsausgangpositionen] where RK_ID ='" & RECHNUNG.RK_ID & "' ", "FMZOLL")
rpt.DataSource = dt
-
- '' MsgBox(rpt.DataSource.rows.count)
- 'If rpt.DataSource.rows.count = 0 Then
- ' rpt.Dispose()
- ' MsgBox("Keine Daten vorhanden!")
- ' Return False
- 'End If
-
Dim sum = 0
- 'Select Case RECHNUNG.[BelegartenKz]
- ' Case "AR"
- ' rpt.lblUeberschriftRG_GS.Text = "RECHNUNG"
- ' Case "AG"
- ' rpt.lblUeberschriftRG_GS.Text = "GUTSCHRIFT"
- ' rpt.Label9.Text = "Gutschriftsbetrag:"
- ' rpt.Label16.Text = "Gutschrifts-Nr.:"
- 'End Select
-
- 'If RECHNUNG.DruckDatumZeit IsNot Nothing Then rpt.lblUeberschriftRG_GS.Text &= " - KOPIE"
-
-
- ' Dim Gesamt_RG_Betrag As Double = 0
Dim Gesamt_RG_Betrag As Double = CDbl(dt.Compute("SUM(SteuerFreierBetrag)", "")) + CDbl(dt.Compute("SUM(SteuerpflichtigerBetrag)", ""))
-
- ' If ROW("SteuerFreierBetrag") IsNot DBNull.Value AndAlso IsNumeric(ROW("SteuerFreierBetrag")) Then Gesamt_RG_Betrag += ROW("SteuerFreierBetrag")
- 'If ROW("SteuerpflichtigerBetrag") IsNot DBNull.Value AndAlso IsNumeric(ROW("SteuerpflichtigerBetrag")) Then Gesamt_RG_Betrag += ROW("SteuerpflichtigerBetrag")
Dim BelegartenKz = If(Gesamt_RG_Betrag < 0, "AG", "AR")
Select Case ROW("RechnungSprache")
diff --git a/SDL/Fakturierung/frmAbrechnungsMaske.vb b/SDL/Fakturierung/frmAbrechnungsMaske.vb
index 0f88241b..f989dd8f 100644
--- a/SDL/Fakturierung/frmAbrechnungsMaske.vb
+++ b/SDL/Fakturierung/frmAbrechnungsMaske.vb
@@ -462,9 +462,6 @@ Public Class frmAbrechnungsMaske
Case Else : orderBy = " ORDER BY /*[BelegartenKz] DESC,*/ FilialenNr, AbfertigungsNr, [RK_ID]"
End Select
- 'MsgBox("SELECT RK_ID,Rechnungsdruck as Rechnungsdruck FROM Rechnungsausgang INNER JOIN Adressen ON AdressenNr=RechnungsKundenNr WHERE Status=0 " & getRGWhere("ER") & orderBy)
- 'Exit Sub
-
Dim PARAM_printZollbeleg = VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("FAKTURIERUNG_PRINT_Zollbeleg")
Dim dt = SQL.loadDgvBySql("SELECT RK_ID,Rechnungsdruck as Rechnungsdruck FROM Rechnungsausgang INNER JOIN Adressen ON AdressenNr=RechnungsKundenNr WHERE Status=0 " & getRGWhere("ER", FilialNrRestriction) & orderBy, "FMZOLL")
@@ -475,6 +472,8 @@ Public Class frmAbrechnungsMaske
For Each r In dt.Rows
If r("Rechnungsdruck") = "2" Or r("Rechnungsdruck") = "5" Then
cFakturierung.doRechnungsDruck_MAIL(r("RK_ID"), RechnungsDatum,, r("Rechnungsdruck"),, cboPrinter.Text,, PARAM_printZollbeleg)
+ ElseIf r("Rechnungsdruck") = "6" OrElse r("Rechnungsdruck") = "7" Then
+ 'AUTO-MAIL- diese überspringen!
Else
cFakturierung.doRechnungsDruck(r("RK_ID"), RechnungsDatum,,,, cboPrinter.Text,, PARAM_printZollbeleg)
End If
diff --git a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb
index a988fa21..8107d2b7 100644
--- a/SDL/Fakturierung/usrCntlFaktAbrechnung.vb
+++ b/SDL/Fakturierung/usrCntlFaktAbrechnung.vb
@@ -25,6 +25,7 @@ Public Class usrCntlFaktAbrechnung
Dim veragKunde As Integer = -1
Public isVZ As Boolean = False
Dim FormularArt = ""
+ Dim setDefaultAutoMailversand As Boolean = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AUTOMAILVERSAND", "SDL")
' Public VALUE_CHANGED = True ' Eigenschaft, ob das Formular gespeichert ist oder verändert wurde
@@ -1064,6 +1065,7 @@ Public Class usrCntlFaktAbrechnung
initRgArt()
initKdAtrNr()
initPkSt()
+ initDGVAnhaenge()
End Sub
@@ -1581,50 +1583,19 @@ Public Class usrCntlFaktAbrechnung
Dim vorzeichen = 1 'If(RECHNUNG.Vorzeichen = "-", -1, 1)
POS.Preis *= vorzeichen
- 'MsgBox(RECHNUNG.Steuersatz_Proz)
-
-
- ' POS.Steuerpflichtig = r.Cells("Steuerpflichtig").Value
initSteuerbetraege(RECHNUNG, POS)
-
- 'If (RECHNUNG.Steuersatz_Proz <> 0) And CBool(SQL.DLookup("Steuerpflichtig", "Leistungen", "[LeistungsNr] = '" & POS.LeistungsNr & "'", "FMZOLL")) Then ' Steuersatz muss ungleich 0 sein, damit der Betrag steuerpflichtig wird
- ' POS.SteuerpflichtigerBetrag = POS.Preis * POS.Anzahl
- ' POS.Steuerpflichtig = True
- 'Else
- ' POS.SteuerfreierBetrag = POS.Preis * POS.Anzahl
- ' POS.Steuerpflichtig = False
- 'End If
-
-
-
- ' POS.AufschubkontoNr = r.Cells("AufschubkontoNr").Value
- ' POS.Aufschubfälligkeit = r.Cells("Aufschubfälligkeit").Value
- ' POS.Prüfsumme_berechnen = r.Cells("Prüfsumme berechnen").Value
- ' POS.DateiNameAufschub = r.Cells("DateiNameAufschub").Value
- ' POS.Preisbindung = r.Cells("Preisbindung").Value
- ' POS.Belegdaten = r.Cells("Belegdaten").Value
- ' POS.Fremdwährung = r.Cells("Fremdwährung").Value
POS.BGebLeistungsNr = r.Cells("BGebLeistungsNr").Value
POS.BGebProzent = r.Cells("BGebProzent").Value
POS.BGebMinBetrag = r.Cells("BGebMinBetrag").Value
-
- ' Property RePosZeitstempel As Object = Nothing
-
-
POS.IndexZkteing = DBnullNothing(r.Cells("IndexZkteing").Value, 0)
POS.AufschubkontoNr = DBnullNothing(r.Cells("AufschubkontoNr").Value)
POS.Aufschubfälligkeit = DBnullNothing(r.Cells("Aufschubfälligkeit").Value)
POS.DateiNameAufschub = DBnullNothing(r.Cells("DateiNameAufschub").Value)
POS.Belegdaten = DBnullNothing(r.Cells("Belegdaten").Value)
-
- ' Try : If (r.Cells("BerechnungsartNr").Value = 8) And r.Cells("Anzahl").Value > 1 Then r.Cells("Anzahl").Value = 1
- ' Catch ex As Exception : End Try
-
Try : r.Cells("Preis").ReadOnly = (IIf(SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115, False, r.Cells("BerechnungsartNr").Value = 8))
Catch ex As Exception : End Try
- 'End If
RECHNUNG.POSITIONEN.Add(POS) 'ALLE HINENLADEN! --> Sonst Problem mit SVS/VP/KA
Next
@@ -1743,77 +1714,24 @@ Public Class usrCntlFaktAbrechnung
RECHNUNG.VermittlerName_1 = SPEDBUCH.Vermittler
End If
- 'RECHNUNG.Rechnung_an =
- 'RECHNUNG.KundenNrZentrale = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsLandKz = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsKundenNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsName_1 = SPEDBUCH.XXXXXXXX '!!!!
- 'RECHNUNG.RechnungsName_2 = SPEDBUCH.XXXXXXXX '!!!!
- 'RECHNUNG.RechnungsStraße = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsOrt = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsUstIdKz = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsUstIdNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RechnungsUstIdGeprüft = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Lastschrift = SPEDBUCH.
- 'RECHNUNG.Kunden_SVS = SPEDBUCH.XXXXXXXX '!!!!-
- 'RECHNUNG.Steuerschlüssel = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Steuersatz_Proz = SPEDBUCH.XXXXXXXX '!!!! %
+
RECHNUNG.LKW_Kennzeichen = SPEDBUCH.LKW_Kennzeichen
- 'txtRohmasse SPEDBUCH.Rohmasse
RECHNUNG.WährungsNr = SPEDBUCH.Währungsschlüssel
RECHNUNG.Wert = SPEDBUCH.Rechnungsbetrag
- ' RECHNUNG.Umrechnungskurs = "EUR"
RECHNUNG.Packstücke_und_Warenbezeichnung = SPEDBUCH.Packstücke
RECHNUNG.Vermerk = SPEDBUCH.Vermerk
- 'RECHNUNG.Anlage_1 = SPEDBUCH.XXXXXXXX '!!!!
- ' RECHNUNG.Anlage_2 = SPEDBUCH.XXXXXXXX '!!!!
- ' RECHNUNG.Anlage_3 = SPEDBUCH.XXXXXXXX '!!!!
- ' RECHNUNG.Anlage_4 = SPEDBUCH.XXXXXXXX '!!!!
- ' RECHNUNG.Anlage_5 = SPEDBUCH.XXXXXXXX '!!!!
- ' RECHNUNG.Anlage_6 = SPEDBUCH.XXXXXXXX '!!!!
- 'RECHNUNG.OffertenNr = SPEDBUCH.o
- 'RECHNUNG.Vorlageprovision_Proz = SPEDBUCH.XXXXXXXX '!!!!%
- 'RECHNUNG.Kreditaufwendungen_Proz = SPEDBUCH.XXXXXXXX '!!!!%
- 'RECHNUNG.Besonderheiten = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Vorkasse = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Text = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.SteuerpflichtigerGesamtbetrag = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.SteuerfreierGesamtbetrag = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Status = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.DruckDatumZeit = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Abfertigungskosten = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Vorkosten = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Erlös = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Buchungsjahr = SPEDBUCH.XXXXXXXX
- ' RECHNUNG.Währungscode = SPEDBUCH.XXXXXXXX
RECHNUNG.Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
- 'RECHNUNG.Trdin = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.KartenNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RefFilialenNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RefAbfertigungsNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.RefUnterNr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Notiz = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Zucker_MRN_Nr = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Zucker_MRN_Datum = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Zucker_Aufschub = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.ReErfZeitstempel = SPEDBUCH.XXXXXXXX
- 'RECHNUNG.Nettozahlungsziel = SPEDBUCH.XXXXXXXX
- ' RECHNUNG.Firma_ID = SPEDBUCH.XXXXXXXX
RECHNUNG.SpeditionsbuchUnterNr = SPEDBUCH.UnterNr
RECHNUNG.ErfassungsNr = SPEDBUCH.ErfassungsNr
RECHNUNG.AvisiererKundenNr = SPEDBUCH.AvisiererKundenNr
RECHNUNG.Avisierer = SPEDBUCH.Avisierer
- 'RECHNUNG.EMailRechnungstext = SPEDBUCH.XXXXXXXX
RECHNUNG.AvisoID = SPEDBUCH.AvisoID
If SPEDBUCH.Grenzstelle IsNot Nothing Then
If SPEDBUCH.Grenzstelle.Replace("???", "") = "" Then
If RECHNUNG.AvisoID IsNot Nothing Then
Dim Zollstelle = SQL.DLookup("Zollstelle", "AVISO", "AvisoID='" & SPEDBUCH.AvisoID & "'", "AVISO")
- ' RECHNUNG.Grenze = SQL.getValueTxtBySql("SELECT [basncd_name] FROM basncd WHERE basncd_dstnr='" & If(Zollstelle, "") & "' ", "ATLAS")
RECHNUNG.Grenze = SQL.getValueTxtBySql("SELECT [Description] FROM tbl_DY_ZollDE_C0141_Zollstellen WHERE Code='" & If(Zollstelle, "") & "' AND ((StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE())) ", "FMZOLL")
-
-
End If
Else
Select Case SPEDBUCH.Grenzstelle
@@ -1938,85 +1856,55 @@ Public Class usrCntlFaktAbrechnung
'Anhänge aus USTVA -> SPED-BUCH + Excel Pos-Liste
- If SPEDBUCH IsNot Nothing Then
+ If SPEDBUCH IsNot Nothing AndAlso RECHNUNG IsNot Nothing AndAlso RECHNUNG.RK_ID > 0 Then
If FIRMA IsNot Nothing Then
If FIRMA.Firma_ID = 19 AndAlso SPEDBUCH.ErfassungsNr <> "" AndAlso SPEDBUCH.ErfassungsNr > 0 AndAlso (SPEDBUCH.Abfertigungsart = 114 Or SPEDBUCH.Abfertigungsart = 115 Or SPEDBUCH.Abfertigungsart = 10) Then
Dim func As New cMDMFunctionsAllgemein()
Dim dt = SQL.loadDgvBySql("SELECT UStVPo_daId, UStVPo_ID,UStVPo_SchnittstellenNr, UStVPo_ReNr, UStVPo_ReDat FROM tblUStVPositionen where UStVAn_ID='" & SPEDBUCH.ErfassungsNr & "' /* AND UStVPo_SchnittstellenNr <> 1 */ " & IIf(isVZ, " And UStVPo_VZ = 1 And UStVPo_VZ_RKID Is null", "") & " order by UStVPo_ID", "FMZOLL")
- Dim USTV As New cUSTVAntrag(SPEDBUCH.ErfassungsNr)
+ Dim USTV As New cUSTVAntrag(SPEDBUCH.ErfassungsNr)
Dim Antrag_LandKz = ""
If USTV.UStVAn_ID > 0 Then Antrag_LandKz = SQL.DLookup("LandKz", "[Länderverzeichnis für die Außenhandelsstatistik]", "Landnr='" & USTV.UStVAn_LandNr & "'", "FMZOLL")
-
-
'soll immer alle POS bekommen! laut Lidya! 28.04.2025 - aber nicht im Excel-Format sondern als PDF-Batinic 15.05.2025
Dim dtPOSList As New DataTable
Dim prt As String = func.generatePosList(USTV, "", "", "", False, "prt", dtPOSList, isVZ, IIf(RECHNUNG IsNot Nothing, RECHNUNG.RK_ID, -1))
If prt <> "" Then
Try
+ Dim tmpPath = createPOSReport(dtPOSList, USTV)
+ Dim reportAktualisiert As Boolean = False
- Dim rpt As New rptMWSTListe
-
- rpt.DataSource = dtPOSList
-
- rpt.GroupHeader1.DataField = "Firma_ID" 'Gruppierung
-
- If rpt.DataSource.rows.count > 0 Then
-
- Dim AD As New cAdressen(USTV.UStVAn_KuNr)
- Dim sum As Double = 0
-
- rpt.lblVatNo.Text = USTV.UStVAn_Steuernummer
- rpt.lblCompanyname.Text = AD.Name_1 & " " & AD.Name_2
- rpt.lblDat.Text = Now.ToShortDateString
-
-
- AddHandler rpt.Detail.Format, Sub()
-
- rpt.lblNumber.Text = rpt.Fields.Item("Number").Value()
- rpt.lblGoods.Text = rpt.Fields.Item("Name of service").Value()
- rpt.lblName.Text = rpt.Fields.Item("Name of supplier").Value()
- rpt.lblTax.Text = CDbl(rpt.Fields.Item("Amount of tax refund").Value()).ToString("N2")
- rpt.lblDate.Text = CDate((rpt.Fields.Item("Date of Invoice").Value())).ToShortDateString
- rpt.lblInvoiceNo.Text = rpt.Fields.Item("Number of invoice").Value()
-
- sum += CDbl(rpt.Fields.Item("Amount of tax refund").Value()).ToString("N2")
- End Sub
-
-
- AddHandler rpt.GroupFooter1.Format, Sub()
- rpt.lblSumme.Text = sum.ToString("N2")
- rpt.lblWahrung.Text = USTV.UStVAn_Währungscode
-
- End Sub
-
-
- Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(SPEDBUCH.AbfertigungsNr, ".pdf", , False)
- Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
- rpt.Run(False)
- p.NeverEmbedFonts = ""
- p.Export(rpt.Document, tmpPath)
- rpt.Dispose()
+ If Not String.IsNullOrWhiteSpace(tmpPath) Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", SPEDBUCH.AbfertigungsNr & ".pdf", USTV.UStVAn_KuNr, False)
- 'If Not DS.hasITEMS Then 'immer neu generieren, falls der Antrag geändert wurde, muss der die neue POS-Liste geladen werden!!!!
- DS.uploadDataToDATENSERVER(tmpPath,,, False,, True, True)
- 'End If
+ If Not DS.hasITEMS OrElse (DS.hasITEMS AndAlso DS.da_date < USTV.UStVAn_Zeitstempel) Then
+ Dim DS_NEW As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "POS_LISTE", "", "", SPEDBUCH.AbfertigungsNr & "_" & RECHNUNG.RK_ID & ".pdf", USTV.UStVAn_KuNr, False) ' Wechsel auf neues Namensschema
+ If Not DS_NEW.hasITEMS Then
+ DS_NEW.uploadDataToDATENSERVER(tmpPath,,, False,, True, True)
+ reportAktualisiert = True
+ ElseIf DS_NEW.da_date <= USTV.UStVAn_Zeitstempel Then
+ DS_NEW.uploadDataToDATENSERVER(tmpPath,,, False,, True, True)
+ reportAktualisiert = True
+ End If
+ DS = DS_NEW
+ End If
+
If .Rows.Count > 0 Then
-
For Each r As DataGridViewRow In .Rows
If .Columns.Contains("clmnBezeichnung") AndAlso r.Cells("clmnBezeichnung").Value = DS.da_name AndAlso RECHNUNG.DruckDatumZeit Is Nothing Then
- .Rows.Remove(r)
- For Each ATT As cRechnungsausgangAnhaenge In RECHNUNG.ANHAENGE
- If ATT.Bezeichnung = DS.da_name AndAlso RECHNUNG.DruckDatumZeit Is Nothing Then
- Dim ANH_DEL As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge()
- ANH_DEL.DELETE(ATT.RK_ID, ATT.dsId)
- End If
- Next
+ If reportAktualisiert Then
+ .Rows.Remove(r)
+ For Each ATT As cRechnungsausgangAnhaenge In RECHNUNG.ANHAENGE
+ If ATT.Bezeichnung = DS.da_name AndAlso RECHNUNG.DruckDatumZeit Is Nothing Then
+ Dim ANH_DEL As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge()
+ ANH_DEL.DELETE(ATT.RK_ID, ATT.dsId)
+ End If
+ Next
+ End If
+
End If
@@ -2024,71 +1912,74 @@ Public Class usrCntlFaktAbrechnung
End If
If RECHNUNG.ANHAENGE.Count > 0 Then
- If RECHNUNG.DruckDatumZeit IsNot Nothing AndAlso Not RECHNUNG.ANHAENGE.Exists(Function(c) c.Bezeichnung = DS.da_name) Or RECHNUNG.DruckDatumZeit Is Nothing Then
- .Rows.Add(-1, "POS-LIST", DS.da_name, DS.da_id, -1)
+ If (RECHNUNG.DruckDatumZeit IsNot Nothing AndAlso Not RECHNUNG.ANHAENGE.Exists(Function(c) c.Bezeichnung = DS.da_name)) OrElse RECHNUNG.DruckDatumZeit Is Nothing Then
+ If reportAktualisiert Then .Rows.Add(-1, "POS-LIST", DS.da_name, DS.da_id, -1)
End If
Else
.Rows.Add(-1, "POS-LIST", DS.da_name, DS.da_id, -1)
End If
- End If
+ End If
+
Catch ex As Exception
- MsgBox(ex.Message & ex.StackTrace)
- End Try
- End If
+ MsgBox(ex.Message & ex.StackTrace)
- If dt IsNot Nothing Then
- For Each r In dt.Rows
+ End Try
- 'WARUM NOCHMAL not null??? -> weil laut lydia erst ab 2025 (und ab diesem Datum wird die daid in der USTVA_POS befüllt) die Dokumente digital mitgeschickt werden, vorher noch alles per POST!!!!!!!!!!!!!!!!!!
- If Not IsDBNull(r("UStVPo_daId")) Then
+ End If
- If RECHNUNG.ANHAENGE IsNot Nothing AndAlso Not RECHNUNG.ANHAENGE.Exists(Function(c) c.dsId = r("UStVPo_daId")) Then 'wenn der Anhang schon existiert!
+ If dt IsNot Nothing Then
+ For Each r In dt.Rows
- Dim DAID As String = ""
- DAID = func.getPDF(r("UStVPo_SchnittstellenNr"), r("UStVPo_ReNr"), r("UStVPo_ReDat"), r("UStVPo_daId"), False, True, Antrag_LandKz, USTV, New cFakturierung, True)
+ 'WARUM NOCHMAL not null??? -> weil laut lydia erst ab 2025 (und ab diesem Datum wird die daid in der USTVA_POS befüllt) die Dokumente digital mitgeschickt werden, vorher noch alles per POST!!!!!!!!!!!!!!!!!!
+ If Not IsDBNull(r("UStVPo_daId")) Then
- Dim nameLief As String = ""
+ If RECHNUNG.ANHAENGE IsNot Nothing AndAlso Not RECHNUNG.ANHAENGE.Exists(Function(c) c.dsId = r("UStVPo_daId")) Then 'wenn der Anhang schon existiert!
- Select Case r("UStVPo_SchnittstellenNr")
- Case 1 : nameLief = "VERAG-" 'Verag360
- Case 2, 8, 12 : nameLief = "IDS-"
- Case 3 : nameLief = "IT-"
- Case 4, 9 : nameLief = "MSE-"
- Case 5, 10 : nameLief = "UTA-"
- Case 6, 11 : nameLief = "PLOSE-"
- Case 7 : nameLief = "RMC-"
- End Select
+ Dim DAID As String = ""
+ DAID = func.getPDF(r("UStVPo_SchnittstellenNr"), r("UStVPo_ReNr"), r("UStVPo_ReDat"), r("UStVPo_daId"), False, True, Antrag_LandKz, USTV, New cFakturierung, True)
- nameLief &= "RE"
+ Dim nameLief As String = ""
- If DAID <> "" AndAlso IsNumeric(DAID) AndAlso r("UStVPo_SchnittstellenNr") <> 1 Then
- Dim daidno As Integer = CInt(DAID)
- Dim ds As New cDATENSERVER(daidno)
- .Rows.Add(-1, nameLief, ds.da_name, ds.da_id, -1)
+ Select Case r("UStVPo_SchnittstellenNr")
+ Case 1 : nameLief = "VERAG-" 'Verag360
+ Case 2, 8, 12 : nameLief = "IDS-"
+ Case 3 : nameLief = "IT-"
+ Case 4, 9 : nameLief = "MSE-"
+ Case 5, 10 : nameLief = "UTA-"
+ Case 6, 11 : nameLief = "PLOSE-"
+ Case 7 : nameLief = "RMC-"
+ End Select
- ElseIf DAID <> "" AndAlso r("UStVPo_SchnittstellenNr") = 1 Then
+ nameLief &= "RE"
- Dim DS_Eigenrechnungen As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "VERAG-RECHNUNGEN", "", "", USTV.UStVAn_KuNr & "_" & r("UStVPo_ReNr") & ".pdf", USTV.UStVAn_KuNr, False)
+ If DAID <> "" AndAlso IsNumeric(DAID) AndAlso r("UStVPo_SchnittstellenNr") <> 1 Then
+ Dim daidno As Integer = CInt(DAID)
+ Dim ds As New cDATENSERVER(daidno)
+ .Rows.Add(-1, nameLief, ds.da_name, ds.da_id, -1)
- If Not DS_Eigenrechnungen.hasITEMS Then 'falls bereits vorhanden, nicht nochmals erstellen!
- DS_Eigenrechnungen.uploadDataToDATENSERVER(DAID, USTV.UStVAn_KuNr & "_" & r("UStVPo_ReNr") & ".pdf",, False,, True, True)
- End If
- .Rows.Add(-1, nameLief, DS_Eigenrechnungen.da_name, DS_Eigenrechnungen.da_id, -1)
+ ElseIf DAID <> "" AndAlso r("UStVPo_SchnittstellenNr") = 1 Then
+ Dim DS_Eigenrechnungen As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MDM", "VERAG-RECHNUNGEN", "", "", USTV.UStVAn_KuNr & "_" & r("UStVPo_ReNr") & ".pdf", USTV.UStVAn_KuNr, False)
+ If Not DS_Eigenrechnungen.hasITEMS Then 'falls bereits vorhanden, nicht nochmals erstellen!
+ DS_Eigenrechnungen.uploadDataToDATENSERVER(DAID, USTV.UStVAn_KuNr & "_" & r("UStVPo_ReNr") & ".pdf",, False,, True, True)
End If
+ .Rows.Add(-1, nameLief, DS_Eigenrechnungen.da_name, DS_Eigenrechnungen.da_id, -1)
+
End If
- End If
- Next
- End If
+ End If
+ End If
+
+ Next
End If
End If
+ End If
End If
@@ -2097,6 +1988,56 @@ Public Class usrCntlFaktAbrechnung
End With
dgvAnhaenge.ClearSelection()
End Sub
+
+ Private Function createPOSReport(dtPOSList As DataTable, USTV As cUSTVAntrag) As String
+
+
+ Dim rpt As New rptMWSTListe
+
+ rpt.DataSource = dtPOSList
+
+ rpt.GroupHeader1.DataField = "Firma_ID" 'Gruppierung
+
+ If rpt.DataSource.rows.count = 0 Then Return ""
+
+ Dim AD As New cAdressen(USTV.UStVAn_KuNr)
+ Dim sum As Double = 0
+
+ rpt.lblVatNo.Text = USTV.UStVAn_Steuernummer
+ rpt.lblCompanyname.Text = AD.Name_1 & " " & AD.Name_2
+ rpt.lblDat.Text = Now.ToShortDateString
+
+
+ AddHandler rpt.Detail.Format, Sub()
+
+ rpt.lblNumber.Text = rpt.Fields.Item("Number").Value()
+ rpt.lblGoods.Text = rpt.Fields.Item("Name of service").Value()
+ rpt.lblName.Text = rpt.Fields.Item("Name of supplier").Value()
+ rpt.lblTax.Text = CDbl(rpt.Fields.Item("Amount of tax refund").Value()).ToString("N2")
+ rpt.lblDate.Text = CDate((rpt.Fields.Item("Date of Invoice").Value())).ToShortDateString
+ rpt.lblInvoiceNo.Text = rpt.Fields.Item("Number of invoice").Value()
+
+ sum += CDbl(rpt.Fields.Item("Amount of tax refund").Value()).ToString("N2")
+ End Sub
+
+
+ AddHandler rpt.GroupFooter1.Format, Sub()
+ rpt.lblSumme.Text = sum.ToString("N2")
+ rpt.lblWahrung.Text = USTV.UStVAn_Währungscode
+
+ End Sub
+
+
+ Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(SPEDBUCH.AbfertigungsNr, ".pdf", , False)
+ 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
Sub getDataFromSpedbuch_SHOW()
txtAbfertigungsart.Text = ""
txtAbfertigungsanzahl.Text = ""
@@ -4198,11 +4139,6 @@ Nächste_Textzeile_lesen:
initRECHNUNG()
RaiseEvent SOMETHING_CHANGED(-1)
- 'If cFakturierung.doRechnungsDruck(RECHNUNG,,, 2,, getPrinterFromParent) Then
- ' initRECHNUNG()
- ' RaiseEvent SOMETHING_CHANGED(-1)
- 'End If
-
End If
cbxOriginalPrint.Checked = False
End Sub
@@ -4265,21 +4201,12 @@ Nächste_Textzeile_lesen:
RECHNUNG.POSITIONEN.Add(TMPPos)
sbLeistung._value = ""
- 'aktualisieren:
-
- 'przBerechneRAPos("")
-
przBerechneRAPos("")
loadFormRGPosInOfferte()
initDGVRechnungenPositionen()
- 'przRefreshDGV_Positionen() 'false
- 'initDGVRechnungenPositionen()
- ' przRefreshDGV_Positionen()
- ' przRefreshDGV_Positionen()
sbLeistung.SET_VALUE("")
- ' loadFormRGPosInOfferte(False)
End If
End Sub
@@ -4758,7 +4685,7 @@ Nächste_Textzeile_lesen:
End Select
Else
- MsgBox("Speditionsbuch Eintrag nicht gefunden.")
+ MsgBox("Speditionsbuch-Eintrag nicht gefunden.")
End If
@@ -5587,6 +5514,8 @@ mwst:
Dim enableAUTOMAIL As Boolean = False
+ If setDefaultAutoMailversand Then cbxAUTOMailversand.Checked = False
+
If RECHNUNG Is Nothing Then
@@ -5596,28 +5525,28 @@ mwst:
Dim RD_DRUCK = -1
- Dim AD As cAdressen
+ Dim AD As cAdressen
- Select Case cboRechnungAn._value
- Case "1"
- If kdFirmaAbsender.KdNr = "" Then Return enableAUTOMAIL
- AD = New cAdressen(kdFirmaAbsender.KdNr)
- RD_DRUCK = If(AD.Rechnungsdruck, -1)
- Case "2"
- If kdFirmaEmpfaenger.KdNr = "" Then Return enableAUTOMAIL
- AD = New cAdressen(kdFirmaEmpfaenger.KdNr)
- RD_DRUCK = If(AD.Rechnungsdruck, -1)
- Case "3"
- If kdFirmaAuftraggeber.KdNr = "" Then Return enableAUTOMAIL
- AD = New cAdressen(kdFirmaAuftraggeber.KdNr)
- RD_DRUCK = If(AD.Rechnungsdruck, -1)
- Case "4"
- If kdFirmaAvisierer.KdNr = "" Then Return enableAUTOMAIL
- AD = New cAdressen(kdFirmaAvisierer.KdNr)
- RD_DRUCK = If(AD.Rechnungsdruck, -1)
- Case Else
- Return enableAUTOMAIL
- End Select
+ Select Case cboRechnungAn._value
+ Case "1"
+ If kdFirmaAbsender.KdNr = "" Then Return enableAUTOMAIL
+ AD = New cAdressen(kdFirmaAbsender.KdNr)
+ RD_DRUCK = If(AD.Rechnungsdruck, -1)
+ Case "2"
+ If kdFirmaEmpfaenger.KdNr = "" Then Return enableAUTOMAIL
+ AD = New cAdressen(kdFirmaEmpfaenger.KdNr)
+ RD_DRUCK = If(AD.Rechnungsdruck, -1)
+ Case "3"
+ If kdFirmaAuftraggeber.KdNr = "" Then Return enableAUTOMAIL
+ AD = New cAdressen(kdFirmaAuftraggeber.KdNr)
+ RD_DRUCK = If(AD.Rechnungsdruck, -1)
+ Case "4"
+ If kdFirmaAvisierer.KdNr = "" Then Return enableAUTOMAIL
+ AD = New cAdressen(kdFirmaAvisierer.KdNr)
+ RD_DRUCK = If(AD.Rechnungsdruck, -1)
+ Case Else
+ Return enableAUTOMAIL
+ End Select
'BEI EINZELRECHNUNG WIRD STATUS 0 und 2 geprüft
@@ -5632,15 +5561,16 @@ mwst:
Return enableAUTOMAIL = False
Else
enableAUTOMAIL = True
+ If setDefaultAutoMailversand AndAlso Not (FIRMA.Firma_ID = 19) Then cbxAUTOMailversand.Checked = True
End If
Else
enableAUTOMAIL = False
- End If
+ End If
- Else
+ Else
'If RECHNUNG.Rechnung_an = 0 Then
@@ -5661,7 +5591,7 @@ mwst:
Dim RD_DRUCK = -1
- Dim AD As cAdressen
+ Dim AD As cAdressen
Select Case cboRechnungAn._value
Case "1"
If RECHNUNG.AbsenderKundenNr Is Nothing Then Return enableAUTOMAIL
@@ -5694,18 +5624,19 @@ mwst:
If RECHNUNG.Sammelrechnung = 0 AndAlso RECHNUNG.DruckDatumZeit Is Nothing AndAlso (RD_DRUCK = 2 Or RD_DRUCK = 5) AndAlso (RECHNUNG.Status = 0 Or RECHNUNG.Status = 2) Then ' (RECHNUNG.Status <> 4 ANDAlso RECHNUNG.Status <> 0) WARUM NOCHMALS??
enableAUTOMAIL = True
+ If setDefaultAutoMailversand AndAlso Not (FIRMA.Firma_ID = 19) Then cbxAUTOMailversand.Checked = True
Else
enableAUTOMAIL = False
- End If
-
-
-
-
End If
+
+
+
+ End If
+
' If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
' 'Button8.Enabled = Not enableAUTOMAIL
' 'Button9.Enabled = Not enableAUTOMAIL
diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb
index 828d9022..28da8e54 100644
--- a/SDL/mdm/frmMDMDatenverarbetiung.vb
+++ b/SDL/mdm/frmMDMDatenverarbetiung.vb
@@ -3546,23 +3546,40 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
Dim OffertenNr As Integer
Dim Abfertigungsart As Integer
+
+
+ Dim KUNDE_ERW As New cKundenErweitert(KdNr)
+
+ Dim anh_Bez As String = "Email-Anhang"
+
+ If KUNDE_ERW IsNot Nothing AndAlso KUNDE_ERW.kde_Fakturierung_Sprache IsNot Nothing Then
+
+ Select Case KUNDE_ERW.kde_Fakturierung_Sprache
+ Case "DE"
+ anh_Bez = "Email-Anhang"
+ RG.RechnungSprache = KUNDE_ERW.kde_Fakturierung_Sprache
+ Case Else
+ anh_Bez = "Email-Attachement"
+ RG.RechnungSprache = "EN"
+ End Select
+
+ End If
+
Select Case Lieferant
- Case "PLOSE" : OffertenNr = 80 : Abfertigungsart = 10 : RG.Anlage_1 = ""
- Case "ASFINAG" : OffertenNr = 11 : Abfertigungsart = 10 : RG.Anlage_1 = "Email Anhang"
- Case "UTA" : OffertenNr = 30 : Abfertigungsart = 10 : RG.Anlage_1 = "Email Anhang"
- Case "MSE" : OffertenNr = 23 : Abfertigungsart = 10 : RG.Anlage_1 = "Email Anhang"
- Case "IDS" : OffertenNr = 17 : Abfertigungsart = 10 : RG.Anlage_1 = "Email Anhang"
- Case "IDS_AT" : OffertenNr = 21 : Abfertigungsart = 10 : RG.Anlage_1 = "Email Anhang"
+ Case "PLOSE" : OffertenNr = 80 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
+ Case "ASFINAG" : OffertenNr = 11 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
+ Case "UTA" : OffertenNr = 30 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
+ Case "MSE" : OffertenNr = 23 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
+ Case "IDS" : OffertenNr = 17 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
+ Case "IDS_AT" : OffertenNr = 21 : Abfertigungsart = 10 : RG.Anlage_1 = anh_Bez
End Select
RG.Firma_ID = 19 'RG.Firma_ID = 15
-
RG.FilialenNr = SPEDBUCH.FilialenNr
RG.AbfertigungsNr = SPEDBUCH.AbfertigungsNr
RG.SpeditionsbuchUnterNr = SPEDBUCH.UnterNr
RG.UnterNr = RG.getMaxRGUnterNr()
-
RG.Buchungsjahr = cRKSV.getGJ(datPloseAnhang.Value, RG.Firma_ID) 'If(Now.Month = 1, Now.Year - 1, Now.Year)
RG.FilialenNr = SPEDBUCH.FilialenNr
RG.Abfertigungsdatum = SPEDBUCH.Abfertigungsdatum
@@ -3571,7 +3588,6 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
RG.BelegartenNr = 70
RG.BelegartenBez = "Rechnung"
RG.Vorzeichen = "+"
-
RG.VermittlerKundenNr = AD.AdressenNr
RG.VermittlerLandKz = AD.LandKz
RG.VermittlerName_1 = AD.Name_1
@@ -3581,7 +3597,6 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
RG.VermittlerStraße = AD.Straße
RG.Rechnung_an = 3
RG.OffertenNr = OffertenNr
-
RG.KundenNrZentrale = KD.KundenNrZentrale
RG.RechnungsKundenNr = AD.AdressenNr
RG.RechnungsLandKz = AD.LandKz
@@ -3589,52 +3604,35 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
RG.RechnungsName_2 = AD.Name_2
RG.RechnungsOrt = (If(AD.LandKz, "") & " " & If(AD.PLZ, "") & " " & If(AD.Ort, ""))
RG.RechnungsStraße = AD.Straße
-
RG.RechnungsUstIdKz = AD.UstIdKz
RG.RechnungsUstIdNr = AD.UstIdNr
RG.RechnungsUstIdGeprüft = AD.UstIdGeprüft
-
RG.Lastschrift = KD.Lastschrift
RG.Kunden_SVS = KD.SVS
RG.Steuerschlüssel = KD.Steuerschlüssel
RG.Vorkasse = KD.Vorkasse
RG.Vorlageprovision_Proz = KD.Vorlageprovision
RG.Kreditaufwendungen_Proz = KD.Kreditaufwendungen
- RG.RechnungSprache = "DE"
-
RG.Anlage_2 = ""
RG.Anlage_3 = ""
RG.Anlage_4 = ""
RG.Anlage_5 = ""
RG.Anlage_6 = ""
-
RG.Text = ""
RG.EMailRechnungstext = Nothing ' ""
-
-
RG.Nettozahlungsziel = KD.Zahlungsziel
-
RG.SteuerpflichtigerGesamtbetrag = 0
RG.SteuerfreierGesamtbetrag = 0
RG.Status = 0 '<= Status während der Erfassung über die Maut/Diesel-Schnittstelle - Nach Abschluss der Datenübernahme Änderung auf 0 20231220 -> gleich auf 0 setzen!
-
RG.[Vorkosten] = 0
RG.[Erlös] = 0
- 'RG.[Buchungsjahr] = 0
RG.[Währungscode] = "EUR"
RG.ReErfZeitstempel = Now
-
-
RG.Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
- 'RG.Buchungsjahr = cRKSV.getGJ(RG.RechnungsDatum, RG.Firma_ID)
-
Dim sqlstr As String = ""
Dim useNettogesamtbetrag As Boolean = False
- 'If KdNr = "401715" Or KdNr = "401943" Or KdNr = "402179" Or KdNr = "402598" Or KdNr = "402656" Or KdNr = "402688" Or KdNr = "402719" Or KdNr = "402888" Or KdNr = "402933" Then
- 'MsgBox("Test")
- 'End If
Dim OFFERTE As New VERAG_PROG_ALLGEMEIN.cOfferte(KdNr, OffertenNr, True)
RG.LOAD_OFFERT_POSITIONEN() ' --> OFFERTE MIT ANZAHL >0 und Preis >0
@@ -3642,9 +3640,7 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land
Select Case Lieferant
Case "PLOSE"
- 'Dim OFFERTE As New VERAG_PROG_ALLGEMEIN.cOfferte(KdNr, OffertenNr, True)
- 'RG.LOAD_OFFERT_POSITIONEN() ' --> OFFERTE MIT ANZAHL >0 und Preis >0
- ' RG.LOAD_POSITIONEN_FROM_OFFERTE(OFFERTE)
+
sqlstr &= " SELECT [plp_LeistungsNr],sum([plose_NettobetragWaehrungAbbuchung]) as plose_NettobetragWaehrungAbbuchung,sum([plose_MWSTBetragWaehrungAbbuchung]) as [plose_MWSTBetragWaehrungAbbuchung],sum([plose_BruttobetragWaehrungAbbuchung]) as [plose_BruttobetragWaehrungAbbuchung] "
sqlstr &= " FROM tblPLOSE_Details INNER JOIN [tblPLOSE_Produktbeschreibung] on plose_ProduktCode=plp_ProductCode "
diff --git a/VERAG_PROG_ALLGEMEIN/AuditFlow/frmFirmenuebersicht.vb b/VERAG_PROG_ALLGEMEIN/AuditFlow/frmFirmenuebersicht.vb
index 8488b71b..35719602 100644
--- a/VERAG_PROG_ALLGEMEIN/AuditFlow/frmFirmenuebersicht.vb
+++ b/VERAG_PROG_ALLGEMEIN/AuditFlow/frmFirmenuebersicht.vb
@@ -10,7 +10,7 @@ Public Class frmFirmenuebersicht
Private Sub frminterneEmailBenachrichtigungen_Load(sender As Object, e As EventArgs) Handles Me.Load
- VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True
+ VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
loadDGVMailbenachrichtigungen()
diff --git a/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb b/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb
index 8c0e4934..3fd10af7 100644
--- a/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb
+++ b/VERAG_PROG_ALLGEMEIN/DATENSERVER/cDATENSERVER.vb
@@ -7,13 +7,9 @@ Imports System.Text
Imports System.Text.RegularExpressions
Imports System.Windows.Forms
Imports System.Xml
-Imports DocumentFormat.OpenXml
Imports iText.Kernel.Pdf
Imports iText.Kernel.Pdf.Filespec
-Imports iText.Kernel.XMP
-Imports iText.Kernel.XMP.Options
Imports iText.Pdfa
-Imports iText.Pdfa.Exceptions
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports Spire.Pdf
@@ -21,7 +17,6 @@ Imports Spire.Pdf.Attachments
Imports Spire.Pdf.Graphics
Imports Spire.Pdf.Print
Imports Font = iTextSharp.text.Font
-Imports PdfName = iTextSharp.text.pdf.PdfName
@@ -39,6 +34,7 @@ Public Class cDATENSERVER
'Property da_pfad As Object = Nothing
Property da_info As String = ""
Property da_multifiles As Boolean = False
+ Property da_date As Object = Nothing
Public Property DATA_LIST As New cDatenserverIDCollectionList
@@ -117,6 +113,7 @@ Public Class cDATENSERVER
Me.da_name = dr.Item("da_name")
Me.da_info = dr.Item("da_info")
Me.da_multifiles = dr.Item("da_multifiles")
+ Me.da_date = dr.Item("da_date")
DATA_LIST = New cDatenserverIDCollectionList(Me.da_id, rootDir)
End If
@@ -152,6 +149,7 @@ Public Class cDATENSERVER
Me.da_vorlage = dr.Item("da_vorlage")
Me.da_info = dr.Item("da_info")
Me.da_multifiles = dr.Item("da_multifiles")
+ Me.da_date = dr.Item("da_date")
DATA_LIST = New cDatenserverIDCollectionList(Me.da_id, rootDir)
End If