Artikelstamm, EZA Vorlagen XLS, WiseApi
This commit is contained in:
988
VERAG_PROG_ALLGEMEIN/VERAG_Zollanmeldung/cVERAG_Zollanmeldung.vb
Normal file
988
VERAG_PROG_ALLGEMEIN/VERAG_Zollanmeldung/cVERAG_Zollanmeldung.vb
Normal file
@@ -0,0 +1,988 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Reflection
|
||||
|
||||
' ==========================================================================
|
||||
' MASTER CLASS
|
||||
' Customs Declaration (Header + Items + Duties + Documents)
|
||||
' ==========================================================================
|
||||
|
||||
Public Class cVERAG_Zollanmeldung
|
||||
|
||||
'=== KONSTRUKTOR =======================================================
|
||||
|
||||
Public Sub New()
|
||||
End Sub
|
||||
|
||||
Public Sub New(id As Integer)
|
||||
za_Id = id
|
||||
LOAD()
|
||||
End Sub
|
||||
|
||||
|
||||
'=== FELDER ============================================================
|
||||
|
||||
Public Property za_Id As Integer
|
||||
Public Property za_System As String
|
||||
Public Property za_ExternalSystem As Boolean
|
||||
Public Property za_Firma As String
|
||||
Public Property za_Niederlassung As String
|
||||
|
||||
Public Property za_AvisoId As Integer?
|
||||
Public Property za_SendungsId As Integer?
|
||||
Public Property za_InternalRef As String
|
||||
|
||||
Public Property za_MRN As String
|
||||
Public Property za_LRN As String
|
||||
Public Property za_DeclarationNo As String
|
||||
|
||||
Public Property za_Procedure As String
|
||||
Public Property za_RepresentationCode As String
|
||||
Public Property za_FiscalRepresentation As Boolean?
|
||||
|
||||
Public Property za_CountryDispatch As String
|
||||
Public Property za_CountryDestination As String
|
||||
Public Property za_CountryOrigin As String
|
||||
|
||||
Public Property za_TotalItems As Integer?
|
||||
Public Property za_TotalGross As Decimal?
|
||||
Public Property za_TotalInvoice As Decimal?
|
||||
Public Property za_TotalCustomsValue As Decimal?
|
||||
|
||||
Public Property za_TransportMode_Border As Integer?
|
||||
Public Property za_VehicleId As String
|
||||
Public Property za_Incoterm As String
|
||||
Public Property za_IncotermPlace As String
|
||||
|
||||
Public Property za_DocumentsPresent As Boolean
|
||||
|
||||
Public Property za_ReleaseDate As Date?
|
||||
Public Property za_DeclarationDate As Date?
|
||||
Public Property za_Created As Date = Now
|
||||
Public Property za_Modified As Date = Now
|
||||
|
||||
|
||||
'=== UNTERKLASSEN ======================================================
|
||||
|
||||
Public Property Items As New List(Of cVERAG_Zollanmeldung_Item)
|
||||
Public Property Duties As New List(Of cVERAG_Zollanmeldung_Duty)
|
||||
Public Property Documents As New List(Of cVERAG_Zollanmeldung_Document)
|
||||
Public Property ItemDocuments As New List(Of cVERAG_Zollanmeldung_ItemDocument)
|
||||
|
||||
|
||||
Private SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' PARAMETERLISTE (Header)
|
||||
'========================================================================
|
||||
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
Dim L As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Id", za_Id,, True, True))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_System", za_System))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_ExternalSystem", za_ExternalSystem))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Firma", za_Firma))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Niederlassung", za_Niederlassung))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_AvisoId", za_AvisoId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_SendungsId", za_SendungsId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_InternalRef", za_InternalRef))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_MRN", za_MRN))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_LRN", za_LRN))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_DeclarationNo", za_DeclarationNo))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Procedure", za_Procedure))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_RepresentationCode", za_RepresentationCode))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_FiscalRepresentation", za_FiscalRepresentation))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_CountryDispatch", za_CountryDispatch))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_CountryDestination", za_CountryDestination))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_CountryOrigin", za_CountryOrigin))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_TotalItems", za_TotalItems))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_TotalGross", za_TotalGross))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_TotalInvoice", za_TotalInvoice))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_TotalCustomsValue", za_TotalCustomsValue))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_TransportMode_Border", za_TransportMode_Border))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_VehicleId", za_VehicleId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Incoterm", za_Incoterm))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_IncotermPlace", za_IncotermPlace))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_DocumentsPresent", za_DocumentsPresent))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_ReleaseDate", za_ReleaseDate))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_DeclarationDate", za_DeclarationDate))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Created", za_Created))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("za_Modified", za_Modified))
|
||||
|
||||
Return L
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE (HEADER)
|
||||
'========================================================================
|
||||
|
||||
Public Function SAVE() As Boolean
|
||||
|
||||
Dim list = getParameterList()
|
||||
|
||||
Dim sqlstr As String =
|
||||
" BEGIN TRAN " &
|
||||
" IF EXISTS(SELECT 1 FROM tblVERAG_CustomsDeclarations WHERE za_Id=@za_Id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
" ELSE BEGIN " & getInsertCmd() & " END " &
|
||||
" COMMIT TRAN "
|
||||
|
||||
za_Id = SQL.doSQLVarListID(za_Id, sqlstr, "VERAG", , list)
|
||||
Return za_Id > 0
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE_ALL (Header + Items + Duties + Docs)
|
||||
'========================================================================
|
||||
|
||||
Public Function SAVE_ALL() As Boolean
|
||||
|
||||
If Not SAVE() Then Return False
|
||||
If Not SAVE_Items() Then Return False
|
||||
If Not SAVE_Duties() Then Return False
|
||||
If Not SAVE_Documents() Then Return False
|
||||
If Not SAVE_ItemDocuments() Then Return False
|
||||
|
||||
Return True
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' LOAD HEADER
|
||||
'========================================================================
|
||||
|
||||
Public Function LOAD(Optional loadALL As Boolean = True) As Boolean
|
||||
|
||||
If loadALL Then
|
||||
Items.Clear()
|
||||
Duties.Clear()
|
||||
Documents.Clear()
|
||||
ItemDocuments.Clear()
|
||||
End If
|
||||
|
||||
Using conn = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblVERAG_CustomsDeclarations WHERE za_Id=@id", conn)
|
||||
cmd.Parameters.AddWithValue("@id", za_Id)
|
||||
Using dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
|
||||
For Each p In getParameterList()
|
||||
Dim prop = Me.GetType().GetProperty(p.Scalarvariable)
|
||||
If prop IsNot Nothing Then
|
||||
If IsDBNull(dr(p.Text)) Then
|
||||
prop.SetValue(Me, Nothing)
|
||||
Else
|
||||
prop.SetValue(Me, dr(p.Text))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
dr.Close()
|
||||
|
||||
If loadALL Then
|
||||
LOAD_Items()
|
||||
LOAD_Duties()
|
||||
LOAD_Documents()
|
||||
LOAD_ItemDocuments()
|
||||
End If
|
||||
|
||||
Return True
|
||||
|
||||
End If
|
||||
End Using
|
||||
End Using
|
||||
End Using
|
||||
|
||||
Return False
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE ITEMS
|
||||
'========================================================================
|
||||
|
||||
Private Function SAVE_Items() As Boolean
|
||||
For Each it In Items
|
||||
it.zaItem_DeclarationId = za_Id
|
||||
If Not it.SAVE() Then Return False
|
||||
Next
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE DUTIES
|
||||
'========================================================================
|
||||
|
||||
Private Function SAVE_Duties() As Boolean
|
||||
For Each du In Duties
|
||||
du.zaDuty_DeclarationId = za_Id
|
||||
If Not du.SAVE() Then Return False
|
||||
Next
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE DOCS HEADER
|
||||
'========================================================================
|
||||
|
||||
Private Function SAVE_Documents() As Boolean
|
||||
For Each d In Documents
|
||||
d.zaDoc_DeclarationId = za_Id
|
||||
If Not d.SAVE() Then Return False
|
||||
Next
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SAVE DOCS ITEM
|
||||
'========================================================================
|
||||
|
||||
Private Function SAVE_ItemDocuments() As Boolean
|
||||
For Each d In ItemDocuments
|
||||
If Not d.SAVE() Then Return False
|
||||
Next
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' LOAD UNTERKLASSEN
|
||||
'========================================================================
|
||||
|
||||
Private Sub LOAD_Items()
|
||||
|
||||
Using conn = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblVERAG_CustomsDeclarations_Items WHERE zaItem_DeclarationId=@id ORDER BY zaItem_Line", conn)
|
||||
cmd.Parameters.AddWithValue("@id", za_Id)
|
||||
Using dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
Dim it As New cVERAG_Zollanmeldung_Item
|
||||
it.LOAD_FROM_READER(dr)
|
||||
Items.Add(it)
|
||||
End While
|
||||
End Using
|
||||
End Using
|
||||
End Using
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub LOAD_Duties()
|
||||
|
||||
Using conn = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblVERAG_CustomsDeclarations_Duties WHERE zaDuty_DeclarationId=@id", conn)
|
||||
cmd.Parameters.AddWithValue("@id", za_Id)
|
||||
Using dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
Dim du As New cVERAG_Zollanmeldung_Duty
|
||||
du.LOAD_FROM_READER(dr)
|
||||
Duties.Add(du)
|
||||
End While
|
||||
End Using
|
||||
End Using
|
||||
End Using
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub LOAD_Documents()
|
||||
|
||||
Using conn = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblVERAG_CustomsDeclarations_Documents WHERE zaDoc_DeclarationId=@id AND zaDoc_Level='H'", conn)
|
||||
cmd.Parameters.AddWithValue("@id", za_Id)
|
||||
Using dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
Dim d As New cVERAG_Zollanmeldung_Document
|
||||
d.LOAD_FROM_READER(dr)
|
||||
Documents.Add(d)
|
||||
End While
|
||||
End Using
|
||||
End Using
|
||||
End Using
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
Private Sub LOAD_ItemDocuments()
|
||||
|
||||
Using conn = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblVERAG_CustomsDeclarations_Documents WHERE zaDoc_Level='I' AND zaDoc_DeclarationId=@id", conn)
|
||||
cmd.Parameters.AddWithValue("@id", za_Id)
|
||||
Using dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
Dim d As New cVERAG_Zollanmeldung_ItemDocument
|
||||
d.LOAD_FROM_READER(dr)
|
||||
ItemDocuments.Add(d)
|
||||
End While
|
||||
End Using
|
||||
End Using
|
||||
End Using
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'========================================================================
|
||||
' SQL HELPERS
|
||||
'========================================================================
|
||||
|
||||
Private Function getUpdateCmd() As String
|
||||
|
||||
Dim cols As New Text.StringBuilder()
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
cols.Append("[" & p.Text & "]=@" & p.Scalarvariable & ",")
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim setClause = cols.ToString().TrimEnd(","c)
|
||||
|
||||
Return "UPDATE tblVERAG_CustomsDeclarations SET " & setClause & " WHERE za_Id=@za_Id"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Function getInsertCmd() As String
|
||||
|
||||
Dim C As New List(Of String)
|
||||
Dim V As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
C.Add("[" & p.Text & "]")
|
||||
V.Add("@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "INSERT INTO tblVERAG_CustomsDeclarations (" &
|
||||
String.Join(",", C) &
|
||||
") VALUES (" &
|
||||
String.Join(",", V) &
|
||||
");"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
' ==========================================================================
|
||||
' ITEM
|
||||
' ==========================================================================
|
||||
|
||||
Public Class cVERAG_Zollanmeldung_Item
|
||||
|
||||
Public Property zaItem_Id As Integer
|
||||
Public Property zaItem_DeclarationId As Integer
|
||||
|
||||
Public Property zaItem_Line As Integer
|
||||
Public Property zaItem_ArticleCode As String
|
||||
Public Property zaItem_HSCode As String
|
||||
Public Property zaItem_Description As String
|
||||
|
||||
Public Property zaItem_Qty As Decimal?
|
||||
Public Property zaItem_Unit As String
|
||||
Public Property zaItem_Gross As Decimal?
|
||||
Public Property zaItem_Net As Decimal?
|
||||
|
||||
Public Property zaItem_InvoiceValue As Decimal?
|
||||
Public Property zaItem_CustomsValue As Decimal?
|
||||
Public Property zaItem_StatisticalValue As Decimal?
|
||||
Public Property zaItem_Currency As String
|
||||
|
||||
Public Property zaItem_OriginCountry As String
|
||||
Public Property zaItem_PreferenceCode As String
|
||||
|
||||
Private SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
|
||||
|
||||
'--- PARAMLIST ----------------------------------------------------------
|
||||
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
Dim L As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Id", zaItem_Id,, True, True))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_DeclarationId", zaItem_DeclarationId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Line", zaItem_Line))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_ArticleCode", zaItem_ArticleCode))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_HSCode", zaItem_HSCode))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Description", zaItem_Description))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Qty", zaItem_Qty))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Unit", zaItem_Unit))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Gross", zaItem_Gross))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Net", zaItem_Net))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_InvoiceValue", zaItem_InvoiceValue))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_CustomsValue", zaItem_CustomsValue))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_StatisticalValue", zaItem_StatisticalValue))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_Currency", zaItem_Currency))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_OriginCountry", zaItem_OriginCountry))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaItem_PreferenceCode", zaItem_PreferenceCode))
|
||||
|
||||
Return L
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- SAVE ---------------------------------------------------------------
|
||||
|
||||
Public Function SAVE() As Boolean
|
||||
|
||||
Dim list = getParameterList()
|
||||
|
||||
Dim sqlstr As String =
|
||||
" BEGIN TRAN " &
|
||||
" IF EXISTS(SELECT 1 FROM tblVERAG_CustomsDeclarations_Items WHERE zaItem_Id=@zaItem_Id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
" ELSE BEGIN " & getInsertCmd() & " END " &
|
||||
" COMMIT TRAN "
|
||||
|
||||
zaItem_Id = SQL.doSQLVarListID(zaItem_Id, sqlstr, "VERAG", , list)
|
||||
Return zaItem_Id > 0
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- LOAD FROM DATAREADER ----------------------------------------------
|
||||
|
||||
Public Sub LOAD_FROM_READER(dr As SqlDataReader)
|
||||
|
||||
For Each p In getParameterList()
|
||||
Dim prop = Me.GetType().GetProperty(p.Scalarvariable)
|
||||
If prop IsNot Nothing Then
|
||||
If IsDBNull(dr(p.Text)) Then
|
||||
prop.SetValue(Me, Nothing)
|
||||
Else
|
||||
prop.SetValue(Me, dr(p.Text))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
'--- SQL HELPERS --------------------------------------------------------
|
||||
|
||||
Private Function getUpdateCmd() As String
|
||||
|
||||
Dim cols As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
cols.Add("[" & p.Text & "]=@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "UPDATE tblVERAG_CustomsDeclarations_Items SET " &
|
||||
String.Join(",", cols) &
|
||||
" WHERE zaItem_Id=@zaItem_Id"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Function getInsertCmd() As String
|
||||
|
||||
Dim C As New List(Of String)
|
||||
Dim V As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
C.Add("[" & p.Text & "]")
|
||||
V.Add("@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "INSERT INTO tblVERAG_CustomsDeclarations_Items (" &
|
||||
String.Join(",", C) &
|
||||
") VALUES (" &
|
||||
String.Join(",", V) &
|
||||
")"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
' ==========================================================================
|
||||
' DUTY
|
||||
' ==========================================================================
|
||||
|
||||
Public Class cVERAG_Zollanmeldung_Duty
|
||||
|
||||
Public Property zaDuty_Id As Integer
|
||||
Public Property zaDuty_DeclarationId As Integer
|
||||
Public Property zaDuty_ItemId As Integer?
|
||||
|
||||
Public Property zaDuty_Type As String
|
||||
Public Property zaDuty_BaseAmountForeign As Decimal?
|
||||
Public Property zaDuty_BaseCurrency As String
|
||||
Public Property zaDuty_BaseAmountEUR As Decimal?
|
||||
|
||||
Public Property zaDuty_Rate As String
|
||||
Public Property zaDuty_AmountForeign As Decimal?
|
||||
Public Property zaDuty_AmountCurrency As String
|
||||
Public Property zaDuty_AmountEUR As Decimal?
|
||||
|
||||
Public Property zaDuty_DeferredFlag As Boolean?
|
||||
Public Property zaDuty_DeferredAccount As String
|
||||
|
||||
Public Property zaDuty_MeasureId As String
|
||||
Public Property zaDuty_Indicator As String
|
||||
Public Property zaDuty_Remarks As String
|
||||
|
||||
Private SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
|
||||
|
||||
'--- PARAMLIST ----------------------------------------------------------
|
||||
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
Dim L As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_Id", zaDuty_Id,, True, True))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_DeclarationId", zaDuty_DeclarationId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_ItemId", zaDuty_ItemId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_Type", zaDuty_Type))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_BaseAmountForeign", zaDuty_BaseAmountForeign))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_BaseCurrency", zaDuty_BaseCurrency))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_BaseAmountEUR", zaDuty_BaseAmountEUR))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_Rate", zaDuty_Rate))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_AmountForeign", zaDuty_AmountForeign))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_AmountCurrency", zaDuty_AmountCurrency))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_AmountEUR", zaDuty_AmountEUR))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_DeferredFlag", zaDuty_DeferredFlag))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_DeferredAccount", zaDuty_DeferredAccount))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_MeasureId", zaDuty_MeasureId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_Indicator", zaDuty_Indicator))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDuty_Remarks", zaDuty_Remarks))
|
||||
|
||||
Return L
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- SAVE ---------------------------------------------------------------
|
||||
|
||||
Public Function SAVE() As Boolean
|
||||
|
||||
Dim list = getParameterList()
|
||||
|
||||
Dim sqlstr As String =
|
||||
" BEGIN TRAN " &
|
||||
" IF EXISTS(SELECT 1 FROM tblVERAG_CustomsDeclarations_Duties WHERE zaDuty_Id=@zaDuty_Id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
" ELSE BEGIN " & getInsertCmd() & " END " &
|
||||
" COMMIT TRAN "
|
||||
|
||||
zaDuty_Id = SQL.doSQLVarListID(zaDuty_Id, sqlstr, "VERAG", , list)
|
||||
Return zaDuty_Id > 0
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- LOAD FROM DATAREADER ----------------------------------------------
|
||||
|
||||
Public Sub LOAD_FROM_READER(dr As SqlDataReader)
|
||||
|
||||
For Each p In getParameterList()
|
||||
Dim prop = Me.GetType().GetProperty(p.Scalarvariable)
|
||||
If prop IsNot Nothing Then
|
||||
If IsDBNull(dr(p.Text)) Then
|
||||
prop.SetValue(Me, Nothing)
|
||||
Else
|
||||
prop.SetValue(Me, dr(p.Text))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
'--- SQL HELPERS --------------------------------------------------------
|
||||
|
||||
Private Function getUpdateCmd() As String
|
||||
|
||||
Dim cols As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
cols.Add("[" & p.Text & "]=@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "UPDATE tblVERAG_CustomsDeclarations_Duties SET " &
|
||||
String.Join(",", cols) &
|
||||
" WHERE zaDuty_Id=@zaDuty_Id"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Function getInsertCmd() As String
|
||||
|
||||
Dim C As New List(Of String)
|
||||
Dim V As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
C.Add("[" & p.Text & "]")
|
||||
V.Add("@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "INSERT INTO tblVERAG_CustomsDeclarations_Duties (" &
|
||||
String.Join(",", C) &
|
||||
") VALUES (" &
|
||||
String.Join(",", V) &
|
||||
")"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
' ==========================================================================
|
||||
' DOCUMENT (HEADER)
|
||||
' ==========================================================================
|
||||
|
||||
Public Class cVERAG_Zollanmeldung_Document
|
||||
|
||||
Public Property zaDoc_Id As Integer
|
||||
Public Property zaDoc_DeclarationId As Integer
|
||||
|
||||
Public Property zaDoc_Level As String = "H"
|
||||
|
||||
Public Property zaDoc_Code As String
|
||||
Public Property zaDoc_Type As String
|
||||
Public Property zaDoc_Reference As String
|
||||
Public Property zaDoc_IssueDate As Date?
|
||||
Public Property zaDoc_IssueCountry As String
|
||||
Public Property zaDoc_IssueTIN As String
|
||||
Public Property zaDoc_UID As String
|
||||
Public Property zaDoc_ValidTo As Date?
|
||||
Public Property zaDoc_Remarks As String
|
||||
|
||||
Private SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
|
||||
|
||||
|
||||
'--- PARAMLIST ----------------------------------------------------------
|
||||
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
Dim L As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Id", zaDoc_Id,, True, True))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_DeclarationId", zaDoc_DeclarationId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Level", zaDoc_Level))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Code", zaDoc_Code))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Type", zaDoc_Type))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Reference", zaDoc_Reference))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueDate", zaDoc_IssueDate))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueCountry", zaDoc_IssueCountry))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueTIN", zaDoc_IssueTIN))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_UID", zaDoc_UID))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_ValidTo", zaDoc_ValidTo))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Remarks", zaDoc_Remarks))
|
||||
|
||||
Return L
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- SAVE ---------------------------------------------------------------
|
||||
|
||||
Public Function SAVE() As Boolean
|
||||
|
||||
Dim list = getParameterList()
|
||||
|
||||
Dim sqlstr As String =
|
||||
" BEGIN TRAN " &
|
||||
" IF EXISTS(SELECT 1 FROM tblVERAG_CustomsDeclarations_Documents WHERE zaDoc_Id=@zaDoc_Id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
" ELSE BEGIN " & getInsertCmd() & " END " &
|
||||
" COMMIT TRAN "
|
||||
|
||||
zaDoc_Id = SQL.doSQLVarListID(zaDoc_Id, sqlstr, "VERAG", , list)
|
||||
Return zaDoc_Id > 0
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- LOAD FROM DATAREADER ----------------------------------------------
|
||||
|
||||
Public Sub LOAD_FROM_READER(dr As SqlDataReader)
|
||||
|
||||
For Each p In getParameterList()
|
||||
Dim prop = Me.GetType().GetProperty(p.Scalarvariable)
|
||||
If prop IsNot Nothing Then
|
||||
If IsDBNull(dr(p.Text)) Then
|
||||
prop.SetValue(Me, Nothing)
|
||||
Else
|
||||
prop.SetValue(Me, dr(p.Text))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
'--- SQL HELPERS --------------------------------------------------------
|
||||
|
||||
Private Function getUpdateCmd() As String
|
||||
|
||||
Dim cols As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
cols.Add("[" & p.Text & "]=@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "UPDATE tblVERAG_CustomsDeclarations_Documents SET " &
|
||||
String.Join(",", cols) &
|
||||
" WHERE zaDoc_Id=@zaDoc_Id"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Function getInsertCmd() As String
|
||||
|
||||
Dim C As New List(Of String)
|
||||
Dim V As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
C.Add("[" & p.Text & "]")
|
||||
V.Add("@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "INSERT INTO tblVERAG_CustomsDeclarations_Documents (" &
|
||||
String.Join(",", C) &
|
||||
") VALUES (" &
|
||||
String.Join(",", V) &
|
||||
")"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
' ==========================================================================
|
||||
' DOCUMENT (ITEM)
|
||||
' ==========================================================================
|
||||
|
||||
Public Class cVERAG_Zollanmeldung_ItemDocument
|
||||
|
||||
Public Property zaDoc_Id As Integer
|
||||
Public Property zaDoc_DeclarationId As Integer?
|
||||
Public Property zaDoc_ItemId As Integer?
|
||||
|
||||
Public Property zaDoc_Level As String = "I"
|
||||
|
||||
Public Property zaDoc_Code As String
|
||||
Public Property zaDoc_Type As String
|
||||
Public Property zaDoc_Reference As String
|
||||
Public Property zaDoc_IssueDate As Date?
|
||||
Public Property zaDoc_IssueCountry As String
|
||||
Public Property zaDoc_IssueTIN As String
|
||||
Public Property zaDoc_UID As String
|
||||
Public Property zaDoc_ValidTo As Date?
|
||||
Public Property zaDoc_Remarks As String
|
||||
|
||||
Private SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
|
||||
|
||||
|
||||
'--- PARAMLIST ----------------------------------------------------------
|
||||
|
||||
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
Dim L As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Id", zaDoc_Id,, True, True))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_DeclarationId", zaDoc_DeclarationId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_ItemId", zaDoc_ItemId))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Level", zaDoc_Level))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Code", zaDoc_Code))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Type", zaDoc_Type))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Reference", zaDoc_Reference))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueDate", zaDoc_IssueDate))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueCountry", zaDoc_IssueCountry))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_IssueTIN", zaDoc_IssueTIN))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_UID", zaDoc_UID))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_ValidTo", zaDoc_ValidTo))
|
||||
L.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("zaDoc_Remarks", zaDoc_Remarks))
|
||||
|
||||
Return L
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- SAVE ---------------------------------------------------------------
|
||||
|
||||
Public Function SAVE() As Boolean
|
||||
|
||||
Dim list = getParameterList()
|
||||
|
||||
Dim sqlstr As String =
|
||||
" BEGIN TRAN " &
|
||||
" IF EXISTS(SELECT 1 FROM tblVERAG_CustomsDeclarations_Documents WHERE zaDoc_Id=@zaDoc_Id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
" ELSE BEGIN " & getInsertCmd() & " END " &
|
||||
" COMMIT TRAN "
|
||||
|
||||
zaDoc_Id = SQL.doSQLVarListID(zaDoc_Id, sqlstr, "VERAG", , list)
|
||||
Return zaDoc_Id > 0
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'--- LOAD FROM DATAREADER ----------------------------------------------
|
||||
|
||||
Public Sub LOAD_FROM_READER(dr As SqlDataReader)
|
||||
|
||||
For Each p In getParameterList()
|
||||
Dim prop = Me.GetType().GetProperty(p.Scalarvariable)
|
||||
If prop IsNot Nothing Then
|
||||
If IsDBNull(dr(p.Text)) Then
|
||||
prop.SetValue(Me, Nothing)
|
||||
Else
|
||||
prop.SetValue(Me, dr(p.Text))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
'--- SQL HELPERS --------------------------------------------------------
|
||||
|
||||
Private Function getUpdateCmd() As String
|
||||
|
||||
Dim cols As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
cols.Add("[" & p.Text & "]=@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "UPDATE tblVERAG_CustomsDeclarations_Documents SET " &
|
||||
String.Join(",", cols) &
|
||||
" WHERE zaDoc_Id=@zaDoc_Id"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Function getInsertCmd() As String
|
||||
|
||||
Dim C As New List(Of String)
|
||||
Dim V As New List(Of String)
|
||||
|
||||
For Each p In getParameterList()
|
||||
If Not p.isPrimaryParam Then
|
||||
C.Add("[" & p.Text & "]")
|
||||
V.Add("@" & p.Scalarvariable)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return "INSERT INTO tblVERAG_CustomsDeclarations_Documents (" &
|
||||
String.Join(",", C) &
|
||||
") VALUES (" &
|
||||
String.Join(",", V) &
|
||||
")"
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user