This commit is contained in:
2020-06-04 22:20:10 +02:00
parent 6e3e35ac70
commit 3d67139c09
23 changed files with 26785 additions and 41 deletions

View File

@@ -286,6 +286,7 @@ Public Class frmDYNachrichtenVerarbeitung
'NCTS: Ueberlassungsmeldung
If Not found And cGetMsgType.isNCTS_Ueberlassungsmeldung(doc, VERSION) Then
Select Case VERSION
Case "007" : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung007(Me, d, statusTMP) <> "" Then found = True ': MsgBox("005!")
Case "006" : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung006(Me, d, statusTMP) <> "" Then found = True ': MsgBox("005!")
Case "005" : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung005(Me, d, statusTMP) <> "" Then found = True ': MsgBox("005!")
Case Else : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung(Me, d, statusTMP) <> "" Then found = True
@@ -345,6 +346,7 @@ Public Class frmDYNachrichtenVerarbeitung
'EZA: Abgabenbescheid
If Not found And cGetMsgType.isEZA_Abgabenbescheid(doc, VERSION) Then
Select Case VERSION
Case "009" : If readEZA_Abgabenbescheid009(d) <> "" Then found = True
Case "008" : If readEZA_Abgabenbescheid008(d) <> "" Then found = True
Case Else : If readEZA_Abgabenbescheid(d) <> "" Then found = True
End Select
@@ -352,13 +354,20 @@ Public Class frmDYNachrichtenVerarbeitung
'EZA: NichtAbschliessendeFestsetzung
If Not found And cGetMsgType.isEZA_NichtAbschliessendeFestsetzung(doc) Then
If readEZA_NichtAbschliessendeFestsetzung(d) <> "" Then found = True
If Not found And cGetMsgType.isEZA_NichtAbschliessendeFestsetzung(doc, VERSION) Then
Select Case VERSION
Case "003" : If readEZA_NichtAbschliessendeFestsetzung003(d) <> "" Then found = True
Case Else : If readEZA_NichtAbschliessendeFestsetzung(d) <> "" Then found = True
End Select
End If
'EZA: AbschliessendeFestsetzung
If Not found And cGetMsgType.isEZA_AbschliessendeFestsetzung(doc) Then
If readEZA_AbschliessendeFestsetzung(d) <> "" Then found = True
If Not found And cGetMsgType.isEZA_AbschliessendeFestsetzung(doc, VERSION) Then
Select Case VERSION
Case "004" : If readEZA_AbschliessendeFestsetzung004(d) <> "" Then found = True
Case Else : If readEZA_AbschliessendeFestsetzung(d) <> "" Then found = True
End Select
End If
'EZA: StornierungBescheid
@@ -370,6 +379,7 @@ Public Class frmDYNachrichtenVerarbeitung
If Not found And cGetMsgType.isEZA_BefundVereinfachteZollanmeldung(doc, VERSION) Then
Select Case VERSION
Case "006" : found = True : addDGVEinarbeitung("*EZA: BefundVereinfachteZollanmeldung", "-")
Case "007" : found = True : addDGVEinarbeitung("*EZA: BefundVereinfachteZollanmeldung", "-")
Case Else : found = True : addDGVEinarbeitung("*EZA: BefundVereinfachteZollanmeldung", "-")
End Select
@@ -4024,6 +4034,82 @@ Public Class frmDYNachrichtenVerarbeitung
End Try
End Function
Function readEZA_NichtAbschliessendeFestsetzung003(d) As String
Try
Dim EZA As DAKOSY_Worker.NichtAbschliessendeFestsetzung_003.NichtAbschliessendeFestsetzungTAXNTyp = DAKOSY_Worker.NichtAbschliessendeFestsetzung_003.NichtAbschliessendeFestsetzungTAXNTyp.LoadFromFile(d)
Dim ART = ""
' Dim details = ""
Dim zp As Object = Nothing
Dim regNR = ""
Dim division = ""
readEZA_NichtAbschliessendeFestsetzung003 = ""
If EZA IsNot Nothing Then
If EZA.Transaktion IsNot Nothing Then
If EZA.Transaktion.IODivision3 IsNot Nothing Then
division = EZA.Transaktion.IODivision3
End If
End If
If EZA.EinzelNichtAbschliessendeFestsetzung IsNot Nothing Then
If EZA.EinzelNichtAbschliessendeFestsetzung.ObjektIdentifizierung IsNot Nothing Then
If EZA.EinzelNichtAbschliessendeFestsetzung.ObjektIdentifizierung.ObjektName IsNot Nothing Then
readEZA_NichtAbschliessendeFestsetzung003 = EZA.EinzelNichtAbschliessendeFestsetzung.ObjektIdentifizierung.ObjektName
End If
zp = EZA.EinzelNichtAbschliessendeFestsetzung.ObjektIdentifizierung.ZeitpunktEingang
End If
If EZA.EinzelNichtAbschliessendeFestsetzung.KopfDaten IsNot Nothing Then
' If EZA.EinzelNichtAbschliessendeFestsetzung.KopfDaten.ArtErledigung IsNot Nothing Then
'ART = EZA.EinzelNichtAbschliessendeFestsetzung.KopfDaten.ArtErledigung
' End If
If EZA.EinzelNichtAbschliessendeFestsetzung.KopfDaten.RegistrierNr IsNot Nothing Then
regNR = EZA.EinzelNichtAbschliessendeFestsetzung.KopfDaten.RegistrierNr
End If
End If
End If
End If
' EZA.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
If readEZA_NichtAbschliessendeFestsetzung003 <> "" Then 'BEZUGSNR vorhanden
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(EZA.Transaktion.IOReferenz, EZA.Transaktion.IODatumZeit)
STATUS.dySt_BezugsNr = readEZA_NichtAbschliessendeFestsetzung003
STATUS.dySt_artMitteilung = "NAF"
STATUS.dySt_dyArt = "EZA"
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_56
STATUS.dySt_ergZeitpunkt = zp
' STATUS.dySt_ergDetails = details
'EINTRAG IN tblDakosy_Zollanmeldungen
Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), "EZA")
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA
'???????? REGNR
If regNR <> "" Then
STATUS.dySt_ergCode = "REGNr"
STATUS.dySt_ergMitteilung = regNR
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), regNR)
Else
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit))
End If
SaveEZA_FirmaNL(EZA_TMP, DY_TMP, division)
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE()
addDGVEinarbeitung("EZA: Nicht-abschließende Festsetzung", STATUS.dySt_BezugsNr)
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readEZA_NichtAbschliessendeFestsetzung003 = ""
End Try
End Function
Function readEZA_StornierungBescheid(d) As String
Try
@@ -4191,6 +4277,86 @@ Public Class frmDYNachrichtenVerarbeitung
End Try
End Function
Function readEZA_AbschliessendeFestsetzung004(d) As String
Try
Dim EZA As DAKOSY_Worker.AbschliessendeFestsetzung_004.AbschliessendeFestsetzungTAXATyp = DAKOSY_Worker.AbschliessendeFestsetzung_004.AbschliessendeFestsetzungTAXATyp.LoadFromFile(d)
Dim ART = ""
' Dim details = ""
Dim zp As Object = Nothing
Dim regNR = ""
Dim division = ""
readEZA_AbschliessendeFestsetzung004 = ""
If EZA IsNot Nothing Then
If EZA.Transaktion IsNot Nothing Then
If EZA.Transaktion.IODivision3 IsNot Nothing Then
division = EZA.Transaktion.IODivision3
End If
End If
If EZA.EinzelAbschliessendeFestsetzung IsNot Nothing Then
If EZA.EinzelAbschliessendeFestsetzung.ObjektIdentifizierung IsNot Nothing Then
If EZA.EinzelAbschliessendeFestsetzung.ObjektIdentifizierung.ObjektName IsNot Nothing Then
readEZA_AbschliessendeFestsetzung004 = EZA.EinzelAbschliessendeFestsetzung.ObjektIdentifizierung.ObjektName
End If
zp = EZA.EinzelAbschliessendeFestsetzung.ObjektIdentifizierung.ZeitpunktEingang
End If
If EZA.EinzelAbschliessendeFestsetzung.KopfDaten IsNot Nothing Then
' If EZA.EinzelAbschliessendeFestsetzung.KopfDaten.ArtErledigung IsNot Nothing Then
'ART = EZA.EinzelAbschliessendeFestsetzung.KopfDaten.ArtErledigung
' End If
If EZA.EinzelAbschliessendeFestsetzung.KopfDaten.RegistrierNr IsNot Nothing Then
regNR = EZA.EinzelAbschliessendeFestsetzung.KopfDaten.RegistrierNr
End If
End If
End If
End If
' EZA.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
If readEZA_AbschliessendeFestsetzung004 <> "" Then 'BEZUGSNR vorhanden
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(EZA.Transaktion.IOReferenz, EZA.Transaktion.IODatumZeit)
STATUS.dySt_BezugsNr = readEZA_AbschliessendeFestsetzung004
STATUS.dySt_artMitteilung = "AF"
STATUS.dySt_dyArt = "EZA"
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_60
STATUS.dySt_ergZeitpunkt = zp
' STATUS.dySt_ergDetails = details
'EINTRAG IN tblDakosy_Zollanmeldungen
Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), "EZA")
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA
'???????? REGNR
If regNR <> "" Then
STATUS.dySt_ergCode = "REGNr"
STATUS.dySt_ergMitteilung = regNR
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), regNR)
Else
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit))
End If
SaveEZA_FirmaNL(EZA_TMP, DY_TMP, division)
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE()
'If If(EZA_TMP.eza_firma, "") = "IMEX" Then EZA_TMP.insertIntoSpedBuch(DY_TMP)
EZA_TMP.insertIntoSpedBuch(DY_TMP)
addDGVEinarbeitung("EZA: Abschließende Festsetzung", STATUS.dySt_BezugsNr)
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readEZA_AbschliessendeFestsetzung004 = ""
End Try
End Function
Function readEZA_Abgabenbescheid(d) As String
Try
'VERAG_PROG_ALLGEMEIN.cAllgemein.ERR_OP_GLOBAL = VERAG_PROG_ALLGEMEIN.ERROR_OP.SHOW
@@ -4535,6 +4701,196 @@ Public Class frmDYNachrichtenVerarbeitung
End Function
Function readEZA_Abgabenbescheid009(d) As String
Try
'VERAG_PROG_ALLGEMEIN.cAllgemein.ERR_OP_GLOBAL = VERAG_PROG_ALLGEMEIN.ERROR_OP.SHOW
Dim EZA As DAKOSY_Worker.Abgabenbescheid_009.AbgabenbescheidEinfuhrTAXTyp = DAKOSY_Worker.Abgabenbescheid_009.AbgabenbescheidEinfuhrTAXTyp.LoadFromFile(d)
Dim regNr = ""
Dim regDat = ""
Dim details = ""
Dim zoellner = ""
Dim erledigung = ""
Dim zp As Object = Nothing
Dim EDIFACTNachrichtenNr = ""
Dim AUFSCHUB As List(Of DAKOSY_Worker.cDakosy_EZA_Aufschub) = Nothing
Dim division = ""
readEZA_Abgabenbescheid009 = ""
If EZA IsNot Nothing Then
If EZA.Transaktion IsNot Nothing Then
If EZA.Transaktion.IODivision3 IsNot Nothing Then
division = EZA.Transaktion.IODivision3
End If
End If
If EZA.EinzelAbgabenbescheid IsNot Nothing Then
'Vorgezogen, damit firma/NL erkannt wird
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(EZA.Transaktion.IOReferenz, EZA.Transaktion.IODatumZeit)
If EZA.EinzelAbgabenbescheid.ObjektIdentifizierung IsNot Nothing Then
If EZA.EinzelAbgabenbescheid.ObjektIdentifizierung.ObjektName IsNot Nothing Then
readEZA_Abgabenbescheid009 = EZA.EinzelAbgabenbescheid.ObjektIdentifizierung.ObjektName
End If
zp = EZA.EinzelAbgabenbescheid.ObjektIdentifizierung.ZeitpunktEingang
If EZA.EinzelAbgabenbescheid.ObjektIdentifizierung.EDIFACTNachrichtenNr IsNot Nothing Then
EDIFACTNachrichtenNr = EZA.EinzelAbgabenbescheid.ObjektIdentifizierung.EDIFACTNachrichtenNr
End If
End If
If EZA.EinzelAbgabenbescheid.KopfDaten IsNot Nothing Then
If EZA.EinzelAbgabenbescheid.KopfDaten.Registriernummer IsNot Nothing Then
regNr = EZA.EinzelAbgabenbescheid.KopfDaten.Registriernummer
End If
If EZA.EinzelAbgabenbescheid.KopfDaten.ErledigungKopfKz IsNot Nothing Then
erledigung = EZA.EinzelAbgabenbescheid.KopfDaten.ErledigungKopfKz
End If
' If EZA.EinzelAbgabenbescheid.KopfDaten.Registrierdatum IsNot Nothing Then
regDat = EZA.EinzelAbgabenbescheid.KopfDaten.Registrierdatum
'End If
If EZA.EinzelAbgabenbescheid.KopfDaten.AbgabenNachArt IsNot Nothing AndAlso EZA.EinzelAbgabenbescheid.KopfDaten.AbgabenNachArt.Count > 0 Then
Dim a As New DAKOSY_Worker.cDakosy_EZA_Aufschub
AUFSCHUB = New List(Of DAKOSY_Worker.cDakosy_EZA_Aufschub)
For Each ABG In EZA.EinzelAbgabenbescheid.KopfDaten.AbgabenNachArt
a.ezaAfb_ArtAufschubantrag = ABG.ArtAufschubAntrag
a.ezaAfb_AufschubnehmerEORI = ABG.AufschubnehmerTIN
a.ezaAfb_HZA = ABG.KennBuchstabenAufschub
a.ezaAfb_KontoNr = ABG.AufschubkontoNr
If ABG.Faelligkeit > CDate("01.01.2000") Then a.ezaAfb_Faelligkeit = ABG.Faelligkeit
a.ezaAfb_Zahlungsart = ABG.Zahlungsart
a.ezaAfb_Abgabenbetrag = ABG.Abgabenbetrag
a.ezaAfb_AbgabeArt = ABG.AbgabeArt
a.AufschubnehmerName = ABG.AufschubnehmerName
'Select Case AbgabeArt
' Case "B0000" 'EUST
' Case "B0000" 'EUST
'End Select
Next
AUFSCHUB.Add(a)
End If
End If
If readEZA_Abgabenbescheid009 <> "" Then 'BEZUGSNR vorhanden
STATUS.dySt_BezugsNr = readEZA_Abgabenbescheid009
STATUS.dySt_artMitteilung = "AB"
STATUS.dySt_dyArt = "EZA" '"EZA" 'T1/T2
Select Case erledigung
Case "0" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_69 'ungültig
Case "1" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_69 'ungültig
Case "2" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_69 'ungültig
Case "3" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_99 'unwirksam
Case "4" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_55 'nicht abschleißender Bescheid
Case "5" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_60
Case "6" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_60
Case "7" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_68 'Abgabe HZS
Case "8" : STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_61 'Erledigung außerhalb d. SB
End Select
STATUS.dySt_ergCode = "REGNr"
STATUS.dySt_ergMitteilung = regNr
STATUS.dySt_ergZeitpunkt = zp
STATUS.dySt_ergZoellner = zoellner
STATUS.dySt_ergDetails = details
'EINTRAG IN tblDakosy_Zollanmeldungen
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA
Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), "EZA")
If regNr <> "" Then
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), regNr)
Else
EZA_TMP = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit))
End If
Dim firma = ""
Dim nl = ""
SaveEZA_FirmaNL(EZA_TMP, DY_TMP, division, firma, nl)
If AUFSCHUB IsNot Nothing And EZA_TMP IsNot Nothing Then
EZA_TMP.eza_AUFSCHUB.Clear()
For Each a In AUFSCHUB
a.ezaAfb_EZAId = EZA_TMP.eza_Id
Next
EZA_TMP.eza_AUFSCHUB = AUFSCHUB
EZA_TMP.SAVE_Aufschub()
cVERAG_out_eza.copyFileFTP_VERAGEZA_DY(EZA_TMP, DY_TMP) ' SCHNITTSTELLE FTP BEREITSTELLEN
'RAISE-API-EVENT/TRIGGER ??
End If
' ------------------------------------------------------------------------------
' wenn nicht abschliebender Abgabenbescheid --> Infomail an die Zollbüros!
Select Case erledigung
Case "4"
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_55 'nicht abschleißender Bescheid
Dim MailTo = "eu@verag.ag"
Select Case EZA_TMP.eza_firma
Case "IMEX" : MailTo = "info@imex-group.at"
Case "ATILLA" : MailTo = "info@imex-group.at"
Case "VERAG"
Select Case EZA_TMP.eza_niederlassung
Case "WAI" : MailTo = "waidhaus@verag.com"
Case "SBG" : MailTo = "de@verag.ag"
End Select
End Select
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(MailTo, "MITTEILUNG ZOLL: Nicht abschließender Abgebenbescheid - " & readEZA_Abgabenbescheid009,
"Meldung über <b>nicht abschließenden Abgabenbescheid</b> bei der Bezugsnummer: <b>" & readEZA_Abgabenbescheid009 & "</b><br><br>Firma: " & EZA_TMP.eza_firma & "Niederlassung: " & EZA_TMP.eza_niederlassung & "<br><br>Automatisch generiertes E-Mail.",
, True, True)
'Case "5"
' STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_55 'nicht abschleißender Bescheid
' Dim MailTo = "al@verag.ag"
' VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(MailTo, "MITTEILUNG ZOLL: Nicht abschließender Abgebenbescheid - " & readEZA_Abgabenbescheid,
' "Meldung über <b>abschließenden Abgabenbescheid</b> bei der Bezugsnummer: <b>" & readEZA_Abgabenbescheid & "</b><br><br>Firma: " & EZA_TMP.eza_firma & "Niederlassung: " & EZA_TMP.eza_niederlassung & "<br><br>Automatisch generiertes E-Mail.",
' , True, True)
End Select
' ------------------------------------------------------------------------------
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE()
If EZA IsNot Nothing AndAlso EZA.EinzelAbgabenbescheid.KopfDaten IsNot Nothing Then
InsertAbgaben(EZA, division, STATUS, DY_TMP, regNr, readEZA_Abgabenbescheid009, regDat, firma, nl, EDIFACTNachrichtenNr)
End If
'Status aktualisieren
saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), regNr)
EZA_TMP.insertIntoSpedBuch(DY_TMP)
addDGVEinarbeitung("EZA: Abgabenbescheid", STATUS.dySt_BezugsNr)
End If
End If
End If
' EZA.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)
readEZA_Abgabenbescheid009 = ""
End Try
End Function
Function InsertAbgaben(EZA, division, STATUS, DY_TMP, regNr, Bezugsnummer, regDat, firma, nl, EDIFACTNachrichtenNr)
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA = saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, EZA.Transaktion.IODatumZeit, regNr)