UTA Leistung, cFakt, MDM Datenverarbeitung, etc.

This commit is contained in:
2025-04-07 14:03:30 +02:00
parent 3d39da0357
commit 8e0c20bcd4
7 changed files with 405 additions and 328 deletions

View File

@@ -2521,6 +2521,11 @@ Public Class cFakturierung
If displayFirmenmane Then getSignature &= "<br><b>Unisped Speditions GmbH</b><br>"
getSignature &= "<div style=""font-size:12px"">A 4975 Suben, Nr. 15 <br><b>T</b> +43 7711 2677-0 | <b>F</b> +43 7711 2677-27 | <b>@</b> " & If(individuell, emailindividuell, "office@unisped.at") & " | www.unisped.at | FN 375838d</div>"
If additionalLine <> "" Then getSignature &= vbNewLine & additionalLine & vbNewLine
Case 19 'VERAG360
getSignature &= "<img width=""250"" height=""50"" src=""" & imgsrc & "VERAG_360.jpg""/>"
If displayFirmenmane Then getSignature &= "<br><b>VERAG 360 GmbH</b><br>"
getSignature &= "<div style=""font-size:12px"">A 4975 Suben, Nr. 100 <br><b>T</b> +43 7711 2777-0 | <b>F</b> +43 7711 31 073 | <b>@</b> " & If(individuell, emailindividuell, "mmd@verag.ag") & " | www.verag.ag | FN 544732b</div>"
If additionalLine <> "" Then getSignature &= vbNewLine & additionalLine & vbNewLine
Case 26 'VERAG-UNISPED
getSignature &= "<img width=""250"" height=""50"" src=""" & imgsrc & "VERAG-UNISPED-Logo.jpg""/>"
If displayFirmenmane Then getSignature &= "<br><b>VERAG-UNISPED LTD</b><br>"

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.3.8.1")>
<Assembly: AssemblyFileVersion("1.3.8.1")>
<Assembly: AssemblyVersion("1.3.8.2")>
<Assembly: AssemblyFileVersion("1.3.8.2")>

View File

@@ -53,6 +53,8 @@ Partial Class usrCntlSDLLeistungenUTA
Me.scanPIN = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScan()
Me.scanSonstiges = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList()
Me.cbxArchiviert = New VERAG_PROG_ALLGEMEIN.MyCheckBoxValue(Me.components)
Me.txtCVCNr = New VERAG_PROG_ALLGEMEIN.MyTextBox()
Me.Label5 = New System.Windows.Forms.Label()
Me.Panel2.SuspendLayout()
Me.tbcntr.SuspendLayout()
Me.TabPage1.SuspendLayout()
@@ -64,10 +66,12 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtClientNr._DateTimeOnly = False
Me.txtClientNr._numbersOnly = True
Me.txtClientNr._numbersOnlyKommastellen = ""
Me.txtClientNr._numbersOnlyTrennzeichen = True
Me.txtClientNr._Prozent = False
Me.txtClientNr._ShortDateNew = False
Me.txtClientNr._ShortDateOnly = False
Me.txtClientNr._TimeOnly = False
Me.txtClientNr._TimeOnly_Seconds = False
Me.txtClientNr._value = ""
Me.txtClientNr._Waehrung = False
Me.txtClientNr._WaehrungZeichen = True
@@ -94,14 +98,16 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtCardNr._DateTimeOnly = False
Me.txtCardNr._numbersOnly = False
Me.txtCardNr._numbersOnlyKommastellen = ""
Me.txtCardNr._numbersOnlyTrennzeichen = True
Me.txtCardNr._Prozent = False
Me.txtCardNr._ShortDateNew = False
Me.txtCardNr._ShortDateOnly = False
Me.txtCardNr._TimeOnly = False
Me.txtCardNr._TimeOnly_Seconds = False
Me.txtCardNr._value = Nothing
Me.txtCardNr._Waehrung = False
Me.txtCardNr._WaehrungZeichen = True
Me.txtCardNr.Location = New System.Drawing.Point(106, 122)
Me.txtCardNr.Location = New System.Drawing.Point(106, 113)
Me.txtCardNr.MaxLength = 3
Me.txtCardNr.MaxLineLength = -1
Me.txtCardNr.MaxLines_Warning = ""
@@ -115,14 +121,16 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtKartenNr._DateTimeOnly = False
Me.txtKartenNr._numbersOnly = False
Me.txtKartenNr._numbersOnlyKommastellen = ""
Me.txtKartenNr._numbersOnlyTrennzeichen = True
Me.txtKartenNr._Prozent = False
Me.txtKartenNr._ShortDateNew = False
Me.txtKartenNr._ShortDateOnly = False
Me.txtKartenNr._TimeOnly = False
Me.txtKartenNr._TimeOnly_Seconds = False
Me.txtKartenNr._value = Nothing
Me.txtKartenNr._Waehrung = False
Me.txtKartenNr._WaehrungZeichen = True
Me.txtKartenNr.Location = New System.Drawing.Point(106, 97)
Me.txtKartenNr.Location = New System.Drawing.Point(106, 88)
Me.txtKartenNr.MaxLength = 22
Me.txtKartenNr.MaxLineLength = -1
Me.txtKartenNr.MaxLines_Warning = ""
@@ -135,7 +143,7 @@ Partial Class usrCntlSDLLeistungenUTA
'
Me.Label1.AutoSize = True
Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label1.Location = New System.Drawing.Point(3, 125)
Me.Label1.Location = New System.Drawing.Point(3, 116)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(58, 13)
Me.Label1.TabIndex = 12
@@ -145,7 +153,7 @@ Partial Class usrCntlSDLLeistungenUTA
'
Me.Label9.AutoSize = True
Me.Label9.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label9.Location = New System.Drawing.Point(3, 100)
Me.Label9.Location = New System.Drawing.Point(3, 91)
Me.Label9.Name = "Label9"
Me.Label9.Size = New System.Drawing.Size(69, 13)
Me.Label9.TabIndex = 9
@@ -155,7 +163,7 @@ Partial Class usrCntlSDLLeistungenUTA
'
Me.Label3.AutoSize = True
Me.Label3.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label3.Location = New System.Drawing.Point(207, 126)
Me.Label3.Location = New System.Drawing.Point(207, 117)
Me.Label3.Name = "Label3"
Me.Label3.Size = New System.Drawing.Size(32, 13)
Me.Label3.TabIndex = 16
@@ -166,14 +174,16 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtPIN._DateTimeOnly = False
Me.txtPIN._numbersOnly = False
Me.txtPIN._numbersOnlyKommastellen = ""
Me.txtPIN._numbersOnlyTrennzeichen = True
Me.txtPIN._Prozent = False
Me.txtPIN._ShortDateNew = False
Me.txtPIN._ShortDateOnly = False
Me.txtPIN._TimeOnly = False
Me.txtPIN._TimeOnly_Seconds = False
Me.txtPIN._value = Nothing
Me.txtPIN._Waehrung = False
Me.txtPIN._WaehrungZeichen = True
Me.txtPIN.Location = New System.Drawing.Point(245, 123)
Me.txtPIN.Location = New System.Drawing.Point(245, 114)
Me.txtPIN.MaxLength = 4
Me.txtPIN.MaxLineLength = -1
Me.txtPIN.MaxLines_Warning = ""
@@ -187,10 +197,12 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtVermerk._DateTimeOnly = False
Me.txtVermerk._numbersOnly = False
Me.txtVermerk._numbersOnlyKommastellen = ""
Me.txtVermerk._numbersOnlyTrennzeichen = True
Me.txtVermerk._Prozent = False
Me.txtVermerk._ShortDateNew = False
Me.txtVermerk._ShortDateOnly = False
Me.txtVermerk._TimeOnly = False
Me.txtVermerk._TimeOnly_Seconds = False
Me.txtVermerk._value = Nothing
Me.txtVermerk._Waehrung = False
Me.txtVermerk._WaehrungZeichen = True
@@ -306,10 +318,12 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtLieferung._DateTimeOnly = False
Me.txtLieferung._numbersOnly = False
Me.txtLieferung._numbersOnlyKommastellen = ""
Me.txtLieferung._numbersOnlyTrennzeichen = True
Me.txtLieferung._Prozent = False
Me.txtLieferung._ShortDateNew = True
Me.txtLieferung._ShortDateOnly = False
Me.txtLieferung._TimeOnly = False
Me.txtLieferung._TimeOnly_Seconds = False
Me.txtLieferung._value = ""
Me.txtLieferung._Waehrung = False
Me.txtLieferung._WaehrungZeichen = True
@@ -328,10 +342,12 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtBestellung._DateTimeOnly = False
Me.txtBestellung._numbersOnly = False
Me.txtBestellung._numbersOnlyKommastellen = ""
Me.txtBestellung._numbersOnlyTrennzeichen = True
Me.txtBestellung._Prozent = False
Me.txtBestellung._ShortDateNew = True
Me.txtBestellung._ShortDateOnly = False
Me.txtBestellung._TimeOnly = False
Me.txtBestellung._TimeOnly_Seconds = False
Me.txtBestellung._value = ""
Me.txtBestellung._Waehrung = False
Me.txtBestellung._WaehrungZeichen = True
@@ -350,10 +366,12 @@ Partial Class usrCntlSDLLeistungenUTA
Me.txtGueltigkeit2._DateTimeOnly = False
Me.txtGueltigkeit2._numbersOnly = False
Me.txtGueltigkeit2._numbersOnlyKommastellen = ""
Me.txtGueltigkeit2._numbersOnlyTrennzeichen = True
Me.txtGueltigkeit2._Prozent = False
Me.txtGueltigkeit2._ShortDateNew = True
Me.txtGueltigkeit2._ShortDateOnly = False
Me.txtGueltigkeit2._TimeOnly = False
Me.txtGueltigkeit2._TimeOnly_Seconds = False
Me.txtGueltigkeit2._value = ""
Me.txtGueltigkeit2._Waehrung = False
Me.txtGueltigkeit2._WaehrungZeichen = True
@@ -465,6 +483,9 @@ Partial Class usrCntlSDLLeistungenUTA
Me.scanSonstiges._DATENSERVER_UOrdner1 = ""
Me.scanSonstiges._DATENSERVER_UOrdner2 = ""
Me.scanSonstiges._DATENSERVER_UOrdner3 = ""
Me.scanSonstiges._OPEN_ORIGINAL = False
Me.scanSonstiges._TYPE = "PDF"
Me.scanSonstiges.AllowDrop = True
Me.scanSonstiges.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
Me.scanSonstiges.BackColor = System.Drawing.Color.White
Me.scanSonstiges.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
@@ -488,11 +509,46 @@ Partial Class usrCntlSDLLeistungenUTA
Me.cbxArchiviert.Text = "ARCHIVIERT"
Me.cbxArchiviert.UseVisualStyleBackColor = True
'
'txtCVCNr
'
Me.txtCVCNr._DateTimeOnly = False
Me.txtCVCNr._numbersOnly = False
Me.txtCVCNr._numbersOnlyKommastellen = ""
Me.txtCVCNr._numbersOnlyTrennzeichen = True
Me.txtCVCNr._Prozent = False
Me.txtCVCNr._ShortDateNew = False
Me.txtCVCNr._ShortDateOnly = False
Me.txtCVCNr._TimeOnly = False
Me.txtCVCNr._TimeOnly_Seconds = False
Me.txtCVCNr._value = Nothing
Me.txtCVCNr._Waehrung = False
Me.txtCVCNr._WaehrungZeichen = True
Me.txtCVCNr.Location = New System.Drawing.Point(106, 138)
Me.txtCVCNr.MaxLength = 22
Me.txtCVCNr.MaxLineLength = -1
Me.txtCVCNr.MaxLines_Warning = ""
Me.txtCVCNr.MaxLines_Warning_Label = Nothing
Me.txtCVCNr.Name = "txtCVCNr"
Me.txtCVCNr.Size = New System.Drawing.Size(183, 20)
Me.txtCVCNr.TabIndex = 102
'
'Label5
'
Me.Label5.AutoSize = True
Me.Label5.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label5.Location = New System.Drawing.Point(3, 141)
Me.Label5.Name = "Label5"
Me.Label5.Size = New System.Drawing.Size(48, 13)
Me.Label5.TabIndex = 103
Me.Label5.Text = "CVC-Nr.:"
'
'usrCntlSDLLeistungenUTA
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.BackColor = System.Drawing.Color.White
Me.Controls.Add(Me.txtCVCNr)
Me.Controls.Add(Me.Label5)
Me.Controls.Add(Me.cbxArchiviert)
Me.Controls.Add(Me.tbcntr)
Me.Controls.Add(Me.txtLieferung)
@@ -556,5 +612,6 @@ Partial Class usrCntlSDLLeistungenUTA
Friend WithEvents scanPIN As VERAG_PROG_ALLGEMEIN.usrcntlPDFScan
Friend WithEvents scanSonstiges As VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList
Friend WithEvents cbxArchiviert As VERAG_PROG_ALLGEMEIN.MyCheckBoxValue
Friend WithEvents txtCVCNr As VERAG_PROG_ALLGEMEIN.MyTextBox
Friend WithEvents Label5 As Label
End Class

