fix2 (Verwahrung)

This commit is contained in:
2026-03-17 11:55:07 +01:00
parent e52499338d
commit 36893a9e2b
2 changed files with 115 additions and 84 deletions

View File

@@ -4108,95 +4108,95 @@ Public Class cWorker_NCTS
If readNCTS_Ueberlassungsmeldung009 <> "" And MRN <> "" Then 'BEZUGSNR vorhanden If readNCTS_Ueberlassungsmeldung009 <> "" And MRN <> "" Then 'BEZUGSNR vorhanden
Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit) Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit)
STATUS.dySt_BezugsNr = readNCTS_Ueberlassungsmeldung009 STATUS.dySt_BezugsNr = readNCTS_Ueberlassungsmeldung009
STATUS.dySt_artMitteilung = "UEM" STATUS.dySt_artMitteilung = "UEM"
STATUS.dySt_dyArt = "" '"NCTS" 'T1/T2 STATUS.dySt_dyArt = "" '"NCTS" 'T1/T2
STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_50 STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_50
STATUS.dySt_ergCode = "MRN" STATUS.dySt_ergCode = "MRN"
STATUS.dySt_ergMitteilung = MRN STATUS.dySt_ergMitteilung = MRN
STATUS.dySt_ergZeitpunkt = zp STATUS.dySt_ergZeitpunkt = zp
'EINTRAG IN tblDakosy_Zollanmeldungen '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") Dim DY_TMP As DAKOSY_Worker.cDakosy_Zollanmeldungen = FORM.saveDY_ZA(STATUS, NCTS.Transaktion.IOReferenz, If(zp, NCTS.Transaktion.IODatumZeit), "NCTS")
Dim NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut004 = saveDY_NCTS004(STATUS, DY_TMP, NCTS.Transaktion.IOReferenz, If(zp, NCTS.Transaktion.IODatumZeit), , MRN, True) Dim NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut004 = saveDY_NCTS004(STATUS, DY_TMP, NCTS.Transaktion.IOReferenz, If(zp, NCTS.Transaktion.IODatumZeit), , MRN, True)
NCTS_TMP.ncts_Eroeffnung = zp NCTS_TMP.ncts_Eroeffnung = zp
NCTS_TMP.SAVE() NCTS_TMP.SAVE()
'------------------------------------------------------------------------------------------------------------------------------ '------------------------------------------------------------------------------------------------------------------------------
'GARANTIE ÜBERSCHREIBEN: 'GARANTIE ÜBERSCHREIBEN:
'If NCTS.EinzelUeberlassungsmeldung.TransitOperation IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee.Count > 0 Then 'If NCTS.EinzelUeberlassungsmeldung.TransitOperation IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee IsNot Nothing AndAlso NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee.Count > 0 Then
' NCTS_TMP.ncts_GUARANTEE.Clear() ' NCTS_TMP.ncts_GUARANTEE.Clear()
' For Each GRT_M In NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee ' For Each GRT_M In NCTS.EinzelUeberlassungsmeldung.TransitOperation.Guarantee
' For Each GRT In GRT_M.GuaranteeReference ' For Each GRT In GRT_M.GuaranteeReference
' Dim NCTS_GRT As New DAKOSY_Worker.cDakosy_NCTSOut004_Guarantee ' Dim NCTS_GRT As New DAKOSY_Worker.cDakosy_NCTSOut004_Guarantee
' NCTS_GRT.nctsGRT_Type = GRT_M.GuaranteeType ' NCTS_GRT.nctsGRT_Type = GRT_M.GuaranteeType
' NCTS_GRT.nctsGRT_OtherGuaranteeReference = GRT_M.OtherGuaranteeReference ' NCTS_GRT.nctsGRT_OtherGuaranteeReference = GRT_M.OtherGuaranteeReference
' NCTS_GRT.nctsGRT_AmountToBeCovered = GRT.AmountToBeCovered ' NCTS_GRT.nctsGRT_AmountToBeCovered = GRT.AmountToBeCovered
' 'NCTS_GRT.nctsGRT_AccessCode = GRT.accessCode ' 'NCTS_GRT.nctsGRT_AccessCode = GRT.accessCode
' NCTS_GRT.nctsGRT_GRN = GRT.GRN ' NCTS_GRT.nctsGRT_GRN = GRT.GRN
' NCTS_GRT.nctsGRT_Currency = GRT.Currency ' NCTS_GRT.nctsGRT_Currency = GRT.Currency
' NCTS_TMP.ncts_GUARANTEE.Add(NCTS_GRT) ' NCTS_TMP.ncts_GUARANTEE.Add(NCTS_GRT)
' Next ' Next
' Next ' Next
' NCTS_TMP.SAVE_Guarantee() ' NCTS_TMP.SAVE_Guarantee()
'End If 'End If
'------------------------------------------------------------------------------------------------------------------------------ '------------------------------------------------------------------------------------------------------------------------------
'For Each TE In NCTS_TMP.ncts_TRANSPORTEQUIPMENT 'For Each TE In NCTS_TMP.ncts_TRANSPORTEQUIPMENT
' If TE.nctsTE_NumberOfSeals > 0 Then ' If TE.nctsTE_NumberOfSeals > 0 Then
' End If ' End If
'Next 'Next
'If Verschluss_Anzahl > 0 Then 'If Verschluss_Anzahl > 0 Then
' NCTS_TMP.ncts_Verschluss_Anzahl = Verschluss_Anzahl ' NCTS_TMP.ncts_Verschluss_Anzahl = Verschluss_Anzahl
' NCTS_TMP.ncts_Verschluss_ArtCode = Verschluss_Art ' NCTS_TMP.ncts_Verschluss_ArtCode = Verschluss_Art
' NCTS_TMP.ncts_Verschluss_Zeichen1 = If(Verschluss_Zeichen.Count > 0, Verschluss_Zeichen(0), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen1 = If(Verschluss_Zeichen.Count > 0, Verschluss_Zeichen(0), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen2 = If(Verschluss_Zeichen.Count > 1, Verschluss_Zeichen(1), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen2 = If(Verschluss_Zeichen.Count > 1, Verschluss_Zeichen(1), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen3 = If(Verschluss_Zeichen.Count > 2, Verschluss_Zeichen(2), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen3 = If(Verschluss_Zeichen.Count > 2, Verschluss_Zeichen(2), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen4 = If(Verschluss_Zeichen.Count > 3, Verschluss_Zeichen(3), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen4 = If(Verschluss_Zeichen.Count > 3, Verschluss_Zeichen(3), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen5 = If(Verschluss_Zeichen.Count > 4, Verschluss_Zeichen(4), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen5 = If(Verschluss_Zeichen.Count > 4, Verschluss_Zeichen(4), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen6 = If(Verschluss_Zeichen.Count > 5, Verschluss_Zeichen(5), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen6 = If(Verschluss_Zeichen.Count > 5, Verschluss_Zeichen(5), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen7 = If(Verschluss_Zeichen.Count > 6, Verschluss_Zeichen(6), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen7 = If(Verschluss_Zeichen.Count > 6, Verschluss_Zeichen(6), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen8 = If(Verschluss_Zeichen.Count > 7, Verschluss_Zeichen(7), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen8 = If(Verschluss_Zeichen.Count > 7, Verschluss_Zeichen(7), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen9 = If(Verschluss_Zeichen.Count > 8, Verschluss_Zeichen(8), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen9 = If(Verschluss_Zeichen.Count > 8, Verschluss_Zeichen(8), Nothing)
' NCTS_TMP.ncts_Verschluss_Zeichen10 = If(Verschluss_Zeichen.Count > 9, Verschluss_Zeichen(9), Nothing) ' NCTS_TMP.ncts_Verschluss_Zeichen10 = If(Verschluss_Zeichen.Count > 9, Verschluss_Zeichen(9), Nothing)
' NCTS_TMP.SAVE() ' NCTS_TMP.SAVE()
'End If 'End If
SaveNCTS004_FirmaNL(NCTS_TMP, DY_TMP, division) SaveNCTS004_FirmaNL(NCTS_TMP, DY_TMP, division)
SaveNCTS004_WGDAT(NCTS_TMP, Wiedergestellungsdatum) SaveNCTS004_WGDAT(NCTS_TMP, Wiedergestellungsdatum)
If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id
STATUS.SAVE() STATUS.SAVE()
statusTMP = STATUS statusTMP = STATUS
cVERAG_out_ncts.copyFileFTP_VERAGncts004_DY(NCTS_TMP, DY_TMP) 'VERAG SCHNITTSTELLE cVERAG_out_ncts.copyFileFTP_VERAGncts004_DY(NCTS_TMP, DY_TMP) 'VERAG SCHNITTSTELLE
' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then ' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then
NCTS_TMP.insertIntoSpedBuch(DY_TMP) NCTS_TMP.insertIntoSpedBuch(DY_TMP)
'=====ATEZ BEREITSTELLUNG========== '=====ATEZ BEREITSTELLUNG==========
checkATEZ_Bereitstellung(DY_TMP, d) checkATEZ_Bereitstellung(DY_TMP, d)
'================================== '==================================
'=====ATEZ BEREITSTELLUNG========== '=====ATEZ BEREITSTELLUNG==========
checkATEZ_BereitstellungDHUB(DY_TMP, d) checkATEZ_BereitstellungDHUB(DY_TMP, d)
'================================== '==================================
'=====ATEZ IRU BEREITSTELLUNG========== '=====ATEZ IRU BEREITSTELLUNG==========
checkATEZIRU_Bereitstellung(DY_TMP, d) checkATEZIRU_Bereitstellung(DY_TMP, d)
'================================== '==================================
FORM.addDGVEinarbeitung("NCTS: Überlassungsmeldung", STATUS.dySt_BezugsNr) FORM.addDGVEinarbeitung("NCTS: Überlassungsmeldung", STATUS.dySt_BezugsNr)
End If End If
End If End If
Catch ex As Exception Catch ex As Exception
@@ -4683,7 +4683,8 @@ Public Class cWorker_NCTS
Dim gs_row As DataRow = dtGesamtsicherheit.Rows(0) Dim gs_row As DataRow = dtGesamtsicherheit.Rows(0)
Dim rows = dtGesamtsicherheit.Select("gsp_gspPosId = " & gs_row("gs_posNr") & " AND gsp_MRNNr IS NOT NULL") 'Dim rows = dtGesamtsicherheit.Select("gsp_gspPosId = " & gs_row("gs_posNr") & " AND gsp_MRNNr IS NOT NULL")
Dim rows = dtGesamtsicherheit.Select("gsp_gspPosId = " & gs_row("gs_posNr") & " AND isnull(gsp_MRNNr,'') <> ''")
If rows.Length > 0 Then If rows.Length > 0 Then
Exit Sub 'bereits vorhanden -> keine INFO Exit Sub 'bereits vorhanden -> keine INFO
@@ -4698,24 +4699,40 @@ Public Class cWorker_NCTS
'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten! 'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten!
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
Dim dtVorpapiere As DataTable = SQL.loadDgvBySql("SELECT tblSnd_Warenwert,tblSnd_WarenwertWaehrung,tblSnd_Vorpapier_Pos,tblSnd_Vorpapier2_Pos, tblSnd_Vorpapier3_Pos from tblSendungen where tblSnd_Vorpapier = '" & gs_row("gs_ATBNr") & "' Or tblSnd_Vorpapier2 = '" & gs_row("gs_ATBNr") & "' OR tblSnd_Vorpapier3 = '" & gs_row("gs_ATBNr") & "'", "AVISO") Dim dtVorpapiere As DataTable = SQL.loadDgvBySql("SELECT tblSnd_Warenwert,tblSnd_WarenwertWaehrung,replace(tblSnd_Vorpapier_Pos,'+',',') as tblSnd_Vorpapier_Pos,replace(tblSnd_Vorpapier2_Pos,'+',',') as tblSnd_Vorpapier2_Pos, replace(tblSnd_Vorpapier3_Pos,'+',',') as tblSnd_Vorpapier3_Pos from tblSendungen where tblSnd_Vorpapier = '" & gs_row("gs_ATBNr") & "' Or tblSnd_Vorpapier2 = '" & gs_row("gs_ATBNr") & "' OR tblSnd_Vorpapier3 = '" & gs_row("gs_ATBNr") & "'", "AVISO")
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = testlauf VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = testlauf
If dtVorpapiere.Rows.Count > 0 Then If dtVorpapiere.Rows.Count > 0 Then
Dim rowsVorp = dtVorpapiere.Select("tblSnd_Warenwert is not null AND (tblSnd_Vorpapier_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier2_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier3_Pos = '" & gs_row.Item("gs_posNr") & "')") ' Dim rowsVorp = dtVorpapiere.Select("tblSnd_Warenwert is not null AND (tblSnd_Vorpapier_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier2_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier3_Pos = '" & gs_row.Item("gs_posNr") & "')")
Dim posNr_temp As String = gs_row.Item("gs_posNr").ToString()
Dim rowsVorp = dtVorpapiere.AsEnumerable().
Where(Function(r) Not IsDBNull(r("tblSnd_Warenwert")) AndAlso (
r("tblSnd_Vorpapier_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp) OrElse
r("tblSnd_Vorpapier2_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp) OrElse
r("tblSnd_Vorpapier3_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp)
)
).ToArray()
Dim row = rowsVorp(0) Dim row = rowsVorp(0)
Warenwert = CDbl(row("tblSnd_Warenwert")) If POSNr = posNr_temp Then
Sicherheitsbetrag = System.Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) Warenwert = CDbl(row("tblSnd_Warenwert"))
Sicherheitsbetrag = System.Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2)
End If
End If End If
'Dim dtSendungen = SQL.loadDgvBySql("SELECT") 'Dim dtSendungen = SQL.loadDgvBySql("SELECT")
Dim anzahlPackstuecke As Integer = -1 Dim anzahlPackstuecke As Integer = -1
Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte"))) Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte")))
'Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz")) 'Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz"))
If gs_row.Item("gs_freitext") <> "" Then If gs_row.Item("gs_freitext") <> "" Then
@@ -4763,7 +4780,7 @@ Public Class cWorker_NCTS
.gsp_erstellungsdatum = DateTime.Now .gsp_erstellungsdatum = DateTime.Now
.gsp_ust = gs_row("gs_ust") .gsp_ust = gs_row("gs_ust")
.gsp_ATCNr = "" .gsp_ATCNr = ""
.gsp_MRNNr = IIf(regNR = "", MRNNR, regNR) .gsp_MRNNr = IIf(regNR = "", MRNNR.Trim(), regNR.Trim())
.gsp_avisoId = gs_row("gs_avisoID") .gsp_avisoId = gs_row("gs_avisoID")
.gsp_systemuser = "DAKOSY-AUTO" .gsp_systemuser = "DAKOSY-AUTO"
End With End With

