Imports System.Globalization
Imports System.IO
Imports System.Xml
Public Class cMAVIWorker
Public Shared Dateiname = ""
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
Public Shared Function readNCTS_VersandanmeldungXML_CC015B(FORM As frmTRNCTS_NachrichtenVerarbeitung, doc As XmlDocument) As String
Try
readNCTS_VersandanmeldungXML_CC015B = ""
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
If XmlString.Contains(""), XmlString.IndexOf("") + 9 - XmlString.IndexOf(""))
' MsgBox(xmlCC015B)
' Dim p = Path.GetTempFileName
Dim LRN = ""
If doc.GetElementsByTagName("RefNumHEA4").Count > 0 Then
LRN = doc.GetElementsByTagName("RefNumHEA4")(0).InnerText
End If
readNCTS_VersandanmeldungXML_CC015B = LRN
'Using outputFile As New StreamWriter(p, False, System.Text.Encoding.Default)
' outputFile.Write(xmlCC015B)
' outputFile.Close()
Dim AnsprechpTMP_Email = ""
Dim NCTS As cNCTSPartnerWorker.cNCTS_TR = cNCTSPartnerWorker.cNCTS_TR.LOADByBezugsNr(LRN, True,, "MAVI")
If NCTS Is Nothing Then NCTS = New cNCTSPartnerWorker.cNCTS_TR
NCTS.ncts_ObjectName = LRN
NCTS.ncts_Partnersystem = "MAVI"
If doc.GetElementsByTagName("GuaRefNumGRNREF1").Count > 0 AndAlso doc.GetElementsByTagName("AmoConREF7").Count > 0 Then
Dim BRG As New cNCTSPartnerWorker.cNCTS_TR_Sicherheitsangaben
BRG.nctsSA_GRN = doc.GetElementsByTagName("GuaRefNumGRNREF1")(0).InnerText
Dim Betrag = doc.GetElementsByTagName("AmoConREF7")(0).InnerText
If IsNumeric(Betrag) Then
BRG.nctsSA_AbgabenBetrag = CDbl(Betrag)
End If
NCTS.ncts_SICHERHEITSANGABEN = New List(Of cNCTSPartnerWorker.cNCTS_TR_Sicherheitsangaben)
NCTS.ncts_SICHERHEITSANGABEN.Add(BRG)
End If
If If(NCTS.ncts_Status, 0) <= 5 Then NCTS.ncts_Status = DAKOSY_Worker.cDY_Statusliste.S_05
' If If(NCTS.ncts_Status_KEWILL_Equivalent, 0) <= 5 Then NCTS.ncts_Status_KEWILL_Equivalent = DAKOSY_Worker.cDY_Statusliste.S_05
NCTS.ncts_Status_KEWILL_Equivalent = NCTS.ncts_Status
If NCTS.SAVE_ALL() Then
' If If(NCTS.ncts_Status, 0) <= 5 Then DAKOSY_Worker.cDakosy_Statusmeldungen.InsertStatusMeldung(DY_TMP, DAKOSY_Worker.cDY_Statusliste.S_05,,,, statusTMP)
Else
readNCTS_VersandanmeldungXML_CC015B = ""
End If
'Try
' System.IO.File.Delete(p)
'Catch ex As Exception
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
'End Try
FORM.addDGVEinarbeitung("NCTS: Versandanmeldung", readNCTS_VersandanmeldungXML_CC015B)
' End Using
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_VersandanmeldungXML_CC015B = ""
End Try
End Function
Public Shared Function readNCTS_VersandanmeldungXML_CC015B_RES(FORM As frmTRNCTS_NachrichtenVerarbeitung, doc As XmlDocument) As String
Try
readNCTS_VersandanmeldungXML_CC015B_RES = ""
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
If XmlString.Contains(""), XmlString.IndexOf("") + 9 - XmlString.IndexOf(""))
' MsgBox(xmlCC015B)
' Dim p = Path.GetTempFileName
Dim LRN = ""
Dim GUID = ""
If doc.GetElementsByTagName("LRN").Count > 0 Then
LRN = doc.GetElementsByTagName("LRN")(0).InnerText
End If
readNCTS_VersandanmeldungXML_CC015B_RES = LRN
If doc.GetElementsByTagName("GUID").Count > 0 Then
GUID = doc.GetElementsByTagName("GUID")(0).InnerText
End If
Dim AnsprechpTMP_Email = ""
Dim NCTS As cNCTSPartnerWorker.cNCTS_TR = cNCTSPartnerWorker.cNCTS_TR.LOADByBezugsNr_or_GUID_or_MRN(LRN, GUID, "", True,, "MAVI")
If NCTS Is Nothing Then NCTS = New cNCTSPartnerWorker.cNCTS_TR
NCTS.ncts_ObjectName = LRN
NCTS.ncts_GUID = GUID
NCTS.ncts_Partnersystem = "MAVI"
If If(NCTS.ncts_Status, 0) <= 5 Then NCTS.ncts_Status = DAKOSY_Worker.cDY_Statusliste.S_05
' If If(NCTS.ncts_Status_KEWILL_Equivalent, 0) <= 5 Then NCTS.ncts_Status_KEWILL_Equivalent = DAKOSY_Worker.cDY_Statusliste.S_05
NCTS.ncts_Status_KEWILL_Equivalent = NCTS.ncts_Status
If NCTS.SAVE_ALL() Then
' If If(NCTS.ncts_Status, 0) <= 5 Then DAKOSY_Worker.cDakosy_Statusmeldungen.InsertStatusMeldung(DY_TMP, DAKOSY_Worker.cDY_Statusliste.S_05,,,, statusTMP)
Else
readNCTS_VersandanmeldungXML_CC015B_RES = ""
End If
'Try
' System.IO.File.Delete(p)
'Catch ex As Exception
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
'End Try
FORM.addDGVEinarbeitung("NCTS: Versandanmeldung - Ergänzung GUID", readNCTS_VersandanmeldungXML_CC015B_RES)
' End Using
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_VersandanmeldungXML_CC015B_RES = ""
End Try
End Function
Public Shared Function readNCTS_BestaetigungZollXML_CC029B(FORM As frmTRNCTS_NachrichtenVerarbeitung, doc As XmlDocument) As String
Try
readNCTS_BestaetigungZollXML_CC029B = ""
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
If XmlString.Contains("") Then
Dim xmlCC029B = XmlString.Substring(XmlString.IndexOf(""), XmlString.IndexOf("") + 9 - XmlString.IndexOf(""))
' MsgBox(xmlCC029B)
Dim p = Path.GetTempFileName
Dim LRN = ""
If doc.GetElementsByTagName("RefNumHEA4").Count > 0 Then
LRN = doc.GetElementsByTagName("RefNumHEA4")(0).InnerText
End If
Dim MRN = ""
If doc.GetElementsByTagName("DocNumHEA5").Count > 0 Then
MRN = doc.GetElementsByTagName("DocNumHEA5")(0).InnerText
End If
readNCTS_BestaetigungZollXML_CC029B = LRN
Using outputFile As New StreamWriter(p, False, System.Text.Encoding.Default)
outputFile.Write(xmlCC029B)
outputFile.Close()
Dim AnsprechpTMP_Email = ""
Dim NCTS As cNCTSPartnerWorker.cNCTS_TR = cNCTSPartnerWorker.cNCTS_TR.LOADByBezugsNr_or_GUID_or_MRN(LRN, "", MRN, True,, "MAVI")
If NCTS Is Nothing Then NCTS = New cNCTSPartnerWorker.cNCTS_TR
NCTS.ncts_ObjectName = LRN
NCTS.ncts_Partnersystem = "MAVI"
NCTS.ncts_Eroeffnung = Now.ToShortDateString
'If doc.GetElementsByTagName("GuaRefNumGRNREF1").Count > 0 AndAlso doc.GetElementsByTagName("AmoConREF7").Count > 0 Then
' Dim BRG As New cNCTSPartnerWorker.cNCTS_TR_Sicherheitsangaben
' BRG.nctsSA_GRN = doc.GetElementsByTagName("GuaRefNumGRNREF1")(0).InnerText
' Dim Betrag = doc.GetElementsByTagName("AmoConREF7")(0).InnerText
' If IsNumeric(Betrag) Then
' BRG.nctsSA_AbgabenBetrag = CDbl(Betrag)
' End If
' NCTS.ncts_SICHERHEITSANGABEN = New List(Of cNCTSPartnerWorker.cNCTS_TR_Sicherheitsangaben)
' NCTS.ncts_SICHERHEITSANGABEN.Add(BRG)
'End If
If If(NCTS.ncts_Status, 0) <= 5 Then NCTS.ncts_Status = DAKOSY_Worker.cDY_Statusliste.S_50
' If If(NCTS.ncts_Status_KEWILL_Equivalent, 0) <= 5 Then NCTS.ncts_Status_KEWILL_Equivalent = DAKOSY_Worker.cDY_Statusliste.S_05
NCTS.ncts_Status_KEWILL_Equivalent = NCTS.ncts_Status
If NCTS.SAVE_ALL() Then
' If If(NCTS.ncts_Status, 0) <= 5 Then DAKOSY_Worker.cDakosy_Statusmeldungen.InsertStatusMeldung(DY_TMP, DAKOSY_Worker.cDY_Statusliste.S_05,,,, statusTMP)
Else
readNCTS_BestaetigungZollXML_CC029B = ""
End If
Try
System.IO.File.Delete(p)
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
FORM.addDGVEinarbeitung("NCTS: BestätigungZoll", readNCTS_BestaetigungZollXML_CC029B)
End Using
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_BestaetigungZollXML_CC029B = ""
End Try
End Function
Public Shared Function readNCTS_ErledigungsmitteilungXML_CC045A(FORM As frmTRNCTS_NachrichtenVerarbeitung, doc As XmlDocument) As String
Try
readNCTS_ErledigungsmitteilungXML_CC045A = ""
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
If XmlString.Contains(""), XmlString.IndexOf("") + 9 - XmlString.IndexOf(""))
' MsgBox(xmlCC015B)
' Dim p = Path.GetTempFileName
Dim MRN = ""
If doc.GetElementsByTagName("DocNumHEA5").Count > 0 Then
MRN = doc.GetElementsByTagName("DocNumHEA5")(0).InnerText
End If
Dim TMSTMP As Date
If doc.GetElementsByTagName("WriOffDatHEA619").Count > 0 Then
'If IsDate(doc.GetElementsByTagName("WriOffDatHEA619")(0).InnerText) Then
' TMSTMP = CDate(doc.GetElementsByTagName("WriOffDatHEA619")(0).InnerText)
'End If
Try
TMSTMP = Date.ParseExact(doc.GetElementsByTagName("WriOffDatHEA619")(0).InnerText, "yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo)
Catch ex As Exception
End Try
Dim NCTS As cNCTSPartnerWorker.cNCTS_TR = cNCTSPartnerWorker.cNCTS_TR.LOADByMRN(MRN, True,, "MAVI")
If NCTS Is Nothing Then NCTS = New cNCTSPartnerWorker.cNCTS_TR
'NCTS.ncts_ObjectName = LRN
' NCTS.ncts_GUID = Guid
NCTS.ncts_MRN = MRN
NCTS.ncts_Erledigung = TMSTMP.ToShortDateString
NCTS.ncts_Partnersystem = "MAVI"
If If(NCTS.ncts_Status, 0) <= 60 Then NCTS.ncts_Status = DAKOSY_Worker.cDY_Statusliste.S_60
NCTS.ncts_Status_KEWILL_Equivalent = NCTS.ncts_Status
If NCTS.SAVE_ALL() Then
' If If(NCTS.ncts_Status, 0) <= 5 Then DAKOSY_Worker.cDakosy_Statusmeldungen.InsertStatusMeldung(DY_TMP, DAKOSY_Worker.cDY_Statusliste.S_05,,,, statusTMP)
Else
readNCTS_ErledigungsmitteilungXML_CC045A = ""
End If
'Try
' System.IO.File.Delete(p)
'Catch ex As Exception
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
'End Try
FORM.addDGVEinarbeitung("NCTS: Erledigungsmitteilung", readNCTS_ErledigungsmitteilungXML_CC045A)
' End Using
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_ErledigungsmitteilungXML_CC045A = ""
End Try
End Function
Public Shared Function readNCTS_BestaetigungZollXML_ARR_INF(FORM As frmTRNCTS_NachrichtenVerarbeitung, doc As XmlDocument) As String
Try
readNCTS_BestaetigungZollXML_ARR_INF = ""
Dim sw = New StringWriter()
Dim xw = New XmlTextWriter(sw)
doc.WriteTo(xw)
Dim XmlString = sw.ToString()
If XmlString.Contains(""), XmlString.IndexOf("") + 9 - XmlString.IndexOf(""))
' MsgBox(xmlCC015B)
' Dim p = Path.GetTempFileName
Dim GUID = ""
If doc.GetElementsByTagName("GUID").Count > 0 Then
GUID = doc.GetElementsByTagName("GUID")(0).InnerText
End If
Dim TMSTMP As Date
If doc.GetElementsByTagName("TMSTMP").Count > 0 Then
If IsDate(doc.GetElementsByTagName("TMSTMP")(0).InnerText) Then
TMSTMP = CDate(doc.GetElementsByTagName("TMSTMP")(0).InnerText)
End If
Dim AnsprechpTMP_Email = ""
Dim NCTS As cNCTSPartnerWorker.cNCTS_TR = cNCTSPartnerWorker.cNCTS_TR.LOADByGUID(GUID, True,, "MAVI")
If NCTS Is Nothing Then NCTS = New cNCTSPartnerWorker.cNCTS_TR
'NCTS.ncts_ObjectName = LRN
NCTS.ncts_GUID = GUID
NCTS.ncts_Partnersystem = "MAVI"
NCTS.ncts_Ankunft = TMSTMP.toshortdatestring
If If(NCTS.ncts_Status, 0) <= 53 Then NCTS.ncts_Status = DAKOSY_Worker.cDY_Statusliste.S_53
NCTS.ncts_Status_KEWILL_Equivalent = NCTS.ncts_Status
If NCTS.SAVE_ALL() Then
' If If(NCTS.ncts_Status, 0) <= 5 Then DAKOSY_Worker.cDakosy_Statusmeldungen.InsertStatusMeldung(DY_TMP, DAKOSY_Worker.cDY_Statusliste.S_05,,,, statusTMP)
Else
readNCTS_BestaetigungZollXML_ARR_INF = ""
End If
'Try
' System.IO.File.Delete(p)
'Catch ex As Exception
' VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
'End Try
FORM.addDGVEinarbeitung("NCTS: Ankunftsanzeige", readNCTS_BestaetigungZollXML_ARR_INF)
' End Using
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_BestaetigungZollXML_ARR_INF = ""
End Try
End Function
Shared Function getDatumXMLNothing(dateTmp) As Object
If dateTmp IsNot Nothing AndAlso dateTmp.ToString.Trim <> "" AndAlso IsDate(dateTmp) Then
Dim datum As Date = CDate(dateTmp).ToShortDateString()
If datum > CDate("01.01.2000") Then
Return datum
End If
End If
Return Nothing
End Function
Shared Function cutLength(s, length)
If s.length > 35 Then s = s.Substring(0, length)
Return s
End Function
'Shared Function saveDY_NCTS(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.cDakosyNCTSOut
' 'EINTRAG IN tblDakosyNCTSOut
' Dim NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut = Nothing
' NCTS_TMP = DAKOSY_Worker.cDakosyNCTSOut.LOADByBezugsNr(STATUS.dySt_BezugsNr.ToString, False)
' If NCTS_TMP Is Nothing Then
' NCTS_TMP = New DAKOSY_Worker.cDakosyNCTSOut
' NCTS_TMP.ncts_ObjectName = STATUS.dySt_BezugsNr
' If NCTS_TMP IsNot Nothing Then NCTS_TMP.ncts_dyaAnmID = DY_TMP.dy_Id
' If DAKOSY_Worker.cDakosy_Statusmeldungen.isNewestTransaktion(STATUS.dySt_BezugsNr, transID, transDate) Then
' NCTS_TMP.ncts_Status = DY_TMP.dy_Status 'weil der Status bereit überprüft wurde --> neuste TransaktionsID
' NCTS_TMP.ncts_Status_KEWILL_Equivalent = DY_TMP.dy_Status 'weil der Status bereit überprüft wurde --> neuste TransaktionsID
' End If
' 'NCTS_TMP.ncts_Status_KEWILL_Equivalent = STATUS.dySt_status
' If ANR <> "" Or MRN <> "" Then
' If ANR <> "" Then NCTS_TMP.ncts_ANR = ANR
' If MRN <> "" Then NCTS_TMP.ncts_MRN = MRN
' End If
' NCTS_TMP.SAVE()
' 'Eintragen
' Else
' 'Update
' NCTS_TMP.UPDATE_Status(DY_TMP.dy_Status) 'weil der Status bereit überprüft wurde --> neuste TransaktionsID
' If ANR <> "" Or MRN <> "" Then
' If ANR <> "" Then NCTS_TMP.ncts_ANR = ANR : NCTS_TMP.SAVE()
' If MRN <> "" Then NCTS_TMP.ncts_MRN = MRN : NCTS_TMP.SAVE()
' End If
' End If
' saveDY_NCTS = NCTS_TMP
'End Function
'Shared Sub SaveNCTS_FirmaNL(ByRef NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut, DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen, division As String)
' If division <> "" Then
' If (NCTS_TMP.ncts_firma Is Nothing OrElse NCTS_TMP.ncts_firma = "") Or (NCTS_TMP.ncts_niederlassung Is Nothing OrElse NCTS_TMP.ncts_niederlassung = "") Then
' Select Case division
' Case "SUW"
' NCTS_TMP.ncts_firma = "ATILLA"
' NCTS_TMP.ncts_niederlassung = "SUB"
' Case "SUB"
' NCTS_TMP.ncts_firma = "VERAG"
' NCTS_TMP.ncts_niederlassung = "SUB"
' Case "DUR"
' NCTS_TMP.ncts_firma = "ATILLA"
' NCTS_TMP.ncts_niederlassung = "SBG"
' Case "NKD"
' NCTS_TMP.ncts_firma = "VERAG"
' NCTS_TMP.ncts_niederlassung = "NKD"
' Case "WAI"
' NCTS_TMP.ncts_firma = "VERAG"
' NCTS_TMP.ncts_niederlassung = "WAI"
' Case "SBG"
' NCTS_TMP.ncts_firma = "VERAG"
' NCTS_TMP.ncts_niederlassung = "SBG"
' Case "IME"
' NCTS_TMP.ncts_firma = "IMEX"
' NCTS_TMP.ncts_niederlassung = "SUB"
' Case "GLO"
' NCTS_TMP.ncts_firma = "IMEX"
' NCTS_TMP.ncts_niederlassung = "GLO"
' Case "AMB"
' NCTS_TMP.ncts_firma = "AMBAR"
' NCTS_TMP.ncts_niederlassung = "AMBAR"
' Case "NEU"
' NCTS_TMP.ncts_firma = "VERAG"
' NCTS_TMP.ncts_niederlassung = "NEU"
' Case "ATSP", "ATSPED"
' NCTS_TMP.ncts_firma = "UNISPED"
' NCTS_TMP.ncts_niederlassung = "ATSP"
' End Select
' NCTS_TMP.SAVE()
' End If
' End If
' If DY_TMP.dy_AvisoId Is Nothing Then
' DY_TMP.tryFindAviso()
' DY_TMP.SAVE()
' End If
'End Sub
Shared Sub SaveNCTS_WGDAT(ByRef NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut, WGDAT As Object)
If WGDAT IsNot Nothing AndAlso IsDate(WGDAT) Then
NCTS_TMP.ncts_Wiedergestellungsdatum = CDate(WGDAT)
NCTS_TMP.SAVE()
End If
End Sub
End Class