Datev Export, Schnittstelle für HKT (AMBAR), Essensbestellungen,

This commit is contained in:
2024-06-13 08:35:56 +02:00
parent 507e07c0e7
commit 08ffc3c49f
9 changed files with 154 additions and 81 deletions

View File

@@ -1,4 +1,6 @@
Public Class cDatev_Interface
Imports DocumentFormat.OpenXml.Wordprocessing
Public Class cDatev_Interface
Shared datevVersion As Integer = 700
Shared Datenkategorie As Integer = 16
@@ -122,7 +124,7 @@
fileKD = My.Computer.FileSystem.OpenTextFileWriter(pathKD & DateinameKD, True, System.Text.Encoding.GetEncoding("iso-8859-15"))
fileKD.WriteLine(genStammdatenHeader(Geschaeftsjahr))
fileKD.WriteLine(genStammdatenHeader(Geschaeftsjahr, Now.Month))
fileKD.WriteLine(genStammdatenBeginn())
initKDNr(dt_Stamm, FIRMA.Firma_ID)
@@ -234,7 +236,7 @@
' initKDNr(dt_Buchungen)
Dim SummeBuchungen As Double = 0
file.WriteLine(genStapelbuchungsHeader(Geschaeftsjahr))
file.WriteLine(genStapelbuchungsHeader(Geschaeftsjahr, Now.Month))
file.WriteLine(genBuchungenBeginn())
For Each r In dt_Buchungen.Rows
file.WriteLine(genBuchungsZeile(r, SummeBuchungen, Geschaeftsjahr, FIRMA))
@@ -310,12 +312,15 @@
Return "Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;WKZ Umsatz;Kurs;Basis-Umsatz;WKZ Basis-Umsatz;Konto;Gegenkonto (ohne BU-Schlüssel);BU-Schlüssel;Belegdatum;Belegfeld 1;Belegfeld 2;Skonto;Buchungstext;Postensperre;Diverse Adressnummer;Geschäftspartnerbank;Sachverhalt;Zinssperre;Beleglink;Beleginfo - Art 1;Beleginfo - Inhalt 1;Beleginfo - Art 2;Beleginfo - Inhalt 2;Beleginfo - Art 3;Beleginfo - Inhalt 3;Beleginfo - Art 4;Beleginfo - Inhalt 4;Beleginfo - Art 5;Beleginfo - Inhalt 5;Beleginfo - Art 6;Beleginfo - Inhalt 6;Beleginfo - Art 7;Beleginfo - Inhalt 7;Beleginfo - Art 8;Beleginfo - Inhalt 8;KOST1 - Kostenstelle;KOST2 - Kostenstelle;Kost-Menge;EU-Land u. UStID;EU-Steuersatz;Abw. Versteuerungsart;Sachverhalt L+L;Funktionsergänzung L+L;BU 49 Hauptfunktionstyp;BU 49 Hauptfunktionsnummer;BU 49 Funktionsergänzung;Zusatzinformation - Art 1;Zusatzinformation- Inhalt 1;Zusatzinformation - Art 2;Zusatzinformation- Inhalt 2;Zusatzinformation - Art 3;Zusatzinformation- Inhalt 3;Zusatzinformation - Art 4;Zusatzinformation- Inhalt 4;Zusatzinformation - Art 5;Zusatzinformation- Inhalt 5;Zusatzinformation - Art 6;Zusatzinformation- Inhalt 6;Zusatzinformation - Art 7;Zusatzinformation- Inhalt 7;Zusatzinformation - Art 8;Zusatzinformation- Inhalt 8;Zusatzinformation - Art 9;Zusatzinformation- Inhalt 9;Zusatzinformation - Art 10;Zusatzinformation- Inhalt 10;Zusatzinformation - Art 11;Zusatzinformation- Inhalt 11;Zusatzinformation - Art 12;Zusatzinformation- Inhalt 12;Zusatzinformation - Art 13;Zusatzinformation- Inhalt 13;Zusatzinformation - Art 14;Zusatzinformation- Inhalt 14;Zusatzinformation - Art 15;Zusatzinformation- Inhalt 15;Zusatzinformation - Art 16;Zusatzinformation- Inhalt 16;Zusatzinformation - Art 17;Zusatzinformation- Inhalt 17;Zusatzinformation - Art 18;Zusatzinformation- Inhalt 18;Zusatzinformation - Art 19;Zusatzinformation- Inhalt 19;Zusatzinformation - Art 20;Zusatzinformation- Inhalt 20;Stück;Gewicht;Zahlweise;Forderungsart;Veranlagungsjahr;Zugeordnete Fälligkeit;Skontotyp;Auftragsnummer;Buchungstyp (Anzahlungen);USt-Schlüssel (Anzahlungen);EU-Land (Anzahlungen);Sachverhalt L+L (Anzahlungen);EU-Steuersatz (Anzahlungen);Erlöskonto (Anzahlungen);Herkunft-Kz;Buchungs GUID;KOST-Datum;SEPA-Mandatsreferenz;Skontosperre;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Postensperre bis;Bezeichnung SoBil-Sachverhalt;Kennzeichen SoBil-Buchung;Festschreibung;Leistungsdatum;Datum Zuord. Steuerperiode;Fälligkeit;Generalumkehr (GU);Steuersatz;Land;Abrechnungsreferenz;BVV-Position"
End Function
Public Shared Function genBuchungenEnd() As String
Return ""
End Function
Return ""
End Function
Public Shared Function genStammdatenHeader(Geschäftsjahr As Integer) As String
Public Shared Function genStammdatenHeader(Geschäftsjahr As Integer, aktuellesMonat As Integer) As String
Dim day = New cFeiertage(Geschäftsjahr)
Dim headerString = Chr(34) & "EXTF" & Chr(34) & ";" 'Export aus 3rd Party App
headerString &= datevVersion.ToString & ";"
headerString &= Datenkategorie.ToString & ";"
@@ -326,16 +331,17 @@
headerString &= MandantenNr.ToString & ";" 'Mandantennummer
headerString &= Geschäftsjahr.ToString & "0101" & ";" 'WJ-Beginn
headerString &= KontenlängePersonKto.ToString & ";"
headerString &= Geschäftsjahr.ToString & "0101" & ";" 'DatumVon
headerString &= Geschäftsjahr.ToString & "1231" & ";" 'DatumBis
headerString &= Geschäftsjahr.ToString & aktuellesMonat & "01" & ";" 'DatumVon
headerString &= Geschäftsjahr.ToString & aktuellesMonat & day.GetLastyDayYInxMonth(Now.DayOfWeek, aktuellesMonat, Geschäftsjahr, True) & ";" 'DatumBis
headerString &= "IMPORT AUS AVISO;" 'Bezeichnung
headerString &= Chr(34) & Chr(34) & ";"
headerString &= emptyFormatedValueWithoutCommas(12)
Return headerString
End Function
Public Shared Function genStapelbuchungsHeader(Geschäftsjahr As Integer) As String
Public Shared Function genStapelbuchungsHeader(Geschäftsjahr As Integer, aktuellesMonat As Integer) As String
Dim headerString = Chr(34) & "EXTF" & Chr(34) & ";" 'Export aus 3rd Party App
Dim day = New cFeiertage(Geschäftsjahr)
headerString &= datevVersion.ToString & ";" 'Versionnummer Datev
headerString &= StapelbuchungsNr.ToString & ";" 'Stapelbuchungen
headerString &= Chr(34) & "Buchungsstapel" & Chr(34) & ";" 'Buchungsstapel
@@ -345,8 +351,8 @@
headerString &= MandantenNr.ToString & ";"
headerString &= Geschäftsjahr.ToString & "0101" & ";" 'WJ-Beginn
headerString &= KontenlängeSachKto.ToString & ";"
headerString &= Geschäftsjahr.ToString & "0101" & ";" 'DatumVon
headerString &= Geschäftsjahr.ToString & "1231" & ";" 'DatumBis
headerString &= Geschäftsjahr.ToString & aktuellesMonat & "01" & ";" 'DatumVon
headerString &= Geschäftsjahr.ToString & aktuellesMonat & day.GetLastyDayYInxMonth(Now.DayOfWeek, aktuellesMonat, Geschäftsjahr, True) & ";" 'DatumBis
headerString &= "IMPORT AUS AVISO;" 'Bezeichnung
headerString &= Chr(34) & Chr(34) & ";"
headerString &= emptyFormatedValueWithoutCommas(12)
@@ -354,10 +360,9 @@
End Function
Public Shared Function genStammdatenEnd() As String
Return ""
End Function
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
Return ""
End Function
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
@@ -559,65 +564,63 @@
' Trdin=false
Shared Function getSteuercode(r As DataRow, FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen) As String
Select Case r("Sachkonto")
'Case "3550", "3553", "3558"
' Return "999"
Case Else
Select Case r("Sachkonto")
'Case "3550", "3553", "3558"
' Return "999"
Case Else
If Not CBool(r("Steuerpflichtig")) Then
'Vorher immer return "" - galube es soll bei eu aber 77 sein...
If Not CBool(r("Steuerpflichtig")) Then
'Vorher immer return "" - galube es soll bei eu aber 77 sein...
If SQL.DLookup("[MitgliedslandEU]", "[Währungstabelle]", "[LandKz]='" & r("RechnungsLandKz") & "'", "FMZOLL", False) Then
Return "77" ' EU-LAND
Else
Return "" ' Drittland
End If
Else
If (r("RechnungsLandKz")).ToString.Replace("AT", "A").Replace("DE", "D") = FIRMA.Firma_LandKz Then 'Abhängig von FIRMA --> INLAND!!!!!!
Return "1" 'Steuerpflichtig und AT
Else
If SQL.DLookup("[MitgliedslandEU]", "[Währungstabelle]", "[LandKz]='" & r("RechnungsLandKz") & "'", "FMZOLL", False) Then
Return "77" ' EU-LAND
Else
Return "" ' Drittland
End If
Else
If (r("RechnungsLandKz")).ToString.Replace("AT", "A").Replace("DE", "D") = FIRMA.Firma_LandKz Then 'Abhängig von FIRMA --> INLAND!!!!!!
Return "1" 'Steuerpflichtig und AT
Else
If SQL.DLookup("[MitgliedslandEU]", "[Währungstabelle]", "[LandKz]='" & r("RechnungsLandKz") & "'", "FMZOLL", False) Then
Return "77" ' EU-LAND
Else
Return "" ' Drittland
End If
End If
End If
End If
End Select
Return ""
End Function
End Select
Return ""
End Function
Shared Function getDbl(o As Object) As Double
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Return CDbl(o)
Catch ex As Exception
Return 0
End Try
End Function
Shared Function getDbl2(o As Object) As Double
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Return CDbl(o.ToString.Replace(".", ","))
Catch ex As Exception
Return 0
End Try
End Function
Shared Function getDbltr(o As Object) As String
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Shared Function getDbl(o As Object) As Double
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Return CDbl(o)
Catch ex As Exception
Return 0
End Try
End Function
Shared Function getDbl2(o As Object) As Double
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Return CDbl(o.ToString.Replace(".", ","))
Catch ex As Exception
Return 0
End Try
End Function
Shared Function getDbltr(o As Object) As String
Try
If o Is Nothing Then Return 0
If o Is DBNull.Value Then Return 0
Return CDbl(o).ToString("F2").Replace(".", "").Replace(" ", "") '.Replace(",", ".")
Catch ex As Exception
Return 0
End Try
End Function
Return 0
End Try
End Function
Shared Function fill0Stellen(i As Object, l As Integer) As String
If i Is DBNull.Value Then i = ""
@@ -635,7 +638,6 @@
For i = 1 To count
retturnText &= Chr(34) & Chr(34) & ";"
Next
Return retturnText

View File

@@ -200,7 +200,7 @@ Public Class cAllgemein
If isEU Then
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
Return 0
Return 10
Else
Return 2
End If
@@ -214,7 +214,7 @@ Public Class cAllgemein
If isEU Then
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
Return 0
Return 10
Else
Return 19
End If
@@ -228,7 +228,7 @@ Public Class cAllgemein
If isEU Then
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
Return 0
Return 10
Else
Return 20
End If