View File

@@ -109,6 +109,7 @@ Public Class usrCntlSDLLeistungenUTA
txtKartenNr.Text = SDL.KartenNr
txtClientNr.Text = SDL.CLIENT_Nr
txtCardNr.Text = SDL.CARD_Nr
txtCVCNr.Text = If(SDL.CVCNr, "")
'Me.Enabled = s.bindingSource.Count > 0
'AddHandler s.bindingSource.PositionChanged, Sub()
@@ -168,6 +169,7 @@ Public Class usrCntlSDLLeistungenUTA
SDL.KartenNr = txtKartenNr.Text
SDL.CLIENT_Nr = txtClientNr.Text
SDL.CARD_Nr = txtCardNr.Text
SDL.CVCNr = txtCVCNr.Text
SDL.ErsatzkarteAm = cbxErsatzkarte._date
SDL.VerlorenAm = cbxVerloren._date
@@ -185,7 +187,7 @@ Public Class usrCntlSDLLeistungenUTA
End Function
Private Sub txtBestellung_TextChanged(sender As Object, e As EventArgs) Handles txtBestellung.PropertyChanged, txtLieferung.PropertyChanged, txtPIN.TextChanged, txtKartenNr.TextChanged, txtClientNr.TextChanged, txtCardNr.TextChanged, txtVermerk.TextChanged, txtGueltigkeit2.PropertyChanged, cbxErsatzkarte.CheckedChanged, cbxDefekt.CheckedChanged, cbxVerloren.CheckedChanged, cbxGestohlen.CheckedChanged, cbxGesperrt.CheckedChanged, cbxArchiviert.CheckedChanged
Private Sub txtBestellung_TextChanged(sender As Object, e As EventArgs) Handles txtBestellung.PropertyChanged, txtLieferung.PropertyChanged, txtPIN.TextChanged, txtKartenNr.TextChanged, txtClientNr.TextChanged, txtCardNr.TextChanged, txtVermerk.TextChanged, txtGueltigkeit2.PropertyChanged, cbxErsatzkarte.CheckedChanged, cbxDefekt.CheckedChanged, cbxVerloren.CheckedChanged, cbxGestohlen.CheckedChanged, cbxGesperrt.CheckedChanged, cbxArchiviert.CheckedChanged, txtCVCNr.TextChanged
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Leistungen_bearbeiten", Me.FindForm) Then Exit Sub
If boud And Me.FindForm IsNot Nothing Then

View File

@@ -3905,7 +3905,7 @@ Public Class frmMDMDatenverarbetiung
Try
Dim dtUTAKundennummern As DataTable = SQL.loadDgvBySql("SELECT Distinct(tblUTAImportNew.Kundennummer)
FROM tblUTAImportNew LEFT JOIN Adressen ON tblUTAImportNew.Kundennummer = Adressen.UTAKundenNr
FROM tblUTAImportNew LEFT JOIN Adressen ON tblUTAImportNew.Kundennummer = Adressen.UTAKundenNr WHERE cast(tblUTAImportNew.Rechnungsdatum as Date) = '" & DateTimePicker2.Text & "'
GROUP BY tblUTAImportNew.Kundennummer, Adressen.UTAKundenNr
HAVING (((Adressen.UTAKundenNr) Is Null))", "FMZOLL")

View File

@@ -66,6 +66,7 @@ Public Class cSDL
Property BelegNr As Object = Nothing
Property Nationalitaet As Object = Nothing
Property CO2Kategorie As Object = Nothing
Property CVCNr As Object = Nothing
Public hasentry
Dim SQL As New SQL
@@ -156,6 +157,7 @@ Public Class cSDL
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BelegNr", BelegNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Nationalitaet", Nationalitaet))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CO2Kategorie", CO2Kategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CVCNr", CVCNr))
Return list
End Function

View File

