Kundebeabeit, MDMDatenverarb., Fakt, Syska-Einarbeitung, Offerten, etc.

This commit is contained in:
2025-08-08 10:47:22 +02:00
parent 58fb8e2cea
commit 59f19c2f9f
11 changed files with 448 additions and 201 deletions

View File

@@ -1,4 +1,5 @@
Imports System.Text.RegularExpressions
Imports sun.util.resources.cldr.ve
Public Class cSyska_Interface
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -359,6 +360,9 @@ Public Class cSyska_Interface
If r("BelegartenNr") = 71 And Not ambargubuchungen Then 'GUTSCHRIFT ---> Immer am Schluss
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
End If
If r("VZ") = 1 Then
file.WriteLine(genBuchungsZeileVZ(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
End If
Next
' file.WriteLine(genBuchungenEnd(SummeBuchungen))
bool_DatenVorhanden = True
@@ -545,7 +549,7 @@ Public Class cSyska_Interface
,min(WährungFremd) as WährungFremd,min(SteuerbetragFremd) as SteuerbetragFremd,min(RechnungsbetragFremd) as RechnungsbetragFremd,min(TrdinDateiname) as TrdinDateiname,min(Abgleich_op_debitor+0) as Abgleich_op_debitor
,min(Nettozahlungsziel) as Nettozahlungsziel,min(Firma_ID) as Firma_ID,min(UStVAn_ID) as UStVAn_ID /*,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig*/,sum(PROD.SteuerpflichtigerBetragLokal) as SteuerpflichtigerBetragLokal
,sum(PROD.SteuerfreierBetragLokal) as SteuerfreierBetragLokal,sum(PROD.SteuerpflichtigerBetragFremd) as SteuerpflichtigerBetragFremd,sum(PROD.SteuerfreierBetragFremd) as SteuerfreierBetragFremd,min(Belegdaten) as Belegdaten
,min(Sachkonto) as Sachkonto,min(Buchungstext) as Buchungstext,Sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal]) As BetragLokal, Sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd]) As BetragFremd
,min(Sachkonto) as Sachkonto,min(Buchungstext) as Buchungstext,Sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal]) As BetragLokal, Sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd]) As BetragFremd, MAX(VZ) as VZ, SUM(isnull(PROD.VZBetrag,0)) as VZBetrag
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum=PROD.Rechnungsdatum
" & where & "
@@ -821,6 +825,97 @@ Public Class cSyska_Interface
End Function
Public Shared Function genBuchungsZeileVZ(row As DataRow, ByRef SummeBuchungen As Double, ByRef Geschäftsjahr As Integer, ByRef FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen, ByRef curDifferenzbetrag As Double, Optional ambargubuchungen As Boolean = False) As String
Dim curSteuerbetrag As Double
Dim curNettobetrag As Double
Dim curBruttobetrag As Double
Dim FiBuBruttobetrag As String
Dim FiBuEigenbruttobetrag As Double
Dim FiBuSteuersatz As Double
Dim FiBuSteuerbetrag As String
Dim FiBuSollkontonummer As Integer
Dim FiBuHabenkontonummer As Integer
Dim FiBuWährung = "EUR"
Dim ANTRAG As New cUSTVAntrag(row("UStVAn_ID"))
Dim KUNDE_ERW As New cKundenErweitert(ANTRAG.UStVAn_KuNr)
Dim MonthStart As String = IIf(CDate(ANTRAG.UStVAn_ReDatVon).Month < 10, "0", "") & CDate(ANTRAG.UStVAn_ReDatVon).Month
Dim MonthEnd As String = IIf(CDate(ANTRAG.UStVAn_ReDatBis).Month < 10, "0", "") & CDate(ANTRAG.UStVAn_ReDatBis).Month
Select Case row("BelegartenNr")
Case 71 'Gutschrift
If Not ambargubuchungen Then
Select Case row("KundenNrZentrale")
Case "150000", "180000" : FiBuSollkontonummer = 2865
Case "140000" : FiBuSollkontonummer = 2868
Case Else
FiBuSollkontonummer = 2866
End Select
FiBuHabenkontonummer = If(row("Sachkonto") IsNot DBNull.Value, row("Sachkonto"), " ")
If row("WährungFremd") Is DBNull.Value Then
curNettobetrag = 0 - row("VZBetrag")
Else
curNettobetrag = 0 - row("VZBetrag")
End If
End If
End Select
'If CBool(row("steuerpflichtig")) Then
' curSteuerbetrag = CLng(curNettobetrag * CDbl(row("Steuersatz")) * 100) / 100
' curBruttobetrag = curNettobetrag + curSteuerbetrag
' FiBuBruttobetrag = curBruttobetrag.ToString("N2")
' curDifferenzbetrag = Math.Round(curDifferenzbetrag, 2) - Math.Round(CDbl(FiBuBruttobetrag), 2)
' FiBuSteuersatz = Format(CDbl(row("Steuersatz")) * 100, "00.00")
' ' Die folgende Zeile führt zu Buchungsfehler bei Fremdwährung,
' ' Buchungssatz.FiBuSteuerbetrag = Format(curSteuerbetrag, "########0.00")
' ' deshalb nur Steuerprozent und keinen Steuerbetrag übergeben.
' FiBuSteuerbetrag = ""
'Else
curBruttobetrag = curNettobetrag
FiBuBruttobetrag = curBruttobetrag.ToString("N2")
curDifferenzbetrag = Math.Round(curDifferenzbetrag, 2) - Math.Round(CDbl(FiBuBruttobetrag), 2)
FiBuSteuersatz = "00,00"
FiBuSteuerbetrag = ""
'End If
If row("WährungFremd") Is DBNull.Value Then
FiBuEigenbruttobetrag = CDbl(row("RechnungsbetragLokal")) 'Bruttobetrag
FiBuWährung = row("WährungLokal")
Else
FiBuWährung = row("WährungFremd")
FiBuEigenbruttobetrag = CDbl(row("RechnungsbetragFremd")) 'Bruttobetrag
End If
genBuchungsZeileVZ = "L" & vbTab
genBuchungsZeileVZ &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
genBuchungsZeileVZ &= "VZ " & CDate(row("Rechnungsdatum")).ToString("ddMMyy") & vbTab
genBuchungsZeileVZ &= FiBuSollkontonummer & vbTab
genBuchungsZeileVZ &= FiBuHabenkontonummer & vbTab
genBuchungsZeileVZ &= ANTRAG.UStVAn_KuNr & " " & IIf(Not IsDBNull(KUNDE_ERW.kde_BezFIBU), KUNDE_ERW.kde_BezFIBU, "") & " / " & ANTRAG.UStVAn_LandKz & " " & MonthStart & "-" & MonthEnd & "/" & CDate(ANTRAG.UStVAn_ReDatBis).Year.ToString.Substring(2) & " VZ" & vbTab
genBuchungsZeileVZ &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
genBuchungsZeileVZ &= Format(CDbl(FiBuSteuersatz), fmt) & vbTab 'FiBuSteuersatz
genBuchungsZeileVZ &= FormatStringDbl(FiBuSteuerbetrag) & vbTab 'FiBuSteuerbetrag
genBuchungsZeileVZ &= FiBuWährung & vbTab
genBuchungsZeileVZ &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
End Function
Public Shared Function genBuchungsZeileDiffBetrag(row As DataRow, ByRef SummeBuchungen As Double, ByRef Geschäftsjahr As Integer, ByRef FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen, ByRef curDifferenzbetrag As Double) As String
' Buchungssatz Steuerdifferenz