This commit is contained in:
2020-06-23 08:29:29 +02:00
parent 9b52ab1b61
commit 5a5a4c94c1
32 changed files with 876 additions and 346 deletions

View File

@@ -31,6 +31,28 @@ Public Class cFinanzOnlineWebService
Public Shared SESSION_ID As String = ""
Shared Sub initValues()
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX"
tid = "19435107n654"
benid = "WEBserv99"
pin = "WEBserv99"
uid = "ATU68490714"
Case "FRONTOFFICE"
tid = "67493371k039"
benid = "WEBserv99"
pin = "WEBserv99"
uid = "ATU74813856"
Case Else 'VERAG:
tid = "1000103u3032"
benid = "webserv99"
pin = "webserv99"
uid = "ATU53187000"
End Select
End Sub
Shared Function Call_Web_Service_MethodUID_Login() As Integer
Dim CallWebService As New SDL.at.gv.bmf.finanzonlineLogin.sessionService
Try
@@ -122,6 +144,7 @@ Public Class cFinanzOnlineWebService
Dim Firma = ""
Dim UID_ERG = Call_Web_Service_MethodUID_Abfrage_NEU2020(txtUid, Firma, tmp_SESSION_ID, msgErgebnis)
If UID_ERG = 0 Or UID_ERG = 1 Then
Select Case UID_ERG
Case 0 : msgErgebnis = "UID-Nr. GÜLTIG - OK"
@@ -159,7 +182,7 @@ Public Class cFinanzOnlineWebService
End Function
Shared Function Call_Web_Service_MethodUID_Abfrage_NEU2020(ByVal txtUid As String, Optional ByRef Firma As String = "", Optional ByRef tmp_SESSION_ID As String = "", Optional ByRef msgErgebnis As String = "") As String 'SESSION_ID wir nur zurückgegeben
Shared Function Call_Web_Service_MethodUID_Abfrage_NEU2020(ByVal txtUid As String, Optional ByRef Firma As String = "", Optional ByRef tmp_SESSION_ID As String = "", Optional ByRef msgErgebnis As String = "", Optional SaveErgInAdressenKdNr As Integer = -1) As String 'SESSION_ID wir nur zurückgegeben
If Call_Web_Service_MethodUID_Login_NEU2020() <> 0 Then
Return -1
End If
@@ -169,17 +192,57 @@ Public Class cFinanzOnlineWebService
' Return CallWebService.uidAbfrage(session, tid, benid, My.Resources.UID_Nr, txtUid.Text, uidAbfrageRequestStufe.Item2, "", "", "", "", "", "", "")
'Dim s() As Object = CallWebService.uidAbfrage(session, tid, benid, My.Resources.UID_Nr, txtUid.Text, uidAbfrageRequestStufe.Item2, "", "", "", "", "", "", "")
Dim msg As String
Dim name As String
Dim adrz1 As String
Dim adrz2 As String
Dim adrz3 As String
Dim adrz4 As String
Dim adrz5 As String
Dim adrz6 As String
Dim msg As String = ""
Dim name As String = ""
Dim adrz1 As String = ""
Dim adrz2 As String = ""
Dim adrz3 As String = ""
Dim adrz4 As String = ""
Dim adrz5 As String = ""
Dim adrz6 As String = ""
Dim returnInt As Integer = CallWebService.uidAbfrage(tid, benid, SESSION_ID, uid, txtUid, VERAG_PROG_ALLGEMEIN.at.gv.bmf.finanzonline.uidAbfrageServiceRequestStufe.Item2, msg, name, adrz1, adrz2, adrz3, adrz4, adrz5, adrz6)
If returnInt = 0 Or returnInt = 1 Then
Dim UID_TMP As New VERAG_PROG_ALLGEMEIN.cUIDPruefung
UID_TMP.uid_Datum = Now
UID_TMP.uid_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
'If If(UID_TMP.uid_Sachbearbeiter, "") = "" Then UID_TMP.uid_Sachbearbeiter = "AUTO"
UID_TMP.uid_MaId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
UID_TMP.uid_valid = (returnInt = 0)
If SaveErgInAdressenKdNr > 0 Then UID_TMP.uid_KundenNr = SaveErgInAdressenKdNr
UID_TMP.uid_UstIdKz = GetUIDLand(txtUid)
UID_TMP.uid_UstIdNr = GetUidNr(txtUid)
UID_TMP.Firma = name
UID_TMP.uid_abfrageUid = uid
UID_TMP.uid_sessionId = tmp_SESSION_ID
UID_TMP.uid_adr1 = adrz1
UID_TMP.uid_adr2 = adrz2
UID_TMP.uid_adr3 = adrz3
UID_TMP.uid_adr4 = adrz4
UID_TMP.uid_adr5 = adrz5
UID_TMP.uid_adr6 = adrz6
UID_TMP.uid_stufe = 2
UID_TMP.SAVE()
If UID_TMP.uid_valid Then
If SaveErgInAdressenKdNr > 0 Then
Dim AD As New VERAG_PROG_ALLGEMEIN.cAdressen(SaveErgInAdressenKdNr)
AD.UstIdGeprüft = Now.ToShortDateString
AD.SAVE()
End If
End If
End If
If returnInt = 0 Then
Firma = name & vbNewLine & adrz1
If adrz2 <> "" Then Firma = Firma & vbNewLine & adrz2
@@ -206,7 +269,30 @@ Public Class cFinanzOnlineWebService
Return "-1"
End Function
Shared Function GetUIDLand(uid As String)
If uid.Length > 2 Then
Return uid.Substring(0, 2)
End If
'Dim uidLand = ""
'For Each s In uid
' If IsNumeric(s) Then Return uidLand
' uidLand &= s
'Next
'Return uidLand
End Function
Shared Function GetUidNr(uid As String)
If uid.Length > 2 Then
Return uid.Substring(2, uid.Length-2)
End If
'Dim uidLand = ""
'For Each s In uid
' If IsNumeric(s) Then uidLand &= s
'Next
'Return uidLand
End Function
Shared Function GetCodeText(rc As Integer)
Select Case rc
Case 0 : Return "Die UID des Erwerbers ist gültig."

