This commit is contained in:
2026-10-23 23:24:29 +02:00
parent ed2e63a004
commit b51ec8adc9
5 changed files with 561 additions and 97 deletions

View File

@@ -117,6 +117,7 @@ Public Class cDakosyEZA
Property eza_AUFSCHUB As New List(Of cDakosy_EZA_Aufschub)
Property eza_SUMABA As New List(Of cDakosy_EZA_SumABeendigungsAnteil)
Property eza_BEA_ZLAvuv As New List(Of cDakosy_EZA_BEAnteilZLAVUV)
Property eza_DV1Kostenverteilung As New List(Of cDakosy_EZA_DV1Kosten)
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
@@ -153,87 +154,87 @@ Public Class cDakosyEZA
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LetzteBearbeitung_SB", eza_LetzteBearbeitung_SB))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_firma", eza_firma))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_niederlassung", eza_niederlassung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Partner", eza_Trans_Partner))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div1", eza_Trans_Div1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div2", eza_Trans_Div2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div3", eza_Trans_Div3))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Referenz", eza_Trans_Referenz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_DatumZeit", eza_Trans_DatumZeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Version", eza_Trans_Version))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenSenderTIN", eza_NachrichtenSenderTIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenSenderNLNR", eza_NachrichtenSenderNLNR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenempfaengerDST", eza_NachrichtenempfaengerDST))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ObjectName", eza_ObjectName))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ObjectAlias", eza_ObjectAlias))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerVorblendung", eza_BezugsnummerVorblendung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bearbeiter", eza_Bearbeiter))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldungArt", eza_AnmeldungArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_CompliancePruefung", eza_CompliancePruefung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnfBemerkungStatusanzeige", eza_AnfBemerkungStatusanzeige))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AdressierteZollstelle", eza_AdressierteZollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmelderistEmpfaenger", eza_AnmelderistEmpfaenger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VertretungsVerhaeltnisCode", eza_VertretungsVerhaeltnisCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Vorsteuerabzug", eza_Vorsteuerabzug))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterName", eza_AnmeldenderBearbeiterName))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterTel", eza_AnmeldenderBearbeiterTel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterStellung", eza_AnmeldenderBearbeiterStellung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterEMail", eza_AnmeldenderBearbeiterEMail))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_FiskalvertretungKz", eza_FiskalvertretungKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Partner", eza_Trans_Partner))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div1", eza_Trans_Div1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div2", eza_Trans_Div2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Div3", eza_Trans_Div3))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Referenz", eza_Trans_Referenz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_DatumZeit", eza_Trans_DatumZeit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Trans_Version", eza_Trans_Version))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenSenderTIN", eza_NachrichtenSenderTIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenSenderNLNR", eza_NachrichtenSenderNLNR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_NachrichtenempfaengerDST", eza_NachrichtenempfaengerDST))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ObjectName", eza_ObjectName))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ObjectAlias", eza_ObjectAlias))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerVorblendung", eza_BezugsnummerVorblendung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bearbeiter", eza_Bearbeiter))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldungArt", eza_AnmeldungArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_CompliancePruefung", eza_CompliancePruefung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnfBemerkungStatusanzeige", eza_AnfBemerkungStatusanzeige))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AdressierteZollstelle", eza_AdressierteZollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmelderistEmpfaenger", eza_AnmelderistEmpfaenger))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VertretungsVerhaeltnisCode", eza_VertretungsVerhaeltnisCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Vorsteuerabzug", eza_Vorsteuerabzug))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterName", eza_AnmeldenderBearbeiterName))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterTel", eza_AnmeldenderBearbeiterTel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterStellung", eza_AnmeldenderBearbeiterStellung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnmeldenderBearbeiterEMail", eza_AnmeldenderBearbeiterEMail))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_FiskalvertretungKz", eza_FiskalvertretungKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Ausstellungsort", eza_Ausstellungsort))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ZollrechtlicherStatus", eza_ZollrechtlicherStatus))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_GesamtRohmasse", eza_GesamtRohmasse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerfahrenBeantragtCode", eza_VerfahrenBeantragtCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerkehrszweigInland", eza_VerkehrszweigInland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerkehrszweigGrenze", eza_VerkehrszweigGrenze))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VersendungsLandCode", eza_VersendungsLandCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bestimmungsbundesland", eza_Bestimmungsbundesland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bestimmungsland", eza_Bestimmungsland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_KennzeichenNameBefoerderungsmittelAnkunft", eza_KennzeichenNameBefoerderungsmittelAnkunft))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenzeStaatszugehörigkeitCode", eza_BeförderungsmittelGrenzeStaatszugehörigkeitCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenzeArt", eza_BeförderungsmittelGrenzeArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenze", eza_BeförderungsmittelGrenze))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungCode", eza_LieferbedingungCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungText", eza_LieferbedingungText))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungSchluessel", eza_LieferbedingungSchluessel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungOrt", eza_LieferbedingungOrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ZollrechtlicherStatus", eza_ZollrechtlicherStatus))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_GesamtRohmasse", eza_GesamtRohmasse))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerfahrenBeantragtCode", eza_VerfahrenBeantragtCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerkehrszweigInland", eza_VerkehrszweigInland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VerkehrszweigGrenze", eza_VerkehrszweigGrenze))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VersendungsLandCode", eza_VersendungsLandCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bestimmungsbundesland", eza_Bestimmungsbundesland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Bestimmungsland", eza_Bestimmungsland))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_KennzeichenNameBefoerderungsmittelAnkunft", eza_KennzeichenNameBefoerderungsmittelAnkunft))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenzeStaatszugehörigkeitCode", eza_BeförderungsmittelGrenzeStaatszugehörigkeitCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenzeArt", eza_BeförderungsmittelGrenzeArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeförderungsmittelGrenze", eza_BeförderungsmittelGrenze))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungCode", eza_LieferbedingungCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungText", eza_LieferbedingungText))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungSchluessel", eza_LieferbedingungSchluessel))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_LieferbedingungOrt", eza_LieferbedingungOrt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VorpapierArtCode", eza_VorpapierArtCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VorpapierNr", eza_VorpapierNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ArtGeschaeftCode", eza_ArtGeschaeftCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_VorpapierNr", eza_VorpapierNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ArtGeschaeftCode", eza_ArtGeschaeftCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Statistikstatus", eza_Statistikstatus))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Warenort", eza_Warenort))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Rechnungspreis", eza_Rechnungspreis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Rechnungswaehrung", eza_Rechnungswaehrung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Kz", eza_DV1Kz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Vertretungsverhaeltnis", eza_DV1Vertretungsverhaeltnis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1FruehereEntscheidungen", eza_DV1FruehereEntscheidungen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Verbundenheit", eza_DV1Verbundenheit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1VerbungenheitEinzelheiten", eza_DV1VerbungenheitEinzelheiten))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1EinschraenkungenKz", eza_DV1EinschraenkungenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1BedingungenLeistungenKz", eza_DV1BedingungenLeistungenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1BedingungenLeistungenArt", eza_DV1BedingungenLeistungenArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1LizenzgebuehrenKz", eza_DV1LizenzgebuehrenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1LizenzgebuehrenUmstand", eza_DV1LizenzgebuehrenUmstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1SpezielleVereinbarungKz", eza_DV1SpezielleVereinbarungKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1SpezielleVereinbarungUmstand", eza_DV1SpezielleVereinbarungUmstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ZusatzangabenAnmeldung", eza_ZusatzangabenAnmeldung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_KzAutoBestaetigung", eza_KzAutoBestaetigung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnschreibungDatum", eza_AnschreibungDatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Eingangszollstelle", eza_Eingangszollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Zahlungsart", eza_Zahlungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr1", eza_ContainerNr1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr2", eza_ContainerNr2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr3", eza_ContainerNr3))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr4", eza_ContainerNr4))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr5", eza_ContainerNr5))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr6", eza_ContainerNr6))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr8", eza_ContainerNr8))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr9", eza_ContainerNr9))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeendigungsanteilArtCode", eza_BeendigungsanteilArtCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BewilligungsIDZLAVUV", eza_BewilligungsIDZLAVUV))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_BezugsnummerBEAnteilZL))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Warenort", eza_Warenort))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Rechnungspreis", eza_Rechnungspreis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Rechnungswaehrung", eza_Rechnungswaehrung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Kz", eza_DV1Kz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Vertretungsverhaeltnis", eza_DV1Vertretungsverhaeltnis))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1FruehereEntscheidungen", eza_DV1FruehereEntscheidungen))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1Verbundenheit", eza_DV1Verbundenheit))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1VerbungenheitEinzelheiten", eza_DV1VerbungenheitEinzelheiten))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1EinschraenkungenKz", eza_DV1EinschraenkungenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1BedingungenLeistungenKz", eza_DV1BedingungenLeistungenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1BedingungenLeistungenArt", eza_DV1BedingungenLeistungenArt))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1LizenzgebuehrenKz", eza_DV1LizenzgebuehrenKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1LizenzgebuehrenUmstand", eza_DV1LizenzgebuehrenUmstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1SpezielleVereinbarungKz", eza_DV1SpezielleVereinbarungKz))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_DV1SpezielleVereinbarungUmstand", eza_DV1SpezielleVereinbarungUmstand))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ZusatzangabenAnmeldung", eza_ZusatzangabenAnmeldung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_KzAutoBestaetigung", eza_KzAutoBestaetigung))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_AnschreibungDatum", eza_AnschreibungDatum))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Eingangszollstelle", eza_Eingangszollstelle))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Zahlungsart", eza_Zahlungsart))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr1", eza_ContainerNr1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr2", eza_ContainerNr2))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr3", eza_ContainerNr3))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr4", eza_ContainerNr4))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr5", eza_ContainerNr5))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr6", eza_ContainerNr6))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr8", eza_ContainerNr8))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_ContainerNr9", eza_ContainerNr9))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BeendigungsanteilArtCode", eza_BeendigungsanteilArtCode))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BewilligungsIDZLAVUV", eza_BewilligungsIDZLAVUV))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_BezugsnummerBEAnteilZL))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_UstIdAnmelder", eza_UstIdAnmelder))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_FinanzamtAnmelder", eza_FinanzamtAnmelder))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_Anmeldedatum", eza_Anmeldedatum))
@@ -276,6 +277,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
If Not SAVE_Aufschub() Then Return False
If Not SAVE_BEAnteilZLAVUV() Then Return False
If Not SAVE_SumABeendigungsAnteil() Then Return False
If Not SAVE_DV1Kostenverteilung() Then Return False
Return True
End Function
@@ -291,6 +293,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
eza_AUFSCHUB.Clear()
eza_BEA_ZLAvuv.Clear()
eza_SUMABA.Clear()
eza_DV1Kostenverteilung.Clear()
End If
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM tblDakosy_eza WHERE eza_Id=@eza_Id ", conn)
@@ -315,6 +318,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
LOAD_Aufschub()
LOAD_BEAnteilZLAVUV()
LOAD_SumABeendigungsAnteil()
LOAD_DV1Kostenverteilung()
End If
LOAD = True
End If
@@ -357,6 +361,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
EZA.LOAD_Aufschub()
EZA.LOAD_BEAnteilZLAVUV()
EZA.LOAD_SumABeendigungsAnteil()
EZA.LOAD_DV1Kostenverteilung()
End If
dr.Close()
@@ -405,6 +410,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
eza_AUFSCHUB.Clear()
eza_BEA_ZLAvuv.Clear()
eza_SUMABA.Clear()
eza_DV1Kostenverteilung.Clear()
End If
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_EZA WHERE eza_dyaAnmID=@eza_dyaAnmID ", conn)
@@ -429,6 +435,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
LOAD_Aufschub()
LOAD_BEAnteilZLAVUV()
LOAD_SumABeendigungsAnteil()
LOAD_DV1Kostenverteilung()
End If
LOADByAnmID = True
End If
@@ -449,6 +456,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
Me.LOAD_Aufschub()
Me.LOAD_BEAnteilZLAVUV()
Me.LOAD_SumABeendigungsAnteil()
Me.LOAD_DV1Kostenverteilung()
End Sub
@@ -482,6 +490,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
EZA.LOAD_Aufschub()
EZA.LOAD_BEAnteilZLAVUV()
EZA.LOAD_SumABeendigungsAnteil()
EZA.LOAD_DV1Kostenverteilung()
End If
dr.Close()
@@ -526,6 +535,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
EZA.LOAD_Aufschub()
EZA.LOAD_BEAnteilZLAVUV()
EZA.LOAD_SumABeendigungsAnteil()
EZA.LOAD_DV1Kostenverteilung()
End If
dr.Close()
@@ -1419,6 +1429,65 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
' DV1-Kosten: separate Tabelle, damit Kopfkosten persistent und mehrfach speicherbar sind.
Public Sub LOAD_DV1Kostenverteilung()
eza_DV1Kostenverteilung.Clear()
If eza_Id <= 0 Then Exit Sub
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT Kostenart, Kosten, KostenWaehrung, WechselkursArt, Verteilungsart, Minimalbetrag FROM dbo.tblDakosy_EZA_DV1Kostenverteilung WHERE eza_Id=@eza_Id ORDER BY Id", conn)
cmd.Parameters.Add("@eza_Id", SqlDbType.Int).Value = eza_Id
Using dr As SqlDataReader = cmd.ExecuteReader()
While dr.Read()
eza_DV1Kostenverteilung.Add(New cDakosy_EZA_DV1Kosten With {
.Kostenart = If(dr.IsDBNull(0), "", dr.GetString(0)),
.Kosten = If(dr.IsDBNull(1), "", dr.GetString(1)),
.KostenWaehrung = If(dr.IsDBNull(2), "", dr.GetString(2)),
.WechselkursArt = If(dr.IsDBNull(3), "", dr.GetString(3)),
.Verteilungsart = If(dr.IsDBNull(4), "", dr.GetString(4)),
.Minimalbetrag = If(dr.IsDBNull(5), "", dr.GetString(5))})
End While
End Using
End Using
End Using
End Sub
Public Function SAVE_DV1Kostenverteilung() As Boolean
If eza_Id <= 0 Then Return False
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using tran As SqlTransaction = conn.BeginTransaction()
Try
Using cmd As New SqlCommand("DELETE FROM dbo.tblDakosy_EZA_DV1Kostenverteilung WHERE eza_Id=@eza_Id", conn, tran)
cmd.Parameters.Add("@eza_Id", SqlDbType.Int).Value = eza_Id
cmd.ExecuteNonQuery()
End Using
For Each k As cDakosy_EZA_DV1Kosten In eza_DV1Kostenverteilung
Using cmd As New SqlCommand("INSERT INTO dbo.tblDakosy_EZA_DV1Kostenverteilung (eza_Id, Kostenart, Kosten, KostenWaehrung, WechselkursArt, Verteilungsart, Minimalbetrag) VALUES (@id,@art,@kosten,@waehrung,@kurs,@verteilung,@min)", conn, tran)
cmd.Parameters.Add("@id", SqlDbType.Int).Value = eza_Id
cmd.Parameters.Add("@art", SqlDbType.VarChar, 20).Value = If(k.Kostenart, "")
cmd.Parameters.Add("@kosten", SqlDbType.VarChar, 50).Value = If(k.Kosten, "")
cmd.Parameters.Add("@waehrung", SqlDbType.VarChar, 10).Value = If(k.KostenWaehrung, "")
cmd.Parameters.Add("@kurs", SqlDbType.VarChar, 20).Value = If(k.WechselkursArt, "")
cmd.Parameters.Add("@verteilung", SqlDbType.VarChar, 30).Value = If(k.Verteilungsart, "")
cmd.Parameters.Add("@min", SqlDbType.VarChar, 50).Value = If(k.Minimalbetrag, "")
cmd.ExecuteNonQuery()
End Using
Next
tran.Commit()
Catch
tran.Rollback()
Throw
End Try
End Using
End Using
Return True
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod().Name)
Return False
End Try
End Function
End Class
Public Class cDakosy_EZA_Adressen
@@ -2481,4 +2550,13 @@ Public Class cDakosy_EZA_WarenpositionVerbrauchssteuer
Return ""
End Function
End Class
End Class
Public Class cDakosy_EZA_DV1Kosten
Public Property Kostenart As String = ""
Public Property Kosten As String = ""
Public Property KostenWaehrung As String = ""
Public Property WechselkursArt As String = ""
Public Property Verteilungsart As String = ""
Public Property Minimalbetrag As String = ""
End Class

