14.08.2019
This commit is contained in:
@@ -17,6 +17,7 @@ Public Class cDakosy_Statusmeldungen
|
||||
Property dySt_ts As Date = Now
|
||||
Property dySt_ergDetails As Object = Nothing
|
||||
Property dySt_ergZoellner As Object = Nothing
|
||||
Property dySt_pfad As Object = Nothing
|
||||
|
||||
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
@@ -44,6 +45,7 @@ Public Class cDakosy_Statusmeldungen
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("dySt_ts", dySt_ts))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("dySt_ergDetails", dySt_ergDetails))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("dySt_ergZoellner", dySt_ergZoellner))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("dySt_pfad", dySt_pfad))
|
||||
Return list
|
||||
End Function
|
||||
|
||||
@@ -65,6 +67,7 @@ Public Class cDakosy_Statusmeldungen
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Shared Function LOADByDakosyTransaktionsID(dySt_DakosyTransaktionsID As String) As cDakosy_Statusmeldungen
|
||||
Try
|
||||
Dim STATUS As New cDakosy_Statusmeldungen
|
||||
@@ -113,6 +116,17 @@ Public Class cDakosy_Statusmeldungen
|
||||
Return id > 0
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Function updatePfad(pfad As String) As Boolean
|
||||
Me.dySt_pfad = pfad
|
||||
Return Me.SAVE
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Public Sub LOAD()
|
||||
Try
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
@@ -183,12 +197,11 @@ Public Class cDakosy_Statusmeldungen
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function InsertStatusMeldung(DY As cDakosy_Zollanmeldungen, dySt_status As Integer, Optional dySt_ergCode As String = "", Optional dySt_ergMitteilung As String = "", Optional dySt_ergZeitpunkt As Object = Nothing)
|
||||
Return InsertStatusMeldung(DY.dy_Id, DY.dy_BezugsNr, DY.dy_ART, dySt_status, dySt_ergCode, dySt_ergMitteilung, dySt_ergZeitpunkt)
|
||||
Shared Function InsertStatusMeldung(DY As cDakosy_Zollanmeldungen, dySt_status As Integer, Optional dySt_ergCode As String = "", Optional dySt_ergMitteilung As String = "", Optional dySt_ergZeitpunkt As Object = Nothing, Optional ByRef statusTMP As cDakosy_Statusmeldungen = Nothing)
|
||||
Return InsertStatusMeldung(DY.dy_Id, DY.dy_BezugsNr, DY.dy_ART, dySt_status, dySt_ergCode, dySt_ergMitteilung, dySt_ergZeitpunkt, statusTMP)
|
||||
End Function
|
||||
Shared Function InsertStatusMeldung(dySt_dyId As Integer, dySt_BezugsNr As String, dy_ART As String, dySt_status As Integer, Optional dySt_ergCode As String = "", Optional dySt_ergMitteilung As String = "", Optional dySt_ergZeitpunkt As Object = Nothing)
|
||||
Shared Function InsertStatusMeldung(dySt_dyId As Integer, dySt_BezugsNr As String, dy_ART As String, dySt_status As Integer, Optional dySt_ergCode As String = "", Optional dySt_ergMitteilung As String = "", Optional dySt_ergZeitpunkt As Object = Nothing, Optional ByRef statusTMP As cDakosy_Statusmeldungen = Nothing)
|
||||
Try
|
||||
|
||||
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = New DAKOSY_Worker.cDakosy_Statusmeldungen
|
||||
STATUS.dySt_BezugsNr = dySt_BezugsNr
|
||||
STATUS.dySt_artMitteilung = "VB"
|
||||
@@ -208,13 +221,14 @@ Public Class cDakosy_Statusmeldungen
|
||||
Case "NCTS"
|
||||
Dim NCTS As cDakosyNCTSOut = cDakosyNCTSOut.LOADByAnmIDFull(dySt_dyId, False)
|
||||
' cDakosyNCTSOut.UPDATE_StatusById(STATUS.dySt_status)
|
||||
If NCTS IsNot Nothing Then NCTS.UPDATE_STATUS(STATUS.dySt_status)
|
||||
If NCTS IsNot Nothing Then NCTS.UPDATE_Status(STATUS.dySt_status)
|
||||
Case "AES"
|
||||
Dim AES As cDakosyAES = cDakosyAES.LOADByAnmIDFull(dySt_dyId, False)
|
||||
' cDakosyNCTSOut.UPDATE_StatusById(STATUS.dySt_status)
|
||||
If AES IsNot Nothing Then AES.UPDATE_STATUS(STATUS.dySt_status)
|
||||
If AES IsNot Nothing Then AES.UPDATE_Status(STATUS.dySt_status)
|
||||
|
||||
End Select
|
||||
statusTMP = STATUS
|
||||
Return True
|
||||
|
||||
Catch ex As Exception
|
||||
|
||||
@@ -9,7 +9,7 @@ Public Class cWorker_NCTS
|
||||
|
||||
|
||||
|
||||
Public Shared Function readNCTS_VersandanmeldungXML(FORM As frmDYNachrichtenVerarbeitung, doc As XmlDocument) As String
|
||||
Public Shared Function readNCTS_VersandanmeldungXML(FORM As frmDYNachrichtenVerarbeitung, doc As XmlDocument, ByRef statusTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As String
|
||||
Try
|
||||
readNCTS_VersandanmeldungXML = ""
|
||||
Dim sw = New StringWriter()
|
||||
@@ -364,7 +364,7 @@ Public Class cWorker_NCTS
|
||||
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)
|
||||
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 = ""
|
||||
End If
|
||||
@@ -1403,7 +1403,7 @@ Public Class cWorker_NCTS
|
||||
|
||||
|
||||
|
||||
Shared Function readNCTS_Ueberlassungsmeldung(FORM As frmDYNachrichtenVerarbeitung, d As String) As String
|
||||
Shared Function readNCTS_Ueberlassungsmeldung(FORM As frmDYNachrichtenVerarbeitung, d As String, ByRef statusTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As String
|
||||
Try
|
||||
Dim NCTS As DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp = DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp.LoadFromFile(d)
|
||||
Dim MRN = ""
|
||||
@@ -1460,6 +1460,9 @@ Public Class cWorker_NCTS
|
||||
|
||||
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
|
||||
STATUS.SAVE()
|
||||
statusTMP = STATUS
|
||||
copyFileFTP(NCTS_TMP, DY_TMP)
|
||||
|
||||
'If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then NCTS_TMP.insertIntoSpedBuch(DY_TMP)
|
||||
|
||||
|
||||
@@ -1679,7 +1682,7 @@ Public Class cWorker_NCTS
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function readNCTS_Ueberlassungsmeldung005(FORM As frmDYNachrichtenVerarbeitung, d As String) As String
|
||||
Shared Function readNCTS_Ueberlassungsmeldung005(FORM As frmDYNachrichtenVerarbeitung, d As String, ByRef statusTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As String
|
||||
Try
|
||||
' Dim NCTS As DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp = DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp.LoadFromFile(d)
|
||||
Dim NCTS As DAKOSY_Worker.UeberlassungsmeldungNCTSDE_005.UeberlassungsmeldungMRTyp = DAKOSY_Worker.UeberlassungsmeldungNCTSDE_005.UeberlassungsmeldungMRTyp.LoadFromFile(d)
|
||||
@@ -1737,6 +1740,8 @@ Public Class cWorker_NCTS
|
||||
|
||||
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
|
||||
STATUS.SAVE()
|
||||
statusTMP = STATUS
|
||||
copyFileFTP(NCTS_TMP, DY_TMP)
|
||||
' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then
|
||||
|
||||
NCTS_TMP.insertIntoSpedBuch(DY_TMP)
|
||||
@@ -1752,7 +1757,7 @@ Public Class cWorker_NCTS
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function readNCTS_Ueberlassungsmeldung006(FORM As frmDYNachrichtenVerarbeitung, d As String) As String
|
||||
Shared Function readNCTS_Ueberlassungsmeldung006(FORM As frmDYNachrichtenVerarbeitung, d As String, ByRef statusTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As String
|
||||
Try
|
||||
' Dim NCTS As DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp = DAKOSY_Worker.UeberlassungsmeldungNCTSDE.UeberlassungsmeldungMRTyp.LoadFromFile(d)
|
||||
Dim NCTS As DAKOSY_Worker.UeberlassungsmeldungNCTSDE_006.UeberlassungsmeldungMRTyp = DAKOSY_Worker.UeberlassungsmeldungNCTSDE_006.UeberlassungsmeldungMRTyp.LoadFromFile(d)
|
||||
@@ -1810,6 +1815,8 @@ Public Class cWorker_NCTS
|
||||
|
||||
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
|
||||
STATUS.SAVE()
|
||||
statusTMP = STATUS
|
||||
copyFileFTP(NCTS_TMP, DY_TMP)
|
||||
' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then
|
||||
|
||||
NCTS_TMP.insertIntoSpedBuch(DY_TMP)
|
||||
@@ -1824,8 +1831,44 @@ Public Class cWorker_NCTS
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function copyFileFTP(NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut, DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen) ', filePath As String)
|
||||
Try
|
||||
If NCTS_TMP Is Nothing Then Return False
|
||||
If NCTS_TMP.ncts_ObjectName Is Nothing Then Return False
|
||||
If NCTS_TMP.ncts_ObjectName.ToString.StartsWith("DU") Then Return False
|
||||
If NCTS_TMP.ncts_firma.ToString = "DURMAZ" Then Return False
|
||||
|
||||
Dim filePath = SQL.getValueTxtBySql("select [dySt_pfad] from [tblDakosy_Statusmeldungen] where dySt_BezugsNr='" & NCTS_TMP.ncts_ObjectName & "' and [dySt_status]=5 and [dySt_pfad] is not null ", "FMZOLL")
|
||||
If filePath = "" Then Return False
|
||||
|
||||
NCTS_TMP.LOAD_Sicherheitsangaben()
|
||||
If NCTS_TMP.ncts_SICHERHEITSANGABEN IsNot Nothing AndAlso NCTS_TMP.ncts_SICHERHEITSANGABEN.Count > 0 Then
|
||||
Dim GRN = NCTS_TMP.ncts_SICHERHEITSANGABEN(0).nctsSA_GRN
|
||||
Dim destFile = ""
|
||||
Select Case GRN
|
||||
' --> FTP Bereitstellung
|
||||
'\\192.168.0.91\Datenarchiv\DAKOSY\ECHTSYSTEM\FTP\TOBB
|
||||
Case "15TR0004000020917", "12TR0004000004665", "17TR0004000032349"
|
||||
frmStartOptions.copyFile(filePath, "\\ftps.verag.ag\FTP\TOBB\OUT\", destFile)
|
||||
If IO.File.Exists(destFile) Then insertFTPLOG(destFile, "TOBB") Else VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Datei existiert nicht: " & destFile & vbNewLine & NCTS_TMP.ncts_ObjectName, "", "copyFileFTP")
|
||||
Case "18DE0000000073276", "19DE0000000075520", "18DE0000000075520"
|
||||
frmStartOptions.copyFile(filePath, "\\ftps.verag.ag\FTP\OREGON\OUT\", destFile)
|
||||
If IO.File.Exists(destFile) Then insertFTPLOG(destFile, "OREGON") Else VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Datei existiert nicht: " & destFile & vbNewLine & NCTS_TMP.ncts_ObjectName, "", "copyFileFTP")
|
||||
Case "17DE0000000071678", "05AT510000G000FP7" 'VERAG
|
||||
frmStartOptions.copyFile(filePath, "\\192.168.0.91\Datenarchiv\DAKOSY\ECHTSYSTEM\FTP\VERAG\", destFile)
|
||||
If IO.File.Exists(destFile) Then insertFTPLOG(destFile, "VERAG") Else VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Datei existiert nicht: " & destFile & vbNewLine & NCTS_TMP.ncts_ObjectName, "", "copyFileFTP")
|
||||
End Select
|
||||
End If
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
Return False
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Shared Function insertFTPLOG(filePath, user)
|
||||
Return SQL.doSQL("INSERT INTO tblFTP_Log (ftp_filepath,ftp_user) VALUES ('" & filePath & "','" & user & "')", "FMZOLL")
|
||||
End Function
|
||||
|
||||
Shared Sub SaveNCTS_WGDAT(ByRef NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut, WGDAT As Object)
|
||||
|
||||
|
||||
@@ -193,6 +193,8 @@ Public Class frmDYNachrichtenVerarbeitung
|
||||
cWorker_NCTS.Dateiname = d
|
||||
If IO.File.Exists(d) Then
|
||||
Dim found = False
|
||||
Dim statusTMP As DAKOSY_Worker.cDakosy_Statusmeldungen = Nothing
|
||||
|
||||
Dim fi As FileInfo = New FileInfo(d)
|
||||
|
||||
' EDIFACT
|
||||
@@ -260,7 +262,7 @@ Public Class frmDYNachrichtenVerarbeitung
|
||||
|
||||
'NCTS: Versandanmeldung
|
||||
If Not found AndAlso cGetMsgType.isNCTS_VersandanmeldungXML(doc) Then
|
||||
If cWorker_NCTS.readNCTS_VersandanmeldungXML(Me, doc) <> "" Then found = True
|
||||
If cWorker_NCTS.readNCTS_VersandanmeldungXML(Me, doc, statusTMP) <> "" Then found = True
|
||||
End If
|
||||
|
||||
'NCTS: Ankunftsanzeige
|
||||
@@ -277,9 +279,9 @@ Public Class frmDYNachrichtenVerarbeitung
|
||||
'NCTS: Ueberlassungsmeldung
|
||||
If Not found And cGetMsgType.isNCTS_Ueberlassungsmeldung(doc, VERSION) Then
|
||||
Select Case VERSION
|
||||
Case "006" : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung006(Me, d) <> "" Then found = True ': MsgBox("005!")
|
||||
Case "005" : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung005(Me, d) <> "" Then found = True ': MsgBox("005!")
|
||||
Case Else : If cWorker_NCTS.readNCTS_Ueberlassungsmeldung(Me, d) <> "" Then found = True
|
||||
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
|
||||
End Select
|
||||
End If
|
||||
|
||||
@@ -486,8 +488,14 @@ Public Class frmDYNachrichtenVerarbeitung
|
||||
If True Then
|
||||
If Not alreadyMoved Then
|
||||
If found Then
|
||||
If Not IO.Directory.Exists(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||
frmStartOptions.moveFile(d, ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
|
||||
Dim dest = ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\"
|
||||
If Not IO.Directory.Exists(dest) Then IO.Directory.CreateDirectory(dest)
|
||||
Dim destFile = ""
|
||||
If frmStartOptions.moveFile(d, dest, destFile) Then ' dest: Filename wird angefügt
|
||||
If statusTMP IsNot Nothing Then
|
||||
statusTMP.updatePfad(destFile)
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
frmStartOptions.moveFile(d, ERROR_PFAD)
|
||||
End If
|
||||
|
||||
@@ -489,11 +489,13 @@ Public Class frmStartOptions
|
||||
Public Function copyFile(file, toDirectory, Optional ByRef dest = "")
|
||||
If Not IO.File.Exists(file) Then Return False
|
||||
If Not IO.Directory.Exists(toDirectory) Then IO.Directory.CreateDirectory(toDirectory)
|
||||
dest = toDirectory & cut_file(file)
|
||||
dest = toDirectory & ".tmp_" & cut_file(file)
|
||||
If IO.File.Exists(dest) Then
|
||||
dest = toDirectory & Now.ToString("yyMMdd_HHmmss.fff_") & cut_file(file)
|
||||
dest = toDirectory & ".tmp_" & Now.ToString("yyMMdd_HHmmss.fff_") & cut_file(file)
|
||||
End If
|
||||
IO.File.Copy(file, dest) ' Verschiebt die Datei
|
||||
IO.File.Move(dest, dest.ToString.Replace(".tmp_", "")) ' Umbenennen der Datei --> der "." am Anfang dient dazu, dass die Datei nicht abgegriffen wird, während sie kopiert wird!
|
||||
dest = dest.ToString.Replace(".tmp_", "")
|
||||
Return True
|
||||
|
||||
End Function
|
||||
|
||||
Reference in New Issue
Block a user