Essensbestellungen Umbaut, Syska GU-Export für AMBAR -> VERAG, Speditionsbucharchiv

This commit is contained in:
2024-05-10 15:02:07 +02:00
parent 7ba4fdf8f1
commit 5e3b74a19f
5 changed files with 1354 additions and 737 deletions

View File

@@ -418,7 +418,7 @@ Public Class cSpeditionsbuch
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", FilialenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", AbfertigungsNr))
@@ -496,7 +496,7 @@ Public Class cSpeditionsbuch
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNr", KdAuftragsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrAvisierer", KdAuftragsNrAvisierer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrEmpfaenger", KdAuftragsNrEmpfaenger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrFrachtfuehrer", KdAuftragsNrFrachtfuehrer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrFrachtfuehrer", KdAuftragsNrFrachtfuehrer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_Zeitstempel", SB_Zeitstempel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("NCTS_Verzollungsadresse", NCTS_Verzollungsadresse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("NCTS_VerzollungsadresseKdNr", NCTS_VerzollungsadresseKdNr))
@@ -888,4 +888,266 @@ Public Class cEndEmpfaener
End Class
Public Class cSpeditionsbucharchiv
Property FilialenNr As Integer = -1
Property AbfertigungsNr As Integer = -1
Property UnterNr As Integer = -1
Property Abfertigungsdatum As Object = CDate(Now.ToShortDateString)
Property Bar As Boolean = False
Property Fakturiert As Boolean = False
Property BelegNr As String = ""
Property ErfassungsNr As String = ""
Property LKW_Kennzeichen As String = ""
Property AvisiererKundenNr As Object = Nothing
Public Avisierer As String = ""
Property AbsenderKundenNr As Object = Nothing
Public Absender As String = ""
Property AbsenderOffertenNr As Object = Nothing
Property EmpfängerKundenNr As Object = Nothing
Public Empfänger As String = ""
Property EmpfängerOffertenNr As Object = Nothing
Property VermittlerKundenNr As Object = Nothing
Public Vermittler As String = ""
Property VermittlerOffertenNr As Object = Nothing
Property FrachtführerKundenNr As Object = Nothing
Public Frachtführer As String = ""
Property AnzahlZA As Integer = 0
Property AnzahlZAFremd As Integer = 0
Property AnzahlZnV As Integer = 0
Property AnzahlZnVFremd As Integer = 0
Property AnzahlT1 As Integer = 0
Property AnzahlT2 As Integer = 0
Property AnzahlAE As Integer = 0
Property AnzahlCarnetTIR As Integer = 0
Property AnzahlBarvorlagen As Integer = 0
Property AnzahlSonstiges As Integer = 0
Property AnzahlGrenzgebühren As Integer = 0
Property AvisUhrzeit As String = ""
Property Vermerk As String = ""
Property Bemerkungen As String = ""
Property Währungsschlüssel As Object = Nothing 'int=-1
Property Rechnungsbetrag As Object = Nothing 'dbl=0
Property Umrechnungskurs As Object = CDbl(1) 'dbl=1
Property Packstücke As String = ""
Property Packstücke_Zoll As String = ""
Property Rohmasse As Object = Nothing 'int=0
Property Zahlungsaufschub As String = ""
Property Löschen As Object = Nothing
Property Abfertigungsart As Object = Nothing
Property Abfertigungsanzahl As Integer = 0
Property AbfertigungsanzahlPos As Object = Nothing
Property Barzahlungsbetrag As Double = 0
<VBFixedString(15)> Public Sachbearbeiter As String = ""
Property Personalnummer As Object = Nothing 'int=-1
Property PersonalnummerQS As Object = Nothing 'int=-1
Property AtlasBezNrEZA As String = ""
Property AtlasBezNrNCTS As String = ""
Property AtlasBezNrAES As String = ""
Property Versendungsland As String = ""
Property SB_CMR As Boolean = False
Property SB_CMRDatum As Object = Nothing
Property SB_CMRNr As Object = Nothing
Property veoerz_basbtg As Double = 0
Property Zucker_MRN_Nr As Object = Nothing
Property Zucker_MRN_Datum As Object = Nothing
Property Zucker_Aufschub As Object = Nothing
Property Zollsystem As String = Nothing
Property Bestimmungszollstelle As String = ""
Property Bürgschaft As String = ""
Property Sicherheitsbetrag As Double = 0
Property SgutKompl As Object = Nothing
Property Bestimmungsland As String = ""
Property EuFiskalEmpfänger As String = ""
Property QKN As String = ""
Property EndempfängerKundenNr As Object = Nothing
Public Endempfänger As String = ""
Property AvisoID As Object = Nothing
Property SendungID As Object = Nothing
Property Grenzstelle As Object = Nothing
Property KdAuftragsNr As Object = Nothing
Property KdAuftragsNrAvisierer As Object = Nothing
Property KdAuftragsNrEmpfaenger As Object = Nothing
Property KdAuftragsNrFrachtfuehrer As Object = Nothing
Property SB_Zeitstempel As Object = Now
Property NCTS_Verzollungsadresse As Object = Nothing
Property NCTS_VerzollungsadresseKdNr As Object = Nothing
Property AuftraggeberBetragKassiert As Object = Nothing
Property Lieferantenrechnung As Object = Nothing
Property DokumentId_Steuerbeleg As Object = Nothing
Property DokumentId_Mitteilung As Object = Nothing
Property DokumentId_VBD As Object = Nothing
Property DokumentId_ABD As Object = Nothing
Property DokumentId_AVM As Object = Nothing
Property FilialenNrHandling As Object = Nothing
Property HandlingZuKassieren As Double = 0
Property FilialenNrAbklaerung As Object = Nothing
Property PersonalnummerAbklTR As Object = Nothing
Property UK_EIDR_ausstehend As Boolean = False
Property Zollstelle As Object = Nothing
Property Zollsystem_Land As Object = Nothing
Property geloescht_von As Object = Nothing
Property geloescht_am As Object = Nothing
Dim SQL As New SQL
Public Sub New()
End Sub
Property hasEntry As Boolean = False
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", FilialenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", AbfertigungsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UnterNr", UnterNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsdatum", Abfertigungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bar", Bar))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fakturiert", Fakturiert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BelegNr", BelegNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ErfassungsNr", ErfassungsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW Kennzeichen", LKW_Kennzeichen, "LKWKennzeichen"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisiererKundenNr", AvisiererKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Avisierer", Avisierer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbsenderKundenNr", AbsenderKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Absender", Absender))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbsenderOffertenNr", AbsenderOffertenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EmpfängerKundenNr", EmpfängerKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Empfänger", Empfänger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EmpfängerOffertenNr", EmpfängerOffertenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VermittlerKundenNr", VermittlerKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermittler", Vermittler))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VermittlerOffertenNr", VermittlerOffertenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FrachtführerKundenNr", FrachtführerKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Frachtführer", Frachtführer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlZA", AnzahlZA))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlZAFremd", AnzahlZAFremd))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlZnV", AnzahlZnV))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlZnVFremd", AnzahlZnVFremd))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlT1", AnzahlT1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlT2", AnzahlT2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlAE", AnzahlAE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlCarnetTIR", AnzahlCarnetTIR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlBarvorlagen", AnzahlBarvorlagen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlSonstiges", AnzahlSonstiges))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AnzahlGrenzgebühren", AnzahlGrenzgebühren))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisUhrzeit", AvisUhrzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermerk", Vermerk))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bemerkungen", Bemerkungen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Währungsschlüssel", Währungsschlüssel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsbetrag", Rechnungsbetrag))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umrechnungskurs", Umrechnungskurs))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Packstücke", Packstücke))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Packstücke_Zoll", Packstücke_Zoll))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rohmasse", Rohmasse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungsaufschub", Zahlungsaufschub))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Löschen", Löschen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsart", Abfertigungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsanzahl", Abfertigungsanzahl))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsanzahlPos", AbfertigungsanzahlPos))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Barzahlungsbetrag", Barzahlungsbetrag))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sachbearbeiter", Sachbearbeiter))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Personalnummer", Personalnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerQS", PersonalnummerQS))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AtlasBezNrEZA", AtlasBezNrEZA))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AtlasBezNrNCTS", AtlasBezNrNCTS))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AtlasBezNrAES", AtlasBezNrAES))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Versendungsland", Versendungsland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_CMR", SB_CMR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_CMRDatum", SB_CMRDatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("veoerz_basbtg", veoerz_basbtg))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zucker_MRN_Nr", Zucker_MRN_Nr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zucker_MRN_Datum", Zucker_MRN_Datum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zucker_Aufschub", Zucker_Aufschub))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zollsystem", Zollsystem))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bestimmungszollstelle", Bestimmungszollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bürgschaft", Bürgschaft))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sicherheitsbetrag", Sicherheitsbetrag))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SgutKompl", SgutKompl))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bestimmungsland", Bestimmungsland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EuFiskalEmpfänger", EuFiskalEmpfänger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("QKN", QKN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EndempfängerKundenNr", EndempfängerKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Endempfänger", Endempfänger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisoID", AvisoID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SendungID", SendungID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNr", KdAuftragsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrAvisierer", KdAuftragsNrAvisierer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrEmpfaenger", KdAuftragsNrEmpfaenger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNrFrachtfuehrer", KdAuftragsNrFrachtfuehrer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_Zeitstempel", SB_Zeitstempel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("NCTS_Verzollungsadresse", NCTS_Verzollungsadresse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("NCTS_VerzollungsadresseKdNr", NCTS_VerzollungsadresseKdNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Grenzstelle", Grenzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AuftraggeberBetragKassiert", AuftraggeberBetragKassiert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferantenrechnung", Lieferantenrechnung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DokumentId_Steuerbeleg", DokumentId_Steuerbeleg))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DokumentId_Mitteilung", DokumentId_Mitteilung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DokumentId_VBD", DokumentId_VBD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DokumentId_ABD", DokumentId_ABD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DokumentId_AVM", DokumentId_AVM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNrHandling", FilialenNrHandling))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNrAbklaerung", FilialenNrAbklaerung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("HandlingZuKassieren", HandlingZuKassieren))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerAbklTR", PersonalnummerAbklTR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UK_EIDR_ausstehend", UK_EIDR_ausstehend))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zollstelle", Zollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zollsystem_Land", Zollsystem_Land))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_CMRNr", SB_CMRNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("geloescht_am", geloescht_am))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("geloescht_von", geloescht_von))
Return list
End Function
Public Function getInsertCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
Dim values As String = ""
For Each i In list
str &= "[" & i.Text & "],"
values &= "@" & i.Text.Replace("-", "").Replace(" ", "") & ","
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO [tblSpeditionsbucharchiv] (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
Public Function SAVE() As Boolean 'obj As Object, tablename As String, where As String) As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
' MsgBox(getUpdateCmd())
Dim sqlstr = "BEGIN TRAN BEGIN " & getInsertCmd() & " END " &
" commit tran "
If SQL.doSQLVarList(sqlstr, "FMZOLL", , list) Then
Return True
End If
Return False
End Function
End Class

View File

@@ -284,7 +284,7 @@ Public Class cSyska_Interface
End If
End Function
Public Shared Function genDatensatz_Buchungen(ByRef Firma_ID As Integer, Optional OpenFile As Boolean = False, Optional WdhDateiname As String = "") As Boolean ' Optional OpenFile = False, Optional boolKunden = True, Optional boolBuchungen = True ) As Boolean
Public Shared Function genDatensatz_Buchungen(ByRef Firma_ID As Integer, Optional OpenFile As Boolean = False, Optional WdhDateiname As String = "", Optional ambargubuchungen As Boolean = False) As Boolean ' Optional OpenFile = False, Optional boolKunden = True, Optional boolBuchungen = True ) As Boolean
Try
Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(Firma_ID)
@@ -314,14 +314,14 @@ Public Class cSyska_Interface
'----------------- Buchungssätze -----------------
If True Then 'boolBuchungen Then
If WdhDateiname = "" Then 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, WdhDateiname)
If WdhDateiname = "" AndAlso Not ambargubuchungen Then 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, WdhDateiname, ambargubuchungen)
' MsgBox(WdhDateiname & " - " & dt_Buchungen.Rows.Count)
If dt_Buchungen IsNot Nothing AndAlso dt_Buchungen.Rows.Count > 0 Then
Try
Dim file As System.IO.StreamWriter
Dim Dateiname = "AVISO_BUBE_" & Now.ToString("ddMMyyyy_HHmm") & ".txt"
Dim Dateiname = IIf(ambargubuchungen, "GS_AMBAR_", "AVISO_BUBE_") & Now.ToString("ddMMyyyy_HHmm") & ".txt"
file = My.Computer.FileSystem.OpenTextFileWriter(path & Dateiname, True, System.Text.Encoding.GetEncoding("iso-8859-15"))
' initKDNr(dt_Buchungen)
@@ -337,30 +337,38 @@ Public Class cSyska_Interface
curDifferenzbetrag = Math.Round(If(r("RechnungsbetragFremd") < 0, 0 - r("RechnungsbetragFremd"), r("RechnungsbetragFremd")), 2)
End If
If r("BelegartenNr") = 70 Then 'RECHNUNG ---> Immer am Anfang
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA))
If r("BelegartenNr") = 70 Or ambargubuchungen And r("BelegartenNr") = 71 Then 'RECHNUNG ---> Immer am Anfang
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
End If
Dim dt_BuchungenZeilen As DataTable = getBuchungenZeilen(FIRMA.Firma_ID, r("Rechnungsnummer"), r("Rechnungsdatum"), WdhDateiname)
Dim dt_BuchungenZeilen As DataTable
If Not ambargubuchungen Then
dt_BuchungenZeilen = getBuchungenZeilen(FIRMA.Firma_ID, r("Rechnungsnummer"), r("Rechnungsdatum"), WdhDateiname)
Else
dt_BuchungenZeilen = getBuchungenZeilenAMBAR(FIRMA.Firma_ID, r("Rechnungsnummer"), r("Rechnungsdatum"), WdhDateiname)
End If
If dt_BuchungenZeilen IsNot Nothing AndAlso dt_BuchungenZeilen.Rows.Count > 0 Then
For Each rz In dt_BuchungenZeilen.Rows
file.WriteLine(genBuchungsZeile(rz, SummeBuchungen, Geschaeftsjahr, FIRMA, curDifferenzbetrag)) ' BuchungsZeilen...
file.WriteLine(genBuchungsZeile(rz, SummeBuchungen, Geschaeftsjahr, FIRMA, curDifferenzbetrag, ambargubuchungen)) ' BuchungsZeilen...
Next
End If
If curDifferenzbetrag <> 0 Then 'Differenz --> Ausgelich auf Diff.Konto
file.WriteLine(genBuchungsZeileDiffBetrag(r, SummeBuchungen, Geschaeftsjahr, FIRMA, curDifferenzbetrag))
End If
If r("BelegartenNr") = 71 Then 'GUTSCHRIFT ---> Immer am Schluss
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA))
If r("BelegartenNr") = 71 And Not ambargubuchungen Then 'GUTSCHRIFT ---> Immer am Schluss
file.WriteLine(genBuchungsZeileSum(r, SummeBuchungen, Geschaeftsjahr, FIRMA, ambargubuchungen))
End If
Next
' file.WriteLine(genBuchungenEnd(SummeBuchungen))
bool_DatenVorhanden = True
'Update Filename TrdIn 'NOCH NICHT!!!! -->JETZT DOCH!!!
Dim varDateiname As String = IIf(ambargubuchungen, "AmbDateiname", "TrdinDateiname")
If WdhDateiname = "" Then
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 " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND " & varDateiname & " is null ", "FMZOLL")
Else
SQL.doSQL("update [tblTrdinInvoice] Set TrdinDateiname='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND TrdinDateiname ='" & WdhDateiname & "' ", "FMZOLL")
SQL.doSQL("update [tblTrdinInvoice] Set " & varDateiname & "='" & Now.ToString("ddMMyyyyHHmm") & "' WHERE [Firma_ID] = " & FIRMA.Firma_ID & " AND " & varDateiname & " ='" & WdhDateiname & "' ", "FMZOLL")
End If
file.Close()
@@ -504,20 +512,31 @@ Public Class cSyska_Interface
If IsNumeric(s) Then Return CDbl(s).ToString("N" & Nachkommastellen)
Return s.ToString
End Function
Shared Function getBuchungen(Firma_ID As Integer, Optional WdhDateiname As String = "") As DataTable
Shared Function getBuchungen(Firma_ID As Integer, Optional WdhDateiname As String = "", Optional ambargubuchungen As Boolean = False) As DataTable
Dim where As String = ""
If Not ambargubuchungen Then
where = "WHERE Firma_ID ='" & Firma_ID & "' AND " & If(WdhDateiname = "", " TrdinDateiname Is Null ", " TrdinDateiname ='" & WdhDateiname & "' ") & " "
Else
where = "WHERE Firma_ID ='24' and RechnungsKundenNr = 3013401 and RechnungsUstIdNr = 'U53187000' And BelegartenNr = 71 AND " & If(WdhDateiname = "", " AmbDateiname Is Null ", " AmbDateiname ='" & WdhDateiname & "' ") & " "
End If
Dim kundennr = IIf(Not ambargubuchungen, "min(KundenNrZentrale)", "'725012'") 'fixe Debitorennr für AMBAR - VERAG Buchungen
Dim sqlStr = " SELECT IVO.Rechnungsdatum,IVO.Rechnungsnummer,min(Speditionsbuch) as Speditionsbuch ,min(FilialenNr) as FilialenNr,min(AbfertigungsNr) as AbfertigungsNr,min(UnterNr) as UnterNr,min(Abfertigungsdatum) as Abfertigungsdatum,min(BelegartenNr) as BelegartenNr
,min(KundenNrZentrale) as [KundenNrZentrale],min(RechnungsKundenNr) as RechnungsKundenNr,min(RechnungsLandKz) as RechnungsLandKz,min(RechnungsUstIdKz) as RechnungsUstIdKz,min(RechnungsUstIdNr) as RechnungsUstIdNr
," & kundennr & " as [KundenNrZentrale],min(RechnungsKundenNr) as RechnungsKundenNr,min(RechnungsLandKz) as RechnungsLandKz,min(RechnungsUstIdKz) as RechnungsUstIdKz,min(RechnungsUstIdNr) as RechnungsUstIdNr
,min(Lastschrift+0) as Lastschrift,min(Steuerschlüssel) as Steuerschlüssel,min([Steuersatz %]) as Steuersatz,min(WährungLokal) as WährungLokal,min(SteuerbetragLokal) as SteuerbetragLokal,min(RechnungsbetragLokal) as RechnungsbetragLokal
,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
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer
WHERE Firma_ID ='" & Firma_ID & "' AND " & If(WdhDateiname = "", " TrdinDateiname Is Null ", " TrdinDateiname ='" & WdhDateiname & "' ") & "
FROM VERAG.dbo.tblTrdinInvoice as IVO left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum=PROD.Rechnungsdatum
" & where & "
group by Firma_id, IVO.Rechnungsnummer,IVO.rechnungsdatum/*,Leistungsnummer,Leistungsbezeichnung,Steuerpflichtig*/
ORDER BY Rechnungsdatum, Rechnungsnummer "
ORDER BY IVO.Rechnungsdatum, IVO.Rechnungsnummer "
' --and IVO.Rechnungsnummer=19400002
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 9800)
@@ -562,10 +581,11 @@ Public Class cSyska_Interface
Shared Function getBuchungenZeilen(Firma_ID As Integer, Rechnungsnummer As Integer, Rechnungsdatum As Date, Optional WdhDateiname As String = "") As DataTable
Dim sqlStr = " SELECT Sachkonto,IVO.Rechnungsdatum Rechnungsdatum,IVO.Rechnungsnummer Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,steuerpflichtig,[Steuersatz %] Steuersatz,BelegartenNr,
WährungFremd, WährungLokal,sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal])BetragLokal,
sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd])BetragFremd ,sum(RechnungsbetragLokal) RechnungsbetragLokal,sum(RechnungsbetragFremd) RechnungsbetragFremd
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 IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " TrdinDateiname Is Null ", " TrdinDateiname ='" & WdhDateiname & "' ") & "
GROUP BY Sachkonto,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal
ORDER BY Rechnungsdatum, Rechnungsnummer "
@@ -574,8 +594,25 @@ Public Class cSyska_Interface
End Function
Shared Function getBuchungenZeilenAMBAR(Firma_ID As Integer, Rechnungsnummer As Integer, Rechnungsdatum As Date, Optional WdhDateiname As String = "") As DataTable
Public Shared Function genBuchungsZeileSum(row As DataRow, ByRef SummeBuchungen As Double, ByRef Geschäftsjahr As Integer, ByRef FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen) As String
Dim sqlStr = " SELECT le.SachkontoEUSteuerfrei as Sachkonto ,IVO.Rechnungsdatum Rechnungsdatum,IVO.Rechnungsnummer Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,PROD.steuerpflichtig,[Steuersatz %] Steuersatz,BelegartenNr,
WährungFremd, WährungLokal,sum(PROD.[SteuerpflichtigerBetragLokal] + PROD.[SteuerfreierBetragLokal])BetragLokal,
sum(PROD.[SteuerpflichtigerBetragFremd]+PROD.[SteuerfreierBetragFremd])BetragFremd ,sum(RechnungsbetragLokal) RechnungsbetragLokal,sum(RechnungsbetragFremd) RechnungsbetragFremd
FROM VERAG.dbo.tblTrdinInvoice as IVO
left JOIN tblTrdinProduct as PROD on IVO.Rechnungsnummer=PROD.Rechnungsnummer and IVO.Rechnungsdatum = PROD.Rechnungsdatum
left join [Leistungen] as le on le.LeistungsNr = PROD.Leistungsnummer
WHERE Firma_ID ='24' AND IVO.Rechnungsnummer ='" & Rechnungsnummer & "' AND cast(IVO.Rechnungsdatum as date) ='" & Rechnungsdatum.ToShortDateString & "' AND " & If(WdhDateiname = "", " AmbDateiname Is Null ", " AmbDateiname ='" & WdhDateiname & "' ") & "
GROUP BY le.SachkontoEUSteuerfrei ,IVO.Rechnungsdatum,IVO.Rechnungsnummer,FilialenNr,AbfertigungsNr,UnterNr,PROD.steuerpflichtig,[Steuersatz %] ,BelegartenNr,WährungFremd,WährungLokal
ORDER BY Rechnungsdatum, Rechnungsnummer "
' --and IVO.Rechnungsnummer=19400002
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 9800)
End Function
Public Shared Function genBuchungsZeileSum(row As DataRow, ByRef SummeBuchungen As Double, ByRef Geschäftsjahr As Integer, ByRef FIRMA As VERAG_PROG_ALLGEMEIN.cFirmen, Optional ambarGUbuchung As Boolean = False) As String
genBuchungsZeileSum = ""
If row("BelegartenNr") = 70 Then 'RECHNUNG
@@ -615,44 +652,73 @@ Public Class cSyska_Interface
ElseIf row("BelegartenNr") = 71 Then 'GUTSCHRIFT
' Buchungssatz Gutschrift (immer letzte Buchungszeile)
Dim FiBuWährung = ""
Dim FiBuSollkontonummer = "0"
Dim FiBuHabenkontonummer = row("KundenNrZentrale")
Dim FiBuBruttobetrag As Double
If Not ambarGUbuchung Then
' Buchungssatz Gutschrift (immer letzte Buchungszeile)
If row("WährungFremd") Is DBNull.Value Then
FiBuWährung = row("WährungLokal")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragLokal")))
If row("WährungFremd") Is DBNull.Value Then
FiBuWährung = row("WährungLokal")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragLokal")))
Else
FiBuWährung = row("WährungFremd")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragFremd")))
End If
Dim FiBuEigenbruttobetrag = 0 - CDbl(row("RechnungsbetragLokal"))
genBuchungsZeileSum = "L" & vbTab
genBuchungsZeileSum &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
genBuchungsZeileSum &= FormatStringSYS(row("Rechnungsnummer")) & vbTab
genBuchungsZeileSum &= FiBuSollkontonummer & vbTab
genBuchungsZeileSum &= FiBuHabenkontonummer & vbTab
genBuchungsZeileSum &= row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuersatz
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuerbetrag
genBuchungsZeileSum &= FiBuWährung & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuEigenbruttobetrag), fmt) & vbTab
Else
FiBuWährung = row("WährungFremd")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragFremd")))
If row("WährungFremd") Is DBNull.Value Then
FiBuWährung = row("WährungLokal")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragLokal")))
Else
FiBuWährung = row("WährungFremd")
FiBuBruttobetrag = (0 - CDbl(row("RechnungsbetragFremd")))
End If
Dim FiBuEigenbruttobetrag = 0 - CDbl(row("RechnungsbetragLokal"))
genBuchungsZeileSum = "L" & vbTab
genBuchungsZeileSum &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
genBuchungsZeileSum &= FormatStringSYS(row("Rechnungsnummer")) & vbTab
genBuchungsZeileSum &= FiBuHabenkontonummer & vbTab
genBuchungsZeileSum &= FiBuSollkontonummer & vbTab
genBuchungsZeileSum &= row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuersatz
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuerbetrag
genBuchungsZeileSum &= FiBuWährung & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuEigenbruttobetrag), fmt) & vbTab
End If
Dim FiBuEigenbruttobetrag = 0 - CDbl(row("RechnungsbetragLokal"))
genBuchungsZeileSum = "L" & vbTab
genBuchungsZeileSum &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab
genBuchungsZeileSum &= FormatStringSYS(row("Rechnungsnummer")) & vbTab
genBuchungsZeileSum &= FiBuSollkontonummer & vbTab
genBuchungsZeileSum &= FiBuHabenkontonummer & vbTab
genBuchungsZeileSum &= row("FilialenNr") & "/" & row("AbfertigungsNr") & "/" & CDbl(row("UnterNr")).ToString("00") & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuBruttobetrag), fmt) & vbTab
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuersatz
genBuchungsZeileSum &= "" & vbTab 'FiBuSteuerbetrag
genBuchungsZeileSum &= FiBuWährung & vbTab
genBuchungsZeileSum &= Format(CDbl(FiBuEigenbruttobetrag), fmt) & vbTab
End If
Return genBuchungsZeileSum
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, ByRef curDifferenzbetrag As Double) As String
Public Shared Function genBuchungsZeile(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
@@ -677,13 +743,25 @@ Public Class cSyska_Interface
curNettobetrag = row("BetragFremd")
End If
Case 71 'Gutschrift
FiBuSollkontonummer = If(row("Sachkonto") IsNot DBNull.Value, row("Sachkonto"), " ")
FiBuHabenkontonummer = "0"
If row("WährungFremd") Is DBNull.Value Then
curNettobetrag = 0 - row("BetragLokal")
If Not ambargubuchungen Then
FiBuSollkontonummer = If(row("Sachkonto") IsNot DBNull.Value, row("Sachkonto"), " ")
FiBuHabenkontonummer = "0"
If row("WährungFremd") Is DBNull.Value Then
curNettobetrag = 0 - row("BetragLokal")
Else
curNettobetrag = 0 - row("BetragFremd")
End If
Else
curNettobetrag = 0 - row("BetragFremd")
FiBuSollkontonummer = "0"
FiBuHabenkontonummer = If(row("Sachkonto") IsNot DBNull.Value, row("Sachkonto"), " ")
If row("WährungFremd") Is DBNull.Value Then
curNettobetrag = 0 - row("BetragLokal")
Else
curNettobetrag = 0 - row("BetragFremd")
End If
End If
End Select
If CBool(row("steuerpflichtig")) Then
@@ -710,7 +788,7 @@ Public Class cSyska_Interface
Else
FiBuWährung = row("WährungFremd")
FiBuEigenbruttobetrag = CDbl(row("RechnungsbetragFremd")) 'Bruttobetrag
End If
End If
genBuchungsZeile = "L" & vbTab
genBuchungsZeile &= CDate(row("Rechnungsdatum")).ToString("dd.MM.yyyy") & vbTab