From 6eb8e559a4879b6cfebff4868cf9099340e28df5 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 5 Nov 2025 17:02:42 +0100 Subject: [PATCH] cUID, Webservice --- VERAG_PROG_ALLGEMEIN/Classes/cUIDPruefung.vb | 4 ++++ .../Finanzonline/cFinanzOnlineWebService.vb | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cUIDPruefung.vb b/VERAG_PROG_ALLGEMEIN/Classes/cUIDPruefung.vb index d7b87c1f..e0f321eb 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cUIDPruefung.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cUIDPruefung.vb @@ -254,6 +254,9 @@ Public Class cUIDPruefung If r("Error-Code") = "1511" Then errorCounter += 1 'Fehler Mitgliedsstaat nicht erreichbar!!! + ElseIf r("Error-Code") = "-99" AndAlso r("Error-Text") <> "" AndAlso r("Error-Text").ToString.Contains("Wegen Wartungsarbeiten") Then + Exit For + End If ' Bei ERROR soll er ebenfalls einzeln durchgehen! Besprochen mit A.Stockenhuber @@ -278,6 +281,7 @@ Public Class cUIDPruefung End If If veroegerungMs > 0 Then + r("Verzoegerung") = veroegerungMs Thread.Sleep(veroegerungMs) 'Bei Verögeung soll zwischen jeder Abfrage eine Pause gemacht werden! (Wegen Sperre bei zu vielen Abfragen) End If diff --git a/VERAG_PROG_ALLGEMEIN/Schnittstellen/Finanzonline/cFinanzOnlineWebService.vb b/VERAG_PROG_ALLGEMEIN/Schnittstellen/Finanzonline/cFinanzOnlineWebService.vb index c22a47b7..fc846b99 100644 --- a/VERAG_PROG_ALLGEMEIN/Schnittstellen/Finanzonline/cFinanzOnlineWebService.vb +++ b/VERAG_PROG_ALLGEMEIN/Schnittstellen/Finanzonline/cFinanzOnlineWebService.vb @@ -136,6 +136,16 @@ Public Class cFinanzOnlineWebService Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, "Fehler im externen Webservice " & System.Reflection.MethodInfo.GetCurrentMethod.Name & vbNewLine & " Daten: TID: " & tid & vbNewLine & " BENID: " & benid & vbNewLine & " SessionID: " & SESSION_ID & vbNewLine & " UID: " & uid & vbNewLine & " COUNTRY-CODE/VAT: " & countryCode & vatNumber & vbNewLine & " Stufe: " & StufeAbf & vbNewLine & " MSG: " & msg & vbNewLine & " Name: " & name & vbNewLine & " Adr1: " & adrz1 & vbNewLine & " Adr2: " & adrz2 & vbNewLine & " Adr3: " & adrz3 & vbNewLine & " Adr4: " & adrz4 & vbNewLine & " Adr5: " & adrz5 & vbNewLine & " Adr6: " & adrz6, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL) + + If ex.Message.Contains("Wegen Wartungsarbeiten") AndAlso ex.Message.Contains("Verf??gung") Then + Dim startIndex As Integer = ex.Message.IndexOf("Wegen Wartungsarbeiten") + Dim endIndex As Integer = ex.Message.IndexOf("Verf??gung", startIndex) + Dim messageError As String = ex.Message.Substring(startIndex, endIndex - startIndex + "Verf??gung".Length) + If messageError <> "" Then errorMsg = messageError + errorCode = -99 + + End If + Exit Function End Try @@ -382,6 +392,7 @@ Public Class cFinanzOnlineWebService Case 4 : Return "Die UID-Nummer des Erwerbers ist falsch." Case 5 : Return "Die UID-Nummer des Antragstellers ist ungültig." Case 10 : Return "Der angegebene Mitgliedstaat verbietet diese Abfrage." + Case -99 : Return "" & rc Case 101 : Return "UID beginnt nicht mit ATU." Case 103 : Return "Die angefragte UID-Nummer kann im FinanzOnline nur in Stufe 1 bestätigt werden, da diese UID-Nummer zu einer Unternehmensgruppe (Umsatzsteuergruppe) gehört.