View File

@@ -12,7 +12,7 @@ Public Class cSDLLeistung
Property History As Integer
Public LIST As New List(Of cSDL)
Public LIST As New List(Of VERAG_PROG_ALLGEMEIN.cSDL)
Dim SQL As New SQL
'Dim listTodelete As New List(Of cOfferte)
@@ -38,7 +38,7 @@ Public Class cSDLLeistung
cmd.Parameters.AddWithValue("@SDLNr", SDLNr)
Dim dr = cmd.ExecuteReader()
While dr.Read
Dim l As New cSDL(dr.Item("KundenNr"), dr.Item("KfzKennzeichen"), dr.Item("SDLNr"), dr.Item("History"))
Dim l As New VERAG_PROG_ALLGEMEIN.cSDL(dr.Item("KundenNr"), dr.Item("KfzKennzeichen"), dr.Item("SDLNr"), dr.Item("History"))
LIST.Add(l)
End While
dr.Close()
@@ -67,236 +67,3 @@ Public Class cSDLLeistung
'End Function
End Class
Public Class cSDL
Property KundenNr As Integer
Property KfzKennzeichen As String = ""
Property SDLNr As Integer
Property History As Integer
Property RefKundenNr As Object = Nothing
Property MSE_Kd_Nr As Object = Nothing
Property TELEPASS_Kd_Nr As Object = Nothing
Property CLIENT_Nr As Object = Nothing
Property BestellNr As Object = Nothing
Property Bestelldatum As Object = Nothing
Property Lieferdatum As Object = Nothing
Property Ausstellungsdatum As Object = Nothing
Property Umstellungsdatum As Object = Nothing
Property KartenNr As Object = Nothing
Property PAN_Nr As Object = Nothing
Property VIACARD As Object = Nothing
Property MOTORWAY_CARD_Nr As Object = Nothing
Property CARD_Nr As Object = Nothing
Property KartenSchlüsselNr As Object = Nothing
Property FREJUS_CARD_Nr As Object = Nothing
Property ECO As Object = Nothing
Property GültigBis As Object = Nothing
Property OBUID As Object = Nothing
Property SERIE_Nr As Object = Nothing
Property TELEPASS_Nr As Object = Nothing
Property Vermerk As Object = Nothing
Property Partner As Object = Nothing
Property BenutzerNr As Object = Nothing
Property PIN As Object = Nothing
Property FlottenPIN As Object = Nothing
Property MasterPIN As Object = Nothing
Property VertragsNr As Object = Nothing
Property Vertragsabschlussdatum As Object = Nothing
Property Kategorie As Object = Nothing
Property Schadstoffklasse As Object = Nothing
Property Status As Object = Nothing
Property Ersatzkarte As Object = Nothing
Property Gesperrt As Object = Nothing
Property Defekt As Object = Nothing
Property Verloren As Object = Nothing
Property Gestohlen As Object = Nothing
Property Erfassungsdatum As Object = Nothing
Property Änderungsdatum As Object = Nothing
Property Sachbearbeiter As Object = Nothing
Property Retourniert As Object = Nothing
Property RetourniertAm As Object = Nothing
Property GesperrtAm As Object = Nothing
Property DefektAm As Object = Nothing
Property VerlorenAm As Object = Nothing
Property GestohlenAm As Object = Nothing
Property ErsatzkarteAm As Object = Nothing
Property TelepassErsatzkarte As Object = Nothing
Property TelepassErsatzkarteAm As Object = Nothing
Property Archiviert As Boolean = False
Property LKWAbgemeldet As Boolean = False
Property LKWAbgemeldetAM As Object = Nothing
Property Fahrer As Object = Nothing
Property Kaution As Object = Nothing
Property BelegNr As Object = Nothing
Dim SQL As New SQL
Sub New()
End Sub
Sub New(KundenNr, KfzKennzeichen, SDLNr, History)
Me.KundenNr = KundenNr
Me.KfzKennzeichen = KfzKennzeichen
Me.SDLNr = SDLNr
Me.History = History
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("KundenNr", KundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KfzKennzeichen", KfzKennzeichen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SDLNr", SDLNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("History", History))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("RefKundenNr", RefKundenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("MSE-Kd-Nr", MSE_Kd_Nr, "MSE_Kd_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TELEPASS-Kd-Nr", TELEPASS_Kd_Nr, "TELEPASS_Kd_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CLIENT-Nr", CLIENT_Nr, "CLIENT_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BestellNr", BestellNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bestelldatum", Bestelldatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Lieferdatum", Lieferdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Ausstellungsdatum", Ausstellungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Umstellungsdatum", Umstellungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KartenNr", KartenNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PAN-Nr", PAN_Nr, "PAN_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VIACARD", VIACARD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("MOTORWAY-CARD-Nr", MOTORWAY_CARD_Nr, "MOTORWAY_CARD_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CARD-Nr", CARD_Nr, "CARD_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KartenSchlüsselNr", KartenSchlüsselNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FREJUS-CARD-Nr", FREJUS_CARD_Nr, "FREJUS_CARD_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ECO", ECO))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("GültigBis", GültigBis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OBUID", OBUID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SERIE-Nr", SERIE_Nr, "SERIE_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TELEPASS-Nr", TELEPASS_Nr, "TELEPASS_Nr"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermerk", Vermerk))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Partner", Partner))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BenutzerNr", BenutzerNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PIN", PIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FlottenPIN", FlottenPIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("MasterPIN", MasterPIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VertragsNr", VertragsNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vertragsabschlussdatum", Vertragsabschlussdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kategorie", Kategorie))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Schadstoffklasse", Schadstoffklasse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Status", Status))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Ersatzkarte", Ersatzkarte))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gesperrt", Gesperrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Defekt", Defekt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Verloren", Verloren))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Gestohlen", Gestohlen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Erfassungsdatum", Erfassungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Änderungsdatum", Änderungsdatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sachbearbeiter", Sachbearbeiter))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Retourniert", Retourniert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("RetourniertAm", RetourniertAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("GesperrtAm", GesperrtAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DefektAm", DefektAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VerlorenAm", VerlorenAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("GestohlenAm", GestohlenAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ErsatzkarteAm", ErsatzkarteAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TelepassErsatzkarte", TelepassErsatzkarte))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TelepassErsatzkarteAm", TelepassErsatzkarteAm))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Archiviert", Archiviert))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKWAbgemeldet", LKWAbgemeldet))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKWAbgemeldetAM", LKWAbgemeldetAM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Fahrer", Fahrer))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kaution", Kaution))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BelegNr", BelegNr))
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 SDL WITH(updlock,serializable) WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen AND SDLNr=@SDLNr AND History=@History) " &
" BEGIN " & getUpdateCmd() & " END " &
" Else " &
" BEGIN " & getInsertCmd() & " END " &
" commit tran "
Return SQL.doSQLVarList(sqlstr, "SDL", , list)
End Function
Public Sub LOAD()
Try
Using conn As SqlConnection = cSqlDb.GetNewOpenConnection()
Using cmd As New SqlCommand("SELECT * FROM SDL WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen AND SDLNr=@SDLNr AND History=@History ", conn)
cmd.Parameters.AddWithValue("@KundenNr", KundenNr)
cmd.Parameters.AddWithValue("@KfzKennzeichen", KfzKennzeichen)
cmd.Parameters.AddWithValue("@SDLNr", SDLNr)
cmd.Parameters.AddWithValue("@History", History)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each l In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(l.Scalarvariable)
If dr.Item(l.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(l.Text))
End If
Next
End If
dr.Close()
End Using
End Using
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
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 [SDL] SET " & str & " WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen AND SDLNr=@SDLNr AND History=@History ")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
Public Function 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 SDL (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
End Class