278 lines
12 KiB
VB.net
278 lines
12 KiB
VB.net
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("<CC015B") Then
|
|
' Dim xmlCC015B = XmlString.Substring(XmlString.IndexOf("<CC015B>"), XmlString.IndexOf("</CC015B>") + 9 - XmlString.IndexOf("<CC015B>"))
|
|
' 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)
|
|
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_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("<CC029B>") Then
|
|
Dim xmlCC029B = XmlString.Substring(XmlString.IndexOf("<CC029B>"), XmlString.IndexOf("</CC029B>") + 9 - XmlString.IndexOf("<CC029B>"))
|
|
' MsgBox(xmlCC029B)
|
|
Dim p = Path.GetTempFileName
|
|
|
|
Dim LRN = ""
|
|
If doc.GetElementsByTagName("RefNumHEA4").Count > 0 Then
|
|
LRN = doc.GetElementsByTagName("RefNumHEA4")(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(LRN, True)
|
|
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_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
|
|
|
|
|
|
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
|