Datev Schnittstelle

This commit is contained in:
2023-02-08 15:35:08 +01:00
parent feedc5b8e3
commit 068fd4e669

View File

@@ -16,19 +16,19 @@
sqlStr &= " LEFT JOIN tblKundenErweitert ON KundenNr=kde_KundenNr "
sqlStr &= " LEFT JOIN [Länderverzeichnis für die Außenhandelsstatistik] as St ON St.LandKz=Adressen.LandKz "
sqlStr &= " LEFT JOIN Währungstabelle ON St.LandNr = Währungstabelle.Währungsschlüssel "
sqlStr &= "WHERE Auswahl='A' AND FilialenNr='" & filialNr & "'" 'AND FiBuSchnittstelle=1
sqlStr &= "WHERE Auswahl='A' AND FilialenNr='" & filialNr & "' And FiBuSchnittstelle = 1"
sqlStr &= " Order by [Kontonummer] "
Return SQL.loadDgvBySql(sqlStr, "FMZOLL")
End Function
Shared Function updateFibu() As DataTable
Shared Function updateFibu(filialNr As Integer) As DataTable
Dim sqlStr = " UPDATE Kunden "
sqlStr &= " SET FiBuSchnittstelle = '0' "
sqlStr &= " FROM Adressen INNER JOIN Kunden ON Kundennr=AdressenNr "
sqlStr &= " LEFT JOIN tblKundenErweitert ON KundenNr=kde_KundenNr "
sqlStr &= " WHERE FiBuSchnittstelle=1 AND Auswahl='A' AND FilialenNr='5701' "
sqlStr &= " WHERE FiBuSchnittstelle=1 AND Auswahl='A' AND FilialenNr='" & filialNr & "' "
Return SQL.loadDgvBySql(sqlStr, "FMZOLL")
End Function
End Function
Public Shared Function genStammdatenBeginn() As String
@@ -145,7 +145,7 @@
IO.File.Delete(pathKD & DateinameKD)
End If
'updateFibu() ' UPDATE FiBuSchnittstelle --> 0
updateFibu(filialNr) ' UPDATE FiBuSchnittstelle --> 0
End If
End If
@@ -204,8 +204,8 @@
'----------------- Buchungssätze -----------------
If True Then 'boolBuchungen Then
TrdInvoice_FUNCTIONS.TrdinSchreiben(FIRMA.Firma_ID, Buchungsjahr) 'Lädt die Daten aus der Tabelle Rechnungsausgang in die Tabelle trdInvoice (nur für 20 = IMEX )
Dim dt_Buchungen As DataTable = getBuchungen(FIRMA.Firma_ID)
TrdInvoice_FUNCTIONS.TrdinSchreiben(FIRMA.Firma_ID) 'Lädt die Daten aus der Tabelle Rechnungsausgang in die Tabelle trdInvoice (nur für 20 = IMEX )
Dim dt_Buchungen As DataTable = getBuchungen(FIRMA.Firma_ID)
If dt_Buchungen IsNot Nothing AndAlso dt_Buchungen.Rows.Count > 0 Then
Try
Dim file As System.IO.StreamWriter
@@ -223,7 +223,7 @@
bool_DatenVorhanden = True
'Update Filename TrdIn
'SQL.doSQL("update [tblTrdinInvoice] Set TrdinDateiname='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND TrdinDateiname is null ", "FMZOLL")
SQL.doSQL("update [tblTrdinInvoice] Set TrdinDateiname='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND TrdinDateiname is null ", "FMZOLL")
file.Close()
@@ -279,7 +279,7 @@
,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
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer And IVO.Rechnungsdatum = PROD.Rechnungsdatum
WHERE Firma_ID ='" & Firma_ID & "' AND TrdinDateiname Is Null
group by IVO.Rechnungsnummer,IVO.rechnungsdatum,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig
ORDER BY Rechnungsdatum, Rechnungsnummer "
@@ -343,31 +343,78 @@
Public Shared Function genBuchungsZeile(row As DataRow, ByRef SummeBuchungen As Double, ByRef Geschäftsjahr As Integer, ByRef FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen) As String
genBuchungsZeile = ""
Dim steuerbetragLokal As Double = 0
Dim steuerbetragFremd As Double = 0
Dim GJ_short = Geschäftsjahr.ToString.Substring(2, 2)
Dim RgNrOld = FormatStringDVO(row("Rechnungsnummer")).Substring(2)
Dim fremdW = FormatStringDVO(row("WährungFremd"))
Dim RgBetrWährungLokal As Double = 0
Dim RgBetrWährungFremd As Double = 0
Dim BelegBez As String
Dim BelegKz As String
Dim SollHabenKz As Char
Select Case row("BelegartenNr")
Case 70
BelegBez = "Rechnung"
BelegKz = "AR"
SollHabenKz = Chr(72)
Case 71
BelegBez = "Gutschrift"
BelegKz = "AG"
SollHabenKz = Chr(83)
Case Else
BelegBez = ""
BelegKz = ""
End Select
'Umsatz
If CBool(row("Steuerpflichtig")) Then
steuerbetragLokal = CDbl((getDbl2(row("SteuerpflichtigerBetragLokal")) * getDbl2(row("Steuersatz"))))
steuerbetragLokal += CDbl((getDbl2(row("SteuerpflichtigerBetragFremd")) * getDbl2(row("Steuersatz"))))
steuerbetragLokal += CDbl((getDbl2(row("SteuerpflichtigerBetragLokal")) * getDbl2(row("Steuersatz"))))
steuerbetragFremd += CDbl((getDbl2(row("SteuerpflichtigerBetragFremd")) * getDbl2(row("Steuersatz"))))
End If
' If steuerbetragLokal < 0 Then steuerbetragLokal = steuerbetragLokal * -1 --> SONST PROBLKEM BEI UNISPED; DA STEUER vom NETTO abgezogen wird!
genBuchungsZeile &= getDbltr(getDbl(row("SteuerpflichtigerBetragLokal")) + getDbl(row("SteuerfreierBetragLokal")) + getDbl(row("SteuerpflichtigerBetragFremd")) + getDbl(row("SteuerfreierBetragFremd")) + If(steuerbetragLokal <> 0, getDbltr(steuerbetragLokal), "0")) & ";" 'betrag + steuer (brutto)
'genBuchungsZeile &= getDbltr(getDbl(row("SteuerpflichtigerBetragLokal")) + getDbl(row("SteuerfreierBetragLokal")) + getDbl(row("SteuerpflichtigerBetragFremd")) + getDbl(row("SteuerfreierBetragFremd")) + If(steuerbetragLokal <> 0, getDbltr(steuerbetragLokal), "0")) + +If(steuerbetragFremd <> 0, getDbltr(steuerbetragFremd), "0")) & ";" 'betrag + steuer (brutto)
If fremdW <> "" Then
RgBetrWährungFremd = getDbltr(getDbl(row("SteuerpflichtigerBetragFremd")) + getDbl(row("SteuerfreierBetragFremd")) + If(steuerbetragFremd <> 0, getDbltr(steuerbetragFremd), "0"))
genBuchungsZeile &= IIf(RgBetrWährungFremd < 0, RgBetrWährungFremd * -1, RgBetrWährungFremd) & ";"
Else
RgBetrWährungLokal = getDbltr(getDbl(row("SteuerpflichtigerBetragLokal")) + getDbl(row("SteuerfreierBetragLokal")) + If(steuerbetragLokal <> 0, getDbltr(steuerbetragLokal), "0"))
genBuchungsZeile &= IIf(RgBetrWährungLokal < 0, RgBetrWährungLokal * -1, RgBetrWährungLokal) & ";"
End If
'Soll oder Haben
genBuchungsZeile &= IIf(row("BelegartenNr") = "70", FormatStringDVO(Chr(72)), FormatStringDVO(Chr(83))) & ";"
'Fremdwährungen -> nicht benötigt
genBuchungsZeile &= emptyFormatedValue()
genBuchungsZeile &= emptyFormatedValueWithoutCommas(2)
genBuchungsZeile &= emptyFormatedValue()
genBuchungsZeile &= FormatStringDVO(SollHabenKz) & ";"
'Fremdwährungen
If fremdW <> "" Then
genBuchungsZeile &= fremdW & ";"
genBuchungsZeile &= RgBetrWährungLokal / RgBetrWährungFremd + RgBetrWährungLokal Mod RgBetrWährungFremd
genBuchungsZeile &= emptyFormatedValue()
genBuchungsZeile &= FormatStringDVO(row("WährungLokal")) & ";"
Else
genBuchungsZeile &= emptyFormatedValue()
genBuchungsZeile &= emptyFormatedValueWithoutCommas(2)
genBuchungsZeile &= emptyFormatedValue()
End If
'Erlöskonto
genBuchungsZeile &= fill0Stellen(row("Sachkonto"), 4) & ";"
'Debitorenkonto
genBuchungsZeile &= (initKDNr2(row("KundenNrZentrale"), FIRMA.Firma_ID)) & ";"
'BU-Schlüssel -> nicht benötigt
genBuchungsZeile &= emptyFormatedValue()
'genBuchungsZeile &= getSteuercode(row, FIRMA) & ";"
'If CBool(row("Steuerpflichtig")) Then
' genBuchungsZeile &= (getDbl2(row("Steuersatz")) * 100) & ";" 'buchcode === 1 oder 2??
@@ -378,29 +425,34 @@
'Belegdatum
genBuchungsZeile &= "" & CDate(row("Rechnungsdatum")).ToString("ddMM") & ";"
'Belegfeld1 -> Rechnungsnummer
genBuchungsZeile &= FormatStringDVO(row("Rechnungsnummer")).Substring(0, 2) & "-" & FormatStringDVO(row("Rechnungsnummer")).Substring(2) & ";"
'Belegfeld 2 -> nicht benötigt
genBuchungsZeile &= FormatStringDVO(row("Rechnungsnummer")) & ";"
'Belegfeld 2 -> nicht benötigt (abweichendes Fälligkeitsdatum!)
genBuchungsZeile &= emptyFormatedValue()
' Skontoangabe -> Kontrollieren
' Skontoangabe -> nicht in Verwendung
genBuchungsZeile &= emptyFormatedValue()
'Buchungstext
'genBuchungsZeile &= FormatStringDVO(row("Buchungstext"),, Chr(34) & Chr(34)) & ";"
genBuchungsZeile &= FormatStringDVO(SQL.DLookup("[Ordnungsbegriff]", "Adressen", " AdressenNr= " & row("KundenNrZentrale"), "FMZOLL", "")) & ";"
'Leerzeilen
genBuchungsZeile &= emptyFormatedValue(25)
'UID-Nr
genBuchungsZeile &= FormatStringDVO(row("RechnungsUstIdKz")).Substring(0, 3) & FormatStringDVO(row("RechnungsUstIdNr")).Substring(1) & ";"
'genBuchungsZeile &= IIf(FormatStringDVO(row("RechnungsUstIdKz")) <> "", FormatStringDVO(row("RechnungsUstIdKz").Substring(0, 3)), "")
'genBuchungsZeile &= IIf(FormatStringDVO(row("RechnungsUstIdNr")) <> "", FormatStringDVO(row("RechnungsUstIdNr").Substring(1)), "") & ";"
genBuchungsZeile &= emptyFormatedValue(1)
'Leerzeilen
genBuchungsZeile &= emptyFormatedValue(7)
'Zusatzinformation Art1
genBuchungsZeile &= FormatStringDVO("D-Rechnung.") & ";"
genBuchungsZeile &= FormatStringDVO(BelegBez) & ";"
'Zusatzinformation Inhalt1
genBuchungsZeile &= FormatStringDVO("Datum " & CDate(row("Rechnungsdatum")).ToString("ddMMyyyy"))
genBuchungsZeile &= FormatStringDVO("Art RE" & " Re.Nr.")
genBuchungsZeile &= FormatStringDVO(row("Rechnungsnummer")).Substring(0, 2) & "-" & FormatStringDVO(row("Rechnungsnummer")).Substring(2) & ";"
genBuchungsZeile &= FormatStringDVO("Datum " & CDate(row("Rechnungsdatum")).ToString("ddMMyyyy") & " Art " & BelegKz & row("Rechnungsnummer")) & ";"
'Zusatzinformation Art2
genBuchungsZeile &= FormatStringDVO("D-RechPositionen.") & ";"
genBuchungsZeile &= FormatStringDVO(BelegBez & "positionen") & ";"
'Zusatzinformation Inhalt2
genBuchungsZeile &= FormatStringDVO(row("Leistungsbezeichnung"), 20) & ";"
'Leerzeilen