diff --git a/initATLASAufschubkonten/cWorker_Verwahrung.vb b/initATLASAufschubkonten/cWorker_Verwahrung.vb
index 812ce01..97112a9 100644
--- a/initATLASAufschubkonten/cWorker_Verwahrung.vb
+++ b/initATLASAufschubkonten/cWorker_Verwahrung.vb
@@ -1,6 +1,4 @@
-Imports com.sun.xml.internal.bind.v2.model.core
-Imports Microsoft.Office.Core
-Imports VERAG_PROG_ALLGEMEIN
+Imports VERAG_PROG_ALLGEMEIN
Public Class cWorker_Verwahrung
Public Shared Dateiname = ""
@@ -190,8 +188,6 @@ Anzeige:
posErledigung.Rows.Add(ro)
End If
-
-
Next
@@ -199,9 +195,6 @@ Anzeige:
End If
End If
- ' EZA.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
-
-
If readEZA_SumAErledigungsinformationVorpapier_005 <> "" Then 'BEZUGSNR vorhanden
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(EZA.Transaktion.IOReferenz, EZA.Transaktion.IODatumZeit)
@@ -212,24 +205,7 @@ Anzeige:
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.V_60
STATUS.dySt_ergZeitpunkt = zp
-
- ' STATUS.dySt_ergDetails = details
- 'EINTRAG IN tblDakosy_Zollanmeldungen
Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = FORM.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 = FORM.saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit), regNR)
- 'Else
- ' STATUS.dySt_ergCode = "ART"
- ' If ART <> "" Then STATUS.dySt_ergMitteilung = ART
- ' EZA_TMP = FORM.saveDY_EZA(STATUS, DY_TMP, EZA.Transaktion.IOReferenz, If(zp, EZA.Transaktion.IODatumZeit))
- 'End If
-
- 'FORM.SaveEZA_FirmaNL(EZA_TMP, DY_TMP, division)
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE()
@@ -311,13 +287,9 @@ Anzeige:
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE()
-
-
'----------------------------------------------------------------
- 'Verwahrung ABSCHREIBUNG
-
If saveAbschreibung Then
Try
@@ -330,11 +302,6 @@ Anzeige:
End Try
-
-
-
-
-
End If
@@ -352,14 +319,14 @@ Anzeige:
Shared Function readNCTS_SumAMassnahmenbekanntgabe(FORM As frmDYNachrichtenVerarbeitung, d As String, saveAbschreibung As Boolean) As String
Try
- Dim NCTS As DAKOSY_Worker.SumAErledigungsinformationCDXWare_007.SumAErledigungsinformationCDXWareSCTyp = DAKOSY_Worker.SumAErledigungsinformationCDXWare_007.SumAErledigungsinformationCDXWareSCTyp.LoadFromFile(d)
- Dim ART = ""
- ' Dim details = ""
+ Dim NCTS As DAKOSY_Worker.SumABekanntgabeMassnahme_005.SumABekanntgabeMassnahmeSBTyp = DAKOSY_Worker.SumABekanntgabeMassnahme_005.SumABekanntgabeMassnahmeSBTyp.LoadFromFile(d)
Dim zp As Object = Nothing
Dim regNR = ""
Dim division = ""
+ Dim posMassnahmen As New DataTable
+
readNCTS_SumAMassnahmenbekanntgabe = ""
If NCTS IsNot Nothing Then
@@ -371,69 +338,71 @@ Anzeige:
End If
End If
- If NCTS.EinzelSumAErledigungsinformationCDXWare IsNot Nothing Then
- If NCTS.EinzelSumAErledigungsinformationCDXWare.ObjektIdentifizierung IsNot Nothing Then
- If NCTS.EinzelSumAErledigungsinformationCDXWare.ObjektIdentifizierung.ObjektName IsNot Nothing Then
- readNCTS_SumAMassnahmenbekanntgabe = NCTS.EinzelSumAErledigungsinformationCDXWare.ObjektIdentifizierung.ObjektName
+ If NCTS.EinzelSumABekanntgabeMassnahme IsNot Nothing Then
+ If NCTS.EinzelSumABekanntgabeMassnahme.ObjektIdentifizierung IsNot Nothing Then
+ If NCTS.EinzelSumABekanntgabeMassnahme.ObjektIdentifizierung.ObjektName IsNot Nothing Then
+ readNCTS_SumAMassnahmenbekanntgabe = NCTS.EinzelSumABekanntgabeMassnahme.ObjektIdentifizierung.ObjektName
End If
- zp = NCTS.EinzelSumAErledigungsinformationCDXWare.ObjektIdentifizierung.ZeitpunktNachrichteneingang
+ zp = NCTS.EinzelSumABekanntgabeMassnahme.ObjektIdentifizierung.ZeitpunktNachrichteneingang
End If
- If NCTS.EinzelSumAErledigungsinformationCDXWare.KopfDaten IsNot Nothing Then
+ If NCTS.EinzelSumABekanntgabeMassnahme.KopfDaten IsNot Nothing Then
- If NCTS.EinzelSumAErledigungsinformationCDXWare.KopfDaten.RegNrATLAS IsNot Nothing Then
- regNR = NCTS.EinzelSumAErledigungsinformationCDXWare.KopfDaten.RegNrATLAS
+ If NCTS.EinzelSumABekanntgabeMassnahme.KopfDaten.RegistriernummerATLAS IsNot Nothing Then
+ regNR = NCTS.EinzelSumABekanntgabeMassnahme.KopfDaten.RegistriernummerATLAS
End If
End If
+
End If
+
+
+ If NCTS.EinzelSumABekanntgabeMassnahme.Position IsNot Nothing Then
+
+ For Each POS In NCTS.EinzelSumABekanntgabeMassnahme.Position
+ If POS.MassnahmeCode IsNot Nothing AndAlso posMassnahmen IsNot Nothing Then
+ If Not posMassnahmen.Columns.Contains("MassnahmeText") Then
+ posMassnahmen.Columns.Add("MassnahmeCode", GetType(Integer))
+ posMassnahmen.Columns.Add("MassnahmeText", GetType(String))
+ posMassnahmen.Columns.Add("MassnahmeNichtzustellbarKz", GetType(String))
+ posMassnahmen.Columns.Add("PackstueckArt", GetType(String))
+ posMassnahmen.Columns.Add("PackstueckAnzahl", GetType(Integer))
+ End If
+
+ Dim ro As DataRow = posMassnahmen.NewRow
+ ro("MassnahmeText") = POS.MassnahmeText
+ ro("MassnahmeCode") = POS.MassnahmeCode
+ ro("MassnahmeNichtzustellbarKz") = POS.MassnahmeNichtzustellbarKz
+ ro("PackstueckAnzahl") = POS.PackstueckAnzahl
+ ro("PackstueckArt") = POS.PackstueckArt
+ posMassnahmen.Rows.Add(ro)
+ End If
+
+
+
+ Next
+
+
+ End If
+
+
End If
- ' EZA.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
+
If readNCTS_SumAMassnahmenbekanntgabe <> "" Then 'BEZUGSNR vorhanden
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
- STATUS.dySt_BezugsNr = readNCTS_SumAMassnahmenbekanntgabe
- STATUS.dySt_artMitteilung = "VW_EVP_CDX"
- STATUS.dySt_dyArt = "VW" '"EZA" 'T1/T2
-
- STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.V_60 '???
- STATUS.dySt_ergZeitpunkt = zp
-
-
- ' STATUS.dySt_ergDetails = details
- 'EINTRAG IN tblDakosy_Zollanmeldungen
- Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = FORM.saveDY_ZA(STATUS, NCTS.Transaktion.IOReferenz, If(zp, NCTS.Transaktion.IODatumZeit), "NCTS")
-
- If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
- STATUS.SAVE()
-
-
-
- '----------------------------------------------------------------
-
-
- 'Verwahrung ABSCHREIBUNG
-
- If saveAbschreibung Then
-
- Try
-
-
-
- Catch ex As Exception
-
- End Try
-
-
-
+ '-----------------------EMAIL-NOTIFYCATION----------------------------------------
+ If posMassnahmen.Rows.Count > 0 Then
+ Dim Mailext = createInfoMail(regNR, posMassnahmen, "MASSNAHME-DAKOSY")
+ VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("verwahrung@verag.ag", IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TEST-", "") & "Massnahme DAKOSY - " & Now().ToShortDateString, Mailext,,,,, "d.breimaier@verag.ag")
End If
'----------------------------------------------------------------
- FORM.addDGVEinarbeitung("VW: Erledigungsinformation-Vorpapier CDX", STATUS.dySt_BezugsNr)
+ FORM.addDGVEinarbeitung("VW: Bekanntgabe Massnahme", regNR)
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
@@ -756,14 +725,34 @@ Anzeige:
'Dim dtSendungen = SQL.loadDgvBySql("SELECT")
Dim anzahlPackstuecke As Integer = -1
Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte")))
- Dim AnzahlStückStorniert As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte")))
+ Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz"))
If gs_row.Item("gs_freitext") <> "" Then
anzahlPackstuecke = CInt(System.Text.RegularExpressions.Regex.Match(gs_row.Item("gs_freitext"), "\d+").Value)
End If
If anzahlPackstuecke > 0 AndAlso anzahlPackstuecke <> AnzahlStückErledigt Then 'Hinweismeldung, wenn nicht alle erledigt wurden!
- 'verwahrung@verag.ag
- VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("verwahrung@verag.ag", IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TEST-", "") & "Erledigungsmeldung-DAKOSY fehlende Positionen - " & Now().ToShortDateString, "Bei " & MRNNR & "/" & regNR & " wurden nur " & AnzahlStückErledigt & " von " & gs_row.Item("gs_freitext") & " erledigt" & vbNewLine & "*Automatic generated e-mail*",,,,, "d.breimaier@verag.ag")
+ Dim dt As New DataTable
+
+ If Not dt.Columns.Contains("anzahlPackstuecke") Then
+ dt.Columns.Add("MRN", GetType(String))
+ dt.Columns.Add("LKW_ID", GetType(String))
+ dt.Columns.Add("anzahlPackstuecke", GetType(Integer))
+ dt.Columns.Add("StornierungKZ", GetType(String))
+ dt.Columns.Add("AnzahlStückErledigt", GetType(Integer))
+ End If
+
+ Dim ro As DataRow = dt.NewRow
+ ro("MRN") = gs_row.Item("gs_MRNNr")
+ ro("LKW_ID") = gs_row.Item("gs_avisoId")
+ ro("anzahlPackstuecke") = anzahlPackstuecke
+ ro("AnzahlStückErledigt") = AnzahlStückErledigt
+ ro("StornierungKZ") = StornierungKz
+ dt.Rows.Add(ro)
+
+
+ Dim InfoText As String = createInfoMail(MRNNR, dt, "")
+
+ VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail("verwahrung@verag.ag", IIf(VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM, "TEST-", "") & "Erledigungsmeldung-DAKOSY fehlende Positionen - " & Now().ToShortDateString, InfoText,,,,, "d.breimaier@verag.ag")
End If
Dim SicherheitsPos As New cGesamtsicherheitsPositionen()
@@ -831,4 +820,63 @@ Anzeige:
Return 0
End Function
+
+ Public Shared Function createInfoMail(regNR As String, dt As DataTable, typ As String) As String
+
+ Dim TextHTMLtable As String
+
+ If typ = "MASSNAHME-DAKOSY" Then
+
+ TextHTMLtable &= "Bei " & regNR & " wurden eine Zoll-Maßnahme ausgelöst." & vbNewLine & vbNewLine & vbNewLine
+
+ TextHTMLtable &= "
"
+ TextHTMLtable &= "| Code | Text | NichtzustellbarKz | PackstueckAnzahl | PackstueckArt |
"
+
+ For Each r As DataRow In dt.Rows
+
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| " & r.Item("MassnahmeCode") & " | "
+ TextHTMLtable &= "" & r.Item("MassnahmeText") & " | "
+ TextHTMLtable &= "" & r.Item("MassnahmeNichtzustellbarKz") & " | "
+ TextHTMLtable &= "" & r.Item("PackstueckAnzahl") & " | "
+ TextHTMLtable &= "" & r.Item("PackstueckArt") & " | "
+ TextHTMLtable &= "
"
+
+ Next
+
+ TextHTMLtable &= "
"
+
+ TextHTMLtable &= vbNewLine & vbNewLine & vbNewLine & "*Automatic generated e-mail*"
+ Return TextHTMLtable
+
+ Else
+
+ TextHTMLtable &= "Bei " & regNR & " wurde nicht vollständig aufgelöst." & vbNewLine & vbNewLine & vbNewLine
+
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| MRN-Nr | LKW-ID | Packstücke gesamt | Packstücke erledigt | Stornierung KZ |
"
+
+ For Each r As DataRow In dt.Rows
+
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| " & r.Item("MRN") & " | "
+ TextHTMLtable &= "" & r.Item("LKW_ID") & " | "
+ TextHTMLtable &= "" & r.Item("anzahlPackstuecke") & " | "
+ TextHTMLtable &= "" & r.Item("AnzahlStückErledigt") & " | "
+ TextHTMLtable &= "" & r.Item("StornierungKZ") & " | "
+ TextHTMLtable &= "
"
+
+ Next
+
+ TextHTMLtable &= "
"
+
+ TextHTMLtable &= vbNewLine & vbNewLine & vbNewLine & "*Automatic generated e-mail*"
+ Return TextHTMLtable
+
+ End If
+
+
+
+
+ End Function
End Class