View File

@@ -3090,7 +3090,8 @@ Public Class cDakosyNCTSOut004
End Select
End Function
Shared Function fillNCTS_WithEXG(ByRef NCTS_OUT As cDakosyNCTSOut004, exg As cDakosyEXG, Optional ObjectName As String = "", Optional AutoTranslate As Boolean? = Nothing, Optional ForceTranslate As Boolean? = Nothing) As cDakosyNCTSOut004
Shared Function fillNCTS_WithEXG(ByRef NCTS_OUT As cDakosyNCTSOut004, exg As cDakosyEXG, Optional ObjectName As String = "", Optional AutoTranslate As Boolean? = Nothing, Optional ForceTranslate As Boolean? = Nothing, Optional VersLandAusVersender As Boolean = False, Optional BestLandAusEmpfaenger As Boolean = False) As cDakosyNCTSOut004
If NCTS_OUT Is Nothing Then
NCTS_OUT = New DAKOSY_Worker.cDakosyNCTSOut004
@@ -3129,12 +3130,18 @@ Public Class cDakosyNCTSOut004
'House Consignment
HC.nctsHC_GrossMass = exg.exg_GrossMass
HC.nctsHC_CountryOfDestination = exg.exg_CountryOfDestination
'Versendungsland: zuerst EXG, alternativ Versenderadresse
HC.nctsHC_CountryOfDispatch = If(exg.exg_CountryOfDispatch, "").Trim().ToUpperInvariant()
If String.IsNullOrWhiteSpace(HC.nctsHC_CountryOfDispatch) Then
HC.nctsHC_CountryOfDispatch = If(exg.exg_Consignor_Country, "").Trim().ToUpperInvariant()
'Versendungs- und Bestimmungsland aus EXG
HC.nctsHC_CountryOfDispatch = exg.exg_CountryOfDispatch
HC.nctsHC_CountryOfDestination = exg.exg_CountryOfDestination
'Optionale Übernahme aus Versender- bzw. Empfängeradresse
If VersLandAusVersender AndAlso Not String.IsNullOrWhiteSpace(Convert.ToString(HC.nctsHC_Consignor_Country)) Then
HC.nctsHC_CountryOfDispatch = HC.nctsHC_Consignor_Country
End If
If BestLandAusEmpfaenger AndAlso Not String.IsNullOrWhiteSpace(Convert.ToString(HC.nctsHC_Consignee_Country)) Then
HC.nctsHC_CountryOfDestination = HC.nctsHC_Consignee_Country
End If
'UCR bewusst nicht übernehmen
@@ -3205,10 +3212,9 @@ Public Class cDakosyNCTSOut004
HC_ITEM.nctsHCCI_DeclarationType = DetermineTransitProcedure(EXG_POS.exgPos_RequestedProcedure, EXG_POS.exgPos_PreviousProcedure)
Debug.WriteLine($"NCTS Transit: Requested={EXG_POS.exgPos_RequestedProcedure}, Previous={EXG_POS.exgPos_PreviousProcedure}, Result={HC_ITEM.nctsHCCI_DeclarationType}")
End If
'Packstücke
'Packstücke zunächst ohne Beipackverweise übernehmen
If EXG_POS.exgPos_PACKAGING IsNot Nothing Then
For Each EXG_PK In EXG_POS.exgPos_PACKAGING
@@ -3218,31 +3224,61 @@ Public Class cDakosyNCTSOut004
HC_PK.nctsHCCIPK_TypeOfPackages = EXG_PK.exgPosPk_TypeOfPackages
HC_PK.nctsHCCIPK_ShippingMarks = EXG_PK.exgPosPk_ShippingMarks
If Val(Convert.ToString(EXG_PK.exgPosPk_NumberOfPackages)) = 0 Then
'Verweis auf erste Warenposition im selben House Consignment
HC_PK.nctsHCCIPK_GoodsItemNumber = 1
End If
HC_ITEM.nctsHCCI_PACKAGING.Add(HC_PK)
Next
End If
HC.nctsWP_CONSIGNMENT_ITEM.Add(HC_ITEM)
Next
'Beipackverweise erst nach vollständiger Erstellung aller Warenpositionen ermitteln
For Each item In HC.nctsWP_CONSIGNMENT_ITEM
For Each pk In item.nctsHCCI_PACKAGING
'Nur Packstücke mit expliziter Anzahl 0 sind Beipack-Kandidaten
Dim packageCount As String = Convert.ToString(pk.nctsHCCIPK_NumberOfPackages).Trim()
If packageCount <> "0" Then Continue For
Dim shippingMarks As String = Convert.ToString(pk.nctsHCCIPK_ShippingMarks).Trim()
If shippingMarks = "" Then
Debug.WriteLine("NCTS Beipack: Versandzeichen fehlen / EXG " & exg.exg_ObjectName)
Continue For
End If
Dim referencePosition As Integer = 0
'Erste Warenposition mit identischem Versandzeichen und Packstückanzahl > 0 suchen
For i As Integer = 0 To HC.nctsWP_CONSIGNMENT_ITEM.Count - 1
Dim candidate = HC.nctsWP_CONSIGNMENT_ITEM(i)
If candidate Is item Then Continue For
Dim matchingPK = candidate.nctsHCCI_PACKAGING.FirstOrDefault(
Function(p) Val(Convert.ToString(p.nctsHCCIPK_NumberOfPackages)) > 0 AndAlso
String.Equals(Convert.ToString(p.nctsHCCIPK_ShippingMarks).Trim(), shippingMarks, StringComparison.OrdinalIgnoreCase))
If matchingPK IsNot Nothing Then
referencePosition = i + 1
Exit For
End If
Next
If referencePosition > 0 Then
pk.nctsHCCIPK_GoodsItemNumber = referencePosition
Else
Debug.WriteLine("NCTS Beipack: Keine Hauptpackposition für Versandzeichen '" & shippingMarks & "' gefunden / EXG " & exg.exg_ObjectName)
End If
Next
Next
NCTS_OUT.ncts_HOUSE_CONSIGNMENT.Add(HC)
'Verfahrensart wird erst nach Zusammenführung aller EXG bestimmt
'Positions-Verfahrensarten bleiben bis dahin erhalten
'Dim declType As String = GetDeclarationType(NCTS_OUT.ncts_HOUSE_CONSIGNMENT)
'If declType <> "" Then
' emptyAllDeclarationItems(NCTS_OUT.ncts_HOUSE_CONSIGNMENT)
' NCTS_OUT.ncts_Declarationtype = declType
'Else
' NCTS_OUT.ncts_Declarationtype = "T-"
'End If
'Kein SAVE_ALL: erfolgt nach Zusammenführung aller EXG-Anmeldungen