View File

@@ -734,24 +734,38 @@ Anzeige:
'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten! 'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten!
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False
Dim dtVorpapiere As DataTable = SQL.loadDgvBySql("SELECT tblSnd_Warenwert,tblSnd_WarenwertWaehrung,tblSnd_Vorpapier_Pos,tblSnd_Vorpapier2_Pos, tblSnd_Vorpapier3_Pos from tblSendungen where tblSnd_Vorpapier = '" & gs_row("gs_ATBNr") & "' Or tblSnd_Vorpapier2 = '" & gs_row("gs_ATBNr") & "' OR tblSnd_Vorpapier3 = '" & gs_row("gs_ATBNr") & "'", "AVISO") Dim dtVorpapiere As DataTable = SQL.loadDgvBySql("SELECT tblSnd_Warenwert,tblSnd_WarenwertWaehrung,replace(tblSnd_Vorpapier_Pos,'+',',') as tblSnd_Vorpapier_Pos,replace(tblSnd_Vorpapier2_Pos,'+',',') as tblSnd_Vorpapier2_Pos, replace(tblSnd_Vorpapier3_Pos,'+',',') as tblSnd_Vorpapier3_Pos from tblSendungen where tblSnd_Vorpapier = '" & gs_row("gs_ATBNr") & "' Or tblSnd_Vorpapier2 = '" & gs_row("gs_ATBNr") & "' OR tblSnd_Vorpapier3 = '" & gs_row("gs_ATBNr") & "'", "AVISO")
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = testlauf VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = testlauf
If dtVorpapiere.Rows.Count > 0 Then If dtVorpapiere.Rows.Count > 0 Then
Dim rowsVorp = dtVorpapiere.Select("tblSnd_Warenwert is not null AND (tblSnd_Vorpapier_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier2_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier3_Pos = '" & gs_row.Item("gs_posNr") & "')") ' Dim rowsVorp = dtVorpapiere.Select("tblSnd_Warenwert is not null AND (tblSnd_Vorpapier_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier2_Pos = '" & gs_row.Item("gs_posNr") & "' or tblSnd_Vorpapier3_Pos = '" & gs_row.Item("gs_posNr") & "')")
Dim posNr_temp As String = gs_row.Item("gs_posNr").ToString()
Dim rowsVorp = dtVorpapiere.AsEnumerable().
Where(Function(r) Not IsDBNull(r("tblSnd_Warenwert")) AndAlso (
r("tblSnd_Vorpapier_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp) OrElse
r("tblSnd_Vorpapier2_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp) OrElse
r("tblSnd_Vorpapier3_Pos").ToString().Split(","c).Select(Function(x) x.Trim()).Contains(posNr_temp)
)
).ToArray()
Dim row = rowsVorp(0) Dim row = rowsVorp(0)
Warenwert = CDbl(row("tblSnd_Warenwert")) If POSNr = posNr_temp Then
Sicherheitsbetrag = Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) Warenwert = CDbl(row("tblSnd_Warenwert"))
Sicherheitsbetrag = Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2)
End If
End If End If
'Dim dtSendungen = SQL.loadDgvBySql("SELECT") 'Dim dtSendungen = SQL.loadDgvBySql("SELECT")
Dim anzahlPackstuecke As Integer = -1 Dim anzahlPackstuecke As Integer = -1
Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte"))) Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte")))
Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz")) Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz"))
If gs_row.Item("gs_freitext") <> "" Then If gs_row.Item("gs_freitext") <> "" Then