TetraPak
This commit is contained in:
@@ -117,6 +117,7 @@ Public Class cDakosyEZA
|
|||||||
Property eza_AUFSCHUB As New List(Of cDakosy_EZA_Aufschub)
|
Property eza_AUFSCHUB As New List(Of cDakosy_EZA_Aufschub)
|
||||||
Property eza_SUMABA As New List(Of cDakosy_EZA_SumABeendigungsAnteil)
|
Property eza_SUMABA As New List(Of cDakosy_EZA_SumABeendigungsAnteil)
|
||||||
Property eza_BEA_ZLAvuv As New List(Of cDakosy_EZA_BEAnteilZLAVUV)
|
Property eza_BEA_ZLAvuv As New List(Of cDakosy_EZA_BEAnteilZLAVUV)
|
||||||
|
Property eza_DV1Kostenverteilung As New List(Of cDakosy_EZA_DV1Kosten)
|
||||||
|
|
||||||
|
|
||||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||||
@@ -276,6 +277,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
If Not SAVE_Aufschub() Then Return False
|
If Not SAVE_Aufschub() Then Return False
|
||||||
If Not SAVE_BEAnteilZLAVUV() Then Return False
|
If Not SAVE_BEAnteilZLAVUV() Then Return False
|
||||||
If Not SAVE_SumABeendigungsAnteil() Then Return False
|
If Not SAVE_SumABeendigungsAnteil() Then Return False
|
||||||
|
If Not SAVE_DV1Kostenverteilung() Then Return False
|
||||||
Return True
|
Return True
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
@@ -291,6 +293,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
eza_AUFSCHUB.Clear()
|
eza_AUFSCHUB.Clear()
|
||||||
eza_BEA_ZLAvuv.Clear()
|
eza_BEA_ZLAvuv.Clear()
|
||||||
eza_SUMABA.Clear()
|
eza_SUMABA.Clear()
|
||||||
|
eza_DV1Kostenverteilung.Clear()
|
||||||
End If
|
End If
|
||||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||||
Using cmd As New SqlCommand("SELECT * FROM tblDakosy_eza WHERE eza_Id=@eza_Id ", conn)
|
Using cmd As New SqlCommand("SELECT * FROM tblDakosy_eza WHERE eza_Id=@eza_Id ", conn)
|
||||||
@@ -315,6 +318,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
LOAD_Aufschub()
|
LOAD_Aufschub()
|
||||||
LOAD_BEAnteilZLAVUV()
|
LOAD_BEAnteilZLAVUV()
|
||||||
LOAD_SumABeendigungsAnteil()
|
LOAD_SumABeendigungsAnteil()
|
||||||
|
LOAD_DV1Kostenverteilung()
|
||||||
End If
|
End If
|
||||||
LOAD = True
|
LOAD = True
|
||||||
End If
|
End If
|
||||||
@@ -357,6 +361,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
EZA.LOAD_Aufschub()
|
EZA.LOAD_Aufschub()
|
||||||
EZA.LOAD_BEAnteilZLAVUV()
|
EZA.LOAD_BEAnteilZLAVUV()
|
||||||
EZA.LOAD_SumABeendigungsAnteil()
|
EZA.LOAD_SumABeendigungsAnteil()
|
||||||
|
EZA.LOAD_DV1Kostenverteilung()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
dr.Close()
|
dr.Close()
|
||||||
@@ -405,6 +410,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
eza_AUFSCHUB.Clear()
|
eza_AUFSCHUB.Clear()
|
||||||
eza_BEA_ZLAvuv.Clear()
|
eza_BEA_ZLAvuv.Clear()
|
||||||
eza_SUMABA.Clear()
|
eza_SUMABA.Clear()
|
||||||
|
eza_DV1Kostenverteilung.Clear()
|
||||||
End If
|
End If
|
||||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||||
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_EZA WHERE eza_dyaAnmID=@eza_dyaAnmID ", conn)
|
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_EZA WHERE eza_dyaAnmID=@eza_dyaAnmID ", conn)
|
||||||
@@ -429,6 +435,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
LOAD_Aufschub()
|
LOAD_Aufschub()
|
||||||
LOAD_BEAnteilZLAVUV()
|
LOAD_BEAnteilZLAVUV()
|
||||||
LOAD_SumABeendigungsAnteil()
|
LOAD_SumABeendigungsAnteil()
|
||||||
|
LOAD_DV1Kostenverteilung()
|
||||||
End If
|
End If
|
||||||
LOADByAnmID = True
|
LOADByAnmID = True
|
||||||
End If
|
End If
|
||||||
@@ -449,6 +456,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
Me.LOAD_Aufschub()
|
Me.LOAD_Aufschub()
|
||||||
Me.LOAD_BEAnteilZLAVUV()
|
Me.LOAD_BEAnteilZLAVUV()
|
||||||
Me.LOAD_SumABeendigungsAnteil()
|
Me.LOAD_SumABeendigungsAnteil()
|
||||||
|
Me.LOAD_DV1Kostenverteilung()
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -482,6 +490,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
EZA.LOAD_Aufschub()
|
EZA.LOAD_Aufschub()
|
||||||
EZA.LOAD_BEAnteilZLAVUV()
|
EZA.LOAD_BEAnteilZLAVUV()
|
||||||
EZA.LOAD_SumABeendigungsAnteil()
|
EZA.LOAD_SumABeendigungsAnteil()
|
||||||
|
EZA.LOAD_DV1Kostenverteilung()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
dr.Close()
|
dr.Close()
|
||||||
@@ -526,6 +535,7 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
EZA.LOAD_Aufschub()
|
EZA.LOAD_Aufschub()
|
||||||
EZA.LOAD_BEAnteilZLAVUV()
|
EZA.LOAD_BEAnteilZLAVUV()
|
||||||
EZA.LOAD_SumABeendigungsAnteil()
|
EZA.LOAD_SumABeendigungsAnteil()
|
||||||
|
EZA.LOAD_DV1Kostenverteilung()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
dr.Close()
|
dr.Close()
|
||||||
@@ -1419,6 +1429,65 @@ list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eza_BezugsnummerBEAnteilZL", eza_
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
' DV1-Kosten: separate Tabelle, damit Kopfkosten persistent und mehrfach speicherbar sind.
|
||||||
|
Public Sub LOAD_DV1Kostenverteilung()
|
||||||
|
eza_DV1Kostenverteilung.Clear()
|
||||||
|
If eza_Id <= 0 Then Exit Sub
|
||||||
|
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||||
|
Using cmd As New SqlCommand("SELECT Kostenart, Kosten, KostenWaehrung, WechselkursArt, Verteilungsart, Minimalbetrag FROM dbo.tblDakosy_EZA_DV1Kostenverteilung WHERE eza_Id=@eza_Id ORDER BY Id", conn)
|
||||||
|
cmd.Parameters.Add("@eza_Id", SqlDbType.Int).Value = eza_Id
|
||||||
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
||||||
|
While dr.Read()
|
||||||
|
eza_DV1Kostenverteilung.Add(New cDakosy_EZA_DV1Kosten With {
|
||||||
|
.Kostenart = If(dr.IsDBNull(0), "", dr.GetString(0)),
|
||||||
|
.Kosten = If(dr.IsDBNull(1), "", dr.GetString(1)),
|
||||||
|
.KostenWaehrung = If(dr.IsDBNull(2), "", dr.GetString(2)),
|
||||||
|
.WechselkursArt = If(dr.IsDBNull(3), "", dr.GetString(3)),
|
||||||
|
.Verteilungsart = If(dr.IsDBNull(4), "", dr.GetString(4)),
|
||||||
|
.Minimalbetrag = If(dr.IsDBNull(5), "", dr.GetString(5))})
|
||||||
|
End While
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Function SAVE_DV1Kostenverteilung() As Boolean
|
||||||
|
If eza_Id <= 0 Then Return False
|
||||||
|
Try
|
||||||
|
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||||
|
Using tran As SqlTransaction = conn.BeginTransaction()
|
||||||
|
Try
|
||||||
|
Using cmd As New SqlCommand("DELETE FROM dbo.tblDakosy_EZA_DV1Kostenverteilung WHERE eza_Id=@eza_Id", conn, tran)
|
||||||
|
cmd.Parameters.Add("@eza_Id", SqlDbType.Int).Value = eza_Id
|
||||||
|
cmd.ExecuteNonQuery()
|
||||||
|
End Using
|
||||||
|
For Each k As cDakosy_EZA_DV1Kosten In eza_DV1Kostenverteilung
|
||||||
|
Using cmd As New SqlCommand("INSERT INTO dbo.tblDakosy_EZA_DV1Kostenverteilung (eza_Id, Kostenart, Kosten, KostenWaehrung, WechselkursArt, Verteilungsart, Minimalbetrag) VALUES (@id,@art,@kosten,@waehrung,@kurs,@verteilung,@min)", conn, tran)
|
||||||
|
cmd.Parameters.Add("@id", SqlDbType.Int).Value = eza_Id
|
||||||
|
cmd.Parameters.Add("@art", SqlDbType.VarChar, 20).Value = If(k.Kostenart, "")
|
||||||
|
cmd.Parameters.Add("@kosten", SqlDbType.VarChar, 50).Value = If(k.Kosten, "")
|
||||||
|
cmd.Parameters.Add("@waehrung", SqlDbType.VarChar, 10).Value = If(k.KostenWaehrung, "")
|
||||||
|
cmd.Parameters.Add("@kurs", SqlDbType.VarChar, 20).Value = If(k.WechselkursArt, "")
|
||||||
|
cmd.Parameters.Add("@verteilung", SqlDbType.VarChar, 30).Value = If(k.Verteilungsart, "")
|
||||||
|
cmd.Parameters.Add("@min", SqlDbType.VarChar, 50).Value = If(k.Minimalbetrag, "")
|
||||||
|
cmd.ExecuteNonQuery()
|
||||||
|
End Using
|
||||||
|
Next
|
||||||
|
tran.Commit()
|
||||||
|
Catch
|
||||||
|
tran.Rollback()
|
||||||
|
Throw
|
||||||
|
End Try
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
Return True
|
||||||
|
Catch ex As Exception
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod().Name)
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
Public Class cDakosy_EZA_Adressen
|
Public Class cDakosy_EZA_Adressen
|
||||||
|
|
||||||
@@ -2482,3 +2551,12 @@ Public Class cDakosy_EZA_WarenpositionVerbrauchssteuer
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
Public Class cDakosy_EZA_DV1Kosten
|
||||||
|
Public Property Kostenart As String = ""
|
||||||
|
Public Property Kosten As String = ""
|
||||||
|
Public Property KostenWaehrung As String = ""
|
||||||
|
Public Property WechselkursArt As String = ""
|
||||||
|
Public Property Verteilungsart As String = ""
|
||||||
|
Public Property Minimalbetrag As String = ""
|
||||||
|
End Class
|
||||||
|
|||||||
@@ -3090,7 +3090,8 @@ Public Class cDakosyNCTSOut004
|
|||||||
End Select
|
End Select
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Shared Function fillNCTS_WithEXG(ByRef NCTS_OUT As cDakosyNCTSOut004, exg As cDakosyEXG, Optional ObjectName As String = "", Optional AutoTranslate As Boolean? = Nothing, Optional ForceTranslate As Boolean? = Nothing) As cDakosyNCTSOut004
|
|
||||||
|
Shared Function fillNCTS_WithEXG(ByRef NCTS_OUT As cDakosyNCTSOut004, exg As cDakosyEXG, Optional ObjectName As String = "", Optional AutoTranslate As Boolean? = Nothing, Optional ForceTranslate As Boolean? = Nothing, Optional VersLandAusVersender As Boolean = False, Optional BestLandAusEmpfaenger As Boolean = False) As cDakosyNCTSOut004
|
||||||
|
|
||||||
If NCTS_OUT Is Nothing Then
|
If NCTS_OUT Is Nothing Then
|
||||||
NCTS_OUT = New DAKOSY_Worker.cDakosyNCTSOut004
|
NCTS_OUT = New DAKOSY_Worker.cDakosyNCTSOut004
|
||||||
@@ -3129,12 +3130,18 @@ Public Class cDakosyNCTSOut004
|
|||||||
|
|
||||||
'House Consignment
|
'House Consignment
|
||||||
HC.nctsHC_GrossMass = exg.exg_GrossMass
|
HC.nctsHC_GrossMass = exg.exg_GrossMass
|
||||||
HC.nctsHC_CountryOfDestination = exg.exg_CountryOfDestination
|
|
||||||
'Versendungsland: zuerst EXG, alternativ Versenderadresse
|
|
||||||
HC.nctsHC_CountryOfDispatch = If(exg.exg_CountryOfDispatch, "").Trim().ToUpperInvariant()
|
|
||||||
|
|
||||||
If String.IsNullOrWhiteSpace(HC.nctsHC_CountryOfDispatch) Then
|
'Versendungs- und Bestimmungsland aus EXG
|
||||||
HC.nctsHC_CountryOfDispatch = If(exg.exg_Consignor_Country, "").Trim().ToUpperInvariant()
|
HC.nctsHC_CountryOfDispatch = exg.exg_CountryOfDispatch
|
||||||
|
HC.nctsHC_CountryOfDestination = exg.exg_CountryOfDestination
|
||||||
|
|
||||||
|
'Optionale Übernahme aus Versender- bzw. Empfängeradresse
|
||||||
|
If VersLandAusVersender AndAlso Not String.IsNullOrWhiteSpace(Convert.ToString(HC.nctsHC_Consignor_Country)) Then
|
||||||
|
HC.nctsHC_CountryOfDispatch = HC.nctsHC_Consignor_Country
|
||||||
|
End If
|
||||||
|
|
||||||
|
If BestLandAusEmpfaenger AndAlso Not String.IsNullOrWhiteSpace(Convert.ToString(HC.nctsHC_Consignee_Country)) Then
|
||||||
|
HC.nctsHC_CountryOfDestination = HC.nctsHC_Consignee_Country
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'UCR bewusst nicht übernehmen
|
'UCR bewusst nicht übernehmen
|
||||||
@@ -3205,10 +3212,9 @@ Public Class cDakosyNCTSOut004
|
|||||||
HC_ITEM.nctsHCCI_DeclarationType = DetermineTransitProcedure(EXG_POS.exgPos_RequestedProcedure, EXG_POS.exgPos_PreviousProcedure)
|
HC_ITEM.nctsHCCI_DeclarationType = DetermineTransitProcedure(EXG_POS.exgPos_RequestedProcedure, EXG_POS.exgPos_PreviousProcedure)
|
||||||
|
|
||||||
Debug.WriteLine($"NCTS Transit: Requested={EXG_POS.exgPos_RequestedProcedure}, Previous={EXG_POS.exgPos_PreviousProcedure}, Result={HC_ITEM.nctsHCCI_DeclarationType}")
|
Debug.WriteLine($"NCTS Transit: Requested={EXG_POS.exgPos_RequestedProcedure}, Previous={EXG_POS.exgPos_PreviousProcedure}, Result={HC_ITEM.nctsHCCI_DeclarationType}")
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Packstücke
|
'Packstücke zunächst ohne Beipackverweise übernehmen
|
||||||
If EXG_POS.exgPos_PACKAGING IsNot Nothing Then
|
If EXG_POS.exgPos_PACKAGING IsNot Nothing Then
|
||||||
For Each EXG_PK In EXG_POS.exgPos_PACKAGING
|
For Each EXG_PK In EXG_POS.exgPos_PACKAGING
|
||||||
|
|
||||||
@@ -3218,31 +3224,61 @@ Public Class cDakosyNCTSOut004
|
|||||||
HC_PK.nctsHCCIPK_TypeOfPackages = EXG_PK.exgPosPk_TypeOfPackages
|
HC_PK.nctsHCCIPK_TypeOfPackages = EXG_PK.exgPosPk_TypeOfPackages
|
||||||
HC_PK.nctsHCCIPK_ShippingMarks = EXG_PK.exgPosPk_ShippingMarks
|
HC_PK.nctsHCCIPK_ShippingMarks = EXG_PK.exgPosPk_ShippingMarks
|
||||||
|
|
||||||
If Val(Convert.ToString(EXG_PK.exgPosPk_NumberOfPackages)) = 0 Then
|
|
||||||
'Verweis auf erste Warenposition im selben House Consignment
|
|
||||||
HC_PK.nctsHCCIPK_GoodsItemNumber = 1
|
|
||||||
End If
|
|
||||||
|
|
||||||
HC_ITEM.nctsHCCI_PACKAGING.Add(HC_PK)
|
HC_ITEM.nctsHCCI_PACKAGING.Add(HC_PK)
|
||||||
|
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
HC.nctsWP_CONSIGNMENT_ITEM.Add(HC_ITEM)
|
HC.nctsWP_CONSIGNMENT_ITEM.Add(HC_ITEM)
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
'Beipackverweise erst nach vollständiger Erstellung aller Warenpositionen ermitteln
|
||||||
|
For Each item In HC.nctsWP_CONSIGNMENT_ITEM
|
||||||
|
For Each pk In item.nctsHCCI_PACKAGING
|
||||||
|
|
||||||
|
'Nur Packstücke mit expliziter Anzahl 0 sind Beipack-Kandidaten
|
||||||
|
Dim packageCount As String = Convert.ToString(pk.nctsHCCIPK_NumberOfPackages).Trim()
|
||||||
|
If packageCount <> "0" Then Continue For
|
||||||
|
|
||||||
|
Dim shippingMarks As String = Convert.ToString(pk.nctsHCCIPK_ShippingMarks).Trim()
|
||||||
|
If shippingMarks = "" Then
|
||||||
|
Debug.WriteLine("NCTS Beipack: Versandzeichen fehlen / EXG " & exg.exg_ObjectName)
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim referencePosition As Integer = 0
|
||||||
|
|
||||||
|
'Erste Warenposition mit identischem Versandzeichen und Packstückanzahl > 0 suchen
|
||||||
|
For i As Integer = 0 To HC.nctsWP_CONSIGNMENT_ITEM.Count - 1
|
||||||
|
|
||||||
|
Dim candidate = HC.nctsWP_CONSIGNMENT_ITEM(i)
|
||||||
|
If candidate Is item Then Continue For
|
||||||
|
|
||||||
|
Dim matchingPK = candidate.nctsHCCI_PACKAGING.FirstOrDefault(
|
||||||
|
Function(p) Val(Convert.ToString(p.nctsHCCIPK_NumberOfPackages)) > 0 AndAlso
|
||||||
|
String.Equals(Convert.ToString(p.nctsHCCIPK_ShippingMarks).Trim(), shippingMarks, StringComparison.OrdinalIgnoreCase))
|
||||||
|
|
||||||
|
If matchingPK IsNot Nothing Then
|
||||||
|
referencePosition = i + 1
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
If referencePosition > 0 Then
|
||||||
|
pk.nctsHCCIPK_GoodsItemNumber = referencePosition
|
||||||
|
Else
|
||||||
|
Debug.WriteLine("NCTS Beipack: Keine Hauptpackposition für Versandzeichen '" & shippingMarks & "' gefunden / EXG " & exg.exg_ObjectName)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
Next
|
Next
|
||||||
|
|
||||||
NCTS_OUT.ncts_HOUSE_CONSIGNMENT.Add(HC)
|
NCTS_OUT.ncts_HOUSE_CONSIGNMENT.Add(HC)
|
||||||
|
|
||||||
'Verfahrensart wird erst nach Zusammenführung aller EXG bestimmt
|
'Verfahrensart wird erst nach Zusammenführung aller EXG bestimmt
|
||||||
'Positions-Verfahrensarten bleiben bis dahin erhalten
|
'Positions-Verfahrensarten bleiben bis dahin erhalten
|
||||||
'Dim declType As String = GetDeclarationType(NCTS_OUT.ncts_HOUSE_CONSIGNMENT)
|
|
||||||
|
|
||||||
'If declType <> "" Then
|
|
||||||
' emptyAllDeclarationItems(NCTS_OUT.ncts_HOUSE_CONSIGNMENT)
|
|
||||||
' NCTS_OUT.ncts_Declarationtype = declType
|
|
||||||
'Else
|
|
||||||
' NCTS_OUT.ncts_Declarationtype = "T-"
|
|
||||||
'End If
|
|
||||||
|
|
||||||
'Kein SAVE_ALL: erfolgt nach Zusammenführung aller EXG-Anmeldungen
|
'Kein SAVE_ALL: erfolgt nach Zusammenführung aller EXG-Anmeldungen
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,9 @@
|
|||||||
<OptionInfer>On</OptionInfer>
|
<OptionInfer>On</OptionInfer>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="ClosedXML">
|
||||||
|
<HintPath>F:\PROGRAMMIERUNG\dll\closedxml\95\ClosedXML.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
Imports System.Data.SqlClient
|
Imports System.Data.SqlClient
|
||||||
|
Imports System.IO
|
||||||
|
Imports ClosedXML.Excel
|
||||||
Imports VERAG_PROG_ALLGEMEIN
|
Imports VERAG_PROG_ALLGEMEIN
|
||||||
Public Class cImporter_DakosyToVERAG
|
Public Class cImporter_DakosyToVERAG
|
||||||
|
|
||||||
@@ -340,6 +342,16 @@ Public Class cImporter_DakosyToVERAG
|
|||||||
' ======KAFKA==========================================================
|
' ======KAFKA==========================================================
|
||||||
If saved AndAlso freshInsert Then cDakosyEZA_Greenpulse.INSERT_KAFKA(ZA)
|
If saved AndAlso freshInsert Then cDakosyEZA_Greenpulse.INSERT_KAFKA(ZA)
|
||||||
' ================================================================
|
' ================================================================
|
||||||
|
|
||||||
|
|
||||||
|
If saved Then
|
||||||
|
Try
|
||||||
|
UpdateBrokerManagementFileTETRAPAK(ZA)
|
||||||
|
Catch ex As Exception
|
||||||
|
cErrorHandler.ERR(ex.Message, ex.StackTrace, "UpdateBrokerManagementFile")
|
||||||
|
End Try
|
||||||
|
End If
|
||||||
|
|
||||||
Return saved
|
Return saved
|
||||||
|
|
||||||
|
|
||||||
@@ -349,6 +361,323 @@ Public Class cImporter_DakosyToVERAG
|
|||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Public Sub UpdateBrokerManagementFileTETRAPAK(ZA As cVERAG_CustomsDeclarations)
|
||||||
|
Const kundenNrTETRAPAK As Integer = 719649
|
||||||
|
Const prefix As String = "[TETRAPAK] "
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "========== START BrokerManagementFile ==========")
|
||||||
|
|
||||||
|
Try
|
||||||
|
If ZA Is Nothing OrElse ZA.za_Id <= 0 Then
|
||||||
|
Debug.WriteLine(prefix & "ABBRUCH: Keine gültige Zollanmeldung")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Zollanmeldung vollständig aus VERAG-Datenbank laden
|
||||||
|
Dim ZOLL As New cVERAG_CustomsDeclarations
|
||||||
|
ZOLL.za_Id = ZA.za_Id
|
||||||
|
ZOLL.LOAD()
|
||||||
|
|
||||||
|
If Not ZOLL.hasEntry Then
|
||||||
|
Throw New Exception("Zollanmeldung nicht gefunden. za_Id=" & ZA.za_Id)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "ZA-ID: " & ZOLL.za_Id)
|
||||||
|
Debug.WriteLine(prefix & "MRN: " & Convert.ToString(ZOLL.za_MRN))
|
||||||
|
Debug.WriteLine(prefix & "LRN: " & Convert.ToString(ZOLL.za_LRN))
|
||||||
|
Debug.WriteLine(prefix & "AvisoId: " & Convert.ToString(ZOLL.za_AvisoId))
|
||||||
|
Debug.WriteLine(prefix & "SendungsId: " & Convert.ToString(ZOLL.za_SendungsId))
|
||||||
|
|
||||||
|
If Not ZOLL.za_SendungsId.HasValue OrElse ZOLL.za_SendungsId.Value <= 0 Then
|
||||||
|
Debug.WriteLine(prefix & "ABBRUCH: Keine SendungsId")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Auftraggeber prüfen
|
||||||
|
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(ZOLL.za_SendungsId.Value)
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Auftraggeber: " & Convert.ToString(SND.tblSnd_Auftraggeber))
|
||||||
|
Debug.WriteLine(prefix & "Kundennummer: " & Convert.ToString(SND.tblSnd_AuftraggeberKdNr))
|
||||||
|
|
||||||
|
Dim kundenNr As Integer
|
||||||
|
If Not Integer.TryParse(Convert.ToString(SND.tblSnd_AuftraggeberKdNr), kundenNr) Then
|
||||||
|
Debug.WriteLine(prefix & "ABBRUCH: Ungültige Kundennummer")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
If kundenNr <> kundenNrTETRAPAK Then
|
||||||
|
Debug.WriteLine(prefix & "ABBRUCH: Kein TETRAPAK-Auftraggeber")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Warenpositionen aus tblVERAG_CustomsDeclarations_Items
|
||||||
|
Dim positionen = ZOLL.Items.OrderBy(Function(p) p.zaItem_PosNo).ToList()
|
||||||
|
|
||||||
|
If positionen.Count = 0 Then
|
||||||
|
Debug.WriteLine(prefix & "ABBRUCH: Keine Warenpositionen vorhanden")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Warenpositionen: " & positionen.Count)
|
||||||
|
Debug.WriteLine(prefix & "Kopfabgaben: " & ZOLL.Duties.Count)
|
||||||
|
|
||||||
|
'Abgaben aus tblVERAG_CustomsDeclarations_Duties
|
||||||
|
'Positionen und Kopf getrennt behandeln
|
||||||
|
Dim gesamtZollPositionen As Decimal = 0D
|
||||||
|
Dim gesamtEustPositionen As Decimal = 0D
|
||||||
|
Dim gesamtZollKopf As Decimal = 0D
|
||||||
|
Dim gesamtEustKopf As Decimal = 0D
|
||||||
|
Dim anzahlPositionsabgaben As Integer = 0
|
||||||
|
|
||||||
|
For Each wp In positionen
|
||||||
|
Debug.WriteLine(prefix & "Position " & wp.zaItem_PosNo & " | ItemId=" & wp.zaItem_Id & " | Abgaben=" & wp.Duties.Count)
|
||||||
|
|
||||||
|
For Each duty In wp.Duties
|
||||||
|
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
|
||||||
|
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
|
||||||
|
|
||||||
|
Select Case art
|
||||||
|
Case "A0000", "A00"
|
||||||
|
gesamtZollPositionen += betrag
|
||||||
|
Case "B0000", "B00"
|
||||||
|
gesamtEustPositionen += betrag
|
||||||
|
End Select
|
||||||
|
|
||||||
|
anzahlPositionsabgaben += 1
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & " Duty: " & art &
|
||||||
|
" | Betrag=" & betrag.ToString("0.00") &
|
||||||
|
" | ItemId=" & Convert.ToString(duty.zaDuty_zaItemId))
|
||||||
|
Next
|
||||||
|
Next
|
||||||
|
|
||||||
|
For Each duty In ZOLL.Duties
|
||||||
|
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
|
||||||
|
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
|
||||||
|
|
||||||
|
Select Case art
|
||||||
|
Case "A0000", "A00"
|
||||||
|
gesamtZollKopf += betrag
|
||||||
|
Case "B0000", "B00"
|
||||||
|
gesamtEustKopf += betrag
|
||||||
|
End Select
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Kopfabgabe: " & art & " | Betrag=" & betrag.ToString("0.00"))
|
||||||
|
Next
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Positions-Zoll gesamt: " & gesamtZollPositionen.ToString("0.00"))
|
||||||
|
Debug.WriteLine(prefix & "Positions-EUSt gesamt: " & gesamtEustPositionen.ToString("0.00"))
|
||||||
|
Debug.WriteLine(prefix & "Kopf-Zoll gesamt: " & gesamtZollKopf.ToString("0.00"))
|
||||||
|
Debug.WriteLine(prefix & "Kopf-EUSt gesamt: " & gesamtEustKopf.ToString("0.00"))
|
||||||
|
|
||||||
|
'Bei fehlenden Positionsabgaben keine künstliche Verteilung
|
||||||
|
Dim nurKopfabgaben As Boolean = (anzahlPositionsabgaben = 0)
|
||||||
|
|
||||||
|
If nurKopfabgaben AndAlso positionen.Count > 1 AndAlso ZOLL.Duties.Count > 0 Then
|
||||||
|
Throw New Exception("BrokerManagementFile: Es sind " & positionen.Count &
|
||||||
|
" Warenpositionen vorhanden, aber nur Kopfabgaben gespeichert. " &
|
||||||
|
"Eine eindeutige Verteilung von Zoll/EUSt ist nicht möglich. ZA-ID=" & ZOLL.za_Id)
|
||||||
|
End If
|
||||||
|
|
||||||
|
If nurKopfabgaben AndAlso ZOLL.Duties.Count = 0 Then
|
||||||
|
Debug.WriteLine(prefix & "WARNUNG: Keine Abgaben in der Zollanmeldung gespeichert")
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not nurKopfabgaben Then
|
||||||
|
If ZOLL.Duties.Count > 0 Then
|
||||||
|
If gesamtZollPositionen <> gesamtZollKopf OrElse gesamtEustPositionen <> gesamtEustKopf Then
|
||||||
|
Debug.WriteLine(prefix & "WARNUNG: Positionssummen und Kopfsummen weichen voneinander ab")
|
||||||
|
Else
|
||||||
|
Debug.WriteLine(prefix & "OK: Positionssummen entsprechen den Kopfsummen")
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Anhänge über AVISO und Sendung laden
|
||||||
|
Dim anhaenge As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
|
||||||
|
|
||||||
|
If ZOLL.za_AvisoId.HasValue AndAlso ZOLL.za_AvisoId.Value > 0 Then
|
||||||
|
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_ByAviso(anhaenge, ZOLL.za_AvisoId.Value)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim sendungsAnhaenge As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
|
||||||
|
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(sendungsAnhaenge, ZOLL.za_SendungsId.Value)
|
||||||
|
|
||||||
|
For Each anh In sendungsAnhaenge
|
||||||
|
If Not anhaenge.Any(Function(a) a.anh_docId = anh.anh_docId) Then anhaenge.Add(anh)
|
||||||
|
Next
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Anhänge gefunden: " & anhaenge.Count)
|
||||||
|
|
||||||
|
Dim dateienGefunden As Integer = 0
|
||||||
|
Dim dateienGespeichert As Integer = 0
|
||||||
|
|
||||||
|
For Each anh In anhaenge
|
||||||
|
Debug.WriteLine(prefix & "Prüfe Anhang: " & Convert.ToString(anh.anh_Art) & " | docId=" & anh.anh_docId)
|
||||||
|
|
||||||
|
If Not String.Equals(Convert.ToString(anh.anh_Art).Trim(), "BrokerManagementFile", StringComparison.OrdinalIgnoreCase) Then Continue For
|
||||||
|
If anh.anh_docId <= 0 Then Continue For
|
||||||
|
|
||||||
|
Dim pfad As String = (New VERAG_PROG_ALLGEMEIN.cDATENSERVER(anh.anh_docId)).GET_TOP1_PATH(False)
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Archivpfad: " & Convert.ToString(pfad))
|
||||||
|
|
||||||
|
If String.IsNullOrWhiteSpace(pfad) OrElse Not File.Exists(pfad) Then
|
||||||
|
Debug.WriteLine(prefix & "Übersprungen: Archivdatei nicht gefunden")
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not String.Equals(Path.GetExtension(pfad), ".xlsx", StringComparison.OrdinalIgnoreCase) Then
|
||||||
|
Debug.WriteLine(prefix & "Übersprungen: Keine XLSX-Datei")
|
||||||
|
Continue For
|
||||||
|
End If
|
||||||
|
|
||||||
|
dateienGefunden += 1
|
||||||
|
|
||||||
|
Using wb As New XLWorkbook(pfad)
|
||||||
|
Dim ws = wb.Worksheet(1)
|
||||||
|
Dim letzteVerwendeteZeile = ws.LastRowUsed()
|
||||||
|
|
||||||
|
If letzteVerwendeteZeile Is Nothing Then
|
||||||
|
Debug.WriteLine("BrokerManagementFile ist leer: " & pfad)
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Datenzeilen anhand Spalte A
|
||||||
|
Dim datenZeilen As New List(Of Integer)
|
||||||
|
Dim letzteZeile As Integer = letzteVerwendeteZeile.RowNumber()
|
||||||
|
|
||||||
|
For zeile As Integer = 2 To letzteZeile
|
||||||
|
If Not String.IsNullOrWhiteSpace(ws.Cell(zeile, "A").GetString()) Then datenZeilen.Add(zeile)
|
||||||
|
Next
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "Excel-Zeilen: " & datenZeilen.Count)
|
||||||
|
Debug.WriteLine(prefix & "Zollpositionen: " & positionen.Count)
|
||||||
|
|
||||||
|
If datenZeilen.Count <> positionen.Count Then
|
||||||
|
Debug.WriteLine("BrokerManagementFile: Positionsanzahl stimmt nicht überein. Excel=" &
|
||||||
|
datenZeilen.Count & ", Zollanmeldung=" & positionen.Count & ", Datei=" & pfad)
|
||||||
|
End If
|
||||||
|
|
||||||
|
For i As Integer = 0 To positionen.Count - 1
|
||||||
|
Dim wp = positionen(i)
|
||||||
|
Dim zeile As Integer = datenZeilen(i)
|
||||||
|
Dim posNr As Integer = wp.zaItem_PosNo
|
||||||
|
|
||||||
|
Dim zollbetr As Decimal = 0D
|
||||||
|
Dim eust As Decimal = 0D
|
||||||
|
|
||||||
|
'Positionsabgaben aus Datenbank
|
||||||
|
If Not nurKopfabgaben Then
|
||||||
|
For Each duty In wp.Duties
|
||||||
|
Dim betrag As Decimal = If(duty.zaDuty_AmountEUR, 0D)
|
||||||
|
Dim art As String = If(duty.zaDuty_DutyType, "").Trim().ToUpperInvariant()
|
||||||
|
Select Case art.Trim.ToUpperInvariant()
|
||||||
|
'Zoll inkl. Zusatz-, Antidumping- und Ausgleichszoll
|
||||||
|
Case "A0000", "A00", "A2000", "A20", "A3000", "A30", "A35", "A4000", "A40"
|
||||||
|
zollbetr += betrag
|
||||||
|
|
||||||
|
'Einfuhrumsatzsteuer
|
||||||
|
Case "B0000", "B00", "5EV"
|
||||||
|
eust += betrag
|
||||||
|
|
||||||
|
'Sicherheiten, Summen und sonstige Abgaben nicht berücksichtigen
|
||||||
|
Case "2EU", "2IG", "2KO", "2PE", "2VF", "2VS", "5EU", "5ZO", "9EA", "6BE"
|
||||||
|
'Keine Addition
|
||||||
|
|
||||||
|
Case Else
|
||||||
|
'Debug.WriteLine("Unbekannte Abgabenart: " & art & " / Betrag: " & betrag.ToString())
|
||||||
|
zollbetr += betrag 'Default: Alle unbekannten Abgabenarten werden als Zoll behandelt
|
||||||
|
End Select
|
||||||
|
Next
|
||||||
|
ElseIf positionen.Count = 1 Then
|
||||||
|
'Nur bei einer Position sind Kopfabgaben eindeutig zuordenbar
|
||||||
|
zollbetr = gesamtZollKopf
|
||||||
|
eust = gesamtEustKopf
|
||||||
|
End If
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "----------------------------------------")
|
||||||
|
Debug.WriteLine(prefix & "Position: " & posNr)
|
||||||
|
Debug.WriteLine(prefix & "Excel-Zeile: " & zeile)
|
||||||
|
Debug.WriteLine(prefix & "Zoll: " & zollbetr.ToString("0.00"))
|
||||||
|
Debug.WriteLine(prefix & "EUSt: " & eust.ToString("0.00"))
|
||||||
|
|
||||||
|
'AZ - Registration Number ATC/ATD
|
||||||
|
ws.Cell(zeile, "AZ").Value = If(zoll.za_DeclarationNo, "")
|
||||||
|
|
||||||
|
'BA - Date of Acceptance
|
||||||
|
If zoll.za_AcceptanceDate.HasValue Then
|
||||||
|
ws.Cell(zeile, "BA").Value = zoll.za_AcceptanceDate.Value.ToString("dd.MM.yyyy")
|
||||||
|
Else
|
||||||
|
ws.Cell(zeile, "BA").Value = ""
|
||||||
|
End If
|
||||||
|
|
||||||
|
'BB - Registration Number MRN
|
||||||
|
ws.Cell(zeile, "BB").Value = If(zoll.za_MRN, "")
|
||||||
|
|
||||||
|
'BC - Office of Entry
|
||||||
|
ws.Cell(zeile, "BC").Value = If(zoll.za_EntryCustomsOffice, "")
|
||||||
|
|
||||||
|
'BD - Mode of Transport at the Border
|
||||||
|
ws.Cell(zeile, "BD").Value = If(ZOLL.za_TransportModeBorder, If(ZOLL.za_TransportModeInland, ""))
|
||||||
|
|
||||||
|
'BE - Identity of means of transport at the border
|
||||||
|
ws.Cell(zeile, "BE").Value = If(zoll.za_MeansOfTransport_Vehicle, "")
|
||||||
|
|
||||||
|
'BF - Nationality of means of transport at the border
|
||||||
|
ws.Cell(zeile, "BF").Value = If(zoll.za_MeansOfTransport_Nationality, "")
|
||||||
|
|
||||||
|
'BG - Inland Mode of Transport
|
||||||
|
ws.Cell(zeile, "BG").Value = If(ZOLL.za_TransportModeInland, If(ZOLL.za_TransportModeBorder, ""))
|
||||||
|
|
||||||
|
'BH - Identity of inland means of transport
|
||||||
|
ws.Cell(zeile, "BH").Value = If(zoll.za_MeansOfTransport_Vehicle, "")
|
||||||
|
|
||||||
|
'BI - Nationality of inland means of transport
|
||||||
|
ws.Cell(zeile, "BI").Value = If(zoll.za_MeansOfTransport_Nationality, "")
|
||||||
|
|
||||||
|
'BJ - Assessment of payable duty
|
||||||
|
ws.Cell(zeile, "BJ").Value = zollbetr
|
||||||
|
ws.Cell(zeile, "BJ").Style.NumberFormat.Format = "0.00"
|
||||||
|
|
||||||
|
'BK - Assessment of payable Import VAT
|
||||||
|
ws.Cell(zeile, "BK").Value = eust
|
||||||
|
ws.Cell(zeile, "BK").Style.NumberFormat.Format = "0.00"
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "AZ=" & ws.Cell(zeile, "AZ").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BA=" & ws.Cell(zeile, "BA").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BB=" & ws.Cell(zeile, "BB").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BC=" & ws.Cell(zeile, "BC").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BD=" & ws.Cell(zeile, "BD").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BE=" & ws.Cell(zeile, "BE").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BF=" & ws.Cell(zeile, "BF").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BG=" & ws.Cell(zeile, "BG").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BH=" & ws.Cell(zeile, "BH").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BI=" & ws.Cell(zeile, "BI").GetString())
|
||||||
|
Debug.WriteLine(prefix & "BJ=" & zollbetr.ToString("0.00"))
|
||||||
|
Debug.WriteLine(prefix & "BK=" & eust.ToString("0.00"))
|
||||||
|
Next
|
||||||
|
|
||||||
|
|
||||||
|
wb.Save()
|
||||||
|
Debug.WriteLine(prefix & "Original gespeichert: " & pfad)
|
||||||
|
|
||||||
|
|
||||||
|
dateienGespeichert += 1
|
||||||
|
End Using
|
||||||
|
Next
|
||||||
|
|
||||||
|
Debug.WriteLine(prefix & "BrokerManagementFiles gefunden: " & dateienGefunden)
|
||||||
|
Debug.WriteLine(prefix & "BrokerManagementFiles gespeichert: " & dateienGespeichert)
|
||||||
|
|
||||||
|
If dateienGefunden = 0 Then Debug.WriteLine(prefix & "WARNUNG: Kein BrokerManagementFile gefunden")
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
Debug.WriteLine(prefix & "FEHLER: " & ex.ToString())
|
||||||
|
Throw
|
||||||
|
Finally
|
||||||
|
Debug.WriteLine(prefix & "========== ENDE BrokerManagementFile ==========")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
' =====================================================================
|
' =====================================================================
|
||||||
' NCTS 004 -> VERAG TRANSIT
|
' NCTS 004 -> VERAG TRANSIT
|
||||||
' =====================================================================
|
' =====================================================================
|
||||||
|
|||||||
@@ -1439,7 +1439,25 @@ Public Class frmStartOptions
|
|||||||
End If
|
End If
|
||||||
'---------------------------------------------------------
|
'---------------------------------------------------------
|
||||||
|
|
||||||
|
'---------------------------------------------------------
|
||||||
|
' BrokerManagementFile immer zusätzlich anhängen
|
||||||
|
'---------------------------------------------------------
|
||||||
|
If SND.tblSnd_SendungID > 0 Then
|
||||||
|
Dim ANH_LIST As New List(Of VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge)
|
||||||
|
VERAG_PROG_ALLGEMEIN.cAvisoAnhaenge.LOAD_LIST_BySendung(ANH_LIST, SND.tblSnd_SendungID)
|
||||||
|
|
||||||
|
For Each l In ANH_LIST
|
||||||
|
If String.Equals(Convert.ToString(l.anh_Art), "BrokerManagementFile", StringComparison.OrdinalIgnoreCase) Then
|
||||||
|
If l.anh_docId > 0 Then
|
||||||
|
Dim PathTmpANH = (New VERAG_PROG_ALLGEMEIN.cDATENSERVER(l.anh_docId)).GET_TOP1_PATH(False)
|
||||||
|
If Not String.IsNullOrWhiteSpace(PathTmpANH) AndAlso Not pfadList.Contains(PathTmpANH) Then
|
||||||
|
pfadList.Add(PathTmpANH)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
'---------------------------------------------------------
|
||||||
|
|
||||||
VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, Mail_Art, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
|
VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, Mail_Art, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
|
||||||
' body = body.Replace("%Platzhalter%", "E-Mails: " & EMails & " CC: " & EMails_CC & " BCC:" & EMails_BCC)
|
' body = body.Replace("%Platzhalter%", "E-Mails: " & EMails & " CC: " & EMails_CC & " BCC:" & EMails_BCC)
|
||||||
|
|||||||
Reference in New Issue
Block a user