DY_GenerellesErgebnis-> NCTS

This commit is contained in:
2023-12-18 15:29:25 +01:00
parent 4b4a4a3286
commit 17d24140cb
13 changed files with 1911 additions and 168 deletions

View File

@@ -5,6 +5,7 @@ Imports Renci.SshNet
Imports System.Net.Mail
Imports GrapeCity.Enterprise.Data.DataEngine.DataProcessing
Imports DocumentFormat.OpenXml.Wordprocessing
Imports DAKOSY_Worker
Public Class frmDYNachrichtenVerarbeitung
Dim cntDatenEingelesen As Integer = 0
@@ -593,10 +594,12 @@ Public Class frmDYNachrichtenVerarbeitung
'------------------ Diverse ------------------
'------------------------------------------
'SONDERFALL: Betrifft div. Arten von Anmeldungen: GenerellesEreignis
If Not found And cGetMsgType.isNCTS_GenerellesEreignis(doc) Then
If readNCTS_GenerellesEreignis(d) Then
found = True
End If
If Not found And cGetMsgType.isNCTS_GenerellesEreignis(doc, VERSION) Then
Select Case VERSION
Case "005" : If readNCTS_GenerellesEreignis_005(d, statusTMP) Then found = True
Case Else : If readNCTS_GenerellesEreignis(d) Then found = True
End Select
End If
@@ -823,6 +826,7 @@ Public Class frmDYNachrichtenVerarbeitung
Function getVerahrensartFromBezugsNr(bezugsNr) As String
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
If SQL.getValueTxtBySql("SELECT TOP 1 COUNT(*) FROM tblDakosy_NCTSOut004 WHERE ncts_ObjectName='" & bezugsNr & "'", "FMZOLL") > 0 Then Return "NCTS"
If SQL.getValueTxtBySql("SELECT TOP 1 COUNT(*) FROM tblDakosy_NCTSOut WHERE ncts_ObjectName='" & bezugsNr & "'", "FMZOLL") > 0 Then Return "NCTS"
If SQL.getValueTxtBySql("SELECT TOP 1 COUNT(*) FROM tblDakosy_EZA WHERE eza_ObjectName='" & bezugsNr & "'", "FMZOLL") > 0 Then Return "EZA"
Return ""
@@ -1008,6 +1012,141 @@ Public Class frmDYNachrichtenVerarbeitung
End Function
Function readNCTS_GenerellesEreignis_005(d As String, ByRef STATUSTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As Boolean
Try
Dim NCTS As DAKOSY_Worker.GenerellesEreignis005.GenerellesEreignisGETyp = DAKOSY_Worker.GenerellesEreignis005.GenerellesEreignisGETyp.LoadFromFile(d)
Dim division = ""
readNCTS_GenerellesEreignis_005 = False
If NCTS IsNot Nothing Then
If NCTS.Transaktion IsNot Nothing Then
If NCTS.Transaktion.IODivision3 IsNot Nothing Then
division = NCTS.Transaktion.IODivision3
End If
End If
If NCTS.EinzelEreignisObjekt IsNot Nothing Then
For Each ge In NCTS.EinzelEreignisObjekt
If ge.ObjektIdentifizierung IsNot Nothing Then
If ge.ObjektIdentifizierung.ObjektName IsNot Nothing And ge.ObjektIdentifizierung.Ereignisgewichtung IsNot Nothing Then
' ListBox4.Items.Add(ge.ObjektIdentifizierung.ObjektName)
Dim STATUS2 As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
STATUS2.dySt_artMitteilung = "GE"
STATUS2.dySt_dyArt = "" '"NCTS" 'T1/T2
STATUS2.dySt_BezugsNr = ge.ObjektIdentifizierung.ObjektName
STATUS2.dySt_ergCode = "" 'erg.EreignisCode
STATUS2.dySt_ergMitteilung = "" 'erg.Ereignismitteilung
If ge.ObjektIdentifizierung.Ereignisgewichtung.Contains("OKAY") Then
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_07
ElseIf ge.ObjektIdentifizierung.Ereignisgewichtung.Contains("INFO") Then
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_40
Else
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_98
End If
readNCTS_GenerellesEreignis_005 = True
Select Case getVerahrensartFromBezugsNr(ge.ObjektIdentifizierung.ObjektName)
Case "NCTS"
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "NCTS")
Dim NCTS_TMP2 As DAKOSY_Worker.cDakosyNCTSOut = cWorker_NCTS.saveDY_NCTS(STATUS2, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
If DY_TMP2 IsNot Nothing Then STATUS2.dySt_dyId = DY_TMP2.dy_Id
cWorker_NCTS.SaveNCTS_FirmaNL(NCTS_TMP2, DY_TMP2, division)
STATUS2.dySt_dyArt = "NCTS"
'=====ATEZ BEREITSTELLUNG==========
cWorker_NCTS.checkATEZ_Bereitstellung(DY_TMP2, d)
'==================================
Case "EZA", ""
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "EZA")
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA = saveDY_EZA(STATUS2, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
If DY_TMP2 IsNot Nothing Then STATUS2.dySt_dyId = DY_TMP2.dy_Id
SaveEZA_FirmaNL(EZA_TMP, DY_TMP2, division)
STATUS2.dySt_dyArt = "EZA"
End Select
STATUS2.SAVE()
'Nur wenn BezugsNr vorhanden:
If ge.KopfDaten IsNot Nothing Then
For Each kopf In ge.KopfDaten
If kopf.Ereignis IsNot Nothing Then
If kopf.RegistrierNrATLAS IsNot Nothing Then
'MsgBox(kopf.RegistrierNrATLAS)
If True Then
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
STATUS.dySt_artMitteilung = "GE"
STATUS.dySt_dyArt = "" '"NCTS" 'T1/T2
STATUS.dySt_BezugsNr = ge.ObjektIdentifizierung.ObjektName
If kopf.RegistrierNrATLAS.StartsWith("ATA") Or kopf.RegistrierNrATLAS.StartsWith("ATC") Then
STATUS.dySt_ergCode = "ATA"
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_41
Else
STATUS.dySt_ergCode = "GE"
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_40
End If
STATUS.dySt_ergMitteilung = kopf.RegistrierNrATLAS
STATUS.dySt_ergZeitpunkt = ge.ObjektIdentifizierung.ZeitpunktEingang
readNCTS_GenerellesEreignis_005 = True
Select Case getVerahrensartFromBezugsNr(ge.ObjektIdentifizierung.ObjektName)
Case "NCTS"
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "NCTS")
Dim NCTS_TMP2 As DAKOSY_Worker.cDakosyNCTSOut = cWorker_NCTS.saveDY_NCTS(STATUS, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, kopf.RegistrierNrATLAS)
If DY_TMP2 IsNot Nothing Then STATUS.dySt_dyId = DY_TMP2.dy_Id
cWorker_NCTS.SaveNCTS_FirmaNL(NCTS_TMP2, DY_TMP2, division)
STATUS.dySt_dyArt = "NCTS"
Case "EZA"
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "EZA")
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA = saveDY_EZA(STATUS, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, kopf.RegistrierNrATLAS)
If DY_TMP2 IsNot Nothing Then STATUS.dySt_dyId = DY_TMP2.dy_Id
SaveEZA_FirmaNL(EZA_TMP, DY_TMP2, division)
STATUS.dySt_dyArt = "EZA"
End Select
STATUS.SAVE()
End If
End If
End If
Next
End If
STATUSTMP = STATUS2
addDGVEinarbeitung("** GenerellesEreignis **", ge.ObjektIdentifizierung.ObjektName)
End If
End If
Next
End If
End If
' NCTS.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_GenerellesEreignis_005 = False
End Try
End Function
Function saveDY_AES(STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen, DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen, transID As String, transDate As Date, Optional ANR As String = "", Optional MRN As String = "") As DAKOSY_Worker.cDakosyAES
'EINTRAG IN tblDakosyAESOut
Dim AES_TMP As DAKOSY_Worker.cDakosyAES = Nothing