diff --git a/initATLASAufschubkonten/cWorker_NCTS.vb b/initATLASAufschubkonten/cWorker_NCTS.vb index 5727d54..910c86d 100644 --- a/initATLASAufschubkonten/cWorker_NCTS.vb +++ b/initATLASAufschubkonten/cWorker_NCTS.vb @@ -4108,95 +4108,95 @@ Public Class cWorker_NCTS If readNCTS_Ueberlassungsmeldung009 <> "" And MRN <> "" Then 'BEZUGSNR vorhanden - Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit) - STATUS.dySt_BezugsNr = readNCTS_Ueberlassungsmeldung009 - STATUS.dySt_artMitteilung = "UEM" - STATUS.dySt_dyArt = "" '"NCTS" 'T1/T2 + Dim STATUS As DAKOSY_Worker.cDakosy_Statusmeldungen = FORM.getStatusCheckTransID(NCTS.Transaktion.IOReferenz, NCTS.Transaktion.IODatumZeit) + STATUS.dySt_BezugsNr = readNCTS_Ueberlassungsmeldung009 + STATUS.dySt_artMitteilung = "UEM" + STATUS.dySt_dyArt = "" '"NCTS" 'T1/T2 - STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_50 - STATUS.dySt_ergCode = "MRN" - STATUS.dySt_ergMitteilung = MRN - STATUS.dySt_ergZeitpunkt = zp - '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 NCTS_TMP As DAKOSY_Worker.cDakosyNCTSOut004 = saveDY_NCTS004(STATUS, DY_TMP, NCTS.Transaktion.IOReferenz, If(zp, NCTS.Transaktion.IODatumZeit), , MRN, True) + STATUS.dySt_status = DAKOSY_Worker.cDY_Statusliste.S_50 + STATUS.dySt_ergCode = "MRN" + STATUS.dySt_ergMitteilung = MRN + STATUS.dySt_ergZeitpunkt = zp + '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 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.SAVE() + NCTS_TMP.ncts_Eroeffnung = zp + NCTS_TMP.SAVE() - '------------------------------------------------------------------------------------------------------------------------------ - 'GARANTIE ÜBERSCHREIBEN: - '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() + '------------------------------------------------------------------------------------------------------------------------------ + 'GARANTIE ÜBERSCHREIBEN: + '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() - ' 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 - ' Dim NCTS_GRT As New DAKOSY_Worker.cDakosy_NCTSOut004_Guarantee + ' For Each GRT In GRT_M.GuaranteeReference + ' Dim NCTS_GRT As New DAKOSY_Worker.cDakosy_NCTSOut004_Guarantee - ' NCTS_GRT.nctsGRT_Type = GRT_M.GuaranteeType - ' NCTS_GRT.nctsGRT_OtherGuaranteeReference = GRT_M.OtherGuaranteeReference - ' NCTS_GRT.nctsGRT_AmountToBeCovered = GRT.AmountToBeCovered - ' 'NCTS_GRT.nctsGRT_AccessCode = GRT.accessCode - ' NCTS_GRT.nctsGRT_GRN = GRT.GRN - ' NCTS_GRT.nctsGRT_Currency = GRT.Currency - ' NCTS_TMP.ncts_GUARANTEE.Add(NCTS_GRT) + ' NCTS_GRT.nctsGRT_Type = GRT_M.GuaranteeType + ' NCTS_GRT.nctsGRT_OtherGuaranteeReference = GRT_M.OtherGuaranteeReference + ' NCTS_GRT.nctsGRT_AmountToBeCovered = GRT.AmountToBeCovered + ' 'NCTS_GRT.nctsGRT_AccessCode = GRT.accessCode + ' NCTS_GRT.nctsGRT_GRN = GRT.GRN + ' NCTS_GRT.nctsGRT_Currency = GRT.Currency + ' NCTS_TMP.ncts_GUARANTEE.Add(NCTS_GRT) - ' Next - ' Next - ' NCTS_TMP.SAVE_Guarantee() - 'End If - '------------------------------------------------------------------------------------------------------------------------------ + ' Next + ' Next + ' NCTS_TMP.SAVE_Guarantee() + 'End If + '------------------------------------------------------------------------------------------------------------------------------ - 'For Each TE In NCTS_TMP.ncts_TRANSPORTEQUIPMENT - ' If TE.nctsTE_NumberOfSeals > 0 Then + 'For Each TE In NCTS_TMP.ncts_TRANSPORTEQUIPMENT + ' If TE.nctsTE_NumberOfSeals > 0 Then - ' End If - 'Next + ' End If + 'Next - 'If Verschluss_Anzahl > 0 Then - ' NCTS_TMP.ncts_Verschluss_Anzahl = Verschluss_Anzahl - ' 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_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_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_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_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_Zeichen10 = If(Verschluss_Zeichen.Count > 9, Verschluss_Zeichen(9), Nothing) - ' NCTS_TMP.SAVE() - 'End If + 'If Verschluss_Anzahl > 0 Then + ' NCTS_TMP.ncts_Verschluss_Anzahl = Verschluss_Anzahl + ' 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_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_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_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_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_Zeichen10 = If(Verschluss_Zeichen.Count > 9, Verschluss_Zeichen(9), Nothing) + ' NCTS_TMP.SAVE() + 'End If - SaveNCTS004_FirmaNL(NCTS_TMP, DY_TMP, division) - SaveNCTS004_WGDAT(NCTS_TMP, Wiedergestellungsdatum) + SaveNCTS004_FirmaNL(NCTS_TMP, DY_TMP, division) + SaveNCTS004_WGDAT(NCTS_TMP, Wiedergestellungsdatum) - If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id - STATUS.SAVE() - statusTMP = STATUS - cVERAG_out_ncts.copyFileFTP_VERAGncts004_DY(NCTS_TMP, DY_TMP) 'VERAG SCHNITTSTELLE - ' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then + If DY_TMP IsNot Nothing Then STATUS.dySt_dyId = DY_TMP.dy_Id + STATUS.SAVE() + statusTMP = STATUS + cVERAG_out_ncts.copyFileFTP_VERAGncts004_DY(NCTS_TMP, DY_TMP) 'VERAG SCHNITTSTELLE + ' If If(NCTS_TMP.ncts_firma, "") = "IMEX" Then - NCTS_TMP.insertIntoSpedBuch(DY_TMP) + NCTS_TMP.insertIntoSpedBuch(DY_TMP) - '=====ATEZ BEREITSTELLUNG========== - checkATEZ_Bereitstellung(DY_TMP, d) - '================================== - '=====ATEZ BEREITSTELLUNG========== - checkATEZ_BereitstellungDHUB(DY_TMP, d) - '================================== - '=====ATEZ IRU BEREITSTELLUNG========== - checkATEZIRU_Bereitstellung(DY_TMP, d) - '================================== + '=====ATEZ BEREITSTELLUNG========== + checkATEZ_Bereitstellung(DY_TMP, d) + '================================== + '=====ATEZ BEREITSTELLUNG========== + checkATEZ_BereitstellungDHUB(DY_TMP, d) + '================================== + '=====ATEZ IRU BEREITSTELLUNG========== + checkATEZIRU_Bereitstellung(DY_TMP, d) + '================================== - FORM.addDGVEinarbeitung("NCTS: Überlassungsmeldung", STATUS.dySt_BezugsNr) - End If + FORM.addDGVEinarbeitung("NCTS: Überlassungsmeldung", STATUS.dySt_BezugsNr) + End If End If Catch ex As Exception @@ -4683,7 +4683,8 @@ Public Class cWorker_NCTS 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 Exit Sub 'bereits vorhanden -> keine INFO @@ -4698,24 +4699,40 @@ Public Class cWorker_NCTS 'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten! 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 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) - Warenwert = CDbl(row("tblSnd_Warenwert")) - Sicherheitsbetrag = System.Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) + If POSNr = posNr_temp Then + Warenwert = CDbl(row("tblSnd_Warenwert")) + Sicherheitsbetrag = System.Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) + End If + End If - 'Dim dtSendungen = SQL.loadDgvBySql("SELECT") - Dim anzahlPackstuecke As Integer = -1 + 'Dim dtSendungen = SQL.loadDgvBySql("SELECT") + Dim anzahlPackstuecke As Integer = -1 Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte"))) 'Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz")) If gs_row.Item("gs_freitext") <> "" Then @@ -4763,7 +4780,7 @@ Public Class cWorker_NCTS .gsp_erstellungsdatum = DateTime.Now .gsp_ust = gs_row("gs_ust") .gsp_ATCNr = "" - .gsp_MRNNr = IIf(regNR = "", MRNNR, regNR) + .gsp_MRNNr = IIf(regNR = "", MRNNR.Trim(), regNR.Trim()) .gsp_avisoId = gs_row("gs_avisoID") .gsp_systemuser = "DAKOSY-AUTO" End With diff --git a/initATLASAufschubkonten/cWorker_Verwahrung.vb b/initATLASAufschubkonten/cWorker_Verwahrung.vb index 80c2a8f..e9ee26d 100644 --- a/initATLASAufschubkonten/cWorker_Verwahrung.vb +++ b/initATLASAufschubkonten/cWorker_Verwahrung.vb @@ -734,24 +734,38 @@ Anzeige: 'Berechnung Warenwert und Sicherheitsbetrag aus Sendung -> immer aus den Produktivdaten! 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 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) - Warenwert = CDbl(row("tblSnd_Warenwert")) - Sicherheitsbetrag = Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) + If POSNr = posNr_temp Then + Warenwert = CDbl(row("tblSnd_Warenwert")) + Sicherheitsbetrag = Math.Round(Warenwert * (GesSichRef.gsr_zollsatz / 100), 2) + End If + End If - 'Dim dtSendungen = SQL.loadDgvBySql("SELECT") - Dim anzahlPackstuecke As Integer = -1 + 'Dim dtSendungen = SQL.loadDgvBySql("SELECT") + Dim anzahlPackstuecke As Integer = -1 Dim AnzahlStückErledigt As Integer = If(IsDBNull(POS("StueckzahlErledigte")), 0, CInt(POS("StueckzahlErledigte"))) Dim StornierungKz As String = If(IsDBNull(POS("StornierungKz")), "", POS("StornierungKz")) If gs_row.Item("gs_freitext") <> "" Then