@@ -970,342 +970,353 @@ Public Class cUTA
Dim curChecksumme As Double
Dim lngRecordCount As Long
'Datei auf Fehler prüfen!
Do While (objFileRead.Peek() > -1)
Dim strZeile = objFileRead.ReadLine()
Try
Select Case Mid(strZeile, 1, 2)
Case "10"
booHeaderVorhanden = True
lngRecordCount = lngRecordCount + 1
Case "20"
' Meldung bei nicht vorhandenen Haeder.
If Not booHeaderVorhanden Then
MsgBox("Datei kann wegen fehlenden Header nicht verarbeitet werden.")
objFileRead.Close()
Return False
End If
lngRecordCount = lngRecordCount + 1
Case "90"
' Meldung bei nicht vorhandenen Haeder.
If Not booHeaderVorhanden Then
MsgBox("Datei kann wegen fehlenden Header nicht verarbeitet werden.")
objFileRead.Close()
Return False
End If
'Datei auf Fehler prüfen!
Do While (objFileRead.Peek() > -1)
Dim strZeile = objFileRead.ReadLine()
booTrailerVorhanden = True
lngRecordCount = lngRecordCount + 1
Select Case Mid(strZeile, 1, 2)
Case "10"
booHeaderVorhanden = True
lngRecordCount = lngRecordCount + 1
Case "20"
' Meldung bei nicht vorhandenen Haeder.
If Not booHeaderVorhanden Then
MsgBox("Datei kann wegen fehlenden Header nicht verarbeitet werden.")
objFileRead.Close()
Return False
End If
' Prüfsumme Anzahl der Sätze im File ohne Header und Trailer.
If Trim(Mid(strZeile, 3, 13)) <> (lngRecordCount) Then
MsgBox("Fehler: " & vbNewLine & "Prüfsumme in der Datei stimmt nicht mit der Zeilenanzahl der Datei überein! " & vbNewLine & "Record Count: " & Trim(Mid(strZeile, 3, 13)) & vbCrLf & "Prüfsumme: " & (lngRecordCount) & vbCrLf)
objFileRead.Close()
Return False
End If
lngRecordCount = lngRecordCount + 1
' Meldung bei Prüfsummenfehler.
If booPrüfziffernfehler Then
MsgBox("Datei kann wegen Prüfsummenfehler nicht verarbeitet werden.")
objFileRead.Close()
End If
Case Else
booPrüfziffernfehler = True
End Select
Loop
Dim lngPKLine As Long = 0
lngRecordCount = 0
'gleicher PKFileName wird nun aus CLFHeader gelöscht. CASCADE löscht dann zugehörige CLFBody und CLFTrailer.
'If Not SQL.doSQL("DELETE tblUTAHeaderNew.ErstellDatumUhrzeit, tblUTAHeaderNew.Übertragungsnummer FROM tblUTAHeaderNew WHERE (((tblUTAHeaderNew.ErstellDatumUhrzeit)=" & Format$(dtmErstellDatumUhrzeit, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") & ") AND ((tblUTAHeaderNew.Übertragungsnummer)=" & lngÜbertragungsnummer, "FMZOLL") Then
' MsgBox("Fehler beim Löschen des CLF-Headers")
' objFileRead.Close()
' Return False
'End If
'If Not SQL.doSQL("UPDATE CLF SET PKFileName = '" & fi.Name.ToString & "'", "FMZOLL") Then
' MsgBox("Fehler beim Update der CLF-Nr")
' objFileRead.Close()
' Return False
'End If
objFileRead.DiscardBufferedData()
objFileRead.BaseStream.Seek(0, System.IO.SeekOrigin.Begin)
Do While (objFileRead.Peek() > -1)
Dim strZeile = objFileRead.ReadLine()
Select Case Mid(strZeile, 1, 2)
Case "10"
booHeaderVorhanden = True
lngRecordCount = lngRecordCount + 1
dtmErstellDatumUhrzeit = DateSerial(Mid(strZeile, 35, 4), Mid(strZeile, 32, 2), Mid(strZeile, 29, 2)) & " " & TimeSerial(Mid(strZeile, 40, 2), Mid(strZeile, 43, 2), Mid(strZeile, 46, 2))
lngÜbertragungsnummer = Mid(strZeile, 61, 6)
'Dim ext = CInt(fi.Extension.Remove(0, 1))
Dim clfHeader As New cUTA.UTAHeader(lngÜbertragungsnummer, dtmErstellDatumUhrzeit)
With clfHeader
.Absender_ID = Mid(strZeile, 10, 6)
.Empfänger_ID = Mid(strZeile, 23, 6)
.Filler_Feld_5 = IIf(Trim(Mid(strZeile, 39, 1)) = "", Nothing, Trim(Mid(strZeile, 39, 1)))
.Abrechnungsnummer = IIf(Trim(Mid(strZeile, 48, 13)) = Nothing, "", Trim(Mid(strZeile, 48, 13)))
.DTF_Format = IIf(Trim(Mid(strZeile, 67, 6)) = Nothing, "", Trim(Mid(strZeile, 67, 6)))
.SAVE()
End With
Case "20"
lngRecordCount = lngRecordCount + 1
lngÜbertragungsposition = lngÜbertragungsposition + 1
Dim clfBody As New cUTA.UTABody(lngÜbertragungsnummer, lngÜbertragungsposition, dtmErstellDatumUhrzeit)
With clfBody
.Übertragungsnummer = lngÜbertragungsnummer
.Übertragungsposition = lngÜbertragungsposition
.Abrechnungsnummer = Mid(strZeile, 3, 13)
.[Datum_für_Lieferungen_und_Leistungen_bis] = DateSerial(Mid(strZeile, 20, 4), Mid(strZeile, 18, 2), Mid(strZeile, 16, 2))
.[Rechnungsempfänger_Kundennummer] = Mid(strZeile, 24, 13)
.[Abrechnungsdatum] = DateSerial(Mid(strZeile, 41, 4), Mid(strZeile, 39, 2), Mid(strZeile, 37, 2))
.[Kundennummer] = Mid(strZeile, 45, 13)
.[Kartennummer] = IIf(Trim(Mid(strZeile, 58, 19)) = "", Nothing, Trim(Mid(strZeile, 58, 19)))
.[Belegdatum] = DateSerial(Mid(strZeile, 81, 4), Mid(strZeile, 79, 2), Mid(strZeile, 77, 2))
.[Akzeptanzstellennummer] = Mid(strZeile, 85, 13)
.[Standort_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 98, 25)) = "", Nothing, Trim(Mid(strZeile, 98, 25)))
.[Lieferland] = IIf(Trim(Mid(strZeile, 123, 3)) = "", Nothing, Trim(Mid(strZeile, 123, 3)))
.[Belegnummer_des_Lieferanten] = IIf(Trim(Mid(strZeile, 126, 13)) = "", Nothing, Trim(Mid(strZeile, 126, 13)))
.[Kilometerstand] = Mid(strZeile, 139, 8)
.[Fakturierwarenart] = IIf(Trim(Mid(strZeile, 147, 5)) = "", Nothing, Trim(Mid(strZeile, 147, 5)))
.[Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen] = IIf(Trim(Mid(strZeile, 152, 1)) = "", Nothing, Trim(Mid(strZeile, 152, 1)))
.[Menge] = Mid(strZeile, 153, 10) / 100
.[SB_BT] = IIf(Trim(Mid(strZeile, 163, 1)) = "", Nothing, Trim(Mid(strZeile, 163, 1)))
.[Umsatzsteuerprozentsatz] = Mid(strZeile, 164, 5) / 10000
.[Lieferlandwährung_ISO] = IIf(Trim(Mid(strZeile, 169, 3)) = "", Nothing, Trim(Mid(strZeile, 169, 3)))
.[Einzelpreis_Brutto_in_Lieferlandwährung] = Mid(strZeile, 172, 11) / 100
.[Einzelpreis_Netto_in_Lieferlandwährung] = Mid(strZeile, 183, 11) / 100
.[Betrag_Service_in_Lieferlandwährung] = Mid(strZeile, 194, 11) / 100
.[Betrag_Nachlass_in_Lieferlandwährung] = Mid(strZeile, 205, 11) / 100
.[Gesamtbetrag_Netto_in_Lieferlandwährung] = Mid(strZeile, 216, 11) / 100
.[Gesamtbetrag_Brutto_in_Lieferlandwährung] = Mid(strZeile, 227, 11) / 100
.[Darstellwährung_ISO] = IIf(Trim(Mid(strZeile, 238, 3)) = "", Nothing, Trim(Mid(strZeile, 238, 3)))
.[Betrag_Service_in_Darstellwährung] = Mid(strZeile, 241, 11) / 100
.[Betrag_Nachlass_in_Darstellwährung] = Mid(strZeile, 252, 11) / 100
.[Gesamtbetrag_Netto_in_Darstellwährung] = Mid(strZeile, 263, 11) / 100
.[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung] = Mid(strZeile, 274, 11) / 100
.[Gesamtbetrag_Brutto_in_Darstellwährung] = Mid(strZeile, 285, 11) / 100
.[Prägetext_i_d_R_KFZ_Kennzeichen] = IIf(Trim(Mid(strZeile, 296, 16)) = "", Nothing, Trim(Mid(strZeile, 296, 16)))
.[Kunden_Kostenstelle_1] = IIf(Trim(Mid(strZeile, 312, 20)) = "", Nothing, Trim(Mid(strZeile, 312, 20)))
.[Kartentyp] = IIf(Trim(Mid(strZeile, 332, 8)) = "", Nothing, Trim(Mid(strZeile, 332, 8)))
.[Filler_Feld_35] = IIf(Trim(Mid(strZeile, 340, 1)) = "", Nothing, Trim(Mid(strZeile, 340, 1)))
.[Filler_Feld_36] = IIf(Trim(Mid(strZeile, 341, 3)) = "", Nothing, Trim(Mid(strZeile, 341, 3)))
.[KZ_Autobahn] = IIf(Trim(Mid(strZeile, 344, 1)) = "", Nothing, Trim(Mid(strZeile, 344, 1)))
.[INFO_Feld] = IIf(Trim(Mid(strZeile, 345, 18)) = "", Nothing, Trim(Mid(strZeile, 345, 18)))
.[KFZ_Kennzeichen] = IIf(Trim(Mid(strZeile, 363, 16)) = "", Nothing, Trim(Mid(strZeile, 363, 16)))
.[Filler_Feld_40] = IIf(Trim(Mid(strZeile, 379, 1)) = "", Nothing, Trim(Mid(strZeile, 379, 1)))
.[Buchungsart] = IIf(Trim(Mid(strZeile, 380, 1)) = "", Nothing, Trim(Mid(strZeile, 380, 1)))
.[Buchungsgrund] = IIf(Trim(Mid(strZeile, 381, 1)) = "", Nothing, Trim(Mid(strZeile, 381, 1)))
.[Filler_Feld_43] = IIf(Trim(Mid(strZeile, 382, 1)) = "", Nothing, Trim(Mid(strZeile, 382, 1)))
.[Informationsbeleg] = IIf(Trim(Mid(strZeile, 383, 1)) = "", Nothing, Trim(Mid(strZeile, 383, 1)))
.[Belegherkunft] = IIf(Trim(Mid(strZeile, 384, 1)) = "", Nothing, Trim(Mid(strZeile, 384, 1)))
.[Filler_Feld_46] = IIf(Trim(Mid(strZeile, 385, 14)) = "", Nothing, Trim(Mid(strZeile, 385, 14)))
.[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen] = Mid(strZeile, 399, 13) / 10000
.[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen] = Mid(strZeile, 412, 13) / 10000
.[Rechnungsdatum] = DateSerial(Mid(strZeile, 429, 4), Mid(strZeile, 427, 2), Mid(strZeile, 425, 2))
.[Umsatzsteuerprozentsatz_informativ] = Mid(strZeile, 433, 5) / 10000
.[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 438, 11) / 100
.[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 449, 11) / 100
.[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 460, 11) / 100
.[Fälligkeitsdatum] = DateSerial(Mid(strZeile, 475, 4), Mid(strZeile, 473, 2), Mid(strZeile, 471, 2))
.[Zahlungsziel_in_Tagen] = Mid(strZeile, 479, 3)
.[Zahlungsart] = IIf(Trim(Mid(strZeile, 482, 8)) = "", Nothing, Trim(Mid(strZeile, 482, 8)))
.[TC_Rechnungsnummer_gegenüber_dem_Nutzer] = IIf(Trim(Mid(strZeile, 490, 20)) = "", Nothing, Trim(Mid(strZeile, 490, 20)))
.[TC_Rechnungsdatum] = DateSerial(Mid(strZeile, 514, 4), Mid(strZeile, 512, 2), Mid(strZeile, 510, 2))
.[Zahlungszielgruppe] = IIf(Trim(Mid(strZeile, 518, 7)) = "", Nothing, Trim(Mid(strZeile, 518, 7)))
.[Kunden_Kostenstelle_2] = IIf(Trim(Mid(strZeile, 525, 20)) = "", Nothing, Trim(Mid(strZeile, 525, 20)))
.[Lieferzeit] = IIf(Trim(Mid(strZeile, 545, 6)) = "", Nothing, Trim(Mid(strZeile, 545, 6)))
.[Fremdkartennummer] = IIf(Trim(Mid(strZeile, 551, 20)) = "", Nothing, Trim(Mid(strZeile, 551, 20)))
.[OnBoardUnitID] = IIf(Trim(Mid(strZeile, 571, 20)) = "", Nothing, Trim(Mid(strZeile, 571, 20)))
.[KFZ_Kennzeichen_komprimiert] = IIf(Trim(Mid(strZeile, 591, 16)) = "", Nothing, Trim(Mid(strZeile, 591, 16)))
.[Kartenkategorie] = IIf(Trim(Mid(strZeile, 607, 8)) = "", Nothing, Trim(Mid(strZeile, 607, 8)))
.[Rechnungsnummer_pro_Lieferland] = Mid(strZeile, 615, 13)
.[Autobahnauffahrt] = IIf(Trim(Mid(strZeile, 628, 40)) = "", Nothing, Trim(Mid(strZeile, 628, 40)))
.[Autobahnausfahrt] = IIf(Trim(Mid(strZeile, 668, 40)) = "", Nothing, Trim(Mid(strZeile, 668, 40)))
.[Rabattschlüssel_der_französischen_Autobahngesellschaften] = IIf(Trim(Mid(strZeile, 708, 1)) = "", Nothing, Trim(Mid(strZeile, 708, 1)))
.[Nummer_Belastungsanzeige] = Mid(strZeile, 709, 13)
.[Betreuungsstelle] = IIf(Trim(Mid(strZeile, 722, 20)) = "", Nothing, Trim(Mid(strZeile, 722, 20)))
.[Filler_Feld_72] = IIf(Trim(Mid(strZeile, 742, 20)) = "", Nothing, Trim(Mid(strZeile, 742, 20)))
.[Akzeptanz_Medium] = IIf(Trim(Mid(strZeile, 762, 20)) = "", Nothing, Trim(Mid(strZeile, 762, 20)))
.[Steuerkategorie] = IIf(Trim(Mid(strZeile, 782, 8)) = "", Nothing, Trim(Mid(strZeile, 782, 8)))
.[UTA_Beleg_ID] = Mid(strZeile, 790, 11)
.[UTA_Normalbeleg_ID] = Mid(strZeile, 801, 11)
.[Gebühren_Bescheinigung_von] = DateSerial(Mid(strZeile, 816, 4), Mid(strZeile, 814, 2), Mid(strZeile, 812, 2))
.[Gebühren_Bescheinigung_bis] = DateSerial(Mid(strZeile, 824, 4), Mid(strZeile, 822, 2), Mid(strZeile, 820, 2))
.[Herausgeber_Nutzer_Nummer] = IIf(Trim(Mid(strZeile, 828, 20)) = "", Nothing, Trim(Mid(strZeile, 828, 20)))
.[Maßeinheit] = IIf(Trim(Mid(strZeile, 848, 8)) = "", Nothing, Trim(Mid(strZeile, 848, 8)))
.[Land_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 856, 3)) = "", Nothing, Trim(Mid(strZeile, 856, 3)))
.[Postleitzahl_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 859, 7)) = "", Nothing, Trim(Mid(strZeile, 859, 7)))
.[Steuerliches_Lieferland] = IIf(Trim(Mid(strZeile, 866, 3)) = "", Nothing, Trim(Mid(strZeile, 866, 3)))
.[Steuerliche_Produktgruppe] = IIf(Trim(Mid(strZeile, 869, 5)) = "", Nothing, Trim(Mid(strZeile, 869, 5)))
.[Leistungsort_verlagerbar] = IIf(Trim(Mid(strZeile, 874, 1)) = "", Nothing, Trim(Mid(strZeile, 874, 1)))
Select Case .[Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen]
Case "0" 'positiv
curChecksumme = curChecksumme + .[Gesamtbetrag_Brutto_in_Darstellwährung]
Case "1" 'negativ
curChecksumme = curChecksumme - .[Gesamtbetrag_Brutto_in_Darstellwährung]
.[Menge] = 0 - .[Menge]
.[Einzelpreis_Brutto_in_Lieferlandwährung] = 0 - .[Einzelpreis_Brutto_in_Lieferlandwährung]
.[Einzelpreis_Netto_in_Lieferlandwährung] = 0 - .[Einzelpreis_Netto_in_Lieferlandwährung]
.[Betrag_Service_in_Lieferlandwährung] = 0 - .[Betrag_Service_in_Lieferlandwährung]
.[Betrag_Nachlass_in_Lieferlandwährung] = 0 - .[Betrag_Nachlass_in_Lieferlandwährung]
.[Gesamtbetrag_Netto_in_Lieferlandwährung] = 0 - .[Gesamtbetrag_Netto_in_Lieferlandwährung]
.[Gesamtbetrag_Brutto_in_Lieferlandwährung] = 0 - .[Gesamtbetrag_Brutto_in_Lieferlandwährung]
.[Betrag_Service_in_Darstellwährung] = 0 - .[Betrag_Service_in_Darstellwährung]
.[Betrag_Nachlass_in_Darstellwährung] = 0 - .[Betrag_Nachlass_in_Darstellwährung]
.[Gesamtbetrag_Netto_in_Darstellwährung] = 0 - .[Gesamtbetrag_Netto_in_Darstellwährung]
.[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung] = 0 - .[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]
.[Gesamtbetrag_Brutto_in_Darstellwährung] = 0 - .[Gesamtbetrag_Brutto_in_Darstellwährung]
.[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen] = 0 - .[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen]
.[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen] = 0 - .[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen]
.[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ]
.[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ]
.[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ]
End Select
If onlyTestkunedn Then
'nur KundenNr 100964 und 825040 speichern:
If .[Kundennummer] = 100964 Or .[Kundennummer] = 825040 Then
.SAVE()
End If
Else
.SAVE()
Case "90"
' Meldung bei nicht vorhandenen Haeder.
If Not booHeaderVorhanden Then
MsgBox("Datei kann wegen fehlenden Header nicht verarbeitet werden.")
objFileRead.Close()
Return False
End If
booTrailerVorhanden = True
lngRecordCount = lngRecordCount + 1
'Dim clfArchiv As New cUTA.UTAArchiv(.Belegdatum, .UTA_Beleg_ID)
'clfArchiv.Übertragungsnummer = .Übertragungsnummer
'clfArchiv.ErstellDatumUhrzeit = .ErstellDatumUhrzeit
'clfArchiv.Übertragungsposition = .Übertragungsposition
'clfArchiv.Abrechnungsnummer = .Abrechnungsnummer
'clfArchiv.Datum_für_Lieferungen_und_Leistungen_bis = .Datum_für_Lieferungen_und_Leistungen_bis
'clfArchiv.Rechnungsempfänger_Kundennummer = .Rechnungsempfänger_Kundennummer
'clfArchiv.Abrechnungsdatum = .Abrechnungsdatum
'clfArchiv.Kundennummer = .Kundennummer
'clfArchiv.Kartennummer = .Kartennummer
'clfArchiv.Akzeptanzstellennummer = .Akzeptanzstellennummer
'clfArchiv.Standort_der_Akzeptanzstelle = .Standort_der_Akzeptanzstelle
'clfArchiv.Lieferland = .Lieferland
'clfArchiv.Belegnummer_des_Lieferanten = .Belegnummer_des_Lieferanten
'clfArchiv.Kilometerstand = .Kilometerstand
'clfArchiv.Fakturierwarenart = .Fakturierwarenart
'clfArchiv.Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen = .Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen
'clfArchiv.Menge = .Menge
'clfArchiv.SB_BT = .SB_BT
'clfArchiv.Umsatzsteuerprozentsatz = .Umsatzsteuerprozentsatz
'clfArchiv.Lieferlandwährung_ISO = .Lieferlandwährung_ISO
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung = .Einzelpreis_Netto_in_Lieferlandwährung
'clfArchiv.Einzelpreis_Brutto_in_Lieferlandwährung = .Einzelpreis_Brutto_in_Lieferlandwährung
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung = .Einzelpreis_Netto_in_Lieferlandwährung
'clfArchiv.Betrag_Service_in_Lieferlandwährung = .Betrag_Service_in_Lieferlandwährung
'clfArchiv.Betrag_Nachlass_in_Lieferlandwährung = .Betrag_Nachlass_in_Lieferlandwährung
'clfArchiv.Gesamtbetrag_Netto_in_Lieferlandwährung = .Gesamtbetrag_Netto_in_Lieferlandwährung
'clfArchiv.Gesamtbetrag_Brutto_in_Lieferlandwährung = .Gesamtbetrag_Brutto_in_Lieferlandwährung
'clfArchiv.Darstellwährung_ISO = .Darstellwährung_ISO
'clfArchiv.Betrag_Service_in_Darstellwährung = .Betrag_Service_in_Darstellwährung
'clfArchiv.Betrag_Nachlass_in_Darstellwährung = .Betrag_Nachlass_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Netto_in_Darstellwährung = .Gesamtbetrag_Netto_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung = .Gesamtbetrag_Umsatzsteuer_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Brutto_in_Darstellwährung = .Gesamtbetrag_Brutto_in_Darstellwährung
'clfArchiv.Prägetext_i_d_R_KFZ_Kennzeichen = .Prägetext_i_d_R_KFZ_Kennzeichen
'clfArchiv.Kunden_Kostenstelle_1 = .Kunden_Kostenstelle_1
'clfArchiv.Kartentyp = .Kartentyp
'clfArchiv.Filler_Feld_35 = .Filler_Feld_35
'clfArchiv.Filler_Feld_36 = .Filler_Feld_36
'clfArchiv.KZ_Autobahn = .KZ_Autobahn
'clfArchiv.INFO_Feld = .INFO_Feld
'clfArchiv.KFZ_Kennzeichen = .KFZ_Kennzeichen
'clfArchiv.Filler_Feld_40 = .Filler_Feld_40
'clfArchiv.Buchungsart = .Buchungsart
'clfArchiv.Buchungsgrund = .Buchungsgrund
'clfArchiv.Filler_Feld_43 = .Filler_Feld_43
'clfArchiv.Informationsbeleg = .Informationsbeleg
'clfArchiv.Belegherkunft = .Belegherkunft
'clfArchiv.Filler_Feld_46 = .Filler_Feld_46
'clfArchiv.Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen = .Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen = .Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen
'clfArchiv.Rechnungsdatum = .Rechnungsdatum
'clfArchiv.Umsatzsteuerprozentsatz_informativ = .Umsatzsteuerprozentsatz_informativ
'clfArchiv.Betrag_Nachlass_in_Lieferlandwährung = .Betrag_Nachlass_in_Lieferlandwährung
'clfArchiv.Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ = .Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ
'clfArchiv.Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ = .Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ
'clfArchiv.Fälligkeitsdatum = .Fälligkeitsdatum
'clfArchiv.Zahlungsziel_in_Tagen = .Zahlungsziel_in_Tagen
'clfArchiv.Zahlungsart = .Zahlungsart
'clfArchiv.TC_Rechnungsnummer_gegenüber_dem_Nutzer = .TC_Rechnungsnummer_gegenüber_dem_Nutzer
'clfArchiv.TC_Rechnungsdatum = .TC_Rechnungsdatum
'clfArchiv.Zahlungszielgruppe = .Zahlungszielgruppe
'clfArchiv.Kunden_Kostenstelle_2 = .Kunden_Kostenstelle_2
'clfArchiv.Lieferzeit = .Lieferzeit
'clfArchiv.Fremdkartennummer = .Fremdkartennummer
'clfArchiv.OnBoardUnitID = .OnBoardUnitID
'clfArchiv.KFZ_Kennzeichen_komprimiert = .KFZ_Kennzeichen_komprimiert
'clfArchiv.Kartenkategorie = .Kartenkategorie
'clfArchiv.Rechnungsnummer_pro_Lieferland = .Rechnungsnummer_pro_Lieferland
'clfArchiv.Autobahnauffahrt = .Autobahnauffahrt
'clfArchiv.Autobahnausfahrt = .Autobahnausfahrt
'clfArchiv.Rabattschlüssel_der_französischen_Autobahngesellschaften = .Rabattschlüssel_der_französischen_Autobahngesellschaften
'clfArchiv.Nummer_Belastungsanzeige = .Nummer_Belastungsanzeige
'clfArchiv.Betreuungsstelle = .Betreuungsstelle
'clfArchiv.Filler_Feld_72 = .Filler_Feld_72
'clfArchiv.Akzeptanz_Medium = .Akzeptanz_Medium
'clfArchiv.Steuerkategorie = .Steuerkategorie
'clfArchiv.UTA_Normalbeleg_ID = .UTA_Normalbeleg_ID
'clfArchiv.Gebühren_Bescheinigung_von = .Gebühren_Bescheinigung_von
'clfArchiv.Gebühren_Bescheinigung_bis = .Gebühren_Bescheinigung_bis
'clfArchiv.Herausgeber_Nutzer_Nummer = .Herausgeber_Nutzer_Nummer
'clfArchiv.Maßeinheit = .Maßeinheit
'clfArchiv.Land_der_Akzeptanzstelle = .Land_der_Akzeptanzstelle
'clfArchiv.Postleitzahl_der_Akzeptanzstelle = .Postleitzahl_der_Akzeptanzstelle
'clfArchiv.Steuerliches_Lieferland = .Steuerliches_Lieferland
'clfArchiv.Steuerliche_Produktgruppe = .Steuerliche_Produktgruppe
'clfArchiv.Leistungsort_verlagerbar = .Leistungsort_verlagerbar
'clfArchiv.SAVE()
' Prüfsumme Anzahl der Sätze im File ohne Header und Trailer.
If Trim(Mid(strZeile, 3, 13)) <> (lngRecordCount) Then
MsgBox("Fehler: " & vbNewLine & "Prüfsumme in der Datei stimmt nicht mit der Zeilenanzahl der Datei überein! " & vbNewLine & "Record Count: " & Trim(Mid(strZeile, 3, 13)) & vbCrLf & "Prüfsumme: " & (lngRecordCount) & vbCrLf)
objFileRead.Close()
Return False
End If
End With
' Meldung bei Prüfsummenfehler.
If booPrüfziffernfehler Then
MsgBox("Datei kann wegen Prüfsummenfehler nicht verarbeitet werden.")
objFileRead.Close()
Case "90"
End If
Case Else
booPrüfziffernfehler = True
End Select
If curChecksumme < 0 Then
curChecksumme = 0 - curChecksumme
End If
If Trim(Mid(strZeile, 16, 18) / 100) <> Math.Round(curChecksumme, 2) Then
MsgBox("Checksumme: " & Trim(Mid(strZeile, 16, 18) / 100) & vbCrLf & "Prüfsumme: " & curChecksumme & vbCrLf & "Datei kann wegen Prüfsummenfehler nicht verarbeitet werden")
'Return False
End If
Loop
lngRecordCount = lngRecordCount + 1
Dim clfTrailer As New cUTA.UTATrailer(lngÜbertragungsnummer, dtmErstellDatumUhrzeit)
With clfTrailer
.ErstellDatumUhrzeit = dtmErstellDatumUhrzeit
.Übertragungsnummer = lngÜbertragungsnummer
.Anzahl_Sätze = Mid(strZeile, 3, 13)
.Checksumme = Mid(strZeile, 16, 18) / 100
.SAVE()
End With
Dim lngPKLine As Long = 0
lngRecordCount = 0
'gleicher PKFileName wird nun aus CLFHeader gelöscht. CASCADE löscht dann zugehörige CLFBody und CLFTrailer.
'If Not SQL.doSQL("DELETE tblUTAHeaderNew.ErstellDatumUhrzeit, tblUTAHeaderNew.Übertragungsnummer FROM tblUTAHeaderNew WHERE (((tblUTAHeaderNew.ErstellDatumUhrzeit)=" & Format$(dtmErstellDatumUhrzeit, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") & ") AND ((tblUTAHeaderNew.Übertragungsnummer)=" & lngÜbertragungsnummer, "FMZOLL") Then
' MsgBox("Fehler beim Löschen des CLF-Headers")
' objFileRead.Close()
' Return False
'End If
'If Not SQL.doSQL("UPDATE CLF SET PKFileName = '" & fi.Name.ToString & "'", "FMZOLL") Then
' MsgBox("Fehler beim Update der CLF-Nr")
' objFileRead.Close()
' Return False
'End If
objFileRead.DiscardBufferedData()
objFileRead.BaseStream.Seek(0, System.IO.SeekOrigin.Begin)
Do While (objFileRead.Peek() > -1)
Dim strZeile = objFileRead.ReadLine()
Select Case Mid(strZeile, 1, 2)
Case "10"
booHeaderVorhanden = True
lngRecordCount = lngRecordCount + 1
dtmErstellDatumUhrzeit = DateSerial(Mid(strZeile, 35, 4), Mid(strZeile, 32, 2), Mid(strZeile, 29, 2)) & " " & TimeSerial(Mid(strZeile, 40, 2), Mid(strZeile, 43, 2), Mid(strZeile, 46, 2))
lngÜbertragungsnummer = Mid(strZeile, 61, 6)
'Dim ext = CInt(fi.Extension.Remove(0, 1))
Dim clfHeader As New cUTA.UTAHeader(lngÜbertragungsnummer, dtmErstellDatumUhrzeit)
With clfHeader
.Absender_ID = Mid(strZeile, 10, 6)
.Empfänger_ID = Mid(strZeile, 23, 6)
.Filler_Feld_5 = IIf(Trim(Mid(strZeile, 39, 1)) = "", Nothing, Trim(Mid(strZeile, 39, 1)))
.Abrechnungsnummer = IIf(Trim(Mid(strZeile, 48, 13)) = Nothing, "", Trim(Mid(strZeile, 48, 13)))
.DTF_Format = IIf(Trim(Mid(strZeile, 67, 6)) = Nothing, "", Trim(Mid(strZeile, 67, 6)))
.SAVE()
End With
Case "20"
lngÜbertragungsposition = 6616
Case Else
' Andere RecordNumber überlesen.
End Select
lngRecordCount = lngRecordCount + 1
lngÜbertragungsposition = lngÜbertragungsposition + 1
Dim clfBody As New cUTA.UTABody(lngÜbertragungsnummer, lngÜbertragungsposition, dtmErstellDatumUhrzeit)
With clfBody
.Übertragungsnummer = lngÜbertragungsnummer
.Übertragungsposition = lngÜbertragungsposition
.Abrechnungsnummer = Mid(strZeile, 3, 13)
.[Datum_für_Lieferungen_und_Leistungen_bis] = DateSerial(Mid(strZeile, 20, 4), Mid(strZeile, 18, 2), Mid(strZeile, 16, 2))
.[Rechnungsempfänger_Kundennummer] = Mid(strZeile, 24, 13)
.[Abrechnungsdatum] = DateSerial(Mid(strZeile, 41, 4), Mid(strZeile, 39, 2), Mid(strZeile, 37, 2))
.[Kundennummer] = Mid(strZeile, 45, 13)
.[Kartennummer] = IIf(Trim(Mid(strZeile, 58, 19)) = "", Nothing, Trim(Mid(strZeile, 58, 19)))
.[Belegdatum] = DateSerial(Mid(strZeile, 81, 4), Mid(strZeile, 79, 2), Mid(strZeile, 77, 2))
.[Akzeptanzstellennummer] = Mid(strZeile, 85, 13)
.[Standort_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 98, 25)) = "", Nothing, Trim(Mid(strZeile, 98, 25)))
.[Lieferland] = IIf(Trim(Mid(strZeile, 123, 3)) = "", Nothing, Trim(Mid(strZeile, 123, 3)))
.[Belegnummer_des_Lieferanten] = IIf(Trim(Mid(strZeile, 126, 13)) = "", Nothing, Trim(Mid(strZeile, 126, 13)))
.[Kilometerstand] = Mid(strZeile, 139, 8)
.[Fakturierwarenart] = IIf(Trim(Mid(strZeile, 147, 5)) = "", Nothing, Trim(Mid(strZeile, 147, 5)))
.[Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen] = IIf(Trim(Mid(strZeile, 152, 1)) = "", Nothing, Trim(Mid(strZeile, 152, 1)))
.[Menge] = Mid(strZeile, 153, 10) / 100
.[SB_BT] = IIf(Trim(Mid(strZeile, 163, 1)) = "", Nothing, Trim(Mid(strZeile, 163, 1)))
.[Umsatzsteuerprozentsatz] = Mid(strZeile, 164, 5) / 10000
.[Lieferlandwährung_ISO] = IIf(Trim(Mid(strZeile, 169, 3)) = "", Nothing, Trim(Mid(strZeile, 169, 3)))
.[Einzelpreis_Brutto_in_Lieferlandwährung] = Mid(strZeile, 172, 11) / 100
.[Einzelpreis_Netto_in_Lieferlandwährung] = Mid(strZeile, 183, 11) / 100
.[Betrag_Service_in_Lieferlandwährung] = Mid(strZeile, 194, 11) / 100
.[Betrag_Nachlass_in_Lieferlandwährung] = Mid(strZeile, 205, 11) / 100
.[Gesamtbetrag_Netto_in_Lieferlandwährung] = Mid(strZeile, 216, 11) / 100
.[Gesamtbetrag_Brutto_in_Lieferlandwährung] = Mid(strZeile, 227, 11) / 100
.[Darstellwährung_ISO] = IIf(Trim(Mid(strZeile, 238, 3)) = "", Nothing, Trim(Mid(strZeile, 238, 3)))
.[Betrag_Service_in_Darstellwährung] = Mid(strZeile, 241, 11) / 100
.[Betrag_Nachlass_in_Darstellwährung] = Mid(strZeile, 252, 11) / 100
.[Gesamtbetrag_Netto_in_Darstellwährung] = Mid(strZeile, 263, 11) / 100
.[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung] = Mid(strZeile, 274, 11) / 100
.[Gesamtbetrag_Brutto_in_Darstellwährung] = Mid(strZeile, 285, 11) / 100
.[Prägetext_i_d_R_KFZ_Kennzeichen] = IIf(Trim(Mid(strZeile, 296, 16)) = "", Nothing, Trim(Mid(strZeile, 296, 16)))
.[Kunden_Kostenstelle_1] = IIf(Trim(Mid(strZeile, 312, 20)) = "", Nothing, Trim(Mid(strZeile, 312, 20)))
.[Kartentyp] = IIf(Trim(Mid(strZeile, 332, 8)) = "", Nothing, Trim(Mid(strZeile, 332, 8)))
.[Filler_Feld_35] = IIf(Trim(Mid(strZeile, 340, 1)) = "", Nothing, Trim(Mid(strZeile, 340, 1)))
.[Filler_Feld_36] = IIf(Trim(Mid(strZeile, 341, 3)) = "", Nothing, Trim(Mid(strZeile, 341, 3)))
.[KZ_Autobahn] = IIf(Trim(Mid(strZeile, 344, 1)) = "", Nothing, Trim(Mid(strZeile, 344, 1)))
.[INFO_Feld] = IIf(Trim(Mid(strZeile, 345, 18)) = "", Nothing, Trim(Mid(strZeile, 345, 18)))
.[KFZ_Kennzeichen] = IIf(Trim(Mid(strZeile, 363, 16)) = "", Nothing, Trim(Mid(strZeile, 363, 16)))
.[Filler_Feld_40] = IIf(Trim(Mid(strZeile, 379, 1)) = "", Nothing, Trim(Mid(strZeile, 379, 1)))
.[Buchungsart] = IIf(Trim(Mid(strZeile, 380, 1)) = "", Nothing, Trim(Mid(strZeile, 380, 1)))
.[Buchungsgrund] = IIf(Trim(Mid(strZeile, 381, 1)) = "", Nothing, Trim(Mid(strZeile, 381, 1)))
.[Filler_Feld_43] = IIf(Trim(Mid(strZeile, 382, 1)) = "", Nothing, Trim(Mid(strZeile, 382, 1)))
.[Informationsbeleg] = IIf(Trim(Mid(strZeile, 383, 1)) = "", Nothing, Trim(Mid(strZeile, 383, 1)))
.[Belegherkunft] = IIf(Trim(Mid(strZeile, 384, 1)) = "", Nothing, Trim(Mid(strZeile, 384, 1)))
.[Filler_Feld_46] = IIf(Trim(Mid(strZeile, 385, 14)) = "", Nothing, Trim(Mid(strZeile, 385, 14)))
.[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen] = Mid(strZeile, 399, 13) / 10000
.[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen] = Mid(strZeile, 412, 13) / 10000
.[Rechnungsdatum] = DateSerial(Mid(strZeile, 429, 4), Mid(strZeile, 427, 2), Mid(strZeile, 425, 2))
.[Umsatzsteuerprozentsatz_informativ] = Mid(strZeile, 433, 5) / 10000
.[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 438, 11) / 100
.[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 449, 11) / 100
.[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ] = Mid(strZeile, 460, 11) / 100
.[Fälligkeitsdatum] = DateSerial(Mid(strZeile, 475, 4), Mid(strZeile, 473, 2), Mid(strZeile, 471, 2))
.[Zahlungsziel_in_Tagen] = Mid(strZeile, 479, 3)
.[Zahlungsart] = IIf(Trim(Mid(strZeile, 482, 8)) = "", Nothing, Trim(Mid(strZeile, 482, 8)))
.[TC_Rechnungsnummer_gegenüber_dem_Nutzer] = IIf(Trim(Mid(strZeile, 490, 20)) = "", Nothing, Trim(Mid(strZeile, 490, 20)))
.[TC_Rechnungsdatum] = DateSerial(Mid(strZeile, 514, 4), Mid(strZeile, 512, 2), Mid(strZeile, 510, 2))
.[Zahlungszielgruppe] = IIf(Trim(Mid(strZeile, 518, 7)) = "", Nothing, Trim(Mid(strZeile, 518, 7)))
.[Kunden_Kostenstelle_2] = IIf(Trim(Mid(strZeile, 525, 20)) = "", Nothing, Trim(Mid(strZeile, 525, 20)))
.[Lieferzeit] = IIf(Trim(Mid(strZeile, 545, 6)) = "", Nothing, Trim(Mid(strZeile, 545, 6)))
.[Fremdkartennummer] = IIf(Trim(Mid(strZeile, 551, 20)) = "", Nothing, Trim(Mid(strZeile, 551, 20)))
.[OnBoardUnitID] = IIf(Trim(Mid(strZeile, 571, 20)) = "", Nothing, Trim(Mid(strZeile, 571, 20)))
.[KFZ_Kennzeichen_komprimiert] = IIf(Trim(Mid(strZeile, 591, 16)) = "", Nothing, Trim(Mid(strZeile, 591, 16)))
.[Kartenkategorie] = IIf(Trim(Mid(strZeile, 607, 8)) = "", Nothing, Trim(Mid(strZeile, 607, 8)))
.[Rechnungsnummer_pro_Lieferland] = Mid(strZeile, 615, 13)
.[Autobahnauffahrt] = IIf(Trim(Mid(strZeile, 628, 40)) = "", Nothing, Trim(Mid(strZeile, 628, 40)))
.[Autobahnausfahrt] = IIf(Trim(Mid(strZeile, 668, 40)) = "", Nothing, Trim(Mid(strZeile, 668, 40)))
.[Rabattschlüssel_der_französischen_Autobahngesellschaften] = IIf(Trim(Mid(strZeile, 708, 1)) = "", Nothing, Trim(Mid(strZeile, 708, 1)))
.[Nummer_Belastungsanzeige] = Mid(strZeile, 709, 13)
.[Betreuungsstelle] = IIf(Trim(Mid(strZeile, 722, 20)) = "", Nothing, Trim(Mid(strZeile, 722, 20)))
.[Filler_Feld_72] = IIf(Trim(Mid(strZeile, 742, 20)) = "", Nothing, Trim(Mid(strZeile, 742, 20)))
.[Akzeptanz_Medium] = IIf(Trim(Mid(strZeile, 762, 20)) = "", Nothing, Trim(Mid(strZeile, 762, 20)))
.[Steuerkategorie] = IIf(Trim(Mid(strZeile, 782, 8)) = "", Nothing, Trim(Mid(strZeile, 782, 8)))
.[UTA_Beleg_ID] = Mid(strZeile, 790, 11)
.[UTA_Normalbeleg_ID] = Mid(strZeile, 801, 11)
.[Gebühren_Bescheinigung_von] = DateSerial(Mid(strZeile, 816, 4), Mid(strZeile, 814, 2), Mid(strZeile, 812, 2))
.[Gebühren_Bescheinigung_bis] = DateSerial(Mid(strZeile, 824, 4), Mid(strZeile, 822, 2), Mid(strZeile, 820, 2))
.[Herausgeber_Nutzer_Nummer] = IIf(Trim(Mid(strZeile, 828, 20)) = "", Nothing, Trim(Mid(strZeile, 828, 20)))
.[Maßeinheit] = IIf(Trim(Mid(strZeile, 848, 8)) = "", Nothing, Trim(Mid(strZeile, 848, 8)))
.[Land_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 856, 3)) = "", Nothing, Trim(Mid(strZeile, 856, 3)))
.[Postleitzahl_der_Akzeptanzstelle] = IIf(Trim(Mid(strZeile, 859, 7)) = "", Nothing, Trim(Mid(strZeile, 859, 7)))
.[Steuerliches_Lieferland] = IIf(Trim(Mid(strZeile, 866, 3)) = "", Nothing, Trim(Mid(strZeile, 866, 3)))
.[Steuerliche_Produktgruppe] = IIf(Trim(Mid(strZeile, 869, 5)) = "", Nothing, Trim(Mid(strZeile, 869, 5)))
.[Leistungsort_verlagerbar] = IIf(Trim(Mid(strZeile, 874, 1)) = "", Nothing, Trim(Mid(strZeile, 874, 1)))
Loop
Select Case .[Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen]
Case "0" 'positiv
curChecksumme = curChecksumme + .[Gesamtbetrag_Brutto_in_Darstellwährung]
Case "1" 'negativ
curChecksumme = curChecksumme - .[Gesamtbetrag_Brutto_in_Darstellwährung]
.[Menge] = 0 - .[Menge]
.[Einzelpreis_Brutto_in_Lieferlandwährung] = 0 - .[Einzelpreis_Brutto_in_Lieferlandwährung]
.[Einzelpreis_Netto_in_Lieferlandwährung] = 0 - .[Einzelpreis_Netto_in_Lieferlandwährung]
.[Betrag_Service_in_Lieferlandwährung] = 0 - .[Betrag_Service_in_Lieferlandwährung]
.[Betrag_Nachlass_in_Lieferlandwährung] = 0 - .[Betrag_Nachlass_in_Lieferlandwährung]
.[Gesamtbetrag_Netto_in_Lieferlandwährung] = 0 - .[Gesamtbetrag_Netto_in_Lieferlandwährung]
.[Gesamtbetrag_Brutto_in_Lieferlandwährung] = 0 - .[Gesamtbetrag_Brutto_in_Lieferlandwährung]
.[Betrag_Service_in_Darstellwährung] = 0 - .[Betrag_Service_in_Darstellwährung]
.[Betrag_Nachlass_in_Darstellwährung] = 0 - .[Betrag_Nachlass_in_Darstellwährung]
.[Gesamtbetrag_Netto_in_Darstellwährung] = 0 - .[Gesamtbetrag_Netto_in_Darstellwährung]
.[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung] = 0 - .[Gesamtbetrag_Umsatzsteuer_in_Darstellwährung]
.[Gesamtbetrag_Brutto_in_Darstellwährung] = 0 - .[Gesamtbetrag_Brutto_in_Darstellwährung]
.[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen] = 0 - .[Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen]
.[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen] = 0 - .[Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen]
.[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ]
.[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ]
.[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ] = 0 - .[Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ]
End Select
If onlyTestkunedn Then
'nur KundenNr 100964 und 825040 speichern:
If .[Kundennummer] = 100964 Or .[Kundennummer] = 825040 Then
.SAVE()
End If
Else
.SAVE()
End If
'Dim clfArchiv As New cUTA.UTAArchiv(.Belegdatum, .UTA_Beleg_ID)
'clfArchiv.Übertragungsnummer = .Übertragungsnummer
'clfArchiv.ErstellDatumUhrzeit = .ErstellDatumUhrzeit
'clfArchiv.Übertragungsposition = .Übertragungsposition
'clfArchiv.Abrechnungsnummer = .Abrechnungsnummer
'clfArchiv.Datum_für_Lieferungen_und_Leistungen_bis = .Datum_für_Lieferungen_und_Leistungen_bis
'clfArchiv.Rechnungsempfänger_Kundennummer = .Rechnungsempfänger_Kundennummer
'clfArchiv.Abrechnungsdatum = .Abrechnungsdatum
'clfArchiv.Kundennummer = .Kundennummer
'clfArchiv.Kartennummer = .Kartennummer
'clfArchiv.Akzeptanzstellennummer = .Akzeptanzstellennummer
'clfArchiv.Standort_der_Akzeptanzstelle = .Standort_der_Akzeptanzstelle
'clfArchiv.Lieferland = .Lieferland
'clfArchiv.Belegnummer_des_Lieferanten = .Belegnummer_des_Lieferanten
'clfArchiv.Kilometerstand = .Kilometerstand
'clfArchiv.Fakturierwarenart = .Fakturierwarenart
'clfArchiv.Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen = .Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen
'clfArchiv.Menge = .Menge
'clfArchiv.SB_BT = .SB_BT
'clfArchiv.Umsatzsteuerprozentsatz = .Umsatzsteuerprozentsatz
'clfArchiv.Lieferlandwährung_ISO = .Lieferlandwährung_ISO
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung = .Einzelpreis_Netto_in_Lieferlandwährung
'clfArchiv.Einzelpreis_Brutto_in_Lieferlandwährung = .Einzelpreis_Brutto_in_Lieferlandwährung
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung = .Einzelpreis_Netto_in_Lieferlandwährung
'clfArchiv.Betrag_Service_in_Lieferlandwährung = .Betrag_Service_in_Lieferlandwährung
'clfArchiv.Betrag_Nachlass_in_Lieferlandwährung = .Betrag_Nachlass_in_Lieferlandwährung
'clfArchiv.Gesamtbetrag_Netto_in_Lieferlandwährung = .Gesamtbetrag_Netto_in_Lieferlandwährung
'clfArchiv.Gesamtbetrag_Brutto_in_Lieferlandwährung = .Gesamtbetrag_Brutto_in_Lieferlandwährung
'clfArchiv.Darstellwährung_ISO = .Darstellwährung_ISO
'clfArchiv.Betrag_Service_in_Darstellwährung = .Betrag_Service_in_Darstellwährung
'clfArchiv.Betrag_Nachlass_in_Darstellwährung = .Betrag_Nachlass_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Netto_in_Darstellwährung = .Gesamtbetrag_Netto_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung = .Gesamtbetrag_Umsatzsteuer_in_Darstellwährung
'clfArchiv.Gesamtbetrag_Brutto_in_Darstellwährung = .Gesamtbetrag_Brutto_in_Darstellwährung
'clfArchiv.Prägetext_i_d_R_KFZ_Kennzeichen = .Prägetext_i_d_R_KFZ_Kennzeichen
'clfArchiv.Kunden_Kostenstelle_1 = .Kunden_Kostenstelle_1
'clfArchiv.Kartentyp = .Kartentyp
'clfArchiv.Filler_Feld_35 = .Filler_Feld_35
'clfArchiv.Filler_Feld_36 = .Filler_Feld_36
'clfArchiv.KZ_Autobahn = .KZ_Autobahn
'clfArchiv.INFO_Feld = .INFO_Feld
'clfArchiv.KFZ_Kennzeichen = .KFZ_Kennzeichen
'clfArchiv.Filler_Feld_40 = .Filler_Feld_40
'clfArchiv.Buchungsart = .Buchungsart
'clfArchiv.Buchungsgrund = .Buchungsgrund
'clfArchiv.Filler_Feld_43 = .Filler_Feld_43
'clfArchiv.Informationsbeleg = .Informationsbeleg
'clfArchiv.Belegherkunft = .Belegherkunft
'clfArchiv.Filler_Feld_46 = .Filler_Feld_46
'clfArchiv.Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen = .Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen
'clfArchiv.Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen = .Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen
'clfArchiv.Rechnungsdatum = .Rechnungsdatum
'clfArchiv.Umsatzsteuerprozentsatz_informativ = .Umsatzsteuerprozentsatz_informativ
'clfArchiv.Betrag_Nachlass_in_Lieferlandwährung = .Betrag_Nachlass_in_Lieferlandwährung
'clfArchiv.Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ = .Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ
'clfArchiv.Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ = .Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ
'clfArchiv.Fälligkeitsdatum = .Fälligkeitsdatum
'clfArchiv.Zahlungsziel_in_Tagen = .Zahlungsziel_in_Tagen
'clfArchiv.Zahlungsart = .Zahlungsart
'clfArchiv.TC_Rechnungsnummer_gegenüber_dem_Nutzer = .TC_Rechnungsnummer_gegenüber_dem_Nutzer
'clfArchiv.TC_Rechnungsdatum = .TC_Rechnungsdatum
'clfArchiv.Zahlungszielgruppe = .Zahlungszielgruppe
'clfArchiv.Kunden_Kostenstelle_2 = .Kunden_Kostenstelle_2
'clfArchiv.Lieferzeit = .Lieferzeit
'clfArchiv.Fremdkartennummer = .Fremdkartennummer
'clfArchiv.OnBoardUnitID = .OnBoardUnitID
'clfArchiv.KFZ_Kennzeichen_komprimiert = .KFZ_Kennzeichen_komprimiert
'clfArchiv.Kartenkategorie = .Kartenkategorie
'clfArchiv.Rechnungsnummer_pro_Lieferland = .Rechnungsnummer_pro_Lieferland
'clfArchiv.Autobahnauffahrt = .Autobahnauffahrt
'clfArchiv.Autobahnausfahrt = .Autobahnausfahrt
'clfArchiv.Rabattschlüssel_der_französischen_Autobahngesellschaften = .Rabattschlüssel_der_französischen_Autobahngesellschaften
'clfArchiv.Nummer_Belastungsanzeige = .Nummer_Belastungsanzeige
'clfArchiv.Betreuungsstelle = .Betreuungsstelle
'clfArchiv.Filler_Feld_72 = .Filler_Feld_72
'clfArchiv.Akzeptanz_Medium = .Akzeptanz_Medium
'clfArchiv.Steuerkategorie = .Steuerkategorie
'clfArchiv.UTA_Normalbeleg_ID = .UTA_Normalbeleg_ID
'clfArchiv.Gebühren_Bescheinigung_von = .Gebühren_Bescheinigung_von
'clfArchiv.Gebühren_Bescheinigung_bis = .Gebühren_Bescheinigung_bis
'clfArchiv.Herausgeber_Nutzer_Nummer = .Herausgeber_Nutzer_Nummer
'clfArchiv.Maßeinheit = .Maßeinheit
'clfArchiv.Land_der_Akzeptanzstelle = .Land_der_Akzeptanzstelle
'clfArchiv.Postleitzahl_der_Akzeptanzstelle = .Postleitzahl_der_Akzeptanzstelle
'clfArchiv.Steuerliches_Lieferland = .Steuerliches_Lieferland
'clfArchiv.Steuerliche_Produktgruppe = .Steuerliche_Produktgruppe
'clfArchiv.Leistungsort_verlagerbar = .Leistungsort_verlagerbar
'clfArchiv.SAVE()
End With
Case "90"
If curChecksumme < 0 Then
curChecksumme = 0 - curChecksumme
End If
If Trim(Mid(strZeile, 16, 18) / 100) <> Math.Round(curChecksumme, 2) Then
MsgBox("Checksumme: " & Trim(Mid(strZeile, 16, 18) / 100) & vbCrLf & "Prüfsumme: " & curChecksumme & vbCrLf & "Datei kann wegen Prüfsummenfehler nicht verarbeitet werden")
'Return False
End If
lngRecordCount = lngRecordCount + 1
Dim clfTrailer As New cUTA.UTATrailer(lngÜbertragungsnummer, dtmErstellDatumUhrzeit)
With clfTrailer
.ErstellDatumUhrzeit = dtmErstellDatumUhrzeit
.Übertragungsnummer = lngÜbertragungsnummer
.Anzahl_Sätze = Mid(strZeile, 3, 13)
.Checksumme = Mid(strZeile, 16, 18) / 100
.SAVE()
End With
Case Else
' Andere RecordNumber überlesen.
End Select
Loop
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
cnt = CInt(lngRecordCount)
objFileRead.Close()
Return True