Div. Dakosy Nachrichten

This commit is contained in:
2024-01-02 11:30:18 +01:00
parent 7b639ea564
commit 52feeaa603
11 changed files with 3237 additions and 1214 deletions

View File

@@ -1,5 +1,6 @@
'------------------------------------------------------------------------------
' <auto-generated>
' <auto-
' ated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'

View File

@@ -549,6 +549,18 @@ Public Class cGetMsgType
Return False
End Function
Shared Function isNCTS_QuittungEingangsverarbeitung(doc As XmlDocument, ByRef version As String) As Boolean
If doc.HasChildNodes Then
If doc.GetElementsByTagName("QuittungEingangsverarbeitung").Count > 0 Then
If doc.GetElementsByTagName("Version").Count > 0 Then
version = doc.GetElementsByTagName("Version")(0).InnerText
End If
Return True
End If
End If
Return False
End Function
Shared Function isVERAG_KD(doc As XmlDocument) As Boolean
If doc.HasChildNodes Then
If doc.GetElementsByTagName("VERAG_Kundenstamm_IMPORT").Count > 0 Then

View File

@@ -3773,30 +3773,39 @@ Public Class cWorker_NCTS
Wiedergestellungsdatum = NCTS.EinzelUeberlassungsmeldung.KopfDaten.Wiedergestellungsdatum
' bearbeiter=NCTS.EinzelUeberlassungsmeldung.KopfDaten.
If NCTS.EinzelUeberlassungsmeldung.TransitOperation IsNot Nothing Then
If NCTS.EinzelUeberlassungsmeldung.TransitOperation.AdditionalInformation IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.TransitOperation.ApplicationInternalData.AdditionalDetails IsNot Nothing Then
For Each a In NCTS.EinzelUeberlassungsmeldung.TransitOperation.ApplicationInternalData.AdditionalDetails
If a.Key = "LimitDate" Then
Wiedergestellungsdatum = DateTime.ParseExact(a.Value, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture)
End If
Next
End If
End If
'Verschluesse
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse IsNot Nothing Then
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl > 0 Then
Verschluss_Art = NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Art
Verschluss_Anzahl = NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen IsNot Nothing Then
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen.Count > 0 Then
For Each z In NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen
Verschluss_Zeichen.Add(z)
Next
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl > 0 Then
Verschluss_Art = NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Art
Verschluss_Anzahl = NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Anzahl
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen IsNot Nothing Then
If NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen.Count > 0 Then
For Each z In NCTS.EinzelUeberlassungsmeldung.KopfDaten.Verschluesse.Zeichen
Verschluss_Zeichen.Add(z)
Next
End If
End If
End If
End If
End If
End If
End If
End If
' NCTS.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
@@ -3917,6 +3926,21 @@ Public Class cWorker_NCTS
' End If
End If
End Sub
Shared Sub checkATEZ_BereitstellungBezugsNr(dy_BezugsNr As String, filePath As String)
If dy_BezugsNr = "" Then Exit Sub
Dim ATEZ = VERAG_PROG_ALLGEMEIN.cATEZ_NCTS_DATA.LOAD_ByBezugsNr(dy_BezugsNr)
If (dy_BezugsNr.Contains("ATEZ") Or dy_BezugsNr.Contains("PLH")) OrElse (ATEZ IsNot Nothing AndAlso ATEZ.hasEntry) Then
' If ATEZ.status IsNot Nothing Then
'If ATEZ.status < 40 Then
Dim fio As New IO.FileInfo(filePath)
FileCopy(filePath, "\\ftps.verag.ag\FTP\ATEZ\OUT\" & fio.Name.Replace("lock_", ""))
'End If
' End If
End If
End Sub
Shared Sub checkATEZ_Bereitstellung_VBD(dy_BezugsNr As String, filePath As String)
'If DY_TMP Is Nothing Then Exit Sub
Dim ATEZ = VERAG_PROG_ALLGEMEIN.cATEZ_NCTS_DATA.LOAD_ByBezugsNr(dy_BezugsNr)

View File

@@ -6,6 +6,8 @@ Imports System.Net.Mail
Imports GrapeCity.Enterprise.Data.DataEngine.DataProcessing
Imports DocumentFormat.OpenXml.Wordprocessing
Imports DAKOSY_Worker
Imports Renci.SshNet.Messages
Imports System.Windows.Forms.VisualStyles.VisualStyleElement
Public Class frmDYNachrichtenVerarbeitung
Dim cntDatenEingelesen As Integer = 0
@@ -602,6 +604,15 @@ Public Class frmDYNachrichtenVerarbeitung
End If
'SONDERFALL: Betrifft div. Arten von Anmeldungen: QuittungEingangsverarbeitung
If Not found And cGetMsgType.isNCTS_QuittungEingangsverarbeitung(doc, VERSION) Then
Select Case VERSION
Case "005" : If readNCTS_QuittungEingangsverarbeitung_005(d, statusTMP) Then found = True
' Case Else : If readNCTS_GenerellesEreignis(d) Then found = True
End Select
End If
'------------------------------------------------------------------------------------------------------------------------------
@@ -647,7 +658,10 @@ Public Class frmDYNachrichtenVerarbeitung
End If
End If
Else
frmStartOptions.moveFile(d, ERROR_PFAD)
Dim destErr = ERROR_PFAD & Now.ToString("yyyy_MM") & "\"
If Not IO.Directory.Exists(destErr) Then IO.Directory.CreateDirectory(destErr)
frmStartOptions.moveFile(d, destErr)
End If
End If
@@ -1146,6 +1160,109 @@ Public Class frmDYNachrichtenVerarbeitung
End Try
End Function
Function readNCTS_QuittungEingangsverarbeitung_005(d As String, ByRef STATUSTMP As DAKOSY_Worker.cDakosy_Statusmeldungen) As Boolean
Try
Dim NCTS As DAKOSY_Worker.QuittungEingangsverarbeitung_005.QuittungEingangsverarbeitungBQTyp = DAKOSY_Worker.QuittungEingangsverarbeitung_005.QuittungEingangsverarbeitungBQTyp.LoadFromFile(d)
Dim division = ""
Dim BezugsNr = ""
readNCTS_QuittungEingangsverarbeitung_005 = False
If NCTS IsNot Nothing Then
If NCTS.Transaktion IsNot Nothing Then
If NCTS.Transaktion.IODivision3 IsNot Nothing Then
division = NCTS.Transaktion.IODivision3
End If
End If
If NCTS.EinzelQuittung IsNot Nothing Then
For Each ge In NCTS.EinzelQuittung
If ge.Quittungsobjekt IsNot Nothing Then
If ge.Quittungsobjekt.QuittungTech IsNot Nothing Then
If ge.Quittungsobjekt.QuittungTech(0).BezugsObjekt IsNot Nothing Then
' ListBox4.Items.Add(ge.ObjektIdentifizierung.ObjektName)
Dim STATUS2 As DAKOSY_Worker.cDakosy_Statusmeldungen = getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
STATUS2.dySt_artMitteilung = "QUITT"
STATUS2.dySt_dyArt = "" '"NCTS" 'T1/T2
STATUS2.dySt_BezugsNr = ge.Quittungsobjekt.QuittungTech(0).BezugsObjekt
BezugsNr = ge.Quittungsobjekt.QuittungTech(0).BezugsObjekt
STATUS2.dySt_ergCode = "" 'erg.EreignisCode
STATUS2.dySt_ergMitteilung = "" 'erg.Ereignismitteilung
If ge.Quittungsobjekt.QuittungTech(0).ErgebnisTech.Contains("OKAY") Then
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_04
ElseIf ge.Quittungsobjekt.QuittungTech(0).ErgebnisTech.Contains("INFO") Then
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_08
Else
STATUS2.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_98
End If
readNCTS_QuittungEingangsverarbeitung_005 = True
Select Case getVerahrensartFromBezugsNr(ge.Quittungsobjekt.QuittungTech(0).BezugsObjekt)
Case "NCTS"
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "NCTS")
Dim NCTS_TMP2 As DAKOSY_Worker.cDakosyNCTSOut = cWorker_NCTS.saveDY_NCTS(STATUS2, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
If DY_TMP2 IsNot Nothing Then STATUS2.dySt_dyId = DY_TMP2.dy_Id
cWorker_NCTS.SaveNCTS_FirmaNL(NCTS_TMP2, DY_TMP2, division)
STATUS2.dySt_dyArt = getVerahrensartFromBezugsNr(ge.Quittungsobjekt.QuittungTech(0).BezugsObjekt)
Case "EZA", ""
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "EZA")
Dim EZA_TMP As DAKOSY_Worker.cDakosyEZA = saveDY_EZA(STATUS2, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
If DY_TMP2 IsNot Nothing Then STATUS2.dySt_dyId = DY_TMP2.dy_Id
SaveEZA_FirmaNL(EZA_TMP, DY_TMP2, division)
STATUS2.dySt_dyArt = "EZA"
Case "AES"
Dim DY_TMP2 As DAKOSY_Worker.cDakosy_Zollanmeldungen = saveDY_ZA(STATUS2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "AES")
Dim AES_TMP As DAKOSY_Worker.cDakosyAES = saveDY_AES(STATUS2, DY_TMP2, NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit, "", "")
If DY_TMP2 IsNot Nothing Then STATUS2.dySt_dyId = DY_TMP2.dy_Id
SaveAES_FirmaNL(AES_TMP, division)
STATUS2.dySt_dyArt = "AES"
End Select
STATUS2.SAVE()
STATUSTMP = STATUS2
addDGVEinarbeitung("** QuittungEingangsverarbeitung **", BezugsNr)
End If
End If
If ge.Quittungsobjekt.QuittungFach IsNot Nothing Then
If ge.Quittungsobjekt.QuittungFach(0).BezugsObjektFach IsNot Nothing Then
End If
End If
'=====ATEZ BEREITSTELLUNG==========
cWorker_NCTS.checkATEZ_BereitstellungBezugsNr(BezugsNr, d)
'==================================
End If
Next
End If
End If
' NCTS.LOADByBezugsNr(bezugsNr, False) ' Falls schon ein DS mit dieser Bezugsnummer vorhanden ist.
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
readNCTS_QuittungEingangsverarbeitung_005 = False
End Try
End Function
Function saveDY_AES(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.cDakosyAES
'EINTRAG IN tblDakosyAESOut

View File

@@ -805,9 +805,6 @@ Public Class frmStartOptions
Dim cStandort = cStandorteDAL.LesenStandort(-1, "", "SELECT * FROM Standorte WHERE Standort = '" & Standort & "'")
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(SND.FilialenNr)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
'VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("!!!!!!!!!!!!!!!!!!!!!!!!!: " & Standort & vbNewLine & cStandort.eMail_Zollbeleg_Betreff & vbNewLine & cStandort.eMail_Zollbeleg_Text, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Dim betreff = cStandort.eMail_Zollbeleg_Betreff '"Zollbeleg"
@@ -876,7 +873,14 @@ Public Class frmStartOptions
' EMails_BCC = "al@verag.ag"
'Else
' EMails_BCC &= ";al@verag.ag"
''End If
''!!!!!!!!!!!!!!!!!!!!!!!!!!
'If KundenNr = 706113 Then
' EMails = "al@verag.ag"
' EMails_CC = ""
' EMails_BCC = ""
'End If
''!!!!!!!!!!!!!!!!!!!!!!!!!!
Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_OUT_BELEGMAIL, art,,, KundenNr, SND.tblSnd_AvisoID, SND.tblSnd_SendungID, SND.FilialenNr, SND.AbfertigungsNr)
@@ -888,10 +892,13 @@ Public Class frmStartOptions
API.api_EMailText = body
API.api_EMailAttCnt = pfadList.Count
betreff = betreff.Replace(vbNewLine, "").Replace(vbCr, "").Replace(vbLf, "").Replace(vbCrLf, "").Replace(System.Environment.NewLine, " ")
Select Case art
Case "STB"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Abgabenbescheid " & BezugsNr)
If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList) Then
API.UPDTAE_OK()
@@ -2237,7 +2244,7 @@ Public Class frmStartOptions
IO.File.Move(file, dest) ' Verschiebt die Datei
Return True
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & file, System.Reflection.MethodInfo.GetCurrentMethod.Name)
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & file & vbNewLine & "DestPfad: " & toDirectory, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return False
End Function