Files
SDL/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb
2025-01-17 15:56:10 +01:00

1430 lines
87 KiB
VB.net

Imports System
Imports System.Collections.Generic
Imports System.Data.SqlClient
Imports System.IO
Imports System.Reflection
Imports Therefore.API
Imports VERAG_PROG_ALLGEMEIN
Public Class cUTA
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Public Function importUTALeistungen() As Boolean
'Einträge in tblUTALeistungen machen, wenn Fakturierwarenart und Lieferland noch nicht in der Tabelle enthalten sind.
Dim query = "INSERT INTO tblUTALeistungen (Fakturierwarenart, Lieferland, VERAG_OffertenNr, VERAG_LeistungsNr )
Select tblUTAImportNew.Fakturierwarenart, tblUTAImportNew.Lieferland, tblUTAFakturierwarenarten.VERAG_OffertenNr, tblUTAFakturierwarenarten.VERAG_LeistungsNr
From tblUTAImportNew INNER Join tblUTAFakturierwarenarten On tblUTAImportNew.Fakturierwarenart = tblUTAFakturierwarenarten.Fakturierwarenart
Group By tblUTAImportNew.Fakturierwarenart, tblUTAImportNew.Lieferland, tblUTAFakturierwarenarten.VERAG_OffertenNr, tblUTAFakturierwarenarten.VERAG_LeistungsNr
HAVING((((SELECT tblUTALeistungen.Fakturierwarenart FROM tblUTALeistungen WHERE tblUTALeistungen.Fakturierwarenart=tblUTAImportNew.Fakturierwarenart And tblUTALeistungen.Lieferland=tblUTAImportNew.Lieferland)) Is Null))"
Return SQL.doSQL(query, "FMZOLL")
End Function
Public Class UTAHeader
Property Übertragungsnummer As Integer
Property ErstellDatumUhrzeit As DateTime
Property Absender_ID As Object = Nothing
Property Empfänger_ID As Object = Nothing
Property Filler_Feld_5 As Object = Nothing
Property Abrechnungsnummer As Object = Nothing
Property DTF_Format As Object = Nothing
Public hasEntry = False
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Sub New(Übertragungsnummer, ErstellDatumUhrzeit)
Me.Übertragungsnummer = Übertragungsnummer
Me.ErstellDatumUhrzeit = ErstellDatumUhrzeit
LOAD()
End Sub
Sub New()
End Sub
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("Übertragungsnummer", Übertragungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ErstellDatumUhrzeit", ErstellDatumUhrzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Absender_ID", Absender_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Empfänger_ID", Empfänger_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_5", Filler_Feld_5))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abrechnungsnummer", Abrechnungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DTF_Format", DTF_Format))
Return list
End Function
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTAHeaderNew WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit = @ErstellDatumUhrzeit) " &
" BEGIN " & getUpdateCmd() & " End " &
" Else " &
" BEGIN " & getInsertCmd() & " End " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Sub LOAD()
Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("Select * FROM tblUTAHeaderNew WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit = @ErstellDatumUhrzeit", conn)
cmd.Parameters.AddWithValue("@Übertragungsnummer", Übertragungsnummer)
cmd.Parameters.AddWithValue("@ErstellDatumUhrzeit", ErstellDatumUhrzeit)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each li In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
If dr.Item(li.Text) Is Nothing Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(li.Text))
End If
Next
hasEntry = True
End If
dr.Close()
End Using
End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
End Sub
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblUTAHeaderNew] SET " & str & " WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit = @ErstellDatumUhrzeit ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
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
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUTAHeaderNew (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
End Function
End Class
Public Class UTABody
Property ErstellDatumUhrzeit As DateTime
Property Übertragungsnummer As Integer
Property Übertragungsposition As Integer
Property Abrechnungsnummer As Double
Property Datum_für_Lieferungen_und_Leistungen_bis As DateTime
Property Rechnungsempfänger_Kundennummer As Integer
Property Abrechnungsdatum As DateTime
Property Kundennummer As Integer
Property Kartennummer As String
Property Belegdatum As DateTime
Property Akzeptanzstellennummer As Double
Property Standort_der_Akzeptanzstelle As String
Property Lieferland As String
Property Belegnummer_des_Lieferanten As String
Property Kilometerstand As Double
Property Fakturierwarenart As String
Property Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen As Char
Property Menge As Double
Property SB_BT As Char
Property Umsatzsteuerprozentsatz As Double
Property Lieferlandwährung_ISO As String
Property Einzelpreis_Brutto_in_Lieferlandwährung As Double
Property Einzelpreis_Netto_in_Lieferlandwährung As Double
Property Betrag_Service_in_Lieferlandwährung As Double
Property Betrag_Nachlass_in_Lieferlandwährung As Double
Property Gesamtbetrag_Netto_in_Lieferlandwährung As Double
Property Gesamtbetrag_Brutto_in_Lieferlandwährung As Double
Property Darstellwährung_ISO As String
Property Betrag_Service_in_Darstellwährung As Double
Property Betrag_Nachlass_in_Darstellwährung As Double
Property Gesamtbetrag_Netto_in_Darstellwährung As Double
Property Gesamtbetrag_Umsatzsteuer_in_Darstellwährung As Double
Property Gesamtbetrag_Brutto_in_Darstellwährung As Double
Property Prägetext_i_d_R_KFZ_Kennzeichen As String
Property Kunden_Kostenstelle_1 As String
Property Kartentyp As String
Property Filler_Feld_35 As Char
Property Filler_Feld_36 As String
Property KZ_Autobahn As Char
Property INFO_Feld As String
Property KFZ_Kennzeichen As String
Property Filler_Feld_40 As Char
Property Buchungsart As Char
Property Buchungsgrund As Char
Property Filler_Feld_43 As Char
Property Informationsbeleg As Char
Property Belegherkunft As Char
Property Filler_Feld_46 As String
Property Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen As Double
Property Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen As Double
Property Rechnungsdatum As DateTime
Property Umsatzsteuerprozentsatz_informativ As Double
Property Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ As Double
Property Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ As Double
Property Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ As Double
Property Fälligkeitsdatum As DateTime
Property Zahlungsziel_in_Tagen As Integer
Property Zahlungsart As String
Property TC_Rechnungsnummer_gegenüber_dem_Nutzer As String
Property TC_Rechnungsdatum As DateTime
Property Zahlungszielgruppe As String
Property Kunden_Kostenstelle_2 As String
Property Lieferzeit As String
Property Fremdkartennummer As String
Property OnBoardUnitID As String
Property KFZ_Kennzeichen_komprimiert As String
Property Kartenkategorie As String
Property Rechnungsnummer_pro_Lieferland As Double
Property Autobahnauffahrt As String
Property Autobahnausfahrt As String
Property Rabattschlüssel_der_französischen_Autobahngesellschaften As Integer
Property Nummer_Belastungsanzeige As Double
Property Betreuungsstelle As String
Property Filler_Feld_72 As String
Property Akzeptanz_Medium As String
Property Steuerkategorie As String
Property UTA_Beleg_ID As String
Property UTA_Normalbeleg_ID As String
Property Gebühren_Bescheinigung_von As DateTime
Property Gebühren_Bescheinigung_bis As DateTime
Property Herausgeber_Nutzer_Nummer As String
Property Maßeinheit As String
Property Land_der_Akzeptanzstelle As String
Property Postleitzahl_der_Akzeptanzstelle As String
Property Steuerliches_Lieferland As String
Property Steuerliche_Produktgruppe As String
Property Leistungsort_verlagerbar As Char
Property abgerechnetDatum As Object
Property abgerechnet As Boolean = False
Property daId As Object
Property charged As Boolean = False
Property chargedDatetime As Object = Nothing
Public hasEntry = False
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Sub New(Übertragungsnummer, Übertragungsposition, ErstellDatumUhrzeit)
Me.Übertragungsnummer = Übertragungsnummer
Me.Übertragungsposition = Übertragungsposition
Me.ErstellDatumUhrzeit = ErstellDatumUhrzeit
LOAD()
End Sub
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("ErstellDatumUhrzeit", ErstellDatumUhrzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Übertragungsnummer", Übertragungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Übertragungsposition", Übertragungsposition))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abrechnungsnummer", Abrechnungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_für_Lieferungen_und_Leistungen_bis", Datum_für_Lieferungen_und_Leistungen_bis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsempfänger_Kundennummer", Rechnungsempfänger_Kundennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abrechnungsdatum", Abrechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kundennummer", Kundennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartennummer", Kartennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegdatum", Belegdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Akzeptanzstellennummer", Akzeptanzstellennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Standort_der_Akzeptanzstelle", Standort_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferland", Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegnummer_des_Lieferanten", Belegnummer_des_Lieferanten))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kilometerstand", Kilometerstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fakturierwarenart", Fakturierwarenart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen", Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Menge", Menge))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_BT", SB_BT))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umsatzsteuerprozentsatz", Umsatzsteuerprozentsatz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferlandwährung_ISO", Lieferlandwährung_ISO))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Brutto_in_Lieferlandwährung", Einzelpreis_Brutto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Netto_in_Lieferlandwährung", Einzelpreis_Netto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Service_in_Lieferlandwährung", Betrag_Service_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Lieferlandwährung", Betrag_Nachlass_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Netto_in_Lieferlandwährung", Gesamtbetrag_Netto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Brutto_in_Lieferlandwährung", Gesamtbetrag_Brutto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Darstellwährung_ISO", Darstellwährung_ISO))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Darstellwährung", Betrag_Nachlass_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Netto_in_Darstellwährung", Gesamtbetrag_Netto_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung", Gesamtbetrag_Umsatzsteuer_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Brutto_in_Darstellwährung", Gesamtbetrag_Brutto_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Prägetext_i_d_R_KFZ_Kennzeichen", Prägetext_i_d_R_KFZ_Kennzeichen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kunden_Kostenstelle_1", Kunden_Kostenstelle_1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartentyp", Kartentyp))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_35", Filler_Feld_35))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_36", Filler_Feld_36))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KZ_Autobahn", KZ_Autobahn))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KFZ_Kennzeichen", KFZ_Kennzeichen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("INFO_Feld", INFO_Feld))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_40", Filler_Feld_40))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Buchungsart", Buchungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Buchungsgrund", Buchungsgrund))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_43", Filler_Feld_43))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Informationsbeleg", Informationsbeleg))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegherkunft", Belegherkunft))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_46", Filler_Feld_46))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen", Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen", Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsdatum", Rechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umsatzsteuerprozentsatz_informativ", Umsatzsteuerprozentsatz_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ", Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ", Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ", Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fälligkeitsdatum", Fälligkeitsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungsziel_in_Tagen", Zahlungsziel_in_Tagen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungsart", Zahlungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TC_Rechnungsnummer_gegenüber_dem_Nutzer", TC_Rechnungsnummer_gegenüber_dem_Nutzer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TC_Rechnungsdatum", TC_Rechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungszielgruppe", Zahlungszielgruppe))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kunden_Kostenstelle_2", Kunden_Kostenstelle_2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferzeit", Lieferzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fremdkartennummer", Fremdkartennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OnBoardUnitID", OnBoardUnitID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KFZ_Kennzeichen_komprimiert", KFZ_Kennzeichen_komprimiert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartenkategorie", Kartenkategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsnummer_pro_Lieferland", Rechnungsnummer_pro_Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Autobahnauffahrt", Autobahnauffahrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Autobahnausfahrt", Autobahnausfahrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rabattschlüssel_der_französischen_Autobahngesellschaften", Rabattschlüssel_der_französischen_Autobahngesellschaften))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Nummer_Belastungsanzeige", Nummer_Belastungsanzeige))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betreuungsstelle", Betreuungsstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_72", Filler_Feld_72))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Akzeptanz_Medium", Akzeptanz_Medium))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerkategorie", Steuerkategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UTA_Beleg_ID", UTA_Beleg_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UTA_Normalbeleg_ID", UTA_Normalbeleg_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gebühren_Bescheinigung_von", Gebühren_Bescheinigung_von))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gebühren_Bescheinigung_bis", Gebühren_Bescheinigung_bis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Herausgeber_Nutzer_Nummer", Herausgeber_Nutzer_Nummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Maßeinheit", Maßeinheit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Land_der_Akzeptanzstelle", Land_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Postleitzahl_der_Akzeptanzstelle", Postleitzahl_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerliches_Lieferland", Steuerliches_Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerliche_Produktgruppe", Steuerliche_Produktgruppe))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Leistungsort_verlagerbar", Leistungsort_verlagerbar))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("abgerechnetDatum", abgerechnetDatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("abgerechnet", abgerechnet))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("daId", daId))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("charged", charged))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("chargedDatetime", chargedDatetime))
Return list
End Function
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTAImportNew WHERE Übertragungsnummer=@Übertragungsnummer AND Übertragungsposition = @Übertragungsposition AND ErstellDatumUhrzeit = @ErstellDatumUhrzeit and isnull(charged,0) = 0) " &
" BEGIN " & getUpdateCmd() & " End " &
" Else " &
" BEGIN " & getInsertCmd() & " End " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Sub LOAD()
Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("Select * FROM tblUTAImportNew WHERE Übertragungsnummer=@Übertragungsnummer AND Übertragungsposition = @Übertragungsposition AND ErstellDatumUhrzeit = @ErstellDatumUhrzeit ", conn)
cmd.Parameters.AddWithValue("@Übertragungsnummer", Übertragungsnummer)
cmd.Parameters.AddWithValue("@Übertragungsposition", Übertragungsposition)
cmd.Parameters.AddWithValue("@ErstellDatumUhrzeit", ErstellDatumUhrzeit)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each li In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
If dr.Item(li.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(li.Text))
End If
Next
hasEntry = True
End If
dr.Close()
End Using
End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
End Sub
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblUTAImportNew] SET " & str & " WHERE Übertragungsnummer=@Übertragungsnummer AND Übertragungsposition = @Übertragungsposition AND isnull(charged,0) = 0 ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
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
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUTAImportNew (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
End Function
End Class
Public Class UTAArchiv
Property ErstellDatumUhrzeit As DateTime
Property Übertragungsnummer As Integer
Property Übertragungsposition As Integer
Property Abrechnungsnummer As Object
Property Datum_für_Lieferungen_und_Leistungen_bis As DateTime
Property Rechnungsempfänger_Kundennummer As Integer
Property Abrechnungsdatum As DateTime
Property Kundennummer As Integer
Property Kartennummer As Object
Property Belegdatum As DateTime
Property Akzeptanzstellennummer As Object
Property Standort_der_Akzeptanzstelle As Object
Property Lieferland As Object
Property Belegnummer_des_Lieferanten As Object
Property Kilometerstand As Object
Property Fakturierwarenart As Object
Property Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen As Object
Property Menge As Object
Property SB_BT As Object
Property Umsatzsteuerprozentsatz As Object
Property Lieferlandwährung_ISO As Object
Property Einzelpreis_Netto_in_Lieferlandwährung As Object
Property Einzelpreis_Brutto_in_Lieferlandwährung As Object
Property ÜbertragEinzelpreis_Netto_in_Lieferlandwährungungsposition As Object
Property Betrag_Service_in_Lieferlandwährung As Object
Property Betrag_Nachlass_in_Lieferlandwährung As Object
Property Gesamtbetrag_Netto_in_Lieferlandwährung As Object
Property Gesamtbetrag_Brutto_in_Lieferlandwährung As Object
Property Darstellwährung_ISO As Object
Property Betrag_Service_in_Darstellwährung As Object
Property Betrag_Nachlass_in_Darstellwährung As Object
Property Gesamtbetrag_Netto_in_Darstellwährung As Object
Property Gesamtbetrag_Umsatzsteuer_in_Darstellwährung As Object
Property Gesamtbetrag_Brutto_in_Darstellwährung As Object
Property Prägetext_i_d_R_KFZ_Kennzeichen As Object
Property Kunden_Kostenstelle_1 As Object
Property Kartentyp As Object
Property Filler_Feld_35 As Object
Property Filler_Feld_36 As Object
Property KZ_Autobahn As Object
Property INFO_Feld As Object
Property KFZ_Kennzeichen As Object
Property Filler_Feld_40 As Object
Property Buchungsart As Object
Property Buchungsgrund As Object
Property Filler_Feld_43 As Object
Property Informationsbeleg As Object
Property Belegherkunft As Object
Property Filler_Feld_46 As Object
Property Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen As Object
Property Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen As Object
Property Rechnungsdatum As DateTime
Property Umsatzsteuerprozentsatz_informativ As Object
Property Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ As Object
Property Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ As Object
Property Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ As Object
Property Fälligkeitsdatum As DateTime
Property Zahlungsziel_in_Tagen As Integer
Property Zahlungsart As Object
Property TC_Rechnungsnummer_gegenüber_dem_Nutzer As Object
Property TC_Rechnungsdatum As DateTime
Property Zahlungszielgruppe As Object
Property Kunden_Kostenstelle_2 As Object
Property Lieferzeit As Object
Property Fremdkartennummer As Object
Property OnBoardUnitID As Object
Property KFZ_Kennzeichen_komprimiert As Object
Property Kartenkategorie As Object
Property Rechnungsnummer_pro_Lieferland As Object
Property Autobahnauffahrt As Object
Property Autobahnausfahrt As Object
Property Rabattschlüssel_der_französischen_Autobahngesellschaften As Integer
Property Nummer_Belastungsanzeige As Object
Property Betreuungsstelle As Object
Property Filler_Feld_72 As Object
Property Akzeptanz_Medium As Object
Property Steuerkategorie As Object
Property UTA_Beleg_ID As Object
Property UTA_Normalbeleg_ID As Object
Property Gebühren_Bescheinigung_von As DateTime
Property Gebühren_Bescheinigung_bis As DateTime
Property Herausgeber_Nutzer_Nummer As Object
Property Maßeinheit As Object
Property Land_der_Akzeptanzstelle As Object
Property Postleitzahl_der_Akzeptanzstelle As Object
Property Steuerliches_Lieferland As Object
Property Steuerliche_Produktgruppe As Object
Property Leistungsort_verlagerbar As Object
Property UStVAn_ID As Object
Public hasEntry = False
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Sub New(Belegdatum, UTA_Beleg_ID)
Me.Belegdatum = Belegdatum
Me.UTA_Beleg_ID = UTA_Beleg_ID
LOAD()
End Sub
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("ErstellDatumUhrzeit", ErstellDatumUhrzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Übertragungsnummer", Übertragungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Übertragungsposition", Übertragungsposition))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abrechnungsnummer", Abrechnungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_für_Lieferungen_und_Leistungen_bis", Datum_für_Lieferungen_und_Leistungen_bis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsempfänger_Kundennummer", Rechnungsempfänger_Kundennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abrechnungsdatum", Abrechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kundennummer", Kundennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartennummer", Kartennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegdatum", Belegdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Akzeptanzstellennummer", Akzeptanzstellennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Standort_der_Akzeptanzstelle", Standort_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferland", Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegnummer_des_Lieferanten", Belegnummer_des_Lieferanten))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kilometerstand", Kilometerstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fakturierwarenart", Fakturierwarenart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen", Vorzeichen_Statusfeld_für_alle_Beträge_und_Mengen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Menge", Menge))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SB_BT", SB_BT))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umsatzsteuerprozentsatz", Umsatzsteuerprozentsatz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferlandwährung_ISO", Lieferlandwährung_ISO))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Netto_in_Lieferlandwährung", Einzelpreis_Netto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Brutto_in_Lieferlandwährung", Einzelpreis_Brutto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Service_in_Lieferlandwährung", Betrag_Service_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Lieferlandwährung", Betrag_Nachlass_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Netto_in_Lieferlandwährung", Gesamtbetrag_Netto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Brutto_in_Lieferlandwährung", Gesamtbetrag_Brutto_in_Lieferlandwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Darstellwährung_ISO", Darstellwährung_ISO))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Darstellwährung", Betrag_Nachlass_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Netto_in_Darstellwährung", Gesamtbetrag_Netto_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Umsatzsteuer_in_Darstellwährung", Gesamtbetrag_Umsatzsteuer_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_Brutto_in_Darstellwährung", Gesamtbetrag_Brutto_in_Darstellwährung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Prägetext_i_d_R_KFZ_Kennzeichen", Prägetext_i_d_R_KFZ_Kennzeichen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kunden_Kostenstelle_1", Kunden_Kostenstelle_1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartentyp", Kartentyp))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_35", Filler_Feld_35))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_36", Filler_Feld_36))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KZ_Autobahn", KZ_Autobahn))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KFZ_Kennzeichen", KFZ_Kennzeichen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("INFO_Feld", INFO_Feld))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_40", Filler_Feld_40))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Buchungsart", Buchungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Buchungsgrund", Buchungsgrund))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_43", Filler_Feld_43))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Informationsbeleg", Informationsbeleg))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Belegherkunft", Belegherkunft))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_46", Filler_Feld_46))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen", Einzelpreis_Brutto_in_Lieferlandwährung_mit_4_Nachkommastellen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen", Einzelpreis_Netto_in_Lieferlandwährung_mit_4_Nachkommastellen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsdatum", Rechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umsatzsteuerprozentsatz_informativ", Umsatzsteuerprozentsatz_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ", Betrag_Nachlass_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ", Betrag_Service_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ", Gesamtbetrag_in_Lieferlandwährung_Umsatzsteuer_informativ))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fälligkeitsdatum", Fälligkeitsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungsziel_in_Tagen", Zahlungsziel_in_Tagen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungsart", Zahlungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TC_Rechnungsnummer_gegenüber_dem_Nutzer", TC_Rechnungsnummer_gegenüber_dem_Nutzer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TC_Rechnungsdatum", TC_Rechnungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zahlungszielgruppe", Zahlungszielgruppe))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kunden_Kostenstelle_2", Kunden_Kostenstelle_2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferzeit", Lieferzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fremdkartennummer", Fremdkartennummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OnBoardUnitID", OnBoardUnitID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KFZ_Kennzeichen_komprimiert", KFZ_Kennzeichen_komprimiert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kartenkategorie", Kartenkategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rechnungsnummer_pro_Lieferland", Rechnungsnummer_pro_Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Autobahnauffahrt", Autobahnauffahrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Autobahnausfahrt", Autobahnausfahrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Rabattschlüssel_der_französischen_Autobahngesellschaften", Rabattschlüssel_der_französischen_Autobahngesellschaften))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Nummer_Belastungsanzeige", Nummer_Belastungsanzeige))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betreuungsstelle", Betreuungsstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Filler_Feld_72", Filler_Feld_72))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Akzeptanz_Medium", Akzeptanz_Medium))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerkategorie", Steuerkategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UTA_Beleg_ID", UTA_Beleg_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UTA_Normalbeleg_ID", UTA_Normalbeleg_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gebühren_Bescheinigung_von", Gebühren_Bescheinigung_von))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gebühren_Bescheinigung_bis", Gebühren_Bescheinigung_bis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Herausgeber_Nutzer_Nummer", Herausgeber_Nutzer_Nummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Maßeinheit", Maßeinheit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Land_der_Akzeptanzstelle", Land_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Postleitzahl_der_Akzeptanzstelle", Postleitzahl_der_Akzeptanzstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerliches_Lieferland", Steuerliches_Lieferland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Steuerliche_Produktgruppe", Steuerliche_Produktgruppe))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Leistungsort_verlagerbar", Leistungsort_verlagerbar))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_ID", UStVAn_ID))
Return list
End Function
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
'Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM CLFArchiv WHERE PKFileName=@PKFileName AND OBUID = @OBUID) " &
Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTAArchiv WHERE UTA_Beleg_ID = @UTA_Beleg_ID AND Belegdatum = @Belegdatum) " &
" BEGIN " & getUpdateCmd() & " End " &
" Else " &
" BEGIN " & getInsertCmd() & " End " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Sub LOAD()
Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("Select * FROM tblUTAArchiv WHERE UTA_Beleg_ID = @UTA_Beleg_ID AND Belegdatum = @Belegdatum ", conn)
cmd.Parameters.AddWithValue("@UTA_Beleg_ID", UTA_Beleg_ID)
cmd.Parameters.AddWithValue("@Belegdatum", Belegdatum)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each li In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
If dr.Item(li.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(li.Text))
End If
Next
hasEntry = True
End If
dr.Close()
End Using
End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
End Sub
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblUTAArchiv] SET " & str & " WHERE UTA_Beleg_ID = @UTA_Beleg_ID AND Belegdatum = @Belegdatum")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
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
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUTAArchiv (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
End Function
End Class
Public Class UTATrailer
Property ErstellDatumUhrzeit As DateTime
Property Übertragungsnummer As Integer
Property Anzahl_Sätze As Integer
Property Checksumme As Object = Nothing
Public hasEntry = False
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Sub New(Übertragungsnummer, ErstellDatumUhrzeit)
Me.Übertragungsnummer = Übertragungsnummer
Me.ErstellDatumUhrzeit = ErstellDatumUhrzeit
LOAD()
End Sub
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("ErstellDatumUhrzeit", ErstellDatumUhrzeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Übertragungsnummer", Übertragungsnummer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Anzahl_Sätze", Anzahl_Sätze))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Checksumme", Checksumme))
Return list
End Function
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTATrailerNew WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit=@ErstellDatumUhrzeit) " &
" BEGIN " & getUpdateCmd() & " End " &
" Else " &
" BEGIN " & getInsertCmd() & " End " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Sub LOAD()
Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("Select * FROM tblUTATrailerNew WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit=@ErstellDatumUhrzeit", conn)
cmd.Parameters.AddWithValue("@Übertragungsnummer", Übertragungsnummer)
cmd.Parameters.AddWithValue("@ErstellDatumUhrzeit", ErstellDatumUhrzeit)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each li In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
If dr.Item(li.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(li.Text))
End If
Next
hasEntry = True
End If
dr.Close()
End Using
End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
End Sub
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblUTATrailerNew] SET " & str & " WHERE Übertragungsnummer=@Übertragungsnummer AND ErstellDatumUhrzeit=@ErstellDatumUhrzeit")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
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
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUTATrailerNew (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
End Function
End Class
Public Class UTADocuments
Property Id As Integer
Property DocumentName As String
Property DocumentTyp As String
Property Zeitstempel As DateTime
Property daId As Integer
Property KundenNr As Integer
Property RechnungsNr As String
Property Datum As Object = Nothing
Public hasEntry = False
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Sub New(Id)
Me.Id = Id
LOAD()
End Sub
Sub New()
End Sub
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("Id", Id,, True))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DocumentName", DocumentName))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DocumentTyp", DocumentTyp))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zeitstempel", Zeitstempel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("daId", daId))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KundenNr", KundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("RechnungsNr", RechnungsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum", Datum))
Return list
End Function
Public Function SAVE() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTADocuments WHERE Datum=@Datum AND KundenNr = @KundenNr AND RechnungsNr=@RechnungsNr ) " &
" BEGIN " & getUpdateCmd() & " End " &
" Else " &
" BEGIN " & getInsertCmd() & " End " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Sub LOAD()
Try
hasEntry = False
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("Select * FROM tblUTADocuments WHERE Id=@Id ", conn)
cmd.Parameters.AddWithValue("@Id", Id)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each li In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
If dr.Item(li.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(li.Text))
End If
Next
hasEntry = True
End If
dr.Close()
End Using
End Using
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
End Sub
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE tblUTADocuments SET " & str & " WHERE Datum=@Datum AND KundenNr = @KundenNr AND RechnungsNr=@RechnungsNr")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
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
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblUTADocuments (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
End Try
Return ""
End Function
End Class
Public Function readAndSaveUTA(objFileRead As StreamReader, fi As FileInfo, cnt As Integer, Optional onlyTestkunedn As Boolean = False) As Boolean
Dim booHeaderVorhanden = False
Dim booPrüfziffernfehler = False
Dim booInTransaktion = False
Dim booTrailerVorhanden = False
Dim dtmErstellDatumUhrzeit As Date
Dim lngÜbertragungsnummer As Integer
Dim lngÜbertragungsposition As Integer
Dim curChecksumme As Double
Dim lngRecordCount As Long
'Datei auf Fehler prüfen!
Do While (objFileRead.Peek() > -1)
Dim strZeile = objFileRead.ReadLine()
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
booTrailerVorhanden = True
lngRecordCount = lngRecordCount + 1
' 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
' 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()
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
cnt = CInt(lngRecordCount)
objFileRead.Close()
Return True
End Function
Public VERARBEITUNG_PFAD
Public ARCHIV_PFAD
Public ERROR_PFAD
Public ZIEL_PFAD
Public FTP_PFAD
Public ANLAGEN
Public ARCHIV
Public API_STRING As String
Public API As New DataTable
Dim Dateiname = ""
Public Function initImportPfade(programName As String) As Boolean
ERROR_PFAD = cUTA.Paramter.GET_PARAM_ByName("ERROR_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
ARCHIV_PFAD = cUTA.Paramter.GET_PARAM_ByName("ARCHIV_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
VERARBEITUNG_PFAD = cUTA.Paramter.GET_PARAM_ByName("VERARBEITUNG_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
ZIEL_PFAD = cUTA.Paramter.GET_PARAM_ByName("ZIEL_PFAD", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
ANLAGEN = cUTA.Paramter.GET_PARAM_ByName("ANLAGEN", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
ARCHIV = cUTA.Paramter.GET_PARAM_ByName("ARCHIV", VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM)
If Not System.IO.Directory.Exists(VERARBEITUNG_PFAD) AndAlso VERARBEITUNG_PFAD <> "" Then
System.IO.Directory.CreateDirectory(VERARBEITUNG_PFAD)
ElseIf VERARBEITUNG_PFAD = "" Then
MsgBox("Verabreitungspfad nicht gesetzt!")
End If
Return Paramter.getFTPConenction(API_STRING, API, programName)
End Function
Public Shared Function GET_Antraege_UTA(ByRef dt As DataTable, von As Date, bis As Date, KundenNr As Integer, LandKZ As String, Wahrungscode As String, Optional Archiv As Object = Nothing) As Boolean '
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland AS Rechnungsnummer,Adressen.AdressenNr as Kundennummer, [tblUTAImportNew].Kundennummer as KundennummerUTA,
Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]) AS Umsatzsteuerbetrag_in_Lieferlandwährung, Lieferlandwährung_ISO,
Sum([Gesamtbetrag_Brutto_in_Darstellwährung]-[Gesamtbetrag_Netto_in_Darstellwährung]) AS Umsatzsteuerbetrag_in_Darstellwährung, Darstellwährung_ISO, daId
FROM [tblUTAImportNew] INNER JOIN Adressen ON [tblUTAImportNew].Kundennummer = Adressen.UTAKundenNr
WHERE ([tblUTAImportNew].Rechnungsdatum Between '" & von.ToShortDateString & "' And '" & bis.ToShortDateString & "' AND [tblUTAImportNew].Lieferland_ISO2='" & LandKZ & "' AND [tblUTAImportNew].Lieferlandwährung_ISO='" & Wahrungscode & "' AND Adressen.AdressenNr=" & KundenNr & " AND charged = 1 " & IIf(Archiv, " ", " AND isnull(tblUTAImportNew.UStVAn_ID,0) = 0 ") & " )
GROUP BY [tblUTAImportNew].Rechnungsdatum, [tblUTAImportNew].Rechnungsnummer_pro_Lieferland, Lieferlandwährung_ISO ,Darstellwährung_ISO,Adressen.AdressenNr,[tblUTAImportNew].Kundennummer, daId
HAVING (((Sum([Gesamtbetrag_Brutto_in_Lieferlandwährung]-[Gesamtbetrag_Netto_in_Lieferlandwährung]))<>0));", conn)
cmd.Parameters.AddWithValue("@von", von)
cmd.Parameters.AddWithValue("@bis", bis)
cmd.Parameters.AddWithValue("@AdressenNr", KundenNr)
Dim dr = cmd.ExecuteReader()
dt.Load(dr)
'While dr.Read
' dt.Load(dr)
'End While
dr.Close()
End Using
End Using
Return True
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return False
End Function
Public Shared Function UPDATE_ARCHIV(reDat As Date, reNr As Integer, uta_kdNr As Integer, ustvaId As Integer) As Boolean
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("reDat", reDat))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("reNr", reNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("uta_kdNr", uta_kdNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ustvaId", ustvaId))
Return SQL.doSQLVarList("
UPDATE [tblUTAImportNew] set archiv=1, [archiviertDatum]=GETDATE(), UStVAn_ID = @ustvaId
WHERE cast(Rechnungsdatum as date) = @reDat and Rechnungsnummer_pro_Lieferland = @reNr and Kundennummer=@uta_kdNr
", "FMZOLL",, list)
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return ""
End Function
Public Class Paramter
Shared apiSettingsloaded As Boolean = False
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
Shared Function GET_PARAM_ByName(tcParam_name, TESTSYSTEM) As String
Return SQL.getValueTxtBySql("SELECT TOP 1 [Param_value] FROM [tblPartnersystem_Paramter] WHERE Param_system='UTA' AND [Param_name]='" & tcParam_name & "' AND Param_testsystem = " & IIf(TESTSYSTEM, 1, 0), , , SQL.GetNewOpenConnectionFMZOLL_SYSTEM(TESTSYSTEM))
End Function
Shared Function getFTPConenction(ByRef API_String As String, ByRef API As DataTable, ByRef program As String) As Boolean
API = SQL.loadDgvBySql("SELECT top(1) * FROM tblAPIEinstellungen WHERE api_program='" & program & "' and api_productive ='" & IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "0", "1") & "'", "ADMIN")
If API.Rows.Count = 0 Then
MsgBox("keine gültigen API-Einstellungen für " & program & " gefunden!")
Else
apiSettingsloaded = True
API_String = API.Rows(0).Item("api_url")
End If
Return apiSettingsloaded
End Function
End Class
End Class