View File

@@ -45,6 +45,9 @@
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="ClosedXML">
<HintPath>F:\PROGRAMMIERUNG\dll\closedxml\95\ClosedXML.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Data" />

View File

@@ -1,4 +1,6 @@
Imports System.Data.SqlClient
Imports System.IO
Imports ClosedXML.Excel
Imports VERAG_PROG_ALLGEMEIN
Public Class cImporter_DakosyToVERAG
@@ -340,6 +342,16 @@ Public Class cImporter_DakosyToVERAG
' ======KAFKA==========================================================
If saved AndAlso freshInsert Then cDakosyEZA_Greenpulse.INSERT_KAFKA(ZA)
' ================================================================
If saved Then
Try
UpdateBrokerManagementFileTETRAPAK(ZA)
Catch ex As Exception
cErrorHandler.ERR(ex.Message, ex.StackTrace, "UpdateBrokerManagementFile")
End Try
End If
Return saved
@@ -349,6 +361,323 @@ Public Class cImporter_DakosyToVERAG
End Try
End Function
Public Sub UpdateBrokerManagementFileTETRAPAK(ZA As cVERAG_CustomsDeclarations)
Const kundenNrTETRAPAK As Integer = 719649
Const prefix As String = "[TETRAPAK] "
Debug.WriteLine(prefix & "========== START BrokerManagementFile ==========")
Try
If ZA Is Nothing OrElse ZA.za_Id <= 0 Then
Debug.WriteLine(prefix & "ABBRUCH: Keine gültige Zollanmeldung")
Exit Sub
End If
'Zollanmeldung vollständig aus VERAG-Datenbank laden
Dim ZOLL As New cVERAG_CustomsDeclarations
ZOLL.za_Id = ZA.za_Id
ZOLL.LOAD()
If Not ZOLL.hasEntry Then
Throw New Exception("Zollanmeldung nicht gefunden. za_Id=" & ZA.za_Id)
End If
Debug.WriteLine(prefix & "ZA-ID: " & ZOLL.za_Id)
Debug.WriteLine(prefix & "MRN: " & Convert.ToString(ZOLL.za_MRN))
Debug.WriteLine(prefix & "LRN: " & Convert.ToString(ZOLL.za_LRN))
Debug.WriteLine(prefix & "AvisoId: " & Convert.ToString(ZOLL.za_AvisoId))
Debug.WriteLine(prefix & "SendungsId: " & Convert.ToString(ZOLL.za_SendungsId))
If Not ZOLL.za_SendungsId.HasValue OrElse ZOLL.za_SendungsId.Value <= 0 Then
Debug.WriteLine(prefix & "ABBRUCH: Keine SendungsId")
Exit Sub
End If
'Auftraggeber prüfen
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(ZOLL.za_SendungsId.Value)
Debug.WriteLine(prefix & "Auftraggeber: " & Convert.ToString(SND.tblSnd_Auftraggeber))
Debug.WriteLine(prefix & "Kundennummer: " & Convert.ToString(SND.tblSnd_AuftraggeberKdNr))
Dim kundenNr As Integer
If Not Integer.TryParse(Convert.ToString(SND.tblSnd_AuftraggeberKdNr), kundenNr) Then
Debug.WriteLine(prefix & "ABBRUCH: Ungültige Kundennummer")
Exit Sub
End If
If kundenNr <> kundenNrTETRAPAK Then
Debug.WriteLine(prefix & "ABBRUCH: Kein TETRAPAK-Auftraggeber")
Exit Sub
End If
'Warenpositionen aus tblVERAG_CustomsDeclarations_Items
Dim positionen = ZOLL.Items.OrderBy(Function(p) p.zaItem_PosNo).ToList()
If positionen.Count = 0 Then
Debug.WriteLine(prefix & "ABBRUCH: Keine Warenpositionen vorhanden")
Exit Sub
End If
Debug.WriteLine(prefix & "Warenpositionen: " & positionen.Count)
Debug.WriteLine(prefix & "Kopfabgaben: " & ZOLL.Duties.Count)
'Abgaben aus tblVERAG_CustomsDeclarations_Duties
'Positionen und Kopf getrennt behandeln
Dim gesamtZollPositionen As Decimal = 0D
Dim gesamtEustPositionen As Decimal = 0D
Dim gesamtZollKopf As Decimal = 0D
Dim gesamtEustKopf As Decimal = 0D
Dim anzahlPositionsabgaben As Integer = 0
For Each wp In positionen
Debug.WriteLine(prefix & "Position " & wp.zaItem_PosNo & " | ItemId=" & wp.zaItem_Id & " | Abgaben=" & wp.Duties.Count)
For Each duty In wp.Duties
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
Select Case art
Case "A0000", "A00"
gesamtZollPositionen += betrag
Case "B0000", "B00"
gesamtEustPositionen += betrag
End Select
anzahlPositionsabgaben += 1
Debug.WriteLine(prefix & " Duty: " & art &
" | Betrag=" & betrag.ToString("0.00") &
" | ItemId=" & Convert.ToString(duty.zaDuty_zaItemId))
Next
Next
For Each duty In ZOLL.Duties
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
Select Case art
Case "A0000", "A00"
gesamtZollKopf += betrag
Case "B0000", "B00"
gesamtEustKopf += betrag
End Select
Debug.WriteLine(prefix & "Kopfabgabe: " & art & " | Betrag=" & betrag.ToString("0.00"))
Next
Debug.WriteLine(prefix & "Positions-Zoll gesamt: " & gesamtZollPositionen.ToString("0.00"))
Debug.WriteLine(prefix & "Positions-EUSt gesamt: " & gesamtEustPositionen.ToString("0.00"))
Debug.WriteLine(prefix & "Kopf-Zoll gesamt: " & gesamtZollKopf.ToString("0.00"))
Debug.WriteLine(prefix & "Kopf-EUSt gesamt: " & gesamtEustKopf.ToString("0.00"))
'Bei fehlenden Positionsabgaben keine künstliche Verteilung
Dim nurKopfabgaben As Boolean = (anzahlPositionsabgaben = 0)
If nurKopfabgaben AndAlso positionen.Count > 1 AndAlso ZOLL.Duties.Count > 0 Then
Throw New Exception("BrokerManagementFile: Es sind " & positionen.Count &
" Warenpositionen vorhanden, aber nur Kopfabgaben gespeichert. " &
"Eine eindeutige Verteilung von Zoll/EUSt ist nicht möglich. ZA-ID=" & ZOLL.za_Id)
End If
If nurKopfabgaben AndAlso ZOLL.Duties.Count = 0 Then
Debug.WriteLine(prefix & "WARNUNG: Keine Abgaben in der Zollanmeldung gespeichert")
End If
If Not nurKopfabgaben Then
If ZOLL.Duties.Count > 0 Then
If gesamtZollPositionen <> gesamtZollKopf OrElse gesamtEustPositionen <> gesamtEustKopf Then
Debug.WriteLine(prefix & "WARNUNG: Positionssummen und Kopfsummen weichen voneinander ab")
Else
Debug.WriteLine(prefix & "OK: Positionssummen entsprechen den Kopfsummen")
End If
End If
End If
'Anhänge über AVISO und Sendung laden
Dim anhaenge As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
If ZOLL.za_AvisoId.HasValue AndAlso ZOLL.za_AvisoId.Value > 0 Then
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_ByAviso(anhaenge, ZOLL.za_AvisoId.Value)
End If
Dim sendungsAnhaenge As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(sendungsAnhaenge, ZOLL.za_SendungsId.Value)
For Each anh In sendungsAnhaenge
If Not anhaenge.Any(Function(a) a.anh_docId = anh.anh_docId) Then anhaenge.Add(anh)
Next
Debug.WriteLine(prefix & "Anhänge gefunden: " & anhaenge.Count)
Dim dateienGefunden As Integer = 0
Dim dateienGespeichert As Integer = 0
For Each anh In anhaenge
Debug.WriteLine(prefix & "Prüfe Anhang: " & Convert.ToString(anh.anh_Art) & " | docId=" & anh.anh_docId)
If Not String.Equals(Convert.ToString(anh.anh_Art).Trim(), "BrokerManagementFile", StringComparison.OrdinalIgnoreCase) Then Continue For
If anh.anh_docId <= 0 Then Continue For
Dim pfad As String = (New VERAG_PROG_ALLGEMEIN.cDATENSERVER(anh.anh_docId)).GET_TOP1_PATH(False)
Debug.WriteLine(prefix & "Archivpfad: " & Convert.ToString(pfad))
If String.IsNullOrWhiteSpace(pfad) OrElse Not File.Exists(pfad) Then
Debug.WriteLine(prefix & "Übersprungen: Archivdatei nicht gefunden")
Continue For
End If
If Not String.Equals(Path.GetExtension(pfad), ".xlsx", StringComparison.OrdinalIgnoreCase) Then
Debug.WriteLine(prefix & "Übersprungen: Keine XLSX-Datei")
Continue For
End If
dateienGefunden += 1
Using wb As New XLWorkbook(pfad)
Dim ws = wb.Worksheet(1)
Dim letzteVerwendeteZeile = ws.LastRowUsed()
If letzteVerwendeteZeile Is Nothing Then
Debug.WriteLine("BrokerManagementFile ist leer: " & pfad)
End If
'Datenzeilen anhand Spalte A
Dim datenZeilen As New List(Of Integer)
Dim letzteZeile As Integer = letzteVerwendeteZeile.RowNumber()
For zeile As Integer = 2 To letzteZeile
If Not String.IsNullOrWhiteSpace(ws.Cell(zeile, "A").GetString()) Then datenZeilen.Add(zeile)
Next
Debug.WriteLine(prefix & "Excel-Zeilen: " & datenZeilen.Count)
Debug.WriteLine(prefix & "Zollpositionen: " & positionen.Count)
If datenZeilen.Count <> positionen.Count Then
Debug.WriteLine("BrokerManagementFile: Positionsanzahl stimmt nicht überein. Excel=" &
datenZeilen.Count & ", Zollanmeldung=" & positionen.Count & ", Datei=" & pfad)
End If
For i As Integer = 0 To positionen.Count - 1
Dim wp = positionen(i)
Dim zeile As Integer = datenZeilen(i)
Dim posNr As Integer = wp.zaItem_PosNo
Dim zollbetr As Decimal = 0D
Dim eust As Decimal = 0D
'Positionsabgaben aus Datenbank
If Not nurKopfabgaben Then
For Each duty In wp.Duties
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
Select Case art.Trim.ToUpperInvariant()
'Zoll inkl. Zusatz-, Antidumping- und Ausgleichszoll
Case "A0000", "A00", "A2000", "A20", "A3000", "A30", "A35", "A4000", "A40"
zollbetr += betrag
'Einfuhrumsatzsteuer
Case "B0000", "B00", "5EV"
eust += betrag
'Sicherheiten, Summen und sonstige Abgaben nicht berücksichtigen
Case "2EU", "2IG", "2KO", "2PE", "2VF", "2VS", "5EU", "5ZO", "9EA", "6BE"
'Keine Addition
Case Else
'Debug.WriteLine("Unbekannte Abgabenart: " & art & " / Betrag: " & betrag.ToString())
zollbetr += betrag 'Default: Alle unbekannten Abgabenarten werden als Zoll behandelt
End Select
Next
ElseIf positionen.Count = 1 Then
'Nur bei einer Position sind Kopfabgaben eindeutig zuordenbar
zollbetr = gesamtZollKopf
eust = gesamtEustKopf
End If
Debug.WriteLine(prefix & "----------------------------------------")
Debug.WriteLine(prefix & "Position: " & posNr)
Debug.WriteLine(prefix & "Excel-Zeile: " & zeile)
Debug.WriteLine(prefix & "Zoll: " & zollbetr.ToString("0.00"))
Debug.WriteLine(prefix & "EUSt: " & eust.ToString("0.00"))
'AZ - Registration Number ATC/ATD
ws.Cell(zeile, "AZ").Value = If(zoll.za_DeclarationNo, "")
'BA - Date of Acceptance
If zoll.za_AcceptanceDate.HasValue Then
ws.Cell(zeile, "BA").Value = zoll.za_AcceptanceDate.Value.ToString("dd.MM.yyyy")
Else
ws.Cell(zeile, "BA").Value = ""
End If
'BB - Registration Number MRN
ws.Cell(zeile, "BB").Value = If(zoll.za_MRN, "")
'BC - Office of Entry
ws.Cell(zeile, "BC").Value = If(zoll.za_EntryCustomsOffice, "")
'BD - Mode of Transport at the Border
ws.Cell(zeile, "BD").Value = If(ZOLL.za_TransportModeBorder, If(ZOLL.za_TransportModeInland, ""))
'BE - Identity of means of transport at the border
ws.Cell(zeile, "BE").Value = If(zoll.za_MeansOfTransport_Vehicle, "")
'BF - Nationality of means of transport at the border
ws.Cell(zeile, "BF").Value = If(zoll.za_MeansOfTransport_Nationality, "")
'BG - Inland Mode of Transport
ws.Cell(zeile, "BG").Value = If(ZOLL.za_TransportModeInland, If(ZOLL.za_TransportModeBorder, ""))
'BH - Identity of inland means of transport
ws.Cell(zeile, "BH").Value = If(zoll.za_MeansOfTransport_Vehicle, "")
'BI - Nationality of inland means of transport
ws.Cell(zeile, "BI").Value = If(zoll.za_MeansOfTransport_Nationality, "")
'BJ - Assessment of payable duty
ws.Cell(zeile, "BJ").Value = zollbetr
ws.Cell(zeile, "BJ").Style.NumberFormat.Format = "0.00"
'BK - Assessment of payable Import VAT
ws.Cell(zeile, "BK").Value = eust
ws.Cell(zeile, "BK").Style.NumberFormat.Format = "0.00"
Debug.WriteLine(prefix & "AZ=" & ws.Cell(zeile, "AZ").GetString())
Debug.WriteLine(prefix & "BA=" & ws.Cell(zeile, "BA").GetString())
Debug.WriteLine(prefix & "BB=" & ws.Cell(zeile, "BB").GetString())
Debug.WriteLine(prefix & "BC=" & ws.Cell(zeile, "BC").GetString())
Debug.WriteLine(prefix & "BD=" & ws.Cell(zeile, "BD").GetString())
Debug.WriteLine(prefix & "BE=" & ws.Cell(zeile, "BE").GetString())
Debug.WriteLine(prefix & "BF=" & ws.Cell(zeile, "BF").GetString())
Debug.WriteLine(prefix & "BG=" & ws.Cell(zeile, "BG").GetString())
Debug.WriteLine(prefix & "BH=" & ws.Cell(zeile, "BH").GetString())
Debug.WriteLine(prefix & "BI=" & ws.Cell(zeile, "BI").GetString())
Debug.WriteLine(prefix & "BJ=" & zollbetr.ToString("0.00"))
Debug.WriteLine(prefix & "BK=" & eust.ToString("0.00"))
Next
wb.Save()
Debug.WriteLine(prefix & "Original gespeichert: " & pfad)
dateienGespeichert += 1
End Using
Next
Debug.WriteLine(prefix & "BrokerManagementFiles gefunden: " & dateienGefunden)
Debug.WriteLine(prefix & "BrokerManagementFiles gespeichert: " & dateienGespeichert)
If dateienGefunden = 0 Then Debug.WriteLine(prefix & "WARNUNG: Kein BrokerManagementFile gefunden")
Catch ex As Exception
Debug.WriteLine(prefix & "FEHLER: " & ex.ToString())
Throw
Finally
Debug.WriteLine(prefix & "========== ENDE BrokerManagementFile ==========")
End Try
End Sub
' =====================================================================
' NCTS 004 -> VERAG TRANSIT
' =====================================================================

View File

@@ -1439,7 +1439,25 @@ Public Class frmStartOptions
End If
'---------------------------------------------------------
'---------------------------------------------------------
' BrokerManagementFile immer zusätzlich anhängen
'---------------------------------------------------------
If SND.tblSnd_SendungID > 0 Then
Dim ANH_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(ANH_LIST, SND.tblSnd_SendungID)
For Each l In ANH_LIST
If String.Equals(Convert.ToString(l.anh_Art), "BrokerManagementFile", StringComparison.OrdinalIgnoreCase) Then
If l.anh_docId > 0 Then
Dim PathTmpANH = (New VERAG_PROG_ALLGEMEIN.cDATENSERVER(l.anh_docId)).GET_TOP1_PATH(False)
If Not String.IsNullOrWhiteSpace(PathTmpANH) AndAlso Not pfadList.Contains(PathTmpANH) Then
pfadList.Add(PathTmpANH)
End If
End If
End If
Next
End If
'---------------------------------------------------------
VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, Mail_Art, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
' body = body.Replace("%Platzhalter%", "E-Mails: " & EMails & " CC: " & EMails_CC & " BCC:" & EMails_BCC)