diff --git a/GUIs.Test.ZUGFeRDTest/Form1.Designer.vb b/GUIs.Test.ZUGFeRDTest/Form1.Designer.vb index ea45550e..42e34114 100644 --- a/GUIs.Test.ZUGFeRDTest/Form1.Designer.vb +++ b/GUIs.Test.ZUGFeRDTest/Form1.Designer.vb @@ -68,18 +68,18 @@ Partial Class Form1 ' Me.Button2.Location = New System.Drawing.Point(6, 19) Me.Button2.Name = "Button2" - Me.Button2.Size = New System.Drawing.Size(221, 23) + Me.Button2.Size = New System.Drawing.Size(246, 23) Me.Button2.TabIndex = 2 - Me.Button2.Text = "Validate PDF" + Me.Button2.Text = "Validate and Serialize PDF" Me.Button2.UseVisualStyleBackColor = True ' 'Button3 ' Me.Button3.Location = New System.Drawing.Point(6, 48) Me.Button3.Name = "Button3" - Me.Button3.Size = New System.Drawing.Size(221, 23) + Me.Button3.Size = New System.Drawing.Size(246, 23) Me.Button3.TabIndex = 3 - Me.Button3.Text = "Validate and Serialize PDF" + Me.Button3.Text = "Validate and Serialize PDF and Parse Props" Me.Button3.UseVisualStyleBackColor = True ' 'Button4 @@ -136,7 +136,7 @@ Partial Class Form1 ' Me.Button7.Location = New System.Drawing.Point(6, 77) Me.Button7.Name = "Button7" - Me.Button7.Size = New System.Drawing.Size(221, 23) + Me.Button7.Size = New System.Drawing.Size(246, 23) Me.Button7.TabIndex = 3 Me.Button7.Text = "Extract PDF Attachments" Me.Button7.UseVisualStyleBackColor = True diff --git a/GUIs.Test.ZUGFeRDTest/Form1.vb b/GUIs.Test.ZUGFeRDTest/Form1.vb index 0603bc3f..7cfdb15e 100644 --- a/GUIs.Test.ZUGFeRDTest/Form1.vb +++ b/GUIs.Test.ZUGFeRDTest/Form1.vb @@ -102,9 +102,13 @@ Public Class Form1 Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Dim oResult = OpenFileDialog1.ShowDialog() + Dim oArgs As New WorkerArgs() If oResult = DialogResult.OK Then - _zugferd.ValidateZUGFeRDFileWithGDPicture(OpenFileDialog1.FileName) + Dim oDoc = _zugferd.ValidateZUGFeRDFileWithGDPicture(OpenFileDialog1.FileName) + Dim oZUGFERD = _zugferd.SerializeZUGFeRDDocument(oDoc) + Console.WriteLine() + End If End Sub @@ -161,7 +165,7 @@ Public Class Form1 If oResult = DialogResult.OK Then Dim oDoc = _zugferd.ValidateZUGFeRDFileWithGDPicture(OpenFileDialog1.FileName) - Dim oZUGFERD As CrossIndustryDocumentType = _zugferd.SerializeZUGFeRDDocument(oDoc) + Dim oZUGFERD = _zugferd.SerializeZUGFeRDDocument(oDoc) Dim oPropName As String = txtPropName.Text Try diff --git a/GUIs.ZooFlow/ClassHelpers.vb b/GUIs.ZooFlow/ClassHelpers.vb index 652d849e..78b33675 100644 --- a/GUIs.ZooFlow/ClassHelpers.vb +++ b/GUIs.ZooFlow/ClassHelpers.vb @@ -10,7 +10,7 @@ Public Class ClassHelpers Public Function GetValueFromDatatable(pDatatable As DataTable, pFilterString As String, pCheckColumn As String, pSortString As String) As Object Try - If pDatatable.Rows.Count = 0 Then + If pDatatable Is Nothing OrElse pDatatable.Rows.Count = 0 Then Return Nothing End If diff --git a/GUIs.ZooFlow/Globix/ClassValidator.vb b/GUIs.ZooFlow/Globix/ClassValidator.vb index 5b8248d9..6668ad0b 100644 --- a/GUIs.ZooFlow/Globix/ClassValidator.vb +++ b/GUIs.ZooFlow/Globix/ClassValidator.vb @@ -52,10 +52,7 @@ Public Class ClassValidator Return False End If End If - End If - - ' ========================= COMBO BOX ========================= - If oControl.Name.StartsWith("cmbSingle") Then + ElseIf oControl.Name.StartsWith("cmbSingle") Then Dim cmbSingle As TextBox = oControl If cmbSingle.Text = "" Then @@ -68,9 +65,8 @@ Public Class ClassValidator Return False End If End If - End If - If oControl.Name.StartsWith("cmb") Then + ElseIf oControl.Name.StartsWith("cmb") Then Dim cmb As ComboBox = oControl If cmb.Text = "" Then Dim oIndexName = GetIndexName(cmb, "cmb") @@ -82,6 +78,7 @@ Public Class ClassValidator Return False End If End If + End If ' ========================= DATE PICKER ========================= @@ -139,8 +136,8 @@ Public Class ClassValidator 'End If oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(oTextBox.Text), + .Name = oIndexName, + .Values = WrapIndexValue(oTextBox.Text), .ControlName = oTextBox.Name }) End If @@ -155,14 +152,13 @@ Public Class ClassValidator End If oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(oValues), + .Name = oIndexName, + .Values = WrapIndexValue(oValues), .ControlName = oLookup.Name }) - End If - ' ========================= COMBO BOX ========================= - If oControl.Name.StartsWith("cmbSingle") Then + + ElseIf oControl.Name.StartsWith("cmbSingle") Then Dim cmbSingle As TextBox = oControl Dim oIndexName = GetIndexName(cmbSingle, "cmbSingle") @@ -170,13 +166,12 @@ Public Class ClassValidator End If oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(cmbSingle.Text), + .Name = oIndexName, + .Values = WrapIndexValue(cmbSingle.Text), .ControlName = cmbSingle.Name }) - End If - If oControl.Name.StartsWith("cmb") Then + ElseIf oControl.Name.StartsWith("cmb") Then Dim cmb As ComboBox = oControl Dim oIndexName = GetIndexName(cmb, "cmb") @@ -184,8 +179,8 @@ Public Class ClassValidator End If oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(cmb.Text), + .Name = oIndexName, + .Values = WrapIndexValue(cmb.Text), .ControlName = cmb.Name }) End If @@ -196,8 +191,8 @@ Public Class ClassValidator Dim oIndexName As String = GetIndexName(dtp, "dtp") oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(dtp.EditValue.ToString), + .Name = oIndexName, + .Values = WrapIndexValue(dtp.EditValue.ToString), .ControlName = dtp.Name }) End If @@ -209,8 +204,8 @@ Public Class ClassValidator oAttributeValues.Add(New UserAttributeValue With { - .AttributeName = oIndexName, - .AttributeValues = WrapIndexValue(chk.Checked.ToString), + .Name = oIndexName, + .Values = WrapIndexValue(chk.Checked.ToString), .ControlName = chk.Name }) End If diff --git a/GUIs.ZooFlow/Globix/frmGlobix_Index.vb b/GUIs.ZooFlow/Globix/frmGlobix_Index.vb index 0352f2d2..ed25ebd5 100644 --- a/GUIs.ZooFlow/Globix/frmGlobix_Index.vb +++ b/GUIs.ZooFlow/Globix/frmGlobix_Index.vb @@ -12,6 +12,7 @@ Imports DigitalData.Controls.LookupGrid Imports Independentsoft Imports DevExpress.XtraEditors.Controls Imports DigitalData.Modules.EDMI.API.EDMIServiceReference +Imports DigitalData.Modules.Database Public Class frmGlobix_Index #Region "+++++ Variablen ++++++" @@ -588,6 +589,7 @@ Public Class frmGlobix_Index End Sub Private Function GetLookupData(pLookup As LookupControl3, pSQLCommand As String, pConnectionId As Integer) Dim oConnectionString = GetConnectionString(pConnectionId) + oConnectionString = MSSQLServer.DecryptConnectionString(oConnectionString) If oConnectionString IsNot Nothing And pSQLCommand.Length > 0 Then _Logger.Debug("Connection String (redacted): [{0}]", oConnectionString.Substring(0, 30)) diff --git a/GUIs.ZooFlow/frmtest.vb b/GUIs.ZooFlow/frmtest.vb index 59000de3..b3e322ed 100644 --- a/GUIs.ZooFlow/frmtest.vb +++ b/GUIs.ZooFlow/frmtest.vb @@ -41,8 +41,8 @@ Public Class frmtest txtProfileId.Text, New List(Of EDMIServiceReference.UserAttributeValue) From { New EDMIServiceReference.UserAttributeValue With { - .AttributeName = "Attribut String1", - .AttributeValues = New List(Of String) From {"SchreiberM"}.ToArray + .Name = "Attribut String1", + .Values = New List(Of String) From {"SchreiberM"}.ToArray } }, "WORK", diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.xsd index df472490..6dfd5893 100644 --- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.xsd +++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.xsd @@ -22,10 +22,10 @@ - - - + + + diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb index 8ec03ba6..33d0d301 100644 --- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb +++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb @@ -635,18 +635,18 @@ Namespace EDMIServiceReference _ Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject - _ - Private AttributeIdField As Integer - - _ - Private AttributeNameField As String - - _ - Private AttributeValuesField() As String - _ Private ControlNameField As String + _ + Private IdField As Integer + + _ + Private NameField As String + + _ + Private ValuesField() As String + _ Public Property ExtensionData() As System.Runtime.Serialization.ExtensionDataObject Implements System.Runtime.Serialization.IExtensibleDataObject.ExtensionData Get @@ -657,45 +657,6 @@ Namespace EDMIServiceReference End Set End Property - _ - Public Property AttributeId() As Integer - Get - Return Me.AttributeIdField - End Get - Set - If (Me.AttributeIdField.Equals(value) <> true) Then - Me.AttributeIdField = value - Me.RaisePropertyChanged("AttributeId") - End If - End Set - End Property - - _ - Public Property AttributeName() As String - Get - Return Me.AttributeNameField - End Get - Set - If (Object.ReferenceEquals(Me.AttributeNameField, value) <> true) Then - Me.AttributeNameField = value - Me.RaisePropertyChanged("AttributeName") - End If - End Set - End Property - - _ - Public Property AttributeValues() As String() - Get - Return Me.AttributeValuesField - End Get - Set - If (Object.ReferenceEquals(Me.AttributeValuesField, value) <> true) Then - Me.AttributeValuesField = value - Me.RaisePropertyChanged("AttributeValues") - End If - End Set - End Property - _ Public Property ControlName() As String Get @@ -709,6 +670,45 @@ Namespace EDMIServiceReference End Set End Property + _ + Public Property Id() As Integer + Get + Return Me.IdField + End Get + Set + If (Me.IdField.Equals(value) <> true) Then + Me.IdField = value + Me.RaisePropertyChanged("Id") + End If + End Set + End Property + + _ + Public Property Name() As String + Get + Return Me.NameField + End Get + Set + If (Object.ReferenceEquals(Me.NameField, value) <> true) Then + Me.NameField = value + Me.RaisePropertyChanged("Name") + End If + End Set + End Property + + _ + Public Property Values() As String() + Get + Return Me.ValuesField + End Get + Set + If (Object.ReferenceEquals(Me.ValuesField, value) <> true) Then + Me.ValuesField = value + Me.RaisePropertyChanged("Values") + End If + End Set + End Property + Public Event PropertyChanged As System.ComponentModel.PropertyChangedEventHandler Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged Protected Sub RaisePropertyChanged(ByVal propertyName As String) @@ -933,7 +933,7 @@ Namespace EDMIServiceReference End Property Public Event PropertyChanged As System.ComponentModel.PropertyChangedEventHandler Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged - + Protected Sub RaisePropertyChanged(ByVal propertyName As String) Dim propertyChanged As System.ComponentModel.PropertyChangedEventHandler = Me.PropertyChangedEvent If (Not (propertyChanged) Is Nothing) Then diff --git a/Modules.Interfaces/Interfaces.vbproj b/Modules.Interfaces/Interfaces.vbproj index 8b9c838d..97c6fc33 100644 --- a/Modules.Interfaces/Interfaces.vbproj +++ b/Modules.Interfaces/Interfaces.vbproj @@ -109,11 +109,13 @@ Settings.settings True - + + + diff --git a/Modules.Interfaces/My Project/AssemblyInfo.vb b/Modules.Interfaces/My Project/AssemblyInfo.vb index eb1cd12a..642912e7 100644 --- a/Modules.Interfaces/My Project/AssemblyInfo.vb +++ b/Modules.Interfaces/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/Modules.Interfaces/ZUGFeRDInterface.vb b/Modules.Interfaces/ZUGFeRDInterface.vb index 9c69de55..d86d104c 100644 --- a/Modules.Interfaces/ZUGFeRDInterface.vb +++ b/Modules.Interfaces/ZUGFeRDInterface.vb @@ -11,9 +11,6 @@ Public Class ZUGFeRDInterface Private _logConfig As LogConfig Private _logger As Logger - Private Const ZUGFERD_CONVERTER_EXE = "ZUGFeRDInterface\pdf_zugferd_test.exe" 'ZUGFeRDInterface\pdf_zugferd_lib\pdf_zugferd_test.exe - Private Const ZUGFERD_CONVERTER_SUCCESS_MESSAGE = "Document contains ZUGFeRD data." - Public Enum ErrorType NoValidFile NoZugferd @@ -46,7 +43,7 @@ Public Class ZUGFeRDInterface ''' ''' ''' - Public Function ExtractZUGFeRDFileWithGDPicture(Path As String) As CrossIndustryDocumentType + Public Function ExtractZUGFeRDFileWithGDPicture(Path As String) As Object Dim oXmlDocument = ValidateZUGFeRDFileWithGDPicture(Path) If IsNothing(oXmlDocument) Then @@ -62,7 +59,7 @@ Public Class ZUGFeRDInterface ''' ''' ''' - Public Function ExtractZUGFeRDFileWithGDPicture(Stream As Stream) As CrossIndustryDocumentType + Public Function ExtractZUGFeRDFileWithGDPicture(Stream As Stream) As Object Dim oXmlDocument = ValidateZUGFeRDFileWithGDPicture(Stream) If IsNothing(oXmlDocument) Then @@ -164,16 +161,45 @@ Public Class ZUGFeRDInterface End Try End Function - Public Function SerializeZUGFeRDDocument(Document As XPathDocument) As CrossIndustryDocumentType + Public Function SerializeZUGFeRDDocument(Document As XPathDocument) As Object Try Dim oNavigator As XPathNavigator = Document.CreateNavigator() - Dim oReader = oNavigator.ReadSubtree() - Dim oSerializer As New XmlSerializer(GetType(CrossIndustryDocumentType)) + Dim oReader As XmlReader + Dim oResult = Nothing + + Dim oTypes As New List(Of Type) From { + GetType(ZUGFeRD.Version1_0.CrossIndustryDocumentType), + GetType(ZUGFeRD.Version2_0.CrossIndustryInvoiceType), + GetType(ZUGFeRD.Version2_1_1.CrossIndustryInvoiceType) + } + + For Each oType In oTypes + _logger.Debug("Trying Type [{0}]", oType.FullName) + Dim oSerializer As New XmlSerializer(oType) + + Try + oReader = oNavigator.ReadSubtree() + oResult = oSerializer.Deserialize(oReader) + _logger.Debug("Serializing with type [{0}] succeeded", oType.FullName) + Exit For + Catch ex As Exception + _logger.Debug("Serializing with type [{0}] failed", oType.FullName) + _logger.Debug(ex.Message) + _logger.Error(ex.InnerException?.Message) + End Try + Next + + If oResult Is Nothing Then + Throw New ApplicationException("No Types matched the given document. Document could not be serialized.") + End If + + Return oResult - Return oSerializer.Deserialize(oReader) Catch ex As Exception _logger.Error(ex) Throw New ZUGFeRDExecption(ErrorType.NoValidZugferd, "Datei ist eine ungültige ZUGFeRD Datei.") End Try End Function + + End Class diff --git a/Modules.Interfaces/ZUGFeRDInterface/CrossIndustryDocumentType.vb b/Modules.Interfaces/ZUGFeRDInterface/CrossIndustryDocumentType.vb deleted file mode 100644 index b0389666..00000000 --- a/Modules.Interfaces/ZUGFeRDInterface/CrossIndustryDocumentType.vb +++ /dev/null @@ -1,3176 +0,0 @@ -'------------------------------------------------------------------------------ -' -' Dieser Code wurde von einem Tool generiert. -' Laufzeitversion:4.0.30319.42000 -' -' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -' der Code erneut generiert wird. -' -'------------------------------------------------------------------------------ - -Option Strict Off -Option Explicit On - -Imports System.Xml.Serialization - -' -'This source code was auto-generated by xsd, Version=4.6.1055.0. -' - -''' - -Partial Public Class CrossIndustryDocumentType - - Private specifiedExchangedDocumentContextField As ExchangedDocumentContextType - - Private headerExchangedDocumentField As ExchangedDocumentType - - Private specifiedSupplyChainTradeTransactionField As SupplyChainTradeTransactionType - - ''' - Public Property SpecifiedExchangedDocumentContext() As ExchangedDocumentContextType - Get - Return Me.specifiedExchangedDocumentContextField - End Get - Set - Me.specifiedExchangedDocumentContextField = Value - End Set - End Property - - ''' - Public Property HeaderExchangedDocument() As ExchangedDocumentType - Get - Return Me.headerExchangedDocumentField - End Get - Set - Me.headerExchangedDocumentField = Value - End Set - End Property - - ''' - Public Property SpecifiedSupplyChainTradeTransaction() As SupplyChainTradeTransactionType - Get - Return Me.specifiedSupplyChainTradeTransactionField - End Get - Set - Me.specifiedSupplyChainTradeTransactionField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ExchangedDocumentContextType - - Private testIndicatorField As IndicatorType - - Private businessProcessSpecifiedDocumentContextParameterField() As DocumentContextParameterType - - Private guidelineSpecifiedDocumentContextParameterField() As DocumentContextParameterType - - ''' - Public Property TestIndicator() As IndicatorType - Get - Return Me.testIndicatorField - End Get - Set - Me.testIndicatorField = Value - End Set - End Property - - ''' - - Public Property BusinessProcessSpecifiedDocumentContextParameter() As DocumentContextParameterType() - Get - Return Me.businessProcessSpecifiedDocumentContextParameterField - End Get - Set - Me.businessProcessSpecifiedDocumentContextParameterField = Value - End Set - End Property - - ''' - - Public Property GuidelineSpecifiedDocumentContextParameter() As DocumentContextParameterType() - Get - Return Me.guidelineSpecifiedDocumentContextParameterField - End Get - Set - Me.guidelineSpecifiedDocumentContextParameterField = Value - End Set - End Property -End Class - -''' - -Partial Public Class IndicatorType - - Private itemField As Boolean - - ''' - - Public Property Item() As Boolean - Get - Return Me.itemField - End Get - Set - Me.itemField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ReferencedProductType - - Private globalIDField() As IDType - - Private sellerAssignedIDField As IDType - - Private buyerAssignedIDField As IDType - - Private nameField() As TextType - - Private descriptionField() As TextType - - Private unitQuantityField() As QuantityType - - ''' - - Public Property GlobalID() As IDType() - Get - Return Me.globalIDField - End Get - Set - Me.globalIDField = Value - End Set - End Property - - ''' - Public Property SellerAssignedID() As IDType - Get - Return Me.sellerAssignedIDField - End Get - Set - Me.sellerAssignedIDField = Value - End Set - End Property - - ''' - Public Property BuyerAssignedID() As IDType - Get - Return Me.buyerAssignedIDField - End Get - Set - Me.buyerAssignedIDField = Value - End Set - End Property - - ''' - - Public Property Name() As TextType() - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property - - ''' - - Public Property Description() As TextType() - Get - Return Me.descriptionField - End Get - Set - Me.descriptionField = Value - End Set - End Property - - ''' - - Public Property UnitQuantity() As QuantityType() - Get - Return Me.unitQuantityField - End Get - Set - Me.unitQuantityField = Value - End Set - End Property -End Class - -''' - -Partial Public Class IDType - - Private schemeIDField As String - - Private schemeAgencyIDField As String - - Private valueField As String - - ''' - - Public Property schemeID() As String - Get - Return Me.schemeIDField - End Get - Set - Me.schemeIDField = Value - End Set - End Property - - ''' - - Public Property schemeAgencyID() As String - Get - Return Me.schemeAgencyIDField - End Get - Set - Me.schemeAgencyIDField = Value - End Set - End Property - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TextType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class QuantityType - - Private unitCodeField As String - - Private valueField As Decimal - - ''' - - Public Property unitCode() As String - Get - Return Me.unitCodeField - End Get - Set - Me.unitCodeField = Value - End Set - End Property - - ''' - - Public Property Value() As Decimal - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ProductClassificationType - - Private classCodeField As CodeType - - Private classNameField() As TextType - - ''' - Public Property ClassCode() As CodeType - Get - Return Me.classCodeField - End Get - Set - Me.classCodeField = Value - End Set - End Property - - ''' - - Public Property ClassName() As TextType() - Get - Return Me.classNameField - End Get - Set - Me.classNameField = Value - End Set - End Property -End Class - -''' - -Partial Public Class CodeType - - Private listIDField As String - - Private listVersionIDField As String - - Private valueField As String - - ''' - - Public Property listID() As String - Get - Return Me.listIDField - End Get - Set - Me.listIDField = Value - End Set - End Property - - ''' - - Public Property listVersionID() As String - Get - Return Me.listVersionIDField - End Get - Set - Me.listVersionIDField = Value - End Set - End Property - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ProductCharacteristicType - - Private typeCodeField() As CodeType - - Private descriptionField() As TextType - - Private valueMeasureField() As MeasureType - - Private valueField() As TextType - - ''' - - Public Property TypeCode() As CodeType() - Get - Return Me.typeCodeField - End Get - Set - Me.typeCodeField = Value - End Set - End Property - - ''' - - Public Property Description() As TextType() - Get - Return Me.descriptionField - End Get - Set - Me.descriptionField = Value - End Set - End Property - - ''' - - Public Property ValueMeasure() As MeasureType() - Get - Return Me.valueMeasureField - End Get - Set - Me.valueMeasureField = Value - End Set - End Property - - ''' - - Public Property Value() As TextType() - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class MeasureType - - Private unitCodeField As String - - Private valueField As Decimal - - ''' - - Public Property unitCode() As String - Get - Return Me.unitCodeField - End Get - Set - Me.unitCodeField = Value - End Set - End Property - - ''' - - Public Property Value() As Decimal - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeProductType - - Private globalIDField() As IDType - - Private sellerAssignedIDField As IDType - - Private buyerAssignedIDField As IDType - - Private nameField() As TextType - - Private descriptionField() As TextType - - Private applicableProductCharacteristicField() As ProductCharacteristicType - - Private designatedProductClassificationField() As ProductClassificationType - - Private originTradeCountryField() As CountryIDType - - Private includedReferencedProductField() As ReferencedProductType - - ''' - - Public Property GlobalID() As IDType() - Get - Return Me.globalIDField - End Get - Set - Me.globalIDField = Value - End Set - End Property - - ''' - Public Property SellerAssignedID() As IDType - Get - Return Me.sellerAssignedIDField - End Get - Set - Me.sellerAssignedIDField = Value - End Set - End Property - - ''' - Public Property BuyerAssignedID() As IDType - Get - Return Me.buyerAssignedIDField - End Get - Set - Me.buyerAssignedIDField = Value - End Set - End Property - - ''' - - Public Property Name() As TextType() - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property - - ''' - - Public Property Description() As TextType() - Get - Return Me.descriptionField - End Get - Set - Me.descriptionField = Value - End Set - End Property - - ''' - - Public Property ApplicableProductCharacteristic() As ProductCharacteristicType() - Get - Return Me.applicableProductCharacteristicField - End Get - Set - Me.applicableProductCharacteristicField = Value - End Set - End Property - - ''' - - Public Property DesignatedProductClassification() As ProductClassificationType() - Get - Return Me.designatedProductClassificationField - End Get - Set - Me.designatedProductClassificationField = Value - End Set - End Property - - ''' - - Public Property OriginTradeCountry As CountryIDType() - Get - Return Me.originTradeCountryField - End Get - Set - Me.originTradeCountryField = Value - End Set - End Property - - ''' - - Public Property IncludedReferencedProduct() As ReferencedProductType() - Get - Return Me.includedReferencedProductField - End Get - Set - Me.includedReferencedProductField = Value - End Set - End Property -End Class - -''' - -Partial Public Class CountryIDType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DocumentLineDocumentType - - Private lineIDField As IDType - - Private includedNoteField() As NoteType - - ''' - Public Property LineID() As IDType - Get - Return Me.lineIDField - End Get - Set - Me.lineIDField = Value - End Set - End Property - - ''' - - Public Property IncludedNote() As NoteType() - Get - Return Me.includedNoteField - End Get - Set - Me.includedNoteField = Value - End Set - End Property -End Class - -''' - -Partial Public Class NoteType - - Private contentCodeField() As CodeType - - Private contentField() As TextType - - Private subjectCodeField As CodeType - - ''' - - Public Property ContentCode() As CodeType() - Get - Return Me.contentCodeField - End Get - Set - Me.contentCodeField = Value - End Set - End Property - - ''' - - Public Property Content() As TextType() - Get - Return Me.contentField - End Get - Set - Me.contentField = Value - End Set - End Property - - ''' - Public Property SubjectCode() As CodeType - Get - Return Me.subjectCodeField - End Get - Set - Me.subjectCodeField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SupplyChainTradeLineItemType - - Private associatedDocumentLineDocumentField As DocumentLineDocumentType - - Private specifiedSupplyChainTradeAgreementField As SupplyChainTradeAgreementType - - Private specifiedSupplyChainTradeDeliveryField As SupplyChainTradeDeliveryType - - Private specifiedSupplyChainTradeSettlementField As SupplyChainTradeSettlementType - - Private specifiedTradeProductField As TradeProductType - - ''' - Public Property AssociatedDocumentLineDocument() As DocumentLineDocumentType - Get - Return Me.associatedDocumentLineDocumentField - End Get - Set - Me.associatedDocumentLineDocumentField = Value - End Set - End Property - - ''' - Public Property SpecifiedSupplyChainTradeAgreement() As SupplyChainTradeAgreementType - Get - Return Me.specifiedSupplyChainTradeAgreementField - End Get - Set - Me.specifiedSupplyChainTradeAgreementField = Value - End Set - End Property - - ''' - Public Property SpecifiedSupplyChainTradeDelivery() As SupplyChainTradeDeliveryType - Get - Return Me.specifiedSupplyChainTradeDeliveryField - End Get - Set - Me.specifiedSupplyChainTradeDeliveryField = Value - End Set - End Property - - ''' - Public Property SpecifiedSupplyChainTradeSettlement() As SupplyChainTradeSettlementType - Get - Return Me.specifiedSupplyChainTradeSettlementField - End Get - Set - Me.specifiedSupplyChainTradeSettlementField = Value - End Set - End Property - - ''' - Public Property SpecifiedTradeProduct() As TradeProductType - Get - Return Me.specifiedTradeProductField - End Get - Set - Me.specifiedTradeProductField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SupplyChainTradeAgreementType - - Private buyerReferenceField() As TextType - - Private sellerTradePartyField As TradePartyType - - Private buyerTradePartyField As TradePartyType - - Private productEndUserTradePartyField As TradePartyType - - Private applicableTradeDeliveryTermsField As TradeDeliveryTermsType - - Private buyerOrderReferencedDocumentField() As ReferencedDocumentType - - Private contractReferencedDocumentField() As ReferencedDocumentType - - Private additionalReferencedDocumentField() As ReferencedDocumentType - - Private grossPriceProductTradePriceField() As TradePriceType - - Private netPriceProductTradePriceField() As TradePriceType - - Private customerOrderReferencedDocumentField() As ReferencedDocumentType - - ''' - - Public Property BuyerReference() As TextType() - Get - Return Me.buyerReferenceField - End Get - Set - Me.buyerReferenceField = Value - End Set - End Property - - ''' - Public Property SellerTradeParty() As TradePartyType - Get - Return Me.sellerTradePartyField - End Get - Set - Me.sellerTradePartyField = Value - End Set - End Property - - ''' - Public Property BuyerTradeParty() As TradePartyType - Get - Return Me.buyerTradePartyField - End Get - Set - Me.buyerTradePartyField = Value - End Set - End Property - - ''' - Public Property ProductEndUserTradeParty() As TradePartyType - Get - Return Me.productEndUserTradePartyField - End Get - Set - Me.productEndUserTradePartyField = Value - End Set - End Property - - ''' - Public Property ApplicableTradeDeliveryTerms() As TradeDeliveryTermsType - Get - Return Me.applicableTradeDeliveryTermsField - End Get - Set - Me.applicableTradeDeliveryTermsField = Value - End Set - End Property - - ''' - - Public Property BuyerOrderReferencedDocument() As ReferencedDocumentType() - Get - Return Me.buyerOrderReferencedDocumentField - End Get - Set - Me.buyerOrderReferencedDocumentField = Value - End Set - End Property - - ''' - - Public Property ContractReferencedDocument() As ReferencedDocumentType() - Get - Return Me.contractReferencedDocumentField - End Get - Set - Me.contractReferencedDocumentField = Value - End Set - End Property - - ''' - - Public Property AdditionalReferencedDocument() As ReferencedDocumentType() - Get - Return Me.additionalReferencedDocumentField - End Get - Set - Me.additionalReferencedDocumentField = Value - End Set - End Property - - ''' - - Public Property GrossPriceProductTradePrice() As TradePriceType() - Get - Return Me.grossPriceProductTradePriceField - End Get - Set - Me.grossPriceProductTradePriceField = Value - End Set - End Property - - ''' - - Public Property NetPriceProductTradePrice() As TradePriceType() - Get - Return Me.netPriceProductTradePriceField - End Get - Set - Me.netPriceProductTradePriceField = Value - End Set - End Property - - ''' - - Public Property CustomerOrderReferencedDocument() As ReferencedDocumentType() - Get - Return Me.customerOrderReferencedDocumentField - End Get - Set - Me.customerOrderReferencedDocumentField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradePartyType - - Private idField() As IDType - - Private globalIDField() As IDType - - Private nameField As TextType - - Private definedTradeContactField() As TradeContactType - - Private postalTradeAddressField As TradeAddressType - - Private specifiedTaxRegistrationField() As TaxRegistrationType - - ''' - - Public Property ID() As IDType() - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property - - ''' - - Public Property GlobalID() As IDType() - Get - Return Me.globalIDField - End Get - Set - Me.globalIDField = Value - End Set - End Property - - ''' - Public Property Name() As TextType - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property - - ''' - - Public Property DefinedTradeContact() As TradeContactType() - Get - Return Me.definedTradeContactField - End Get - Set - Me.definedTradeContactField = Value - End Set - End Property - - ''' - Public Property PostalTradeAddress() As TradeAddressType - Get - Return Me.postalTradeAddressField - End Get - Set - Me.postalTradeAddressField = Value - End Set - End Property - - ''' - - Public Property SpecifiedTaxRegistration() As TaxRegistrationType() - Get - Return Me.specifiedTaxRegistrationField - End Get - Set - Me.specifiedTaxRegistrationField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeContactType - - Private personNameField As TextType - - Private departmentNameField As TextType - - Private telephoneUniversalCommunicationField() As UniversalCommunicationType - - Private faxUniversalCommunicationField() As UniversalCommunicationType - - Private emailURIUniversalCommunicationField As UniversalCommunicationType - - ''' - Public Property PersonName() As TextType - Get - Return Me.personNameField - End Get - Set - Me.personNameField = Value - End Set - End Property - - ''' - Public Property DepartmentName() As TextType - Get - Return Me.departmentNameField - End Get - Set - Me.departmentNameField = Value - End Set - End Property - - ''' - - Public Property TelephoneUniversalCommunication() As UniversalCommunicationType() - Get - Return Me.telephoneUniversalCommunicationField - End Get - Set - Me.telephoneUniversalCommunicationField = Value - End Set - End Property - - ''' - - Public Property FaxUniversalCommunication() As UniversalCommunicationType() - Get - Return Me.faxUniversalCommunicationField - End Get - Set - Me.faxUniversalCommunicationField = Value - End Set - End Property - - ''' - Public Property EmailURIUniversalCommunication() As UniversalCommunicationType - Get - Return Me.emailURIUniversalCommunicationField - End Get - Set - Me.emailURIUniversalCommunicationField = Value - End Set - End Property -End Class - -''' - -Partial Public Class UniversalCommunicationType - - Private uRIIDField As IDType - - Private completeNumberField As TextType - - ''' - Public Property URIID() As IDType - Get - Return Me.uRIIDField - End Get - Set - Me.uRIIDField = Value - End Set - End Property - - ''' - Public Property CompleteNumber() As TextType - Get - Return Me.completeNumberField - End Get - Set - Me.completeNumberField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeAddressType - - Private postcodeCodeField() As CodeType - - Private lineOneField As TextType - - Private lineTwoField As TextType - - Private cityNameField As TextType - - Private countryIDField As CountryIDType - - ''' - - Public Property PostcodeCode() As CodeType() - Get - Return Me.postcodeCodeField - End Get - Set - Me.postcodeCodeField = Value - End Set - End Property - - ''' - Public Property LineOne() As TextType - Get - Return Me.lineOneField - End Get - Set - Me.lineOneField = Value - End Set - End Property - - ''' - Public Property LineTwo() As TextType - Get - Return Me.lineTwoField - End Get - Set - Me.lineTwoField = Value - End Set - End Property - - ''' - Public Property CityName() As TextType - Get - Return Me.cityNameField - End Get - Set - Me.cityNameField = Value - End Set - End Property - - ''' - Public Property CountryID() As CountryIDType - Get - Return Me.countryIDField - End Get - Set - Me.countryIDField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TaxRegistrationType - - Private idField As IDType - - ''' - Public Property ID() As IDType - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeDeliveryTermsType - - Private deliveryTypeCodeField As DeliveryTermsCodeType - - ''' - Public Property DeliveryTypeCode() As DeliveryTermsCodeType - Get - Return Me.deliveryTypeCodeField - End Get - Set - Me.deliveryTypeCodeField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DeliveryTermsCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ReferencedDocumentType - - Private issueDateTimeField As String - - Private lineIDField As IDType - - Private typeCodeField As DocumentCodeType - - Private idField() As IDType - - Private referenceTypeCodeField As ReferenceCodeType - - ''' - Public Property IssueDateTime() As String - Get - Return Me.issueDateTimeField - End Get - Set - Me.issueDateTimeField = Value - End Set - End Property - - ''' - Public Property LineID() As IDType - Get - Return Me.lineIDField - End Get - Set - Me.lineIDField = Value - End Set - End Property - - ''' - Public Property TypeCode() As DocumentCodeType - Get - Return Me.typeCodeField - End Get - Set - Me.typeCodeField = Value - End Set - End Property - - ''' - - Public Property ID() As IDType() - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property - - ''' - Public Property ReferenceTypeCode() As ReferenceCodeType - Get - Return Me.referenceTypeCodeField - End Get - Set - Me.referenceTypeCodeField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DocumentCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ReferenceCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradePriceType - - Private chargeAmountField() As AmountType - - Private basisQuantityField As QuantityType - - Private appliedTradeAllowanceChargeField() As TradeAllowanceChargeType - - ''' - - Public Property ChargeAmount() As AmountType() - Get - Return Me.chargeAmountField - End Get - Set - Me.chargeAmountField = Value - End Set - End Property - - ''' - Public Property BasisQuantity() As QuantityType - Get - Return Me.basisQuantityField - End Get - Set - Me.basisQuantityField = Value - End Set - End Property - - ''' - - Public Property AppliedTradeAllowanceCharge() As TradeAllowanceChargeType() - Get - Return Me.appliedTradeAllowanceChargeField - End Get - Set - Me.appliedTradeAllowanceChargeField = Value - End Set - End Property -End Class - -''' - -Partial Public Class AmountType - - Private currencyIDField As String - - Private valueField As Decimal - - ''' - - Public Property currencyID() As String - Get - Return Me.currencyIDField - End Get - Set - Me.currencyIDField = Value - End Set - End Property - - ''' - - Public Property Value() As Decimal - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeAllowanceChargeType - - Private chargeIndicatorField As IndicatorType - - Private sequenceNumericField As NumericType - - Private calculationPercentField As PercentType - - Private basisAmountField As AmountType - - Private basisQuantityField As QuantityType - - Private actualAmountField() As AmountType - - Private reasonCodeField As AllowanceChargeReasonCodeType - - Private reasonField As TextType - - Private categoryTradeTaxField() As TradeTaxType - - ''' - Public Property ChargeIndicator() As IndicatorType - Get - Return Me.chargeIndicatorField - End Get - Set - Me.chargeIndicatorField = Value - End Set - End Property - - ''' - Public Property SequenceNumeric() As NumericType - Get - Return Me.sequenceNumericField - End Get - Set - Me.sequenceNumericField = Value - End Set - End Property - - ''' - Public Property CalculationPercent() As PercentType - Get - Return Me.calculationPercentField - End Get - Set - Me.calculationPercentField = Value - End Set - End Property - - ''' - Public Property BasisAmount() As AmountType - Get - Return Me.basisAmountField - End Get - Set - Me.basisAmountField = Value - End Set - End Property - - ''' - Public Property BasisQuantity() As QuantityType - Get - Return Me.basisQuantityField - End Get - Set - Me.basisQuantityField = Value - End Set - End Property - - ''' - - Public Property ActualAmount() As AmountType() - Get - Return Me.actualAmountField - End Get - Set - Me.actualAmountField = Value - End Set - End Property - - ''' - Public Property ReasonCode() As AllowanceChargeReasonCodeType - Get - Return Me.reasonCodeField - End Get - Set - Me.reasonCodeField = Value - End Set - End Property - - ''' - Public Property Reason() As TextType - Get - Return Me.reasonField - End Get - Set - Me.reasonField = Value - End Set - End Property - - ''' - - Public Property CategoryTradeTax() As TradeTaxType() - Get - Return Me.categoryTradeTaxField - End Get - Set - Me.categoryTradeTaxField = Value - End Set - End Property -End Class - -''' - -Partial Public Class NumericType - - Private valueField As Decimal - - ''' - - Public Property Value() As Decimal - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class PercentType - - Private valueField As Decimal - - ''' - - Public Property Value() As Decimal - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class AllowanceChargeReasonCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeTaxType - - Private calculatedAmountField() As AmountType - - Private typeCodeField As TaxTypeCodeType - - Private exemptionReasonField As TextType - - Private basisAmountField() As AmountType - - Private lineTotalBasisAmountField() As AmountType - - Private allowanceChargeBasisAmountField() As AmountType - - Private categoryCodeField As TaxCategoryCodeType - - Private applicablePercentField As PercentType - - ''' - - Public Property CalculatedAmount() As AmountType() - Get - Return Me.calculatedAmountField - End Get - Set - Me.calculatedAmountField = Value - End Set - End Property - - ''' - Public Property TypeCode() As TaxTypeCodeType - Get - Return Me.typeCodeField - End Get - Set - Me.typeCodeField = Value - End Set - End Property - - ''' - Public Property ExemptionReason() As TextType - Get - Return Me.exemptionReasonField - End Get - Set - Me.exemptionReasonField = Value - End Set - End Property - - ''' - - Public Property BasisAmount() As AmountType() - Get - Return Me.basisAmountField - End Get - Set - Me.basisAmountField = Value - End Set - End Property - - ''' - - Public Property LineTotalBasisAmount() As AmountType() - Get - Return Me.lineTotalBasisAmountField - End Get - Set - Me.lineTotalBasisAmountField = Value - End Set - End Property - - ''' - - Public Property AllowanceChargeBasisAmount() As AmountType() - Get - Return Me.allowanceChargeBasisAmountField - End Get - Set - Me.allowanceChargeBasisAmountField = Value - End Set - End Property - - ''' - Public Property CategoryCode() As TaxCategoryCodeType - Get - Return Me.categoryCodeField - End Get - Set - Me.categoryCodeField = Value - End Set - End Property - - ''' - Public Property ApplicablePercent() As PercentType - Get - Return Me.applicablePercentField - End Get - Set - Me.applicablePercentField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TaxTypeCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TaxCategoryCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SupplyChainTradeDeliveryType - - Private billedQuantityField As QuantityType - - Private chargeFreeQuantityField As QuantityType - - Private packageQuantityField As QuantityType - - Private relatedSupplyChainConsignmentField() As LogisticsTransportMovementType - - Private shipToTradePartyField As TradePartyType - - Private ultimateShipToTradePartyField As TradePartyType - - Private shipFromTradePartyField As TradePartyType - - Private actualDeliverySupplyChainEventField() As DateTimeType - - Private despatchAdviceReferencedDocumentField As ReferencedDocumentType - - Private receivingAdviceReferencedDocumentField() As ReferencedDocumentType - - Private deliveryNoteReferencedDocumentField As ReferencedDocumentType - - ''' - Public Property BilledQuantity() As QuantityType - Get - Return Me.billedQuantityField - End Get - Set - Me.billedQuantityField = Value - End Set - End Property - - ''' - Public Property ChargeFreeQuantity() As QuantityType - Get - Return Me.chargeFreeQuantityField - End Get - Set - Me.chargeFreeQuantityField = Value - End Set - End Property - - ''' - Public Property PackageQuantity() As QuantityType - Get - Return Me.packageQuantityField - End Get - Set - Me.packageQuantityField = Value - End Set - End Property - - ''' - - Public Property RelatedSupplyChainConsignment() As LogisticsTransportMovementType() - Get - Return Me.relatedSupplyChainConsignmentField - End Get - Set - Me.relatedSupplyChainConsignmentField = Value - End Set - End Property - - ''' - Public Property ShipToTradeParty() As TradePartyType - Get - Return Me.shipToTradePartyField - End Get - Set - Me.shipToTradePartyField = Value - End Set - End Property - - ''' - Public Property UltimateShipToTradeParty() As TradePartyType - Get - Return Me.ultimateShipToTradePartyField - End Get - Set - Me.ultimateShipToTradePartyField = Value - End Set - End Property - - ''' - Public Property ShipFromTradeParty() As TradePartyType - Get - Return Me.shipFromTradePartyField - End Get - Set - Me.shipFromTradePartyField = Value - End Set - End Property - - ''' - - Public Property ActualDeliverySupplyChainEvent() As DateTimeType() - Get - Return Me.actualDeliverySupplyChainEventField - End Get - Set - Me.actualDeliverySupplyChainEventField = Value - End Set - End Property - - ''' - Public Property DespatchAdviceReferencedDocument() As ReferencedDocumentType - Get - Return Me.despatchAdviceReferencedDocumentField - End Get - Set - Me.despatchAdviceReferencedDocumentField = Value - End Set - End Property - - ''' - - Public Property ReceivingAdviceReferencedDocument() As ReferencedDocumentType() - Get - Return Me.receivingAdviceReferencedDocumentField - End Get - Set - Me.receivingAdviceReferencedDocumentField = Value - End Set - End Property - - ''' - Public Property DeliveryNoteReferencedDocument() As ReferencedDocumentType - Get - Return Me.deliveryNoteReferencedDocumentField - End Get - Set - Me.deliveryNoteReferencedDocumentField = Value - End Set - End Property -End Class - -''' - -Partial Public Class LogisticsTransportMovementType - - Private modeCodeField As CodeType - - Private idField As IDType - - ''' - Public Property ModeCode() As CodeType - Get - Return Me.modeCodeField - End Get - Set - Me.modeCodeField = Value - End Set - End Property - - ''' - Public Property ID() As IDType - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DateTimeType - - Private itemField As DateTimeTypeDateTimeString - - ''' - - Public Property Item() As DateTimeTypeDateTimeString - Get - Return Me.itemField - End Get - Set - Me.itemField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DateTimeTypeDateTimeString - - Private formatField As String - - Private valueField As String - - ''' - - Public Property format() As String - Get - Return Me.formatField - End Get - Set - Me.formatField = Value - End Set - End Property - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SupplyChainTradeSettlementType - - Private paymentReferenceField() As TextType - - Private invoiceCurrencyCodeField As CodeType - - Private invoiceeTradePartyField As TradePartyType - - Private payeeTradePartyField() As TradePartyType - - Private specifiedTradeSettlementPaymentMeansField() As TradeSettlementPaymentMeansType - - Private applicableTradeTaxField() As TradeTaxType - - Private billingSpecifiedPeriodField() As SpecifiedPeriodType - - Private specifiedTradeAllowanceChargeField() As TradeAllowanceChargeType - - Private specifiedLogisticsServiceChargeField() As LogisticsServiceChargeType - - Private specifiedTradePaymentTermsField() As TradePaymentTermsType - - Private specifiedTradeAccountingAccountField() As TradeAccountingAccountType - - Private specifiedTradeSettlementMonetarySummationField As TradeSettlementMonetarySummationType - - Private receivableSpecifiedTradeAccountingAccountField() As TradeAccountingAccountType - - ''' - - Public Property PaymentReference() As TextType() - Get - Return Me.paymentReferenceField - End Get - Set - Me.paymentReferenceField = Value - End Set - End Property - - ''' - Public Property InvoiceCurrencyCode() As CodeType - Get - Return Me.invoiceCurrencyCodeField - End Get - Set - Me.invoiceCurrencyCodeField = Value - End Set - End Property - - ''' - Public Property InvoiceeTradeParty() As TradePartyType - Get - Return Me.invoiceeTradePartyField - End Get - Set - Me.invoiceeTradePartyField = Value - End Set - End Property - - ''' - - Public Property PayeeTradeParty() As TradePartyType() - Get - Return Me.payeeTradePartyField - End Get - Set - Me.payeeTradePartyField = Value - End Set - End Property - - ''' - - Public Property SpecifiedTradeSettlementPaymentMeans() As TradeSettlementPaymentMeansType() - Get - Return Me.specifiedTradeSettlementPaymentMeansField - End Get - Set - Me.specifiedTradeSettlementPaymentMeansField = Value - End Set - End Property - - ''' - - Public Property ApplicableTradeTax() As TradeTaxType() - Get - Return Me.applicableTradeTaxField - End Get - Set - Me.applicableTradeTaxField = Value - End Set - End Property - - ''' - - Public Property BillingSpecifiedPeriod() As SpecifiedPeriodType() - Get - Return Me.billingSpecifiedPeriodField - End Get - Set - Me.billingSpecifiedPeriodField = Value - End Set - End Property - - ''' - - Public Property SpecifiedTradeAllowanceCharge() As TradeAllowanceChargeType() - Get - Return Me.specifiedTradeAllowanceChargeField - End Get - Set - Me.specifiedTradeAllowanceChargeField = Value - End Set - End Property - - ''' - - Public Property SpecifiedLogisticsServiceCharge() As LogisticsServiceChargeType() - Get - Return Me.specifiedLogisticsServiceChargeField - End Get - Set - Me.specifiedLogisticsServiceChargeField = Value - End Set - End Property - - ''' - - Public Property SpecifiedTradePaymentTerms() As TradePaymentTermsType() - Get - Return Me.specifiedTradePaymentTermsField - End Get - Set - Me.specifiedTradePaymentTermsField = Value - End Set - End Property - - ''' - - Public Property SpecifiedTradeAccountingAccount() As TradeAccountingAccountType() - Get - Return Me.specifiedTradeAccountingAccountField - End Get - Set - Me.specifiedTradeAccountingAccountField = Value - End Set - End Property - - ''' - Public Property SpecifiedTradeSettlementMonetarySummation() As TradeSettlementMonetarySummationType - Get - Return Me.specifiedTradeSettlementMonetarySummationField - End Get - Set - Me.specifiedTradeSettlementMonetarySummationField = Value - End Set - End Property - - ''' - - Public Property ReceivableSpecifiedTradeAccountingAccount() As TradeAccountingAccountType() - Get - Return Me.receivableSpecifiedTradeAccountingAccountField - End Get - Set - Me.receivableSpecifiedTradeAccountingAccountField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeSettlementPaymentMeansType - - Private typeCodeField As PaymentMeansCodeType - - Private informationField() As TextType - - Private idField() As IDType - - Private payerPartyDebtorFinancialAccountField As DebtorFinancialAccountType - - Private payeePartyCreditorFinancialAccountField As CreditorFinancialAccountType - - Private payerSpecifiedDebtorFinancialInstitutionField As DebtorFinancialInstitutionType - - Private payeeSpecifiedCreditorFinancialInstitutionField As CreditorFinancialInstitutionType - - ''' - Public Property TypeCode() As PaymentMeansCodeType - Get - Return Me.typeCodeField - End Get - Set - Me.typeCodeField = Value - End Set - End Property - - ''' - - Public Property Information() As TextType() - Get - Return Me.informationField - End Get - Set - Me.informationField = Value - End Set - End Property - - ''' - - Public Property ID() As IDType() - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property - - ''' - Public Property PayerPartyDebtorFinancialAccount() As DebtorFinancialAccountType - Get - Return Me.payerPartyDebtorFinancialAccountField - End Get - Set - Me.payerPartyDebtorFinancialAccountField = Value - End Set - End Property - - ''' - Public Property PayeePartyCreditorFinancialAccount() As CreditorFinancialAccountType - Get - Return Me.payeePartyCreditorFinancialAccountField - End Get - Set - Me.payeePartyCreditorFinancialAccountField = Value - End Set - End Property - - ''' - Public Property PayerSpecifiedDebtorFinancialInstitution() As DebtorFinancialInstitutionType - Get - Return Me.payerSpecifiedDebtorFinancialInstitutionField - End Get - Set - Me.payerSpecifiedDebtorFinancialInstitutionField = Value - End Set - End Property - - ''' - Public Property PayeeSpecifiedCreditorFinancialInstitution() As CreditorFinancialInstitutionType - Get - Return Me.payeeSpecifiedCreditorFinancialInstitutionField - End Get - Set - Me.payeeSpecifiedCreditorFinancialInstitutionField = Value - End Set - End Property -End Class - -''' - -Partial Public Class PaymentMeansCodeType - - Private valueField As String - - ''' - - Public Property Value() As String - Get - Return Me.valueField - End Get - Set - Me.valueField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DebtorFinancialAccountType - - Private iBANIDField As IDType - - Private proprietaryIDField As IDType - - ''' - Public Property IBANID() As IDType - Get - Return Me.iBANIDField - End Get - Set - Me.iBANIDField = Value - End Set - End Property - - ''' - Public Property ProprietaryID() As IDType - Get - Return Me.proprietaryIDField - End Get - Set - Me.proprietaryIDField = Value - End Set - End Property -End Class - -''' - -Partial Public Class CreditorFinancialAccountType - - Private iBANIDField As IDType - - Private accountNameField As TextType - - Private proprietaryIDField As IDType - - ''' - Public Property IBANID() As IDType - Get - Return Me.iBANIDField - End Get - Set - Me.iBANIDField = Value - End Set - End Property - - ''' - Public Property AccountName() As TextType - Get - Return Me.accountNameField - End Get - Set - Me.accountNameField = Value - End Set - End Property - - ''' - Public Property ProprietaryID() As IDType - Get - Return Me.proprietaryIDField - End Get - Set - Me.proprietaryIDField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DebtorFinancialInstitutionType - - Private bICIDField As IDType - - Private germanBankleitzahlIDField As IDType - - Private nameField As TextType - - ''' - Public Property BICID() As IDType - Get - Return Me.bICIDField - End Get - Set - Me.bICIDField = Value - End Set - End Property - - ''' - Public Property GermanBankleitzahlID() As IDType - Get - Return Me.germanBankleitzahlIDField - End Get - Set - Me.germanBankleitzahlIDField = Value - End Set - End Property - - ''' - Public Property Name() As TextType - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property -End Class - -''' - -Partial Public Class CreditorFinancialInstitutionType - - Private bICIDField As IDType - - Private germanBankleitzahlIDField As IDType - - Private nameField As TextType - - ''' - Public Property BICID() As IDType - Get - Return Me.bICIDField - End Get - Set - Me.bICIDField = Value - End Set - End Property - - ''' - Public Property GermanBankleitzahlID() As IDType - Get - Return Me.germanBankleitzahlIDField - End Get - Set - Me.germanBankleitzahlIDField = Value - End Set - End Property - - ''' - Public Property Name() As TextType - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SpecifiedPeriodType - - Private startDateTimeField As DateTimeType - - Private endDateTimeField As DateTimeType - - Private completeDateTimeField As DateTimeType - - ''' - Public Property StartDateTime() As DateTimeType - Get - Return Me.startDateTimeField - End Get - Set - Me.startDateTimeField = Value - End Set - End Property - - ''' - Public Property EndDateTime() As DateTimeType - Get - Return Me.endDateTimeField - End Get - Set - Me.endDateTimeField = Value - End Set - End Property - - ''' - Public Property CompleteDateTime() As DateTimeType - Get - Return Me.completeDateTimeField - End Get - Set - Me.completeDateTimeField = Value - End Set - End Property -End Class - -''' - -Partial Public Class LogisticsServiceChargeType - - Private descriptionField() As TextType - - Private appliedAmountField() As AmountType - - Private appliedTradeTaxField() As TradeTaxType - - ''' - - Public Property Description() As TextType() - Get - Return Me.descriptionField - End Get - Set - Me.descriptionField = Value - End Set - End Property - - ''' - - Public Property AppliedAmount() As AmountType() - Get - Return Me.appliedAmountField - End Get - Set - Me.appliedAmountField = Value - End Set - End Property - - ''' - - Public Property AppliedTradeTax() As TradeTaxType() - Get - Return Me.appliedTradeTaxField - End Get - Set - Me.appliedTradeTaxField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradePaymentTermsType - - Private descriptionField() As TextType - - Private dueDateDateTimeField As DateTimeType - - Private partialPaymentAmountField() As AmountType - - Private applicableTradePaymentPenaltyTermsField() As TradePaymentPenaltyTermsType - - Private applicableTradePaymentDiscountTermsField() As TradePaymentDiscountTermsType - - ''' - - Public Property Description() As TextType() - Get - Return Me.descriptionField - End Get - Set - Me.descriptionField = Value - End Set - End Property - - ''' - Public Property DueDateDateTime() As DateTimeType - Get - Return Me.dueDateDateTimeField - End Get - Set - Me.dueDateDateTimeField = Value - End Set - End Property - - ''' - - Public Property PartialPaymentAmount() As AmountType() - Get - Return Me.partialPaymentAmountField - End Get - Set - Me.partialPaymentAmountField = Value - End Set - End Property - - ''' - - Public Property ApplicableTradePaymentPenaltyTerms() As TradePaymentPenaltyTermsType() - Get - Return Me.applicableTradePaymentPenaltyTermsField - End Get - Set - Me.applicableTradePaymentPenaltyTermsField = Value - End Set - End Property - - ''' - - Public Property ApplicableTradePaymentDiscountTerms() As TradePaymentDiscountTermsType() - Get - Return Me.applicableTradePaymentDiscountTermsField - End Get - Set - Me.applicableTradePaymentDiscountTermsField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradePaymentPenaltyTermsType - - Private basisDateTimeField As DateTimeType - - Private basisPeriodMeasureField As MeasureType - - Private basisAmountField() As AmountType - - Private calculationPercentField As PercentType - - Private actualPenaltyAmountField() As AmountType - - ''' - Public Property BasisDateTime() As DateTimeType - Get - Return Me.basisDateTimeField - End Get - Set - Me.basisDateTimeField = Value - End Set - End Property - - ''' - Public Property BasisPeriodMeasure() As MeasureType - Get - Return Me.basisPeriodMeasureField - End Get - Set - Me.basisPeriodMeasureField = Value - End Set - End Property - - ''' - - Public Property BasisAmount() As AmountType() - Get - Return Me.basisAmountField - End Get - Set - Me.basisAmountField = Value - End Set - End Property - - ''' - Public Property CalculationPercent() As PercentType - Get - Return Me.calculationPercentField - End Get - Set - Me.calculationPercentField = Value - End Set - End Property - - ''' - - Public Property ActualPenaltyAmount() As AmountType() - Get - Return Me.actualPenaltyAmountField - End Get - Set - Me.actualPenaltyAmountField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradePaymentDiscountTermsType - - Private basisDateTimeField As DateTimeType - - Private basisPeriodMeasureField As MeasureType - - Private basisAmountField() As AmountType - - Private calculationPercentField As PercentType - - Private actualDiscountAmountField() As AmountType - - ''' - Public Property BasisDateTime() As DateTimeType - Get - Return Me.basisDateTimeField - End Get - Set - Me.basisDateTimeField = Value - End Set - End Property - - ''' - Public Property BasisPeriodMeasure() As MeasureType - Get - Return Me.basisPeriodMeasureField - End Get - Set - Me.basisPeriodMeasureField = Value - End Set - End Property - - ''' - - Public Property BasisAmount() As AmountType() - Get - Return Me.basisAmountField - End Get - Set - Me.basisAmountField = Value - End Set - End Property - - ''' - Public Property CalculationPercent() As PercentType - Get - Return Me.calculationPercentField - End Get - Set - Me.calculationPercentField = Value - End Set - End Property - - ''' - - Public Property ActualDiscountAmount() As AmountType() - Get - Return Me.actualDiscountAmountField - End Get - Set - Me.actualDiscountAmountField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeAccountingAccountType - - Private idField As IDType - - ''' - Public Property ID() As IDType - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property -End Class - -''' - -Partial Public Class TradeSettlementMonetarySummationType - - Private lineTotalAmountField() As AmountType - - Private chargeTotalAmountField() As AmountType - - Private allowanceTotalAmountField() As AmountType - - Private taxBasisTotalAmountField() As AmountType - - Private taxTotalAmountField() As AmountType - - Private grandTotalAmountField() As AmountType - - Private totalPrepaidAmountField() As AmountType - - Private totalAllowanceChargeAmountField() As AmountType - - Private duePayableAmountField() As AmountType - - ''' - - Public Property LineTotalAmount() As AmountType() - Get - Return Me.lineTotalAmountField - End Get - Set - Me.lineTotalAmountField = Value - End Set - End Property - - ''' - - Public Property ChargeTotalAmount() As AmountType() - Get - Return Me.chargeTotalAmountField - End Get - Set - Me.chargeTotalAmountField = Value - End Set - End Property - - ''' - - Public Property AllowanceTotalAmount() As AmountType() - Get - Return Me.allowanceTotalAmountField - End Get - Set - Me.allowanceTotalAmountField = Value - End Set - End Property - - ''' - - Public Property TaxBasisTotalAmount() As AmountType() - Get - Return Me.taxBasisTotalAmountField - End Get - Set - Me.taxBasisTotalAmountField = Value - End Set - End Property - - ''' - - Public Property TaxTotalAmount() As AmountType() - Get - Return Me.taxTotalAmountField - End Get - Set - Me.taxTotalAmountField = Value - End Set - End Property - - ''' - - Public Property GrandTotalAmount() As AmountType() - Get - Return Me.grandTotalAmountField - End Get - Set - Me.grandTotalAmountField = Value - End Set - End Property - - ''' - - Public Property TotalPrepaidAmount() As AmountType() - Get - Return Me.totalPrepaidAmountField - End Get - Set - Me.totalPrepaidAmountField = Value - End Set - End Property - - ''' - - Public Property TotalAllowanceChargeAmount() As AmountType() - Get - Return Me.totalAllowanceChargeAmountField - End Get - Set - Me.totalAllowanceChargeAmountField = Value - End Set - End Property - - ''' - - Public Property DuePayableAmount() As AmountType() - Get - Return Me.duePayableAmountField - End Get - Set - Me.duePayableAmountField = Value - End Set - End Property -End Class - -''' - -Partial Public Class SupplyChainTradeTransactionType - - Private applicableSupplyChainTradeAgreementField() As SupplyChainTradeAgreementType - - Private applicableSupplyChainTradeDeliveryField As SupplyChainTradeDeliveryType - - Private applicableSupplyChainTradeSettlementField As SupplyChainTradeSettlementType - - Private includedSupplyChainTradeLineItemField() As SupplyChainTradeLineItemType - - ''' - - Public Property ApplicableSupplyChainTradeAgreement() As SupplyChainTradeAgreementType() - Get - Return Me.applicableSupplyChainTradeAgreementField - End Get - Set - Me.applicableSupplyChainTradeAgreementField = Value - End Set - End Property - - ''' - Public Property ApplicableSupplyChainTradeDelivery() As SupplyChainTradeDeliveryType - Get - Return Me.applicableSupplyChainTradeDeliveryField - End Get - Set - Me.applicableSupplyChainTradeDeliveryField = Value - End Set - End Property - - ''' - Public Property ApplicableSupplyChainTradeSettlement() As SupplyChainTradeSettlementType - Get - Return Me.applicableSupplyChainTradeSettlementField - End Get - Set - Me.applicableSupplyChainTradeSettlementField = Value - End Set - End Property - - ''' - - Public Property IncludedSupplyChainTradeLineItem() As SupplyChainTradeLineItemType() - Get - Return Me.includedSupplyChainTradeLineItemField - End Get - Set - Me.includedSupplyChainTradeLineItemField = Value - End Set - End Property -End Class - -''' - -Partial Public Class ExchangedDocumentType - - Private idField As IDType - - Private nameField() As TextType - - Private typeCodeField As DocumentCodeType - - Private issueDateTimeField As DateTimeType - - Private copyIndicatorField As IndicatorType - - Private languageIDField() As IDType - - Private includedNoteField() As NoteType - - Private effectiveSpecifiedPeriodField As SpecifiedPeriodType - - ''' - Public Property ID() As IDType - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property - - ''' - - Public Property Name() As TextType() - Get - Return Me.nameField - End Get - Set - Me.nameField = Value - End Set - End Property - - ''' - Public Property TypeCode() As DocumentCodeType - Get - Return Me.typeCodeField - End Get - Set - Me.typeCodeField = Value - End Set - End Property - - ''' - Public Property IssueDateTime() As DateTimeType - Get - Return Me.issueDateTimeField - End Get - Set - Me.issueDateTimeField = Value - End Set - End Property - - ''' - Public Property CopyIndicator() As IndicatorType - Get - Return Me.copyIndicatorField - End Get - Set - Me.copyIndicatorField = Value - End Set - End Property - - ''' - - Public Property LanguageID() As IDType() - Get - Return Me.languageIDField - End Get - Set - Me.languageIDField = Value - End Set - End Property - - ''' - - Public Property IncludedNote() As NoteType() - Get - Return Me.includedNoteField - End Get - Set - Me.includedNoteField = Value - End Set - End Property - - ''' - Public Property EffectiveSpecifiedPeriod() As SpecifiedPeriodType - Get - Return Me.effectiveSpecifiedPeriodField - End Get - Set - Me.effectiveSpecifiedPeriodField = Value - End Set - End Property -End Class - -''' - -Partial Public Class DocumentContextParameterType - - Private idField As IDType - - ''' - Public Property ID() As IDType - Get - Return Me.idField - End Get - Set - Me.idField = Value - End Set - End Property -End Class diff --git a/Modules.Interfaces/ZUGFeRDInterface/PropertyValues.vb b/Modules.Interfaces/ZUGFeRDInterface/PropertyValues.vb index bb731608..b1ff0af4 100644 --- a/Modules.Interfaces/ZUGFeRDInterface/PropertyValues.vb +++ b/Modules.Interfaces/ZUGFeRDInterface/PropertyValues.vb @@ -31,7 +31,7 @@ Public Class PropertyValues Public Value As String End Class - Public Function CheckPropertyValues(Document As CrossIndustryDocumentType, PropertyMap As Dictionary(Of String, XmlItemProperty), MessageId As String) As CheckPropertyValuesResult + Public Function CheckPropertyValues(Document As Object, PropertyMap As Dictionary(Of String, XmlItemProperty), MessageId As String) As CheckPropertyValuesResult Dim oGlobalGroupCounter = 0 Dim oMissingProperties As New List(Of String) Dim oResult As New CheckPropertyValuesResult() diff --git a/Modules.Interfaces/ZUGFeRDInterface/Version1.0/CrossIndustryDocumentType.vb b/Modules.Interfaces/ZUGFeRDInterface/Version1.0/CrossIndustryDocumentType.vb new file mode 100644 index 00000000..d447f317 --- /dev/null +++ b/Modules.Interfaces/ZUGFeRDInterface/Version1.0/CrossIndustryDocumentType.vb @@ -0,0 +1,3178 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict Off +Option Explicit On + +Imports System.Xml.Serialization + +' +'This source code was auto-generated by xsd, Version=4.6.1055.0. +' + +Namespace ZUGFeRD.Version1_0 + ''' + + Partial Public Class CrossIndustryDocumentType + + Private specifiedExchangedDocumentContextField As ExchangedDocumentContextType + + Private headerExchangedDocumentField As ExchangedDocumentType + + Private specifiedSupplyChainTradeTransactionField As SupplyChainTradeTransactionType + + ''' + Public Property SpecifiedExchangedDocumentContext() As ExchangedDocumentContextType + Get + Return Me.specifiedExchangedDocumentContextField + End Get + Set + Me.specifiedExchangedDocumentContextField = Value + End Set + End Property + + ''' + Public Property HeaderExchangedDocument() As ExchangedDocumentType + Get + Return Me.headerExchangedDocumentField + End Get + Set + Me.headerExchangedDocumentField = Value + End Set + End Property + + ''' + Public Property SpecifiedSupplyChainTradeTransaction() As SupplyChainTradeTransactionType + Get + Return Me.specifiedSupplyChainTradeTransactionField + End Get + Set + Me.specifiedSupplyChainTradeTransactionField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ExchangedDocumentContextType + + Private testIndicatorField As IndicatorType + + Private businessProcessSpecifiedDocumentContextParameterField() As DocumentContextParameterType + + Private guidelineSpecifiedDocumentContextParameterField() As DocumentContextParameterType + + ''' + Public Property TestIndicator() As IndicatorType + Get + Return Me.testIndicatorField + End Get + Set + Me.testIndicatorField = Value + End Set + End Property + + ''' + + Public Property BusinessProcessSpecifiedDocumentContextParameter() As DocumentContextParameterType() + Get + Return Me.businessProcessSpecifiedDocumentContextParameterField + End Get + Set + Me.businessProcessSpecifiedDocumentContextParameterField = Value + End Set + End Property + + ''' + + Public Property GuidelineSpecifiedDocumentContextParameter() As DocumentContextParameterType() + Get + Return Me.guidelineSpecifiedDocumentContextParameterField + End Get + Set + Me.guidelineSpecifiedDocumentContextParameterField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class IndicatorType + + Private itemField As Boolean + + ''' + + Public Property Item() As Boolean + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ReferencedProductType + + Private globalIDField() As IDType + + Private sellerAssignedIDField As IDType + + Private buyerAssignedIDField As IDType + + Private nameField() As TextType + + Private descriptionField() As TextType + + Private unitQuantityField() As QuantityType + + ''' + + Public Property GlobalID() As IDType() + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property SellerAssignedID() As IDType + Get + Return Me.sellerAssignedIDField + End Get + Set + Me.sellerAssignedIDField = Value + End Set + End Property + + ''' + Public Property BuyerAssignedID() As IDType + Get + Return Me.buyerAssignedIDField + End Get + Set + Me.buyerAssignedIDField = Value + End Set + End Property + + ''' + + Public Property Name() As TextType() + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + + Public Property Description() As TextType() + Get + Return Me.descriptionField + End Get + Set + Me.descriptionField = Value + End Set + End Property + + ''' + + Public Property UnitQuantity() As QuantityType() + Get + Return Me.unitQuantityField + End Get + Set + Me.unitQuantityField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class IDType + + Private schemeIDField As String + + Private schemeAgencyIDField As String + + Private valueField As String + + ''' + + Public Property schemeID() As String + Get + Return Me.schemeIDField + End Get + Set + Me.schemeIDField = Value + End Set + End Property + + ''' + + Public Property schemeAgencyID() As String + Get + Return Me.schemeAgencyIDField + End Get + Set + Me.schemeAgencyIDField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TextType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class QuantityType + + Private unitCodeField As String + + Private valueField As Decimal + + ''' + + Public Property unitCode() As String + Get + Return Me.unitCodeField + End Get + Set + Me.unitCodeField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ProductClassificationType + + Private classCodeField As CodeType + + Private classNameField() As TextType + + ''' + Public Property ClassCode() As CodeType + Get + Return Me.classCodeField + End Get + Set + Me.classCodeField = Value + End Set + End Property + + ''' + + Public Property ClassName() As TextType() + Get + Return Me.classNameField + End Get + Set + Me.classNameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CodeType + + Private listIDField As String + + Private listVersionIDField As String + + Private valueField As String + + ''' + + Public Property listID() As String + Get + Return Me.listIDField + End Get + Set + Me.listIDField = Value + End Set + End Property + + ''' + + Public Property listVersionID() As String + Get + Return Me.listVersionIDField + End Get + Set + Me.listVersionIDField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ProductCharacteristicType + + Private typeCodeField() As CodeType + + Private descriptionField() As TextType + + Private valueMeasureField() As MeasureType + + Private valueField() As TextType + + ''' + + Public Property TypeCode() As CodeType() + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + + Public Property Description() As TextType() + Get + Return Me.descriptionField + End Get + Set + Me.descriptionField = Value + End Set + End Property + + ''' + + Public Property ValueMeasure() As MeasureType() + Get + Return Me.valueMeasureField + End Get + Set + Me.valueMeasureField = Value + End Set + End Property + + ''' + + Public Property Value() As TextType() + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class MeasureType + + Private unitCodeField As String + + Private valueField As Decimal + + ''' + + Public Property unitCode() As String + Get + Return Me.unitCodeField + End Get + Set + Me.unitCodeField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeProductType + + Private globalIDField() As IDType + + Private sellerAssignedIDField As IDType + + Private buyerAssignedIDField As IDType + + Private nameField() As TextType + + Private descriptionField() As TextType + + Private applicableProductCharacteristicField() As ProductCharacteristicType + + Private designatedProductClassificationField() As ProductClassificationType + + Private originTradeCountryField() As CountryIDType + + Private includedReferencedProductField() As ReferencedProductType + + ''' + + Public Property GlobalID() As IDType() + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property SellerAssignedID() As IDType + Get + Return Me.sellerAssignedIDField + End Get + Set + Me.sellerAssignedIDField = Value + End Set + End Property + + ''' + Public Property BuyerAssignedID() As IDType + Get + Return Me.buyerAssignedIDField + End Get + Set + Me.buyerAssignedIDField = Value + End Set + End Property + + ''' + + Public Property Name() As TextType() + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + + Public Property Description() As TextType() + Get + Return Me.descriptionField + End Get + Set + Me.descriptionField = Value + End Set + End Property + + ''' + + Public Property ApplicableProductCharacteristic() As ProductCharacteristicType() + Get + Return Me.applicableProductCharacteristicField + End Get + Set + Me.applicableProductCharacteristicField = Value + End Set + End Property + + ''' + + Public Property DesignatedProductClassification() As ProductClassificationType() + Get + Return Me.designatedProductClassificationField + End Get + Set + Me.designatedProductClassificationField = Value + End Set + End Property + + ''' + + Public Property OriginTradeCountry As CountryIDType() + Get + Return Me.originTradeCountryField + End Get + Set + Me.originTradeCountryField = Value + End Set + End Property + + ''' + + Public Property IncludedReferencedProduct() As ReferencedProductType() + Get + Return Me.includedReferencedProductField + End Get + Set + Me.includedReferencedProductField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CountryIDType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentLineDocumentType + + Private lineIDField As IDType + + Private includedNoteField() As NoteType + + ''' + Public Property LineID() As IDType + Get + Return Me.lineIDField + End Get + Set + Me.lineIDField = Value + End Set + End Property + + ''' + + Public Property IncludedNote() As NoteType() + Get + Return Me.includedNoteField + End Get + Set + Me.includedNoteField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class NoteType + + Private contentCodeField() As CodeType + + Private contentField() As TextType + + Private subjectCodeField As CodeType + + ''' + + Public Property ContentCode() As CodeType() + Get + Return Me.contentCodeField + End Get + Set + Me.contentCodeField = Value + End Set + End Property + + ''' + + Public Property Content() As TextType() + Get + Return Me.contentField + End Get + Set + Me.contentField = Value + End Set + End Property + + ''' + Public Property SubjectCode() As CodeType + Get + Return Me.subjectCodeField + End Get + Set + Me.subjectCodeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeLineItemType + + Private associatedDocumentLineDocumentField As DocumentLineDocumentType + + Private specifiedSupplyChainTradeAgreementField As SupplyChainTradeAgreementType + + Private specifiedSupplyChainTradeDeliveryField As SupplyChainTradeDeliveryType + + Private specifiedSupplyChainTradeSettlementField As SupplyChainTradeSettlementType + + Private specifiedTradeProductField As TradeProductType + + ''' + Public Property AssociatedDocumentLineDocument() As DocumentLineDocumentType + Get + Return Me.associatedDocumentLineDocumentField + End Get + Set + Me.associatedDocumentLineDocumentField = Value + End Set + End Property + + ''' + Public Property SpecifiedSupplyChainTradeAgreement() As SupplyChainTradeAgreementType + Get + Return Me.specifiedSupplyChainTradeAgreementField + End Get + Set + Me.specifiedSupplyChainTradeAgreementField = Value + End Set + End Property + + ''' + Public Property SpecifiedSupplyChainTradeDelivery() As SupplyChainTradeDeliveryType + Get + Return Me.specifiedSupplyChainTradeDeliveryField + End Get + Set + Me.specifiedSupplyChainTradeDeliveryField = Value + End Set + End Property + + ''' + Public Property SpecifiedSupplyChainTradeSettlement() As SupplyChainTradeSettlementType + Get + Return Me.specifiedSupplyChainTradeSettlementField + End Get + Set + Me.specifiedSupplyChainTradeSettlementField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeProduct() As TradeProductType + Get + Return Me.specifiedTradeProductField + End Get + Set + Me.specifiedTradeProductField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeAgreementType + + Private buyerReferenceField() As TextType + + Private sellerTradePartyField As TradePartyType + + Private buyerTradePartyField As TradePartyType + + Private productEndUserTradePartyField As TradePartyType + + Private applicableTradeDeliveryTermsField As TradeDeliveryTermsType + + Private buyerOrderReferencedDocumentField() As ReferencedDocumentType + + Private contractReferencedDocumentField() As ReferencedDocumentType + + Private additionalReferencedDocumentField() As ReferencedDocumentType + + Private grossPriceProductTradePriceField() As TradePriceType + + Private netPriceProductTradePriceField() As TradePriceType + + Private customerOrderReferencedDocumentField() As ReferencedDocumentType + + ''' + + Public Property BuyerReference() As TextType() + Get + Return Me.buyerReferenceField + End Get + Set + Me.buyerReferenceField = Value + End Set + End Property + + ''' + Public Property SellerTradeParty() As TradePartyType + Get + Return Me.sellerTradePartyField + End Get + Set + Me.sellerTradePartyField = Value + End Set + End Property + + ''' + Public Property BuyerTradeParty() As TradePartyType + Get + Return Me.buyerTradePartyField + End Get + Set + Me.buyerTradePartyField = Value + End Set + End Property + + ''' + Public Property ProductEndUserTradeParty() As TradePartyType + Get + Return Me.productEndUserTradePartyField + End Get + Set + Me.productEndUserTradePartyField = Value + End Set + End Property + + ''' + Public Property ApplicableTradeDeliveryTerms() As TradeDeliveryTermsType + Get + Return Me.applicableTradeDeliveryTermsField + End Get + Set + Me.applicableTradeDeliveryTermsField = Value + End Set + End Property + + ''' + + Public Property BuyerOrderReferencedDocument() As ReferencedDocumentType() + Get + Return Me.buyerOrderReferencedDocumentField + End Get + Set + Me.buyerOrderReferencedDocumentField = Value + End Set + End Property + + ''' + + Public Property ContractReferencedDocument() As ReferencedDocumentType() + Get + Return Me.contractReferencedDocumentField + End Get + Set + Me.contractReferencedDocumentField = Value + End Set + End Property + + ''' + + Public Property AdditionalReferencedDocument() As ReferencedDocumentType() + Get + Return Me.additionalReferencedDocumentField + End Get + Set + Me.additionalReferencedDocumentField = Value + End Set + End Property + + ''' + + Public Property GrossPriceProductTradePrice() As TradePriceType() + Get + Return Me.grossPriceProductTradePriceField + End Get + Set + Me.grossPriceProductTradePriceField = Value + End Set + End Property + + ''' + + Public Property NetPriceProductTradePrice() As TradePriceType() + Get + Return Me.netPriceProductTradePriceField + End Get + Set + Me.netPriceProductTradePriceField = Value + End Set + End Property + + ''' + + Public Property CustomerOrderReferencedDocument() As ReferencedDocumentType() + Get + Return Me.customerOrderReferencedDocumentField + End Get + Set + Me.customerOrderReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePartyType + + Private idField() As IDType + + Private globalIDField() As IDType + + Private nameField As TextType + + Private definedTradeContactField() As TradeContactType + + Private postalTradeAddressField As TradeAddressType + + Private specifiedTaxRegistrationField() As TaxRegistrationType + + ''' + + Public Property ID() As IDType() + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + + Public Property GlobalID() As IDType() + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + + Public Property DefinedTradeContact() As TradeContactType() + Get + Return Me.definedTradeContactField + End Get + Set + Me.definedTradeContactField = Value + End Set + End Property + + ''' + Public Property PostalTradeAddress() As TradeAddressType + Get + Return Me.postalTradeAddressField + End Get + Set + Me.postalTradeAddressField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTaxRegistration() As TaxRegistrationType() + Get + Return Me.specifiedTaxRegistrationField + End Get + Set + Me.specifiedTaxRegistrationField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeContactType + + Private personNameField As TextType + + Private departmentNameField As TextType + + Private telephoneUniversalCommunicationField() As UniversalCommunicationType + + Private faxUniversalCommunicationField() As UniversalCommunicationType + + Private emailURIUniversalCommunicationField As UniversalCommunicationType + + ''' + Public Property PersonName() As TextType + Get + Return Me.personNameField + End Get + Set + Me.personNameField = Value + End Set + End Property + + ''' + Public Property DepartmentName() As TextType + Get + Return Me.departmentNameField + End Get + Set + Me.departmentNameField = Value + End Set + End Property + + ''' + + Public Property TelephoneUniversalCommunication() As UniversalCommunicationType() + Get + Return Me.telephoneUniversalCommunicationField + End Get + Set + Me.telephoneUniversalCommunicationField = Value + End Set + End Property + + ''' + + Public Property FaxUniversalCommunication() As UniversalCommunicationType() + Get + Return Me.faxUniversalCommunicationField + End Get + Set + Me.faxUniversalCommunicationField = Value + End Set + End Property + + ''' + Public Property EmailURIUniversalCommunication() As UniversalCommunicationType + Get + Return Me.emailURIUniversalCommunicationField + End Get + Set + Me.emailURIUniversalCommunicationField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class UniversalCommunicationType + + Private uRIIDField As IDType + + Private completeNumberField As TextType + + ''' + Public Property URIID() As IDType + Get + Return Me.uRIIDField + End Get + Set + Me.uRIIDField = Value + End Set + End Property + + ''' + Public Property CompleteNumber() As TextType + Get + Return Me.completeNumberField + End Get + Set + Me.completeNumberField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAddressType + + Private postcodeCodeField() As CodeType + + Private lineOneField As TextType + + Private lineTwoField As TextType + + Private cityNameField As TextType + + Private countryIDField As CountryIDType + + ''' + + Public Property PostcodeCode() As CodeType() + Get + Return Me.postcodeCodeField + End Get + Set + Me.postcodeCodeField = Value + End Set + End Property + + ''' + Public Property LineOne() As TextType + Get + Return Me.lineOneField + End Get + Set + Me.lineOneField = Value + End Set + End Property + + ''' + Public Property LineTwo() As TextType + Get + Return Me.lineTwoField + End Get + Set + Me.lineTwoField = Value + End Set + End Property + + ''' + Public Property CityName() As TextType + Get + Return Me.cityNameField + End Get + Set + Me.cityNameField = Value + End Set + End Property + + ''' + Public Property CountryID() As CountryIDType + Get + Return Me.countryIDField + End Get + Set + Me.countryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxRegistrationType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeDeliveryTermsType + + Private deliveryTypeCodeField As DeliveryTermsCodeType + + ''' + Public Property DeliveryTypeCode() As DeliveryTermsCodeType + Get + Return Me.deliveryTypeCodeField + End Get + Set + Me.deliveryTypeCodeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DeliveryTermsCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ReferencedDocumentType + + Private issueDateTimeField As String + + Private lineIDField As IDType + + Private typeCodeField As DocumentCodeType + + Private idField() As IDType + + Private referenceTypeCodeField As ReferenceCodeType + + ''' + Public Property IssueDateTime() As String + Get + Return Me.issueDateTimeField + End Get + Set + Me.issueDateTimeField = Value + End Set + End Property + + ''' + Public Property LineID() As IDType + Get + Return Me.lineIDField + End Get + Set + Me.lineIDField = Value + End Set + End Property + + ''' + Public Property TypeCode() As DocumentCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + + Public Property ID() As IDType() + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property ReferenceTypeCode() As ReferenceCodeType + Get + Return Me.referenceTypeCodeField + End Get + Set + Me.referenceTypeCodeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ReferenceCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePriceType + + Private chargeAmountField() As AmountType + + Private basisQuantityField As QuantityType + + Private appliedTradeAllowanceChargeField() As TradeAllowanceChargeType + + ''' + + Public Property ChargeAmount() As AmountType() + Get + Return Me.chargeAmountField + End Get + Set + Me.chargeAmountField = Value + End Set + End Property + + ''' + Public Property BasisQuantity() As QuantityType + Get + Return Me.basisQuantityField + End Get + Set + Me.basisQuantityField = Value + End Set + End Property + + ''' + + Public Property AppliedTradeAllowanceCharge() As TradeAllowanceChargeType() + Get + Return Me.appliedTradeAllowanceChargeField + End Get + Set + Me.appliedTradeAllowanceChargeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AmountType + + Private currencyIDField As String + + Private valueField As Decimal + + ''' + + Public Property currencyID() As String + Get + Return Me.currencyIDField + End Get + Set + Me.currencyIDField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAllowanceChargeType + + Private chargeIndicatorField As IndicatorType + + Private sequenceNumericField As NumericType + + Private calculationPercentField As PercentType + + Private basisAmountField As AmountType + + Private basisQuantityField As QuantityType + + Private actualAmountField() As AmountType + + Private reasonCodeField As AllowanceChargeReasonCodeType + + Private reasonField As TextType + + Private categoryTradeTaxField() As TradeTaxType + + ''' + Public Property ChargeIndicator() As IndicatorType + Get + Return Me.chargeIndicatorField + End Get + Set + Me.chargeIndicatorField = Value + End Set + End Property + + ''' + Public Property SequenceNumeric() As NumericType + Get + Return Me.sequenceNumericField + End Get + Set + Me.sequenceNumericField = Value + End Set + End Property + + ''' + Public Property CalculationPercent() As PercentType + Get + Return Me.calculationPercentField + End Get + Set + Me.calculationPercentField = Value + End Set + End Property + + ''' + Public Property BasisAmount() As AmountType + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property BasisQuantity() As QuantityType + Get + Return Me.basisQuantityField + End Get + Set + Me.basisQuantityField = Value + End Set + End Property + + ''' + + Public Property ActualAmount() As AmountType() + Get + Return Me.actualAmountField + End Get + Set + Me.actualAmountField = Value + End Set + End Property + + ''' + Public Property ReasonCode() As AllowanceChargeReasonCodeType + Get + Return Me.reasonCodeField + End Get + Set + Me.reasonCodeField = Value + End Set + End Property + + ''' + Public Property Reason() As TextType + Get + Return Me.reasonField + End Get + Set + Me.reasonField = Value + End Set + End Property + + ''' + + Public Property CategoryTradeTax() As TradeTaxType() + Get + Return Me.categoryTradeTaxField + End Get + Set + Me.categoryTradeTaxField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class NumericType + + Private valueField As Decimal + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class PercentType + + Private valueField As Decimal + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AllowanceChargeReasonCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeTaxType + + Private calculatedAmountField() As AmountType + + Private typeCodeField As TaxTypeCodeType + + Private exemptionReasonField As TextType + + Private basisAmountField() As AmountType + + Private lineTotalBasisAmountField() As AmountType + + Private allowanceChargeBasisAmountField() As AmountType + + Private categoryCodeField As TaxCategoryCodeType + + Private applicablePercentField As PercentType + + ''' + + Public Property CalculatedAmount() As AmountType() + Get + Return Me.calculatedAmountField + End Get + Set + Me.calculatedAmountField = Value + End Set + End Property + + ''' + Public Property TypeCode() As TaxTypeCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property ExemptionReason() As TextType + Get + Return Me.exemptionReasonField + End Get + Set + Me.exemptionReasonField = Value + End Set + End Property + + ''' + + Public Property BasisAmount() As AmountType() + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + + Public Property LineTotalBasisAmount() As AmountType() + Get + Return Me.lineTotalBasisAmountField + End Get + Set + Me.lineTotalBasisAmountField = Value + End Set + End Property + + ''' + + Public Property AllowanceChargeBasisAmount() As AmountType() + Get + Return Me.allowanceChargeBasisAmountField + End Get + Set + Me.allowanceChargeBasisAmountField = Value + End Set + End Property + + ''' + Public Property CategoryCode() As TaxCategoryCodeType + Get + Return Me.categoryCodeField + End Get + Set + Me.categoryCodeField = Value + End Set + End Property + + ''' + Public Property ApplicablePercent() As PercentType + Get + Return Me.applicablePercentField + End Get + Set + Me.applicablePercentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxTypeCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxCategoryCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeDeliveryType + + Private billedQuantityField As QuantityType + + Private chargeFreeQuantityField As QuantityType + + Private packageQuantityField As QuantityType + + Private relatedSupplyChainConsignmentField() As LogisticsTransportMovementType + + Private shipToTradePartyField As TradePartyType + + Private ultimateShipToTradePartyField As TradePartyType + + Private shipFromTradePartyField As TradePartyType + + Private actualDeliverySupplyChainEventField() As DateTimeType + + Private despatchAdviceReferencedDocumentField As ReferencedDocumentType + + Private receivingAdviceReferencedDocumentField() As ReferencedDocumentType + + Private deliveryNoteReferencedDocumentField As ReferencedDocumentType + + ''' + Public Property BilledQuantity() As QuantityType + Get + Return Me.billedQuantityField + End Get + Set + Me.billedQuantityField = Value + End Set + End Property + + ''' + Public Property ChargeFreeQuantity() As QuantityType + Get + Return Me.chargeFreeQuantityField + End Get + Set + Me.chargeFreeQuantityField = Value + End Set + End Property + + ''' + Public Property PackageQuantity() As QuantityType + Get + Return Me.packageQuantityField + End Get + Set + Me.packageQuantityField = Value + End Set + End Property + + ''' + + Public Property RelatedSupplyChainConsignment() As LogisticsTransportMovementType() + Get + Return Me.relatedSupplyChainConsignmentField + End Get + Set + Me.relatedSupplyChainConsignmentField = Value + End Set + End Property + + ''' + Public Property ShipToTradeParty() As TradePartyType + Get + Return Me.shipToTradePartyField + End Get + Set + Me.shipToTradePartyField = Value + End Set + End Property + + ''' + Public Property UltimateShipToTradeParty() As TradePartyType + Get + Return Me.ultimateShipToTradePartyField + End Get + Set + Me.ultimateShipToTradePartyField = Value + End Set + End Property + + ''' + Public Property ShipFromTradeParty() As TradePartyType + Get + Return Me.shipFromTradePartyField + End Get + Set + Me.shipFromTradePartyField = Value + End Set + End Property + + ''' + + Public Property ActualDeliverySupplyChainEvent() As DateTimeType() + Get + Return Me.actualDeliverySupplyChainEventField + End Get + Set + Me.actualDeliverySupplyChainEventField = Value + End Set + End Property + + ''' + Public Property DespatchAdviceReferencedDocument() As ReferencedDocumentType + Get + Return Me.despatchAdviceReferencedDocumentField + End Get + Set + Me.despatchAdviceReferencedDocumentField = Value + End Set + End Property + + ''' + + Public Property ReceivingAdviceReferencedDocument() As ReferencedDocumentType() + Get + Return Me.receivingAdviceReferencedDocumentField + End Get + Set + Me.receivingAdviceReferencedDocumentField = Value + End Set + End Property + + ''' + Public Property DeliveryNoteReferencedDocument() As ReferencedDocumentType + Get + Return Me.deliveryNoteReferencedDocumentField + End Get + Set + Me.deliveryNoteReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LogisticsTransportMovementType + + Private modeCodeField As CodeType + + Private idField As IDType + + ''' + Public Property ModeCode() As CodeType + Get + Return Me.modeCodeField + End Get + Set + Me.modeCodeField = Value + End Set + End Property + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeType + + Private itemField As DateTimeTypeDateTimeString + + ''' + + Public Property Item() As DateTimeTypeDateTimeString + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeTypeDateTimeString + + Private formatField As String + + Private valueField As String + + ''' + + Public Property format() As String + Get + Return Me.formatField + End Get + Set + Me.formatField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeSettlementType + + Private paymentReferenceField() As TextType + + Private invoiceCurrencyCodeField As CodeType + + Private invoiceeTradePartyField As TradePartyType + + Private payeeTradePartyField() As TradePartyType + + Private specifiedTradeSettlementPaymentMeansField() As TradeSettlementPaymentMeansType + + Private applicableTradeTaxField() As TradeTaxType + + Private billingSpecifiedPeriodField() As SpecifiedPeriodType + + Private specifiedTradeAllowanceChargeField() As TradeAllowanceChargeType + + Private specifiedLogisticsServiceChargeField() As LogisticsServiceChargeType + + Private specifiedTradePaymentTermsField() As TradePaymentTermsType + + Private specifiedTradeAccountingAccountField() As TradeAccountingAccountType + + Private specifiedTradeSettlementMonetarySummationField As TradeSettlementMonetarySummationType + + Private receivableSpecifiedTradeAccountingAccountField() As TradeAccountingAccountType + + ''' + + Public Property PaymentReference() As TextType() + Get + Return Me.paymentReferenceField + End Get + Set + Me.paymentReferenceField = Value + End Set + End Property + + ''' + Public Property InvoiceCurrencyCode() As CodeType + Get + Return Me.invoiceCurrencyCodeField + End Get + Set + Me.invoiceCurrencyCodeField = Value + End Set + End Property + + ''' + Public Property InvoiceeTradeParty() As TradePartyType + Get + Return Me.invoiceeTradePartyField + End Get + Set + Me.invoiceeTradePartyField = Value + End Set + End Property + + ''' + + Public Property PayeeTradeParty() As TradePartyType() + Get + Return Me.payeeTradePartyField + End Get + Set + Me.payeeTradePartyField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeSettlementPaymentMeans() As TradeSettlementPaymentMeansType() + Get + Return Me.specifiedTradeSettlementPaymentMeansField + End Get + Set + Me.specifiedTradeSettlementPaymentMeansField = Value + End Set + End Property + + ''' + + Public Property ApplicableTradeTax() As TradeTaxType() + Get + Return Me.applicableTradeTaxField + End Get + Set + Me.applicableTradeTaxField = Value + End Set + End Property + + ''' + + Public Property BillingSpecifiedPeriod() As SpecifiedPeriodType() + Get + Return Me.billingSpecifiedPeriodField + End Get + Set + Me.billingSpecifiedPeriodField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeAllowanceCharge() As TradeAllowanceChargeType() + Get + Return Me.specifiedTradeAllowanceChargeField + End Get + Set + Me.specifiedTradeAllowanceChargeField = Value + End Set + End Property + + ''' + + Public Property SpecifiedLogisticsServiceCharge() As LogisticsServiceChargeType() + Get + Return Me.specifiedLogisticsServiceChargeField + End Get + Set + Me.specifiedLogisticsServiceChargeField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradePaymentTerms() As TradePaymentTermsType() + Get + Return Me.specifiedTradePaymentTermsField + End Get + Set + Me.specifiedTradePaymentTermsField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeAccountingAccount() As TradeAccountingAccountType() + Get + Return Me.specifiedTradeAccountingAccountField + End Get + Set + Me.specifiedTradeAccountingAccountField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeSettlementMonetarySummation() As TradeSettlementMonetarySummationType + Get + Return Me.specifiedTradeSettlementMonetarySummationField + End Get + Set + Me.specifiedTradeSettlementMonetarySummationField = Value + End Set + End Property + + ''' + + Public Property ReceivableSpecifiedTradeAccountingAccount() As TradeAccountingAccountType() + Get + Return Me.receivableSpecifiedTradeAccountingAccountField + End Get + Set + Me.receivableSpecifiedTradeAccountingAccountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeSettlementPaymentMeansType + + Private typeCodeField As PaymentMeansCodeType + + Private informationField() As TextType + + Private idField() As IDType + + Private payerPartyDebtorFinancialAccountField As DebtorFinancialAccountType + + Private payeePartyCreditorFinancialAccountField As CreditorFinancialAccountType + + Private payerSpecifiedDebtorFinancialInstitutionField As DebtorFinancialInstitutionType + + Private payeeSpecifiedCreditorFinancialInstitutionField As CreditorFinancialInstitutionType + + ''' + Public Property TypeCode() As PaymentMeansCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + + Public Property Information() As TextType() + Get + Return Me.informationField + End Get + Set + Me.informationField = Value + End Set + End Property + + ''' + + Public Property ID() As IDType() + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property PayerPartyDebtorFinancialAccount() As DebtorFinancialAccountType + Get + Return Me.payerPartyDebtorFinancialAccountField + End Get + Set + Me.payerPartyDebtorFinancialAccountField = Value + End Set + End Property + + ''' + Public Property PayeePartyCreditorFinancialAccount() As CreditorFinancialAccountType + Get + Return Me.payeePartyCreditorFinancialAccountField + End Get + Set + Me.payeePartyCreditorFinancialAccountField = Value + End Set + End Property + + ''' + Public Property PayerSpecifiedDebtorFinancialInstitution() As DebtorFinancialInstitutionType + Get + Return Me.payerSpecifiedDebtorFinancialInstitutionField + End Get + Set + Me.payerSpecifiedDebtorFinancialInstitutionField = Value + End Set + End Property + + ''' + Public Property PayeeSpecifiedCreditorFinancialInstitution() As CreditorFinancialInstitutionType + Get + Return Me.payeeSpecifiedCreditorFinancialInstitutionField + End Get + Set + Me.payeeSpecifiedCreditorFinancialInstitutionField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class PaymentMeansCodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DebtorFinancialAccountType + + Private iBANIDField As IDType + + Private proprietaryIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + + ''' + Public Property ProprietaryID() As IDType + Get + Return Me.proprietaryIDField + End Get + Set + Me.proprietaryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CreditorFinancialAccountType + + Private iBANIDField As IDType + + Private accountNameField As TextType + + Private proprietaryIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + + ''' + Public Property AccountName() As TextType + Get + Return Me.accountNameField + End Get + Set + Me.accountNameField = Value + End Set + End Property + + ''' + Public Property ProprietaryID() As IDType + Get + Return Me.proprietaryIDField + End Get + Set + Me.proprietaryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DebtorFinancialInstitutionType + + Private bICIDField As IDType + + Private germanBankleitzahlIDField As IDType + + Private nameField As TextType + + ''' + Public Property BICID() As IDType + Get + Return Me.bICIDField + End Get + Set + Me.bICIDField = Value + End Set + End Property + + ''' + Public Property GermanBankleitzahlID() As IDType + Get + Return Me.germanBankleitzahlIDField + End Get + Set + Me.germanBankleitzahlIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CreditorFinancialInstitutionType + + Private bICIDField As IDType + + Private germanBankleitzahlIDField As IDType + + Private nameField As TextType + + ''' + Public Property BICID() As IDType + Get + Return Me.bICIDField + End Get + Set + Me.bICIDField = Value + End Set + End Property + + ''' + Public Property GermanBankleitzahlID() As IDType + Get + Return Me.germanBankleitzahlIDField + End Get + Set + Me.germanBankleitzahlIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SpecifiedPeriodType + + Private startDateTimeField As DateTimeType + + Private endDateTimeField As DateTimeType + + Private completeDateTimeField As DateTimeType + + ''' + Public Property StartDateTime() As DateTimeType + Get + Return Me.startDateTimeField + End Get + Set + Me.startDateTimeField = Value + End Set + End Property + + ''' + Public Property EndDateTime() As DateTimeType + Get + Return Me.endDateTimeField + End Get + Set + Me.endDateTimeField = Value + End Set + End Property + + ''' + Public Property CompleteDateTime() As DateTimeType + Get + Return Me.completeDateTimeField + End Get + Set + Me.completeDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LogisticsServiceChargeType + + Private descriptionField() As TextType + + Private appliedAmountField() As AmountType + + Private appliedTradeTaxField() As TradeTaxType + + ''' + + Public Property Description() As TextType() + Get + Return Me.descriptionField + End Get + Set + Me.descriptionField = Value + End Set + End Property + + ''' + + Public Property AppliedAmount() As AmountType() + Get + Return Me.appliedAmountField + End Get + Set + Me.appliedAmountField = Value + End Set + End Property + + ''' + + Public Property AppliedTradeTax() As TradeTaxType() + Get + Return Me.appliedTradeTaxField + End Get + Set + Me.appliedTradeTaxField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePaymentTermsType + + Private descriptionField() As TextType + + Private dueDateDateTimeField As DateTimeType + + Private partialPaymentAmountField() As AmountType + + Private applicableTradePaymentPenaltyTermsField() As TradePaymentPenaltyTermsType + + Private applicableTradePaymentDiscountTermsField() As TradePaymentDiscountTermsType + + ''' + + Public Property Description() As TextType() + Get + Return Me.descriptionField + End Get + Set + Me.descriptionField = Value + End Set + End Property + + ''' + Public Property DueDateDateTime() As DateTimeType + Get + Return Me.dueDateDateTimeField + End Get + Set + Me.dueDateDateTimeField = Value + End Set + End Property + + ''' + + Public Property PartialPaymentAmount() As AmountType() + Get + Return Me.partialPaymentAmountField + End Get + Set + Me.partialPaymentAmountField = Value + End Set + End Property + + ''' + + Public Property ApplicableTradePaymentPenaltyTerms() As TradePaymentPenaltyTermsType() + Get + Return Me.applicableTradePaymentPenaltyTermsField + End Get + Set + Me.applicableTradePaymentPenaltyTermsField = Value + End Set + End Property + + ''' + + Public Property ApplicableTradePaymentDiscountTerms() As TradePaymentDiscountTermsType() + Get + Return Me.applicableTradePaymentDiscountTermsField + End Get + Set + Me.applicableTradePaymentDiscountTermsField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePaymentPenaltyTermsType + + Private basisDateTimeField As DateTimeType + + Private basisPeriodMeasureField As MeasureType + + Private basisAmountField() As AmountType + + Private calculationPercentField As PercentType + + Private actualPenaltyAmountField() As AmountType + + ''' + Public Property BasisDateTime() As DateTimeType + Get + Return Me.basisDateTimeField + End Get + Set + Me.basisDateTimeField = Value + End Set + End Property + + ''' + Public Property BasisPeriodMeasure() As MeasureType + Get + Return Me.basisPeriodMeasureField + End Get + Set + Me.basisPeriodMeasureField = Value + End Set + End Property + + ''' + + Public Property BasisAmount() As AmountType() + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property CalculationPercent() As PercentType + Get + Return Me.calculationPercentField + End Get + Set + Me.calculationPercentField = Value + End Set + End Property + + ''' + + Public Property ActualPenaltyAmount() As AmountType() + Get + Return Me.actualPenaltyAmountField + End Get + Set + Me.actualPenaltyAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePaymentDiscountTermsType + + Private basisDateTimeField As DateTimeType + + Private basisPeriodMeasureField As MeasureType + + Private basisAmountField() As AmountType + + Private calculationPercentField As PercentType + + Private actualDiscountAmountField() As AmountType + + ''' + Public Property BasisDateTime() As DateTimeType + Get + Return Me.basisDateTimeField + End Get + Set + Me.basisDateTimeField = Value + End Set + End Property + + ''' + Public Property BasisPeriodMeasure() As MeasureType + Get + Return Me.basisPeriodMeasureField + End Get + Set + Me.basisPeriodMeasureField = Value + End Set + End Property + + ''' + + Public Property BasisAmount() As AmountType() + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property CalculationPercent() As PercentType + Get + Return Me.calculationPercentField + End Get + Set + Me.calculationPercentField = Value + End Set + End Property + + ''' + + Public Property ActualDiscountAmount() As AmountType() + Get + Return Me.actualDiscountAmountField + End Get + Set + Me.actualDiscountAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAccountingAccountType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeSettlementMonetarySummationType + + Private lineTotalAmountField() As AmountType + + Private chargeTotalAmountField() As AmountType + + Private allowanceTotalAmountField() As AmountType + + Private taxBasisTotalAmountField() As AmountType + + Private taxTotalAmountField() As AmountType + + Private grandTotalAmountField() As AmountType + + Private totalPrepaidAmountField() As AmountType + + Private totalAllowanceChargeAmountField() As AmountType + + Private duePayableAmountField() As AmountType + + ''' + + Public Property LineTotalAmount() As AmountType() + Get + Return Me.lineTotalAmountField + End Get + Set + Me.lineTotalAmountField = Value + End Set + End Property + + ''' + + Public Property ChargeTotalAmount() As AmountType() + Get + Return Me.chargeTotalAmountField + End Get + Set + Me.chargeTotalAmountField = Value + End Set + End Property + + ''' + + Public Property AllowanceTotalAmount() As AmountType() + Get + Return Me.allowanceTotalAmountField + End Get + Set + Me.allowanceTotalAmountField = Value + End Set + End Property + + ''' + + Public Property TaxBasisTotalAmount() As AmountType() + Get + Return Me.taxBasisTotalAmountField + End Get + Set + Me.taxBasisTotalAmountField = Value + End Set + End Property + + ''' + + Public Property TaxTotalAmount() As AmountType() + Get + Return Me.taxTotalAmountField + End Get + Set + Me.taxTotalAmountField = Value + End Set + End Property + + ''' + + Public Property GrandTotalAmount() As AmountType() + Get + Return Me.grandTotalAmountField + End Get + Set + Me.grandTotalAmountField = Value + End Set + End Property + + ''' + + Public Property TotalPrepaidAmount() As AmountType() + Get + Return Me.totalPrepaidAmountField + End Get + Set + Me.totalPrepaidAmountField = Value + End Set + End Property + + ''' + + Public Property TotalAllowanceChargeAmount() As AmountType() + Get + Return Me.totalAllowanceChargeAmountField + End Get + Set + Me.totalAllowanceChargeAmountField = Value + End Set + End Property + + ''' + + Public Property DuePayableAmount() As AmountType() + Get + Return Me.duePayableAmountField + End Get + Set + Me.duePayableAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeTransactionType + + Private applicableSupplyChainTradeAgreementField() As SupplyChainTradeAgreementType + + Private applicableSupplyChainTradeDeliveryField As SupplyChainTradeDeliveryType + + Private applicableSupplyChainTradeSettlementField As SupplyChainTradeSettlementType + + Private includedSupplyChainTradeLineItemField() As SupplyChainTradeLineItemType + + ''' + + Public Property ApplicableSupplyChainTradeAgreement() As SupplyChainTradeAgreementType() + Get + Return Me.applicableSupplyChainTradeAgreementField + End Get + Set + Me.applicableSupplyChainTradeAgreementField = Value + End Set + End Property + + ''' + Public Property ApplicableSupplyChainTradeDelivery() As SupplyChainTradeDeliveryType + Get + Return Me.applicableSupplyChainTradeDeliveryField + End Get + Set + Me.applicableSupplyChainTradeDeliveryField = Value + End Set + End Property + + ''' + Public Property ApplicableSupplyChainTradeSettlement() As SupplyChainTradeSettlementType + Get + Return Me.applicableSupplyChainTradeSettlementField + End Get + Set + Me.applicableSupplyChainTradeSettlementField = Value + End Set + End Property + + ''' + + Public Property IncludedSupplyChainTradeLineItem() As SupplyChainTradeLineItemType() + Get + Return Me.includedSupplyChainTradeLineItemField + End Get + Set + Me.includedSupplyChainTradeLineItemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ExchangedDocumentType + + Private idField As IDType + + Private nameField() As TextType + + Private typeCodeField As DocumentCodeType + + Private issueDateTimeField As DateTimeType + + Private copyIndicatorField As IndicatorType + + Private languageIDField() As IDType + + Private includedNoteField() As NoteType + + Private effectiveSpecifiedPeriodField As SpecifiedPeriodType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + + Public Property Name() As TextType() + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + Public Property TypeCode() As DocumentCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property IssueDateTime() As DateTimeType + Get + Return Me.issueDateTimeField + End Get + Set + Me.issueDateTimeField = Value + End Set + End Property + + ''' + Public Property CopyIndicator() As IndicatorType + Get + Return Me.copyIndicatorField + End Get + Set + Me.copyIndicatorField = Value + End Set + End Property + + ''' + + Public Property LanguageID() As IDType() + Get + Return Me.languageIDField + End Get + Set + Me.languageIDField = Value + End Set + End Property + + ''' + + Public Property IncludedNote() As NoteType() + Get + Return Me.includedNoteField + End Get + Set + Me.includedNoteField = Value + End Set + End Property + + ''' + Public Property EffectiveSpecifiedPeriod() As SpecifiedPeriodType + Get + Return Me.effectiveSpecifiedPeriodField + End Get + Set + Me.effectiveSpecifiedPeriodField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentContextParameterType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class +End Namespace diff --git a/Modules.Interfaces/ZUGFeRDInterface/Version2.0/CrossIndustryInvoiceType.vb b/Modules.Interfaces/ZUGFeRDInterface/Version2.0/CrossIndustryInvoiceType.vb new file mode 100644 index 00000000..1649a980 --- /dev/null +++ b/Modules.Interfaces/ZUGFeRDInterface/Version2.0/CrossIndustryInvoiceType.vb @@ -0,0 +1,3749 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict Off +Option Explicit On + +Imports System.Xml.Serialization + + +Namespace ZUGFeRD.Version2_0 + ' + 'This source code was auto-generated by xsd, Version=4.6.1055.0. + ' + + ''' + + Partial Public Class CrossIndustryInvoiceType + + Private exchangedDocumentContextField As ExchangedDocumentContextType + + Private exchangedDocumentField As ExchangedDocumentType + + Private supplyChainTradeTransactionField As SupplyChainTradeTransactionType + + ''' + Public Property ExchangedDocumentContext() As ExchangedDocumentContextType + Get + Return Me.exchangedDocumentContextField + End Get + Set + Me.exchangedDocumentContextField = Value + End Set + End Property + + ''' + Public Property ExchangedDocument() As ExchangedDocumentType + Get + Return Me.exchangedDocumentField + End Get + Set + Me.exchangedDocumentField = Value + End Set + End Property + + ''' + Public Property SupplyChainTradeTransaction() As SupplyChainTradeTransactionType + Get + Return Me.supplyChainTradeTransactionField + End Get + Set + Me.supplyChainTradeTransactionField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ExchangedDocumentContextType + + Private businessProcessSpecifiedDocumentContextParameterField As DocumentContextParameterType + + Private guidelineSpecifiedDocumentContextParameterField As DocumentContextParameterType + + ''' + Public Property BusinessProcessSpecifiedDocumentContextParameter() As DocumentContextParameterType + Get + Return Me.businessProcessSpecifiedDocumentContextParameterField + End Get + Set + Me.businessProcessSpecifiedDocumentContextParameterField = Value + End Set + End Property + + ''' + Public Property GuidelineSpecifiedDocumentContextParameter() As DocumentContextParameterType + Get + Return Me.guidelineSpecifiedDocumentContextParameterField + End Get + Set + Me.guidelineSpecifiedDocumentContextParameterField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentContextParameterType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class IDType + + Private schemeIDField As String + + Private valueField As String + + ''' + + Public Property schemeID() As String + Get + Return Me.schemeIDField + End Get + Set + Me.schemeIDField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAccountingAccountType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeSettlementHeaderMonetarySummationType + + Private lineTotalAmountField As AmountType + + Private chargeTotalAmountField As AmountType + + Private allowanceTotalAmountField As AmountType + + Private taxBasisTotalAmountField As AmountType + + Private taxTotalAmountField As AmountType + + Private grandTotalAmountField As AmountType + + Private totalPrepaidAmountField As AmountType + + Private duePayableAmountField As AmountType + + ''' + Public Property LineTotalAmount() As AmountType + Get + Return Me.lineTotalAmountField + End Get + Set + Me.lineTotalAmountField = Value + End Set + End Property + + ''' + Public Property ChargeTotalAmount() As AmountType + Get + Return Me.chargeTotalAmountField + End Get + Set + Me.chargeTotalAmountField = Value + End Set + End Property + + ''' + Public Property AllowanceTotalAmount() As AmountType + Get + Return Me.allowanceTotalAmountField + End Get + Set + Me.allowanceTotalAmountField = Value + End Set + End Property + + ''' + Public Property TaxBasisTotalAmount() As AmountType + Get + Return Me.taxBasisTotalAmountField + End Get + Set + Me.taxBasisTotalAmountField = Value + End Set + End Property + + ''' + Public Property TaxTotalAmount() As AmountType + Get + Return Me.taxTotalAmountField + End Get + Set + Me.taxTotalAmountField = Value + End Set + End Property + + ''' + Public Property GrandTotalAmount() As AmountType + Get + Return Me.grandTotalAmountField + End Get + Set + Me.grandTotalAmountField = Value + End Set + End Property + + ''' + Public Property TotalPrepaidAmount() As AmountType + Get + Return Me.totalPrepaidAmountField + End Get + Set + Me.totalPrepaidAmountField = Value + End Set + End Property + + ''' + Public Property DuePayableAmount() As AmountType + Get + Return Me.duePayableAmountField + End Get + Set + Me.duePayableAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AmountType + + Private currencyIDField As String + + Private valueField As Decimal + + ''' + + Public Property currencyID() As String + Get + Return Me.currencyIDField + End Get + Set + Me.currencyIDField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePaymentTermsType + + Private dueDateDateTimeField As DateTimeType + + Private directDebitMandateIDField As IDType + + ''' + Public Property DueDateDateTime() As DateTimeType + Get + Return Me.dueDateDateTimeField + End Get + Set + Me.dueDateDateTimeField = Value + End Set + End Property + + ''' + Public Property DirectDebitMandateID() As IDType + Get + Return Me.directDebitMandateIDField + End Get + Set + Me.directDebitMandateIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeType + + Private itemField As DateTimeTypeDateTimeString + + ''' + + Public Property Item() As DateTimeTypeDateTimeString + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeTypeDateTimeString + + Private formatField As String + + Private valueField As String + + ''' + + Public Property format() As String + Get + Return Me.formatField + End Get + Set + Me.formatField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AllowanceChargeReasonCodeType + + Private valueField As AllowanceChargeReasonCodeContentType + + ''' + + Public Property Value() As AllowanceChargeReasonCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum AllowanceChargeReasonCodeContentType + + ''' + AA + + ''' + AAA + + ''' + AAC + + ''' + AAD + + ''' + AAE + + ''' + AAF + + ''' + AAH + + ''' + AAI + + ''' + AAS + + ''' + AAT + + ''' + AAV + + ''' + AAY + + ''' + AAZ + + ''' + ABA + + ''' + ABB + + ''' + ABC + + ''' + ABD + + ''' + ABF + + ''' + ABK + + ''' + ABL + + ''' + ABN + + ''' + ABR + + ''' + ABS + + ''' + ABT + + ''' + ABU + + ''' + ACF + + ''' + ACG + + ''' + ACH + + ''' + ACI + + ''' + ACJ + + ''' + ACK + + ''' + ACL + + ''' + ACM + + ''' + ACS + + ''' + ADC + + ''' + ADE + + ''' + ADJ + + ''' + ADK + + ''' + ADL + + ''' + ADM + + ''' + ADN + + ''' + ADO + + ''' + ADP + + ''' + ADQ + + ''' + ADR + + ''' + ADT + + ''' + ADW + + ''' + ADY + + ''' + ADZ + + ''' + AEA + + ''' + AEB + + ''' + AEC + + ''' + AED + + ''' + AEF + + ''' + AEH + + ''' + AEI + + ''' + AEJ + + ''' + AEK + + ''' + AEL + + ''' + AEM + + ''' + AEN + + ''' + AEO + + ''' + AEP + + ''' + AES + + ''' + AET + + ''' + AEU + + ''' + AEV + + ''' + AEW + + ''' + AEX + + ''' + AEY + + ''' + AEZ + + ''' + AJ + + ''' + AU + + ''' + CA + + ''' + CAB + + ''' + CAD + + ''' + CAE + + ''' + CAF + + ''' + CAI + + ''' + CAJ + + ''' + CAK + + ''' + CAL + + ''' + CAM + + ''' + CAN + + ''' + CAO + + ''' + CAP + + ''' + CAQ + + ''' + CAR + + ''' + CAS + + ''' + CAT + + ''' + CAU + + ''' + CAV + + ''' + CAW + + ''' + CD + + ''' + CG + + ''' + CS + + ''' + CT + + ''' + DAB + + ''' + DAD + + ''' + DL + + ''' + EG + + ''' + EP + + ''' + ER + + ''' + FAA + + ''' + FAB + + ''' + FAC + + ''' + FC + + ''' + FH + + ''' + FI + + ''' + GAA + + ''' + HAA + + ''' + HD + + ''' + HH + + ''' + IAA + + ''' + IAB + + ''' + ID + + ''' + [IF] + + ''' + IR + + ''' + [IS] + + ''' + KO + + ''' + L1 + + ''' + LA + + ''' + LAA + + ''' + LAB + + ''' + LF + + ''' + MAE + + ''' + MI + + ''' + ML + + ''' + NAA + + ''' + OA + + ''' + PA + + ''' + PAA + + ''' + PC + + ''' + PL + + ''' + RAB + + ''' + RAC + + ''' + RAD + + ''' + RAF + + ''' + RE + + ''' + RF + + ''' + RH + + ''' + RV + + ''' + SA + + ''' + SAA + + ''' + SAD + + ''' + SAE + + ''' + SAI + + ''' + SG + + ''' + SH + + ''' + SM + + ''' + SU + + ''' + TAB + + ''' + TAC + + ''' + TT + + ''' + TV + + ''' + V1 + + ''' + V2 + + ''' + WH + + ''' + XAA + + ''' + YY + + ''' + ZZZ + + ''' + + Item41 + + ''' + + Item42 + + ''' + + Item60 + + ''' + + Item62 + + ''' + + Item63 + + ''' + + Item64 + + ''' + + Item65 + + ''' + + Item66 + + ''' + + Item67 + + ''' + + Item68 + + ''' + + Item70 + + ''' + + Item71 + + ''' + + Item88 + + ''' + + Item95 + + ''' + + Item100 + + ''' + + Item102 + + ''' + + Item103 + + ''' + + Item104 + + ''' + + Item105 + End Enum + + ''' + + Partial Public Class IndicatorType + + Private itemField As Boolean + + ''' + + Public Property Item() As Boolean + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAllowanceChargeType + + Private chargeIndicatorField As IndicatorType + + Private calculationPercentField As PercentType + + Private basisAmountField As AmountType + + Private actualAmountField As AmountType + + Private reasonCodeField As AllowanceChargeReasonCodeType + + Private reasonField As TextType + + Private categoryTradeTaxField As TradeTaxType + + ''' + Public Property ChargeIndicator() As IndicatorType + Get + Return Me.chargeIndicatorField + End Get + Set + Me.chargeIndicatorField = Value + End Set + End Property + + ''' + Public Property CalculationPercent() As PercentType + Get + Return Me.calculationPercentField + End Get + Set + Me.calculationPercentField = Value + End Set + End Property + + ''' + Public Property BasisAmount() As AmountType + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property ActualAmount() As AmountType + Get + Return Me.actualAmountField + End Get + Set + Me.actualAmountField = Value + End Set + End Property + + ''' + Public Property ReasonCode() As AllowanceChargeReasonCodeType + Get + Return Me.reasonCodeField + End Get + Set + Me.reasonCodeField = Value + End Set + End Property + + ''' + Public Property Reason() As TextType + Get + Return Me.reasonField + End Get + Set + Me.reasonField = Value + End Set + End Property + + ''' + Public Property CategoryTradeTax() As TradeTaxType + Get + Return Me.categoryTradeTaxField + End Get + Set + Me.categoryTradeTaxField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class PercentType + + Private valueField As Decimal + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TextType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeTaxType + + Private calculatedAmountField As AmountType + + Private typeCodeField As TaxTypeCodeType + + Private exemptionReasonField As TextType + + Private basisAmountField As AmountType + + Private categoryCodeField As TaxCategoryCodeType + + Private exemptionReasonCodeField As CodeType + + Private dueDateTypeCodeField As TimeReferenceCodeType + + Private rateApplicablePercentField As PercentType + + ''' + Public Property CalculatedAmount() As AmountType + Get + Return Me.calculatedAmountField + End Get + Set + Me.calculatedAmountField = Value + End Set + End Property + + ''' + Public Property TypeCode() As TaxTypeCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property ExemptionReason() As TextType + Get + Return Me.exemptionReasonField + End Get + Set + Me.exemptionReasonField = Value + End Set + End Property + + ''' + Public Property BasisAmount() As AmountType + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property CategoryCode() As TaxCategoryCodeType + Get + Return Me.categoryCodeField + End Get + Set + Me.categoryCodeField = Value + End Set + End Property + + ''' + Public Property ExemptionReasonCode() As CodeType + Get + Return Me.exemptionReasonCodeField + End Get + Set + Me.exemptionReasonCodeField = Value + End Set + End Property + + ''' + Public Property DueDateTypeCode() As TimeReferenceCodeType + Get + Return Me.dueDateTypeCodeField + End Get + Set + Me.dueDateTypeCodeField = Value + End Set + End Property + + ''' + Public Property RateApplicablePercent() As PercentType + Get + Return Me.rateApplicablePercentField + End Get + Set + Me.rateApplicablePercentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxTypeCodeType + + Private valueField As TaxTypeCodeContentType + + ''' + + Public Property Value() As TaxTypeCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TaxTypeCodeContentType + + ''' + VAT + End Enum + + ''' + + Partial Public Class TaxCategoryCodeType + + Private valueField As TaxCategoryCodeContentType + + ''' + + Public Property Value() As TaxCategoryCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TaxCategoryCodeContentType + + ''' + AE + + ''' + E + + ''' + G + + ''' + K + + ''' + L + + ''' + M + + ''' + O + + ''' + S + + ''' + Z + End Enum + + ''' + + Partial Public Class CodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TimeReferenceCodeType + + Private valueField As TimeReferenceCodeContentType + + ''' + + Public Property Value() As TimeReferenceCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TimeReferenceCodeContentType + + ''' + + Item5 + + ''' + + Item29 + + ''' + + Item72 + End Enum + + ''' + + Partial Public Class CreditorFinancialAccountType + + Private iBANIDField As IDType + + Private proprietaryIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + + ''' + Public Property ProprietaryID() As IDType + Get + Return Me.proprietaryIDField + End Get + Set + Me.proprietaryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DebtorFinancialAccountType + + Private iBANIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class PaymentMeansCodeType + + Private valueField As PaymentMeansCodeContentType + + ''' + + Public Property Value() As PaymentMeansCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum PaymentMeansCodeContentType + + ''' + + Item10 + + ''' + + Item20 + + ''' + + Item30 + + ''' + + Item48 + + ''' + + Item49 + + ''' + + Item57 + + ''' + + Item58 + + ''' + + Item59 + + ''' + ZZZ + End Enum + + ''' + + Partial Public Class TradeSettlementPaymentMeansType + + Private typeCodeField As PaymentMeansCodeType + + Private payerPartyDebtorFinancialAccountField As DebtorFinancialAccountType + + Private payeePartyCreditorFinancialAccountField As CreditorFinancialAccountType + + ''' + Public Property TypeCode() As PaymentMeansCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property PayerPartyDebtorFinancialAccount() As DebtorFinancialAccountType + Get + Return Me.payerPartyDebtorFinancialAccountField + End Get + Set + Me.payerPartyDebtorFinancialAccountField = Value + End Set + End Property + + ''' + Public Property PayeePartyCreditorFinancialAccount() As CreditorFinancialAccountType + Get + Return Me.payeePartyCreditorFinancialAccountField + End Get + Set + Me.payeePartyCreditorFinancialAccountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CurrencyCodeType + + Private valueField As CurrencyCodeContentType + + ''' + + Public Property Value() As CurrencyCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum CurrencyCodeContentType + + ''' + AED + + ''' + AFN + + ''' + ALL + + ''' + AMD + + ''' + ANG + + ''' + AOA + + ''' + ARS + + ''' + AUD + + ''' + AWG + + ''' + AZN + + ''' + BAM + + ''' + BBD + + ''' + BDT + + ''' + BGN + + ''' + BHD + + ''' + BIF + + ''' + BMD + + ''' + BND + + ''' + BOB + + ''' + BOV + + ''' + BRL + + ''' + BSD + + ''' + BTN + + ''' + BWP + + ''' + BYN + + ''' + BZD + + ''' + CAD + + ''' + CDF + + ''' + CHE + + ''' + CHF + + ''' + CHW + + ''' + CLF + + ''' + CLP + + ''' + CNY + + ''' + COP + + ''' + COU + + ''' + CRC + + ''' + CUC + + ''' + CUP + + ''' + CVE + + ''' + CZK + + ''' + DJF + + ''' + DKK + + ''' + DOP + + ''' + DZD + + ''' + EGP + + ''' + ERN + + ''' + ETB + + ''' + EUR + + ''' + FJD + + ''' + FKP + + ''' + GBP + + ''' + GEL + + ''' + GHS + + ''' + GIP + + ''' + GMD + + ''' + GNF + + ''' + GTQ + + ''' + GYD + + ''' + HKD + + ''' + HNL + + ''' + HRK + + ''' + HTG + + ''' + HUF + + ''' + IDR + + ''' + ILS + + ''' + INR + + ''' + IQD + + ''' + IRR + + ''' + ISK + + ''' + JMD + + ''' + JOD + + ''' + JPY + + ''' + KES + + ''' + KGS + + ''' + KHR + + ''' + KMF + + ''' + KPW + + ''' + KRW + + ''' + KWD + + ''' + KYD + + ''' + KZT + + ''' + LAK + + ''' + LBP + + ''' + LKR + + ''' + LRD + + ''' + LSL + + ''' + LYD + + ''' + MAD + + ''' + MDL + + ''' + MGA + + ''' + MKD + + ''' + MMK + + ''' + MNT + + ''' + MOP + + ''' + MRO + + ''' + MUR + + ''' + MVR + + ''' + MWK + + ''' + MXN + + ''' + MXV + + ''' + MYR + + ''' + MZN + + ''' + NAD + + ''' + NGN + + ''' + NIO + + ''' + NOK + + ''' + NPR + + ''' + NZD + + ''' + OMR + + ''' + PAB + + ''' + PEN + + ''' + PGK + + ''' + PHP + + ''' + PKR + + ''' + PLN + + ''' + PYG + + ''' + QAR + + ''' + RON + + ''' + RSD + + ''' + RUB + + ''' + RWF + + ''' + SAR + + ''' + SBD + + ''' + SCR + + ''' + SDG + + ''' + SEK + + ''' + SGD + + ''' + SHP + + ''' + SLL + + ''' + SOS + + ''' + SRD + + ''' + SSP + + ''' + STD + + ''' + SVC + + ''' + SYP + + ''' + SZL + + ''' + THB + + ''' + TJS + + ''' + TMT + + ''' + TND + + ''' + TOP + + ''' + [TRY] + + ''' + TTD + + ''' + TWD + + ''' + TZS + + ''' + UAH + + ''' + UGX + + ''' + USD + + ''' + USN + + ''' + UYI + + ''' + UYU + + ''' + UZS + + ''' + VEF + + ''' + VND + + ''' + VUV + + ''' + WST + + ''' + XAF + + ''' + XAG + + ''' + XAU + + ''' + XBA + + ''' + XBB + + ''' + XBC + + ''' + XBD + + ''' + XCD + + ''' + XDR + + ''' + XOF + + ''' + XPD + + ''' + XPF + + ''' + XPT + + ''' + XSU + + ''' + XTS + + ''' + XUA + + ''' + XXX + + ''' + YER + + ''' + ZAR + + ''' + ZMW + + ''' + ZWL + End Enum + + ''' + + Partial Public Class HeaderTradeSettlementType + + Private creditorReferenceIDField As IDType + + Private paymentReferenceField As TextType + + Private invoiceCurrencyCodeField As CurrencyCodeType + + Private payeeTradePartyField As TradePartyType + + Private specifiedTradeSettlementPaymentMeansField() As TradeSettlementPaymentMeansType + + Private applicableTradeTaxField() As TradeTaxType + + Private specifiedTradeAllowanceChargeField() As TradeAllowanceChargeType + + Private specifiedTradePaymentTermsField As TradePaymentTermsType + + Private specifiedTradeSettlementHeaderMonetarySummationField As TradeSettlementHeaderMonetarySummationType + + Private invoiceReferencedDocumentField As ReferencedDocumentType + + Private receivableSpecifiedTradeAccountingAccountField() As TradeAccountingAccountType + + ''' + Public Property CreditorReferenceID() As IDType + Get + Return Me.creditorReferenceIDField + End Get + Set + Me.creditorReferenceIDField = Value + End Set + End Property + + ''' + Public Property PaymentReference() As TextType + Get + Return Me.paymentReferenceField + End Get + Set + Me.paymentReferenceField = Value + End Set + End Property + + ''' + Public Property InvoiceCurrencyCode() As CurrencyCodeType + Get + Return Me.invoiceCurrencyCodeField + End Get + Set + Me.invoiceCurrencyCodeField = Value + End Set + End Property + + ''' + Public Property PayeeTradeParty() As TradePartyType + Get + Return Me.payeeTradePartyField + End Get + Set + Me.payeeTradePartyField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeSettlementPaymentMeans() As TradeSettlementPaymentMeansType() + Get + Return Me.specifiedTradeSettlementPaymentMeansField + End Get + Set + Me.specifiedTradeSettlementPaymentMeansField = Value + End Set + End Property + + ''' + + Public Property ApplicableTradeTax() As TradeTaxType() + Get + Return Me.applicableTradeTaxField + End Get + Set + Me.applicableTradeTaxField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeAllowanceCharge() As TradeAllowanceChargeType() + Get + Return Me.specifiedTradeAllowanceChargeField + End Get + Set + Me.specifiedTradeAllowanceChargeField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradePaymentTerms() As TradePaymentTermsType + Get + Return Me.specifiedTradePaymentTermsField + End Get + Set + Me.specifiedTradePaymentTermsField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeSettlementHeaderMonetarySummation() As TradeSettlementHeaderMonetarySummationType + Get + Return Me.specifiedTradeSettlementHeaderMonetarySummationField + End Get + Set + Me.specifiedTradeSettlementHeaderMonetarySummationField = Value + End Set + End Property + + ''' + Public Property InvoiceReferencedDocument() As ReferencedDocumentType + Get + Return Me.invoiceReferencedDocumentField + End Get + Set + Me.invoiceReferencedDocumentField = Value + End Set + End Property + + ''' + + Public Property ReceivableSpecifiedTradeAccountingAccount() As TradeAccountingAccountType() + Get + Return Me.receivableSpecifiedTradeAccountingAccountField + End Get + Set + Me.receivableSpecifiedTradeAccountingAccountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePartyType + + Private idField As IDType + + Private globalIDField() As IDType + + Private nameField As TextType + + Private specifiedLegalOrganizationField As LegalOrganizationType + + Private postalTradeAddressField As TradeAddressType + + Private uRIUniversalCommunicationField As UniversalCommunicationType + + Private specifiedTaxRegistrationField() As TaxRegistrationType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + + Public Property GlobalID() As IDType() + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + Public Property SpecifiedLegalOrganization() As LegalOrganizationType + Get + Return Me.specifiedLegalOrganizationField + End Get + Set + Me.specifiedLegalOrganizationField = Value + End Set + End Property + + ''' + Public Property PostalTradeAddress() As TradeAddressType + Get + Return Me.postalTradeAddressField + End Get + Set + Me.postalTradeAddressField = Value + End Set + End Property + + ''' + Public Property URIUniversalCommunication() As UniversalCommunicationType + Get + Return Me.uRIUniversalCommunicationField + End Get + Set + Me.uRIUniversalCommunicationField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTaxRegistration() As TaxRegistrationType() + Get + Return Me.specifiedTaxRegistrationField + End Get + Set + Me.specifiedTaxRegistrationField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LegalOrganizationType + + Private idField As IDType + + Private tradingBusinessNameField As TextType + + Private postalTradeAddressField As TradeAddressType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property TradingBusinessName() As TextType + Get + Return Me.tradingBusinessNameField + End Get + Set + Me.tradingBusinessNameField = Value + End Set + End Property + + ''' + Public Property PostalTradeAddress() As TradeAddressType + Get + Return Me.postalTradeAddressField + End Get + Set + Me.postalTradeAddressField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAddressType + + Private postcodeCodeField As CodeType + + Private lineOneField As TextType + + Private lineTwoField As TextType + + Private lineThreeField As TextType + + Private cityNameField As TextType + + Private countryIDField As CountryIDType + + Private countrySubDivisionNameField As TextType + + ''' + Public Property PostcodeCode() As CodeType + Get + Return Me.postcodeCodeField + End Get + Set + Me.postcodeCodeField = Value + End Set + End Property + + ''' + Public Property LineOne() As TextType + Get + Return Me.lineOneField + End Get + Set + Me.lineOneField = Value + End Set + End Property + + ''' + Public Property LineTwo() As TextType + Get + Return Me.lineTwoField + End Get + Set + Me.lineTwoField = Value + End Set + End Property + + ''' + Public Property LineThree() As TextType + Get + Return Me.lineThreeField + End Get + Set + Me.lineThreeField = Value + End Set + End Property + + ''' + Public Property CityName() As TextType + Get + Return Me.cityNameField + End Get + Set + Me.cityNameField = Value + End Set + End Property + + ''' + Public Property CountryID() As CountryIDType + Get + Return Me.countryIDField + End Get + Set + Me.countryIDField = Value + End Set + End Property + + ''' + Public Property CountrySubDivisionName() As TextType + Get + Return Me.countrySubDivisionNameField + End Get + Set + Me.countrySubDivisionNameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CountryIDType + + Private valueField As CountryIDContentType + + ''' + + Public Property Value() As CountryIDContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum CountryIDContentType + + ''' + AD + + ''' + AE + + ''' + AF + + ''' + AG + + ''' + AI + + ''' + AL + + ''' + AM + + ''' + AO + + ''' + AQ + + ''' + AR + + ''' + [AS] + + ''' + AT + + ''' + AU + + ''' + AW + + ''' + AX + + ''' + AZ + + ''' + BA + + ''' + BB + + ''' + BD + + ''' + BE + + ''' + BF + + ''' + BG + + ''' + BH + + ''' + BI + + ''' + BJ + + ''' + BL + + ''' + BM + + ''' + BN + + ''' + BO + + ''' + BQ + + ''' + BR + + ''' + BS + + ''' + BT + + ''' + BV + + ''' + BW + + ''' + BY + + ''' + BZ + + ''' + CA + + ''' + CC + + ''' + CD + + ''' + CF + + ''' + CG + + ''' + CH + + ''' + CI + + ''' + CK + + ''' + CL + + ''' + CM + + ''' + CN + + ''' + CO + + ''' + CR + + ''' + CU + + ''' + CV + + ''' + CW + + ''' + CX + + ''' + CY + + ''' + CZ + + ''' + DE + + ''' + DJ + + ''' + DK + + ''' + DM + + ''' + [DO] + + ''' + DZ + + ''' + EC + + ''' + EE + + ''' + EG + + ''' + EH + + ''' + ER + + ''' + ES + + ''' + ET + + ''' + FI + + ''' + FJ + + ''' + FK + + ''' + FM + + ''' + FO + + ''' + FR + + ''' + GA + + ''' + GB + + ''' + GD + + ''' + GE + + ''' + GF + + ''' + GG + + ''' + GH + + ''' + GI + + ''' + GL + + ''' + GM + + ''' + GN + + ''' + GP + + ''' + GQ + + ''' + GR + + ''' + GS + + ''' + GT + + ''' + GU + + ''' + GW + + ''' + GY + + ''' + HK + + ''' + HM + + ''' + HN + + ''' + HR + + ''' + HT + + ''' + HU + + ''' + ID + + ''' + IE + + ''' + IL + + ''' + IM + + ''' + [IN] + + ''' + IO + + ''' + IQ + + ''' + IR + + ''' + [IS] + + ''' + IT + + ''' + JE + + ''' + JM + + ''' + JO + + ''' + JP + + ''' + KE + + ''' + KG + + ''' + KH + + ''' + KI + + ''' + KM + + ''' + KN + + ''' + KP + + ''' + KR + + ''' + KW + + ''' + KY + + ''' + KZ + + ''' + LA + + ''' + LB + + ''' + LC + + ''' + LI + + ''' + LK + + ''' + LR + + ''' + LS + + ''' + LT + + ''' + LU + + ''' + LV + + ''' + LY + + ''' + MA + + ''' + MC + + ''' + MD + + ''' + [ME] + + ''' + MF + + ''' + MG + + ''' + MH + + ''' + MK + + ''' + ML + + ''' + MM + + ''' + MN + + ''' + MO + + ''' + MP + + ''' + MQ + + ''' + MR + + ''' + MS + + ''' + MT + + ''' + MU + + ''' + MV + + ''' + MW + + ''' + MX + + ''' + MY + + ''' + MZ + + ''' + NA + + ''' + NC + + ''' + NE + + ''' + NF + + ''' + NG + + ''' + NI + + ''' + NL + + ''' + NO + + ''' + NP + + ''' + NR + + ''' + NU + + ''' + NZ + + ''' + OM + + ''' + PA + + ''' + PE + + ''' + PF + + ''' + PG + + ''' + PH + + ''' + PK + + ''' + PL + + ''' + PM + + ''' + PN + + ''' + PR + + ''' + PS + + ''' + PT + + ''' + PW + + ''' + PY + + ''' + QA + + ''' + RE + + ''' + RO + + ''' + RS + + ''' + RU + + ''' + RW + + ''' + SA + + ''' + SB + + ''' + SC + + ''' + SD + + ''' + SE + + ''' + SG + + ''' + SH + + ''' + SI + + ''' + SJ + + ''' + SK + + ''' + SL + + ''' + SM + + ''' + SN + + ''' + SO + + ''' + SR + + ''' + SS + + ''' + ST + + ''' + SV + + ''' + SX + + ''' + SY + + ''' + SZ + + ''' + TC + + ''' + TD + + ''' + TF + + ''' + TG + + ''' + TH + + ''' + TJ + + ''' + TK + + ''' + TL + + ''' + TM + + ''' + TN + + ''' + [TO] + + ''' + TR + + ''' + TT + + ''' + TV + + ''' + TW + + ''' + TZ + + ''' + UA + + ''' + UG + + ''' + UM + + ''' + US + + ''' + UY + + ''' + UZ + + ''' + VA + + ''' + VC + + ''' + VE + + ''' + VG + + ''' + VI + + ''' + VN + + ''' + VU + + ''' + WF + + ''' + WS + + ''' + YE + + ''' + YT + + ''' + ZA + + ''' + ZM + + ''' + ZW + End Enum + + ''' + + Partial Public Class UniversalCommunicationType + + Private uRIIDField As IDType + + ''' + Public Property URIID() As IDType + Get + Return Me.uRIIDField + End Get + Set + Me.uRIIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxRegistrationType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ReferencedDocumentType + + Private issuerAssignedIDField As IDType + + Private formattedIssueDateTimeField As FormattedDateTimeType + + ''' + Public Property IssuerAssignedID() As IDType + Get + Return Me.issuerAssignedIDField + End Get + Set + Me.issuerAssignedIDField = Value + End Set + End Property + + ''' + Public Property FormattedIssueDateTime() As FormattedDateTimeType + Get + Return Me.formattedIssueDateTimeField + End Get + Set + Me.formattedIssueDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class FormattedDateTimeType + + Private dateTimeStringField As FormattedDateTimeTypeDateTimeString + + ''' + Public Property DateTimeString() As FormattedDateTimeTypeDateTimeString + Get + Return Me.dateTimeStringField + End Get + Set + Me.dateTimeStringField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class FormattedDateTimeTypeDateTimeString + + Private formatField As String + + Private valueField As String + + ''' + + Public Property format() As String + Get + Return Me.formatField + End Get + Set + Me.formatField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainEventType + + Private occurrenceDateTimeField As DateTimeType + + ''' + Public Property OccurrenceDateTime() As DateTimeType + Get + Return Me.occurrenceDateTimeField + End Get + Set + Me.occurrenceDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class HeaderTradeDeliveryType + + Private actualDeliverySupplyChainEventField As SupplyChainEventType + + Private despatchAdviceReferencedDocumentField As ReferencedDocumentType + + ''' + Public Property ActualDeliverySupplyChainEvent() As SupplyChainEventType + Get + Return Me.actualDeliverySupplyChainEventField + End Get + Set + Me.actualDeliverySupplyChainEventField = Value + End Set + End Property + + ''' + Public Property DespatchAdviceReferencedDocument() As ReferencedDocumentType + Get + Return Me.despatchAdviceReferencedDocumentField + End Get + Set + Me.despatchAdviceReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class HeaderTradeAgreementType + + Private buyerReferenceField As TextType + + Private sellerTradePartyField As TradePartyType + + Private buyerTradePartyField As TradePartyType + + Private sellerTaxRepresentativeTradePartyField As TradePartyType + + Private buyerOrderReferencedDocumentField As ReferencedDocumentType + + Private contractReferencedDocumentField As ReferencedDocumentType + + ''' + Public Property BuyerReference() As TextType + Get + Return Me.buyerReferenceField + End Get + Set + Me.buyerReferenceField = Value + End Set + End Property + + ''' + Public Property SellerTradeParty() As TradePartyType + Get + Return Me.sellerTradePartyField + End Get + Set + Me.sellerTradePartyField = Value + End Set + End Property + + ''' + Public Property BuyerTradeParty() As TradePartyType + Get + Return Me.buyerTradePartyField + End Get + Set + Me.buyerTradePartyField = Value + End Set + End Property + + ''' + Public Property SellerTaxRepresentativeTradeParty() As TradePartyType + Get + Return Me.sellerTaxRepresentativeTradePartyField + End Get + Set + Me.sellerTaxRepresentativeTradePartyField = Value + End Set + End Property + + ''' + Public Property BuyerOrderReferencedDocument() As ReferencedDocumentType + Get + Return Me.buyerOrderReferencedDocumentField + End Get + Set + Me.buyerOrderReferencedDocumentField = Value + End Set + End Property + + ''' + Public Property ContractReferencedDocument() As ReferencedDocumentType + Get + Return Me.contractReferencedDocumentField + End Get + Set + Me.contractReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeTransactionType + + Private applicableHeaderTradeAgreementField As HeaderTradeAgreementType + + Private applicableHeaderTradeDeliveryField As HeaderTradeDeliveryType + + Private applicableHeaderTradeSettlementField As HeaderTradeSettlementType + + ''' + Public Property ApplicableHeaderTradeAgreement() As HeaderTradeAgreementType + Get + Return Me.applicableHeaderTradeAgreementField + End Get + Set + Me.applicableHeaderTradeAgreementField = Value + End Set + End Property + + ''' + Public Property ApplicableHeaderTradeDelivery() As HeaderTradeDeliveryType + Get + Return Me.applicableHeaderTradeDeliveryField + End Get + Set + Me.applicableHeaderTradeDeliveryField = Value + End Set + End Property + + ''' + Public Property ApplicableHeaderTradeSettlement() As HeaderTradeSettlementType + Get + Return Me.applicableHeaderTradeSettlementField + End Get + Set + Me.applicableHeaderTradeSettlementField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class NoteType + + Private contentField As TextType + + Private subjectCodeField As CodeType + + ''' + Public Property Content() As TextType + Get + Return Me.contentField + End Get + Set + Me.contentField = Value + End Set + End Property + + ''' + Public Property SubjectCode() As CodeType + Get + Return Me.subjectCodeField + End Get + Set + Me.subjectCodeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentCodeType + + Private valueField As DocumentCodeContentType + + ''' + + Public Property Value() As DocumentCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum DocumentCodeContentType + + ''' + + Item751 + End Enum + + ''' + + Partial Public Class ExchangedDocumentType + + Private idField As IDType + + Private typeCodeField As DocumentCodeType + + Private issueDateTimeField As DateTimeType + + Private includedNoteField() As NoteType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property TypeCode() As DocumentCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property IssueDateTime() As DateTimeType + Get + Return Me.issueDateTimeField + End Get + Set + Me.issueDateTimeField = Value + End Set + End Property + + ''' + + Public Property IncludedNote() As NoteType() + Get + Return Me.includedNoteField + End Get + Set + Me.includedNoteField = Value + End Set + End Property + End Class + +End Namespace diff --git a/Modules.Interfaces/ZUGFeRDInterface/Version2.1.1/CrossIndustryInvoiceType.vb b/Modules.Interfaces/ZUGFeRDInterface/Version2.1.1/CrossIndustryInvoiceType.vb new file mode 100644 index 00000000..93d1b8bb --- /dev/null +++ b/Modules.Interfaces/ZUGFeRDInterface/Version2.1.1/CrossIndustryInvoiceType.vb @@ -0,0 +1,4329 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict Off +Option Explicit On + +Namespace ZUGFeRD.Version2_1_1 + + ' + 'This source code was auto-generated by xsd, Version=4.6.1055.0. + ' + + ''' + + Partial Public Class CrossIndustryInvoiceType + + Private exchangedDocumentContextField As ExchangedDocumentContextType + + Private exchangedDocumentField As ExchangedDocumentType + + Private supplyChainTradeTransactionField As SupplyChainTradeTransactionType + + ''' + Public Property ExchangedDocumentContext() As ExchangedDocumentContextType + Get + Return Me.exchangedDocumentContextField + End Get + Set + Me.exchangedDocumentContextField = Value + End Set + End Property + + ''' + Public Property ExchangedDocument() As ExchangedDocumentType + Get + Return Me.exchangedDocumentField + End Get + Set + Me.exchangedDocumentField = Value + End Set + End Property + + ''' + Public Property SupplyChainTradeTransaction() As SupplyChainTradeTransactionType + Get + Return Me.supplyChainTradeTransactionField + End Get + Set + Me.supplyChainTradeTransactionField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class ExchangedDocumentContextType + + Private businessProcessSpecifiedDocumentContextParameterField As DocumentContextParameterType + + Private guidelineSpecifiedDocumentContextParameterField As DocumentContextParameterType + + ''' + Public Property BusinessProcessSpecifiedDocumentContextParameter() As DocumentContextParameterType + Get + Return Me.businessProcessSpecifiedDocumentContextParameterField + End Get + Set + Me.businessProcessSpecifiedDocumentContextParameterField = Value + End Set + End Property + + ''' + Public Property GuidelineSpecifiedDocumentContextParameter() As DocumentContextParameterType + Get + Return Me.guidelineSpecifiedDocumentContextParameterField + End Get + Set + Me.guidelineSpecifiedDocumentContextParameterField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentContextParameterType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class IDType + + Private schemeIDField As String + + Private valueField As String + + ''' + + Public Property schemeID() As String + Get + Return Me.schemeIDField + End Get + Set + Me.schemeIDField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAccountingAccountType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeSettlementHeaderMonetarySummationType + + Private lineTotalAmountField As AmountType + + Private chargeTotalAmountField As AmountType + + Private allowanceTotalAmountField As AmountType + + Private taxBasisTotalAmountField As AmountType + + Private taxTotalAmountField As AmountType + + Private grandTotalAmountField As AmountType + + Private totalPrepaidAmountField As AmountType + + Private duePayableAmountField As AmountType + + ''' + Public Property LineTotalAmount() As AmountType + Get + Return Me.lineTotalAmountField + End Get + Set + Me.lineTotalAmountField = Value + End Set + End Property + + ''' + Public Property ChargeTotalAmount() As AmountType + Get + Return Me.chargeTotalAmountField + End Get + Set + Me.chargeTotalAmountField = Value + End Set + End Property + + ''' + Public Property AllowanceTotalAmount() As AmountType + Get + Return Me.allowanceTotalAmountField + End Get + Set + Me.allowanceTotalAmountField = Value + End Set + End Property + + ''' + Public Property TaxBasisTotalAmount() As AmountType + Get + Return Me.taxBasisTotalAmountField + End Get + Set + Me.taxBasisTotalAmountField = Value + End Set + End Property + + ''' + Public Property TaxTotalAmount() As AmountType + Get + Return Me.taxTotalAmountField + End Get + Set + Me.taxTotalAmountField = Value + End Set + End Property + + ''' + Public Property GrandTotalAmount() As AmountType + Get + Return Me.grandTotalAmountField + End Get + Set + Me.grandTotalAmountField = Value + End Set + End Property + + ''' + Public Property TotalPrepaidAmount() As AmountType + Get + Return Me.totalPrepaidAmountField + End Get + Set + Me.totalPrepaidAmountField = Value + End Set + End Property + + ''' + Public Property DuePayableAmount() As AmountType + Get + Return Me.duePayableAmountField + End Get + Set + Me.duePayableAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AmountType + + Private currencyIDField As String + + Private valueField As Decimal + + ''' + + Public Property currencyID() As String + Get + Return Me.currencyIDField + End Get + Set + Me.currencyIDField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePaymentTermsType + + Private dueDateDateTimeField As DateTimeType + + Private directDebitMandateIDField As IDType + + ''' + Public Property DueDateDateTime() As DateTimeType + Get + Return Me.dueDateDateTimeField + End Get + Set + Me.dueDateDateTimeField = Value + End Set + End Property + + ''' + Public Property DirectDebitMandateID() As IDType + Get + Return Me.directDebitMandateIDField + End Get + Set + Me.directDebitMandateIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeType + + Private itemField As DateTimeTypeDateTimeString + + ''' + + Public Property Item() As DateTimeTypeDateTimeString + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DateTimeTypeDateTimeString + + Private formatField As String + + Private valueField As String + + ''' + + Public Property format() As String + Get + Return Me.formatField + End Get + Set + Me.formatField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SpecifiedPeriodType + + Private startDateTimeField As DateTimeType + + Private endDateTimeField As DateTimeType + + ''' + Public Property StartDateTime() As DateTimeType + Get + Return Me.startDateTimeField + End Get + Set + Me.startDateTimeField = Value + End Set + End Property + + ''' + Public Property EndDateTime() As DateTimeType + Get + Return Me.endDateTimeField + End Get + Set + Me.endDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CreditorFinancialAccountType + + Private iBANIDField As IDType + + Private proprietaryIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + + ''' + Public Property ProprietaryID() As IDType + Get + Return Me.proprietaryIDField + End Get + Set + Me.proprietaryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DebtorFinancialAccountType + + Private iBANIDField As IDType + + ''' + Public Property IBANID() As IDType + Get + Return Me.iBANIDField + End Get + Set + Me.iBANIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class PaymentMeansCodeType + + Private valueField As PaymentMeansCodeContentType + + ''' + + Public Property Value() As PaymentMeansCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum PaymentMeansCodeContentType + + ''' + + Item10 + + ''' + + Item20 + + ''' + + Item30 + + ''' + + Item42 + + ''' + + Item48 + + ''' + + Item49 + + ''' + + Item57 + + ''' + + Item58 + + ''' + + Item59 + + ''' + + Item97 + + ''' + ZZZ + End Enum + + ''' + + Partial Public Class TradeSettlementPaymentMeansType + + Private typeCodeField As PaymentMeansCodeType + + Private payerPartyDebtorFinancialAccountField As DebtorFinancialAccountType + + Private payeePartyCreditorFinancialAccountField As CreditorFinancialAccountType + + ''' + Public Property TypeCode() As PaymentMeansCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property PayerPartyDebtorFinancialAccount() As DebtorFinancialAccountType + Get + Return Me.payerPartyDebtorFinancialAccountField + End Get + Set + Me.payerPartyDebtorFinancialAccountField = Value + End Set + End Property + + ''' + Public Property PayeePartyCreditorFinancialAccount() As CreditorFinancialAccountType + Get + Return Me.payeePartyCreditorFinancialAccountField + End Get + Set + Me.payeePartyCreditorFinancialAccountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CurrencyCodeType + + Private valueField As CurrencyCodeContentType + + ''' + + Public Property Value() As CurrencyCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum CurrencyCodeContentType + + ''' + AED + + ''' + AFN + + ''' + ALL + + ''' + AMD + + ''' + ANG + + ''' + AOA + + ''' + ARS + + ''' + AUD + + ''' + AWG + + ''' + AZN + + ''' + BAM + + ''' + BBD + + ''' + BDT + + ''' + BGN + + ''' + BHD + + ''' + BIF + + ''' + BMD + + ''' + BND + + ''' + BOB + + ''' + BOV + + ''' + BRL + + ''' + BSD + + ''' + BTN + + ''' + BWP + + ''' + BYN + + ''' + BZD + + ''' + CAD + + ''' + CDF + + ''' + CHE + + ''' + CHF + + ''' + CHW + + ''' + CLF + + ''' + CLP + + ''' + CNY + + ''' + COP + + ''' + COU + + ''' + CRC + + ''' + CUC + + ''' + CUP + + ''' + CVE + + ''' + CZK + + ''' + DJF + + ''' + DKK + + ''' + DOP + + ''' + DZD + + ''' + EGP + + ''' + ERN + + ''' + ETB + + ''' + EUR + + ''' + FJD + + ''' + FKP + + ''' + GBP + + ''' + GEL + + ''' + GHS + + ''' + GIP + + ''' + GMD + + ''' + GNF + + ''' + GTQ + + ''' + GYD + + ''' + HKD + + ''' + HNL + + ''' + HRK + + ''' + HTG + + ''' + HUF + + ''' + IDR + + ''' + ILS + + ''' + INR + + ''' + IQD + + ''' + IRR + + ''' + ISK + + ''' + JMD + + ''' + JOD + + ''' + JPY + + ''' + KES + + ''' + KGS + + ''' + KHR + + ''' + KMF + + ''' + KPW + + ''' + KRW + + ''' + KWD + + ''' + KYD + + ''' + KZT + + ''' + LAK + + ''' + LBP + + ''' + LKR + + ''' + LRD + + ''' + LSL + + ''' + LYD + + ''' + MAD + + ''' + MDL + + ''' + MGA + + ''' + MKD + + ''' + MMK + + ''' + MNT + + ''' + MOP + + ''' + MRU + + ''' + MUR + + ''' + MVR + + ''' + MWK + + ''' + MXN + + ''' + MXV + + ''' + MYR + + ''' + MZN + + ''' + NAD + + ''' + NGN + + ''' + NIO + + ''' + NOK + + ''' + NPR + + ''' + NZD + + ''' + OMR + + ''' + PAB + + ''' + PEN + + ''' + PGK + + ''' + PHP + + ''' + PKR + + ''' + PLN + + ''' + PYG + + ''' + QAR + + ''' + RON + + ''' + RSD + + ''' + RUB + + ''' + RWF + + ''' + SAR + + ''' + SBD + + ''' + SCR + + ''' + SDG + + ''' + SEK + + ''' + SGD + + ''' + SHP + + ''' + SLL + + ''' + SOS + + ''' + SRD + + ''' + SSP + + ''' + STN + + ''' + SVC + + ''' + SYP + + ''' + SZL + + ''' + THB + + ''' + TJS + + ''' + TMT + + ''' + TND + + ''' + TOP + + ''' + [TRY] + + ''' + TTD + + ''' + TWD + + ''' + TZS + + ''' + UAH + + ''' + UGX + + ''' + USD + + ''' + USN + + ''' + UYI + + ''' + UYU + + ''' + UYW + + ''' + UZS + + ''' + VES + + ''' + VND + + ''' + VUV + + ''' + WST + + ''' + XAF + + ''' + XAG + + ''' + XAU + + ''' + XBA + + ''' + XBB + + ''' + XBC + + ''' + XBD + + ''' + XCD + + ''' + XDR + + ''' + XOF + + ''' + XPD + + ''' + XPF + + ''' + XPT + + ''' + XSU + + ''' + XTS + + ''' + XUA + + ''' + XXX + + ''' + YER + + ''' + ZAR + + ''' + ZMW + + ''' + ZWL + End Enum + + ''' + + Partial Public Class HeaderTradeSettlementType + + Private creditorReferenceIDField As IDType + + Private paymentReferenceField As TextType + + Private invoiceCurrencyCodeField As CurrencyCodeType + + Private payeeTradePartyField As TradePartyType + + Private specifiedTradeSettlementPaymentMeansField() As TradeSettlementPaymentMeansType + + Private applicableTradeTaxField() As TradeTaxType + + Private billingSpecifiedPeriodField As SpecifiedPeriodType + + Private specifiedTradeAllowanceChargeField() As TradeAllowanceChargeType + + Private specifiedTradePaymentTermsField As TradePaymentTermsType + + Private specifiedTradeSettlementHeaderMonetarySummationField As TradeSettlementHeaderMonetarySummationType + + Private invoiceReferencedDocumentField As ReferencedDocumentType + + Private receivableSpecifiedTradeAccountingAccountField As TradeAccountingAccountType + + ''' + Public Property CreditorReferenceID() As IDType + Get + Return Me.creditorReferenceIDField + End Get + Set + Me.creditorReferenceIDField = Value + End Set + End Property + + ''' + Public Property PaymentReference() As TextType + Get + Return Me.paymentReferenceField + End Get + Set + Me.paymentReferenceField = Value + End Set + End Property + + ''' + Public Property InvoiceCurrencyCode() As CurrencyCodeType + Get + Return Me.invoiceCurrencyCodeField + End Get + Set + Me.invoiceCurrencyCodeField = Value + End Set + End Property + + ''' + Public Property PayeeTradeParty() As TradePartyType + Get + Return Me.payeeTradePartyField + End Get + Set + Me.payeeTradePartyField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeSettlementPaymentMeans() As TradeSettlementPaymentMeansType() + Get + Return Me.specifiedTradeSettlementPaymentMeansField + End Get + Set + Me.specifiedTradeSettlementPaymentMeansField = Value + End Set + End Property + + ''' + + Public Property ApplicableTradeTax() As TradeTaxType() + Get + Return Me.applicableTradeTaxField + End Get + Set + Me.applicableTradeTaxField = Value + End Set + End Property + + ''' + Public Property BillingSpecifiedPeriod() As SpecifiedPeriodType + Get + Return Me.billingSpecifiedPeriodField + End Get + Set + Me.billingSpecifiedPeriodField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeAllowanceCharge() As TradeAllowanceChargeType() + Get + Return Me.specifiedTradeAllowanceChargeField + End Get + Set + Me.specifiedTradeAllowanceChargeField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradePaymentTerms() As TradePaymentTermsType + Get + Return Me.specifiedTradePaymentTermsField + End Get + Set + Me.specifiedTradePaymentTermsField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeSettlementHeaderMonetarySummation() As TradeSettlementHeaderMonetarySummationType + Get + Return Me.specifiedTradeSettlementHeaderMonetarySummationField + End Get + Set + Me.specifiedTradeSettlementHeaderMonetarySummationField = Value + End Set + End Property + + ''' + Public Property InvoiceReferencedDocument() As ReferencedDocumentType + Get + Return Me.invoiceReferencedDocumentField + End Get + Set + Me.invoiceReferencedDocumentField = Value + End Set + End Property + + ''' + Public Property ReceivableSpecifiedTradeAccountingAccount() As TradeAccountingAccountType + Get + Return Me.receivableSpecifiedTradeAccountingAccountField + End Get + Set + Me.receivableSpecifiedTradeAccountingAccountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TextType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePartyType + + Private idField() As IDType + + Private globalIDField() As IDType + + Private nameField As TextType + + Private specifiedLegalOrganizationField As LegalOrganizationType + + Private postalTradeAddressField As TradeAddressType + + Private uRIUniversalCommunicationField As UniversalCommunicationType + + Private specifiedTaxRegistrationField() As TaxRegistrationType + + ''' + + Public Property ID() As IDType() + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + + Public Property GlobalID() As IDType() + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + + ''' + Public Property SpecifiedLegalOrganization() As LegalOrganizationType + Get + Return Me.specifiedLegalOrganizationField + End Get + Set + Me.specifiedLegalOrganizationField = Value + End Set + End Property + + ''' + Public Property PostalTradeAddress() As TradeAddressType + Get + Return Me.postalTradeAddressField + End Get + Set + Me.postalTradeAddressField = Value + End Set + End Property + + ''' + Public Property URIUniversalCommunication() As UniversalCommunicationType + Get + Return Me.uRIUniversalCommunicationField + End Get + Set + Me.uRIUniversalCommunicationField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTaxRegistration() As TaxRegistrationType() + Get + Return Me.specifiedTaxRegistrationField + End Get + Set + Me.specifiedTaxRegistrationField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LegalOrganizationType + + Private idField As IDType + + Private tradingBusinessNameField As TextType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property TradingBusinessName() As TextType + Get + Return Me.tradingBusinessNameField + End Get + Set + Me.tradingBusinessNameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAddressType + + Private postcodeCodeField As CodeType + + Private lineOneField As TextType + + Private lineTwoField As TextType + + Private lineThreeField As TextType + + Private cityNameField As TextType + + Private countryIDField As CountryIDType + + ''' + Public Property PostcodeCode() As CodeType + Get + Return Me.postcodeCodeField + End Get + Set + Me.postcodeCodeField = Value + End Set + End Property + + ''' + Public Property LineOne() As TextType + Get + Return Me.lineOneField + End Get + Set + Me.lineOneField = Value + End Set + End Property + + ''' + Public Property LineTwo() As TextType + Get + Return Me.lineTwoField + End Get + Set + Me.lineTwoField = Value + End Set + End Property + + ''' + Public Property LineThree() As TextType + Get + Return Me.lineThreeField + End Get + Set + Me.lineThreeField = Value + End Set + End Property + + ''' + Public Property CityName() As TextType + Get + Return Me.cityNameField + End Get + Set + Me.cityNameField = Value + End Set + End Property + + ''' + Public Property CountryID() As CountryIDType + Get + Return Me.countryIDField + End Get + Set + Me.countryIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CodeType + + Private valueField As String + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class CountryIDType + + Private valueField As CountryIDContentType + + ''' + + Public Property Value() As CountryIDContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum CountryIDContentType + + ''' + + Item1A + + ''' + AD + + ''' + AE + + ''' + AF + + ''' + AG + + ''' + AI + + ''' + AL + + ''' + AM + + ''' + AO + + ''' + AQ + + ''' + AR + + ''' + [AS] + + ''' + AT + + ''' + AU + + ''' + AW + + ''' + AX + + ''' + AZ + + ''' + BA + + ''' + BB + + ''' + BD + + ''' + BE + + ''' + BF + + ''' + BG + + ''' + BH + + ''' + BI + + ''' + BJ + + ''' + BL + + ''' + BM + + ''' + BN + + ''' + BO + + ''' + BQ + + ''' + BR + + ''' + BS + + ''' + BT + + ''' + BV + + ''' + BW + + ''' + BY + + ''' + BZ + + ''' + CA + + ''' + CC + + ''' + CD + + ''' + CF + + ''' + CG + + ''' + CH + + ''' + CI + + ''' + CK + + ''' + CL + + ''' + CM + + ''' + CN + + ''' + CO + + ''' + CR + + ''' + CU + + ''' + CV + + ''' + CW + + ''' + CX + + ''' + CY + + ''' + CZ + + ''' + DE + + ''' + DJ + + ''' + DK + + ''' + DM + + ''' + [DO] + + ''' + DZ + + ''' + EC + + ''' + EE + + ''' + EG + + ''' + EH + + ''' + ER + + ''' + ES + + ''' + ET + + ''' + FI + + ''' + FJ + + ''' + FK + + ''' + FM + + ''' + FO + + ''' + FR + + ''' + GA + + ''' + GB + + ''' + GD + + ''' + GE + + ''' + GF + + ''' + GG + + ''' + GH + + ''' + GI + + ''' + GL + + ''' + GM + + ''' + GN + + ''' + GP + + ''' + GQ + + ''' + GR + + ''' + GS + + ''' + GT + + ''' + GU + + ''' + GW + + ''' + GY + + ''' + HK + + ''' + HM + + ''' + HN + + ''' + HR + + ''' + HT + + ''' + HU + + ''' + ID + + ''' + IE + + ''' + IL + + ''' + IM + + ''' + [IN] + + ''' + IO + + ''' + IQ + + ''' + IR + + ''' + [IS] + + ''' + IT + + ''' + JE + + ''' + JM + + ''' + JO + + ''' + JP + + ''' + KE + + ''' + KG + + ''' + KH + + ''' + KI + + ''' + KM + + ''' + KN + + ''' + KP + + ''' + KR + + ''' + KW + + ''' + KY + + ''' + KZ + + ''' + LA + + ''' + LB + + ''' + LC + + ''' + LI + + ''' + LK + + ''' + LR + + ''' + LS + + ''' + LT + + ''' + LU + + ''' + LV + + ''' + LY + + ''' + MA + + ''' + MC + + ''' + MD + + ''' + [ME] + + ''' + MF + + ''' + MG + + ''' + MH + + ''' + MK + + ''' + ML + + ''' + MM + + ''' + MN + + ''' + MO + + ''' + MP + + ''' + MQ + + ''' + MR + + ''' + MS + + ''' + MT + + ''' + MU + + ''' + MV + + ''' + MW + + ''' + MX + + ''' + MY + + ''' + MZ + + ''' + NA + + ''' + NC + + ''' + NE + + ''' + NF + + ''' + NG + + ''' + NI + + ''' + NL + + ''' + NO + + ''' + NP + + ''' + NR + + ''' + NU + + ''' + NZ + + ''' + OM + + ''' + PA + + ''' + PE + + ''' + PF + + ''' + PG + + ''' + PH + + ''' + PK + + ''' + PL + + ''' + PM + + ''' + PN + + ''' + PR + + ''' + PS + + ''' + PT + + ''' + PW + + ''' + PY + + ''' + QA + + ''' + RE + + ''' + RO + + ''' + RS + + ''' + RU + + ''' + RW + + ''' + SA + + ''' + SB + + ''' + SC + + ''' + SD + + ''' + SE + + ''' + SG + + ''' + SH + + ''' + SI + + ''' + SJ + + ''' + SK + + ''' + SL + + ''' + SM + + ''' + SN + + ''' + SO + + ''' + SR + + ''' + SS + + ''' + ST + + ''' + SV + + ''' + SX + + ''' + SY + + ''' + SZ + + ''' + TC + + ''' + TD + + ''' + TF + + ''' + TG + + ''' + TH + + ''' + TJ + + ''' + TK + + ''' + TL + + ''' + TM + + ''' + TN + + ''' + [TO] + + ''' + TR + + ''' + TT + + ''' + TV + + ''' + TW + + ''' + TZ + + ''' + UA + + ''' + UG + + ''' + UM + + ''' + US + + ''' + UY + + ''' + UZ + + ''' + VA + + ''' + VC + + ''' + VE + + ''' + VG + + ''' + VI + + ''' + VN + + ''' + VU + + ''' + WF + + ''' + WS + + ''' + YE + + ''' + YT + + ''' + ZA + + ''' + ZM + + ''' + ZW + End Enum + + ''' + + Partial Public Class UniversalCommunicationType + + Private uRIIDField As IDType + + ''' + Public Property URIID() As IDType + Get + Return Me.uRIIDField + End Get + Set + Me.uRIIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxRegistrationType + + Private idField As IDType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeTaxType + + Private calculatedAmountField As AmountType + + Private typeCodeField As TaxTypeCodeType + + Private exemptionReasonField As TextType + + Private basisAmountField As AmountType + + Private categoryCodeField As TaxCategoryCodeType + + Private exemptionReasonCodeField As CodeType + + Private dueDateTypeCodeField As TimeReferenceCodeType + + Private rateApplicablePercentField As PercentType + + ''' + Public Property CalculatedAmount() As AmountType + Get + Return Me.calculatedAmountField + End Get + Set + Me.calculatedAmountField = Value + End Set + End Property + + ''' + Public Property TypeCode() As TaxTypeCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property ExemptionReason() As TextType + Get + Return Me.exemptionReasonField + End Get + Set + Me.exemptionReasonField = Value + End Set + End Property + + ''' + Public Property BasisAmount() As AmountType + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property CategoryCode() As TaxCategoryCodeType + Get + Return Me.categoryCodeField + End Get + Set + Me.categoryCodeField = Value + End Set + End Property + + ''' + Public Property ExemptionReasonCode() As CodeType + Get + Return Me.exemptionReasonCodeField + End Get + Set + Me.exemptionReasonCodeField = Value + End Set + End Property + + ''' + Public Property DueDateTypeCode() As TimeReferenceCodeType + Get + Return Me.dueDateTypeCodeField + End Get + Set + Me.dueDateTypeCodeField = Value + End Set + End Property + + ''' + Public Property RateApplicablePercent() As PercentType + Get + Return Me.rateApplicablePercentField + End Get + Set + Me.rateApplicablePercentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TaxTypeCodeType + + Private valueField As TaxTypeCodeContentType + + ''' + + Public Property Value() As TaxTypeCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TaxTypeCodeContentType + + ''' + VAT + End Enum + + ''' + + Partial Public Class TaxCategoryCodeType + + Private valueField As TaxCategoryCodeContentType + + ''' + + Public Property Value() As TaxCategoryCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TaxCategoryCodeContentType + + ''' + AE + + ''' + E + + ''' + G + + ''' + K + + ''' + L + + ''' + M + + ''' + O + + ''' + S + + ''' + Z + End Enum + + ''' + + Partial Public Class TimeReferenceCodeType + + Private valueField As TimeReferenceCodeContentType + + ''' + + Public Property Value() As TimeReferenceCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum TimeReferenceCodeContentType + + ''' + + Item5 + + ''' + + Item29 + + ''' + + Item72 + End Enum + + ''' + + Partial Public Class PercentType + + Private valueField As Decimal + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeAllowanceChargeType + + Private chargeIndicatorField As IndicatorType + + Private calculationPercentField As PercentType + + Private basisAmountField As AmountType + + Private actualAmountField As AmountType + + Private reasonCodeField As AllowanceChargeReasonCodeType + + Private reasonField As TextType + + Private categoryTradeTaxField As TradeTaxType + + ''' + Public Property ChargeIndicator() As IndicatorType + Get + Return Me.chargeIndicatorField + End Get + Set + Me.chargeIndicatorField = Value + End Set + End Property + + ''' + Public Property CalculationPercent() As PercentType + Get + Return Me.calculationPercentField + End Get + Set + Me.calculationPercentField = Value + End Set + End Property + + ''' + Public Property BasisAmount() As AmountType + Get + Return Me.basisAmountField + End Get + Set + Me.basisAmountField = Value + End Set + End Property + + ''' + Public Property ActualAmount() As AmountType + Get + Return Me.actualAmountField + End Get + Set + Me.actualAmountField = Value + End Set + End Property + + ''' + Public Property ReasonCode() As AllowanceChargeReasonCodeType + Get + Return Me.reasonCodeField + End Get + Set + Me.reasonCodeField = Value + End Set + End Property + + ''' + Public Property Reason() As TextType + Get + Return Me.reasonField + End Get + Set + Me.reasonField = Value + End Set + End Property + + ''' + Public Property CategoryTradeTax() As TradeTaxType + Get + Return Me.categoryTradeTaxField + End Get + Set + Me.categoryTradeTaxField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class IndicatorType + + Private itemField As Boolean + + ''' + + Public Property Item() As Boolean + Get + Return Me.itemField + End Get + Set + Me.itemField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class AllowanceChargeReasonCodeType + + Private valueField As AllowanceChargeReasonCodeContentType + + ''' + + Public Property Value() As AllowanceChargeReasonCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum AllowanceChargeReasonCodeContentType + + ''' + AA + + ''' + AAA + + ''' + AAC + + ''' + AAD + + ''' + AAE + + ''' + AAF + + ''' + AAH + + ''' + AAI + + ''' + AAS + + ''' + AAT + + ''' + AAV + + ''' + AAY + + ''' + AAZ + + ''' + ABA + + ''' + ABB + + ''' + ABC + + ''' + ABD + + ''' + ABF + + ''' + ABK + + ''' + ABL + + ''' + ABN + + ''' + ABR + + ''' + ABS + + ''' + ABT + + ''' + ABU + + ''' + ACF + + ''' + ACG + + ''' + ACH + + ''' + ACI + + ''' + ACJ + + ''' + ACK + + ''' + ACL + + ''' + ACM + + ''' + ACS + + ''' + ADC + + ''' + ADE + + ''' + ADJ + + ''' + ADK + + ''' + ADL + + ''' + ADM + + ''' + ADN + + ''' + ADO + + ''' + ADP + + ''' + ADQ + + ''' + ADR + + ''' + ADT + + ''' + ADW + + ''' + ADY + + ''' + ADZ + + ''' + AEA + + ''' + AEB + + ''' + AEC + + ''' + AED + + ''' + AEF + + ''' + AEH + + ''' + AEI + + ''' + AEJ + + ''' + AEK + + ''' + AEL + + ''' + AEM + + ''' + AEN + + ''' + AEO + + ''' + AEP + + ''' + AES + + ''' + AET + + ''' + AEU + + ''' + AEV + + ''' + AEW + + ''' + AEX + + ''' + AEY + + ''' + AEZ + + ''' + AJ + + ''' + AU + + ''' + CA + + ''' + CAB + + ''' + CAD + + ''' + CAE + + ''' + CAF + + ''' + CAI + + ''' + CAJ + + ''' + CAK + + ''' + CAL + + ''' + CAM + + ''' + CAN + + ''' + CAO + + ''' + CAP + + ''' + CAQ + + ''' + CAR + + ''' + CAS + + ''' + CAT + + ''' + CAU + + ''' + CAV + + ''' + CAW + + ''' + CAX + + ''' + CAY + + ''' + CAZ + + ''' + CD + + ''' + CG + + ''' + CS + + ''' + CT + + ''' + DAB + + ''' + DAC + + ''' + DAD + + ''' + DAF + + ''' + DAG + + ''' + DAH + + ''' + DAI + + ''' + DAJ + + ''' + DAK + + ''' + DAL + + ''' + DAM + + ''' + DAN + + ''' + DAO + + ''' + DAP + + ''' + DAQ + + ''' + DL + + ''' + EG + + ''' + EP + + ''' + ER + + ''' + FAA + + ''' + FAB + + ''' + FAC + + ''' + FC + + ''' + FH + + ''' + FI + + ''' + GAA + + ''' + HAA + + ''' + HD + + ''' + HH + + ''' + IAA + + ''' + IAB + + ''' + ID + + ''' + [IF] + + ''' + IR + + ''' + [IS] + + ''' + KO + + ''' + L1 + + ''' + LA + + ''' + LAA + + ''' + LAB + + ''' + LF + + ''' + MAE + + ''' + MI + + ''' + ML + + ''' + NAA + + ''' + OA + + ''' + PA + + ''' + PAA + + ''' + PC + + ''' + PL + + ''' + RAB + + ''' + RAC + + ''' + RAD + + ''' + RAF + + ''' + RE + + ''' + RF + + ''' + RH + + ''' + RV + + ''' + SA + + ''' + SAA + + ''' + SAD + + ''' + SAE + + ''' + SAI + + ''' + SG + + ''' + SH + + ''' + SM + + ''' + SU + + ''' + TAB + + ''' + TAC + + ''' + TT + + ''' + TV + + ''' + V1 + + ''' + V2 + + ''' + WH + + ''' + XAA + + ''' + YY + + ''' + ZZZ + + ''' + + Item41 + + ''' + + Item42 + + ''' + + Item60 + + ''' + + Item62 + + ''' + + Item63 + + ''' + + Item64 + + ''' + + Item65 + + ''' + + Item66 + + ''' + + Item67 + + ''' + + Item68 + + ''' + + Item70 + + ''' + + Item71 + + ''' + + Item88 + + ''' + + Item95 + + ''' + + Item100 + + ''' + + Item102 + + ''' + + Item103 + + ''' + + Item104 + + ''' + + Item105 + End Enum + + ''' + + Partial Public Class ReferencedDocumentType + + Private issuerAssignedIDField As IDType + + Private formattedIssueDateTimeField As FormattedDateTimeType + + ''' + Public Property IssuerAssignedID() As IDType + Get + Return Me.issuerAssignedIDField + End Get + Set + Me.issuerAssignedIDField = Value + End Set + End Property + + ''' + Public Property FormattedIssueDateTime() As FormattedDateTimeType + Get + Return Me.formattedIssueDateTimeField + End Get + Set + Me.formattedIssueDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class FormattedDateTimeType + + Private dateTimeStringField As FormattedDateTimeTypeDateTimeString + + ''' + Public Property DateTimeString() As FormattedDateTimeTypeDateTimeString + Get + Return Me.dateTimeStringField + End Get + Set + Me.dateTimeStringField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class FormattedDateTimeTypeDateTimeString + + Private formatField As String + + Private valueField As String + + ''' + + Public Property format() As String + Get + Return Me.formatField + End Get + Set + Me.formatField = Value + End Set + End Property + + ''' + + Public Property Value() As String + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainEventType + + Private occurrenceDateTimeField As DateTimeType + + ''' + Public Property OccurrenceDateTime() As DateTimeType + Get + Return Me.occurrenceDateTimeField + End Get + Set + Me.occurrenceDateTimeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class HeaderTradeDeliveryType + + Private shipToTradePartyField As TradePartyType + + Private actualDeliverySupplyChainEventField As SupplyChainEventType + + Private despatchAdviceReferencedDocumentField As ReferencedDocumentType + + ''' + Public Property ShipToTradeParty() As TradePartyType + Get + Return Me.shipToTradePartyField + End Get + Set + Me.shipToTradePartyField = Value + End Set + End Property + + ''' + Public Property ActualDeliverySupplyChainEvent() As SupplyChainEventType + Get + Return Me.actualDeliverySupplyChainEventField + End Get + Set + Me.actualDeliverySupplyChainEventField = Value + End Set + End Property + + ''' + Public Property DespatchAdviceReferencedDocument() As ReferencedDocumentType + Get + Return Me.despatchAdviceReferencedDocumentField + End Get + Set + Me.despatchAdviceReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class HeaderTradeAgreementType + + Private buyerReferenceField As TextType + + Private sellerTradePartyField As TradePartyType + + Private buyerTradePartyField As TradePartyType + + Private sellerTaxRepresentativeTradePartyField As TradePartyType + + Private buyerOrderReferencedDocumentField As ReferencedDocumentType + + Private contractReferencedDocumentField As ReferencedDocumentType + + ''' + Public Property BuyerReference() As TextType + Get + Return Me.buyerReferenceField + End Get + Set + Me.buyerReferenceField = Value + End Set + End Property + + ''' + Public Property SellerTradeParty() As TradePartyType + Get + Return Me.sellerTradePartyField + End Get + Set + Me.sellerTradePartyField = Value + End Set + End Property + + ''' + Public Property BuyerTradeParty() As TradePartyType + Get + Return Me.buyerTradePartyField + End Get + Set + Me.buyerTradePartyField = Value + End Set + End Property + + ''' + Public Property SellerTaxRepresentativeTradeParty() As TradePartyType + Get + Return Me.sellerTaxRepresentativeTradePartyField + End Get + Set + Me.sellerTaxRepresentativeTradePartyField = Value + End Set + End Property + + ''' + Public Property BuyerOrderReferencedDocument() As ReferencedDocumentType + Get + Return Me.buyerOrderReferencedDocumentField + End Get + Set + Me.buyerOrderReferencedDocumentField = Value + End Set + End Property + + ''' + Public Property ContractReferencedDocument() As ReferencedDocumentType + Get + Return Me.contractReferencedDocumentField + End Get + Set + Me.contractReferencedDocumentField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeSettlementLineMonetarySummationType + + Private lineTotalAmountField As AmountType + + ''' + Public Property LineTotalAmount() As AmountType + Get + Return Me.lineTotalAmountField + End Get + Set + Me.lineTotalAmountField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LineTradeSettlementType + + Private applicableTradeTaxField As TradeTaxType + + Private specifiedTradeAllowanceChargeField() As TradeAllowanceChargeType + + Private specifiedTradeSettlementLineMonetarySummationField As TradeSettlementLineMonetarySummationType + + ''' + Public Property ApplicableTradeTax() As TradeTaxType + Get + Return Me.applicableTradeTaxField + End Get + Set + Me.applicableTradeTaxField = Value + End Set + End Property + + ''' + + Public Property SpecifiedTradeAllowanceCharge() As TradeAllowanceChargeType() + Get + Return Me.specifiedTradeAllowanceChargeField + End Get + Set + Me.specifiedTradeAllowanceChargeField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeSettlementLineMonetarySummation() As TradeSettlementLineMonetarySummationType + Get + Return Me.specifiedTradeSettlementLineMonetarySummationField + End Get + Set + Me.specifiedTradeSettlementLineMonetarySummationField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LineTradeDeliveryType + + Private billedQuantityField As QuantityType + + ''' + Public Property BilledQuantity() As QuantityType + Get + Return Me.billedQuantityField + End Get + Set + Me.billedQuantityField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class QuantityType + + Private unitCodeField As String + + Private valueField As Decimal + + ''' + + Public Property unitCode() As String + Get + Return Me.unitCodeField + End Get + Set + Me.unitCodeField = Value + End Set + End Property + + ''' + + Public Property Value() As Decimal + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradePriceType + + Private chargeAmountField As AmountType + + Private basisQuantityField As QuantityType + + ''' + Public Property ChargeAmount() As AmountType + Get + Return Me.chargeAmountField + End Get + Set + Me.chargeAmountField = Value + End Set + End Property + + ''' + Public Property BasisQuantity() As QuantityType + Get + Return Me.basisQuantityField + End Get + Set + Me.basisQuantityField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class LineTradeAgreementType + + Private netPriceProductTradePriceField As TradePriceType + + ''' + Public Property NetPriceProductTradePrice() As TradePriceType + Get + Return Me.netPriceProductTradePriceField + End Get + Set + Me.netPriceProductTradePriceField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class TradeProductType + + Private globalIDField As IDType + + Private nameField As TextType + + ''' + Public Property GlobalID() As IDType + Get + Return Me.globalIDField + End Get + Set + Me.globalIDField = Value + End Set + End Property + + ''' + Public Property Name() As TextType + Get + Return Me.nameField + End Get + Set + Me.nameField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentLineDocumentType + + Private lineIDField As IDType + + ''' + Public Property LineID() As IDType + Get + Return Me.lineIDField + End Get + Set + Me.lineIDField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeLineItemType + + Private associatedDocumentLineDocumentField As DocumentLineDocumentType + + Private specifiedTradeProductField As TradeProductType + + Private specifiedLineTradeAgreementField As LineTradeAgreementType + + Private specifiedLineTradeDeliveryField As LineTradeDeliveryType + + Private specifiedLineTradeSettlementField As LineTradeSettlementType + + ''' + Public Property AssociatedDocumentLineDocument() As DocumentLineDocumentType + Get + Return Me.associatedDocumentLineDocumentField + End Get + Set + Me.associatedDocumentLineDocumentField = Value + End Set + End Property + + ''' + Public Property SpecifiedTradeProduct() As TradeProductType + Get + Return Me.specifiedTradeProductField + End Get + Set + Me.specifiedTradeProductField = Value + End Set + End Property + + ''' + Public Property SpecifiedLineTradeAgreement() As LineTradeAgreementType + Get + Return Me.specifiedLineTradeAgreementField + End Get + Set + Me.specifiedLineTradeAgreementField = Value + End Set + End Property + + ''' + Public Property SpecifiedLineTradeDelivery() As LineTradeDeliveryType + Get + Return Me.specifiedLineTradeDeliveryField + End Get + Set + Me.specifiedLineTradeDeliveryField = Value + End Set + End Property + + ''' + Public Property SpecifiedLineTradeSettlement() As LineTradeSettlementType + Get + Return Me.specifiedLineTradeSettlementField + End Get + Set + Me.specifiedLineTradeSettlementField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class SupplyChainTradeTransactionType + + Private includedSupplyChainTradeLineItemField() As SupplyChainTradeLineItemType + + Private applicableHeaderTradeAgreementField As HeaderTradeAgreementType + + Private applicableHeaderTradeDeliveryField As HeaderTradeDeliveryType + + Private applicableHeaderTradeSettlementField As HeaderTradeSettlementType + + ''' + + Public Property IncludedSupplyChainTradeLineItem() As SupplyChainTradeLineItemType() + Get + Return Me.includedSupplyChainTradeLineItemField + End Get + Set + Me.includedSupplyChainTradeLineItemField = Value + End Set + End Property + + ''' + Public Property ApplicableHeaderTradeAgreement() As HeaderTradeAgreementType + Get + Return Me.applicableHeaderTradeAgreementField + End Get + Set + Me.applicableHeaderTradeAgreementField = Value + End Set + End Property + + ''' + Public Property ApplicableHeaderTradeDelivery() As HeaderTradeDeliveryType + Get + Return Me.applicableHeaderTradeDeliveryField + End Get + Set + Me.applicableHeaderTradeDeliveryField = Value + End Set + End Property + + ''' + Public Property ApplicableHeaderTradeSettlement() As HeaderTradeSettlementType + Get + Return Me.applicableHeaderTradeSettlementField + End Get + Set + Me.applicableHeaderTradeSettlementField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class NoteType + + Private contentField As TextType + + Private subjectCodeField As CodeType + + ''' + Public Property Content() As TextType + Get + Return Me.contentField + End Get + Set + Me.contentField = Value + End Set + End Property + + ''' + Public Property SubjectCode() As CodeType + Get + Return Me.subjectCodeField + End Get + Set + Me.subjectCodeField = Value + End Set + End Property + End Class + + ''' + + Partial Public Class DocumentCodeType + + Private valueField As DocumentCodeContentType + + ''' + + Public Property Value() As DocumentCodeContentType + Get + Return Me.valueField + End Get + Set + Me.valueField = Value + End Set + End Property + End Class + + ''' + + Public Enum DocumentCodeContentType + + ''' + + Item80 + + ''' + + Item81 + + ''' + + Item82 + + ''' + + Item83 + + ''' + + Item84 + + ''' + + Item130 + + ''' + + Item202 + + ''' + + Item203 + + ''' + + Item204 + + ''' + + Item211 + + ''' + + Item261 + + ''' + + Item262 + + ''' + + Item295 + + ''' + + Item296 + + ''' + + Item308 + + ''' + + Item325 + + ''' + + Item326 + + ''' + + Item380 + + ''' + + Item381 + + ''' + + Item383 + + ''' + + Item384 + + ''' + + Item385 + + ''' + + Item386 + + ''' + + Item387 + + ''' + + Item388 + + ''' + + Item389 + + ''' + + Item390 + + ''' + + Item393 + + ''' + + Item394 + + ''' + + Item395 + + ''' + + Item396 + + ''' + + Item420 + + ''' + + Item456 + + ''' + + Item457 + + ''' + + Item458 + + ''' + + Item527 + + ''' + + Item575 + + ''' + + Item623 + + ''' + + Item633 + + ''' + + Item751 + + ''' + + Item780 + + ''' + + Item935 + End Enum + + ''' + + Partial Public Class ExchangedDocumentType + + Private idField As IDType + + Private typeCodeField As DocumentCodeType + + Private issueDateTimeField As DateTimeType + + Private includedNoteField() As NoteType + + ''' + Public Property ID() As IDType + Get + Return Me.idField + End Get + Set + Me.idField = Value + End Set + End Property + + ''' + Public Property TypeCode() As DocumentCodeType + Get + Return Me.typeCodeField + End Get + Set + Me.typeCodeField = Value + End Set + End Property + + ''' + Public Property IssueDateTime() As DateTimeType + Get + Return Me.issueDateTimeField + End Get + Set + Me.issueDateTimeField = Value + End Set + End Property + + ''' + + Public Property IncludedNote() As NoteType() + Get + Return Me.includedNoteField + End Get + Set + Me.includedNoteField = Value + End Set + End Property + End Class + +End Namespace \ No newline at end of file diff --git a/Modules.Jobs/EDMI/ZUGFeRD/ImportZUGFeRDFiles.vb b/Modules.Jobs/EDMI/ZUGFeRD/ImportZUGFeRDFiles.vb index d4e91d3d..fdf6e348 100644 --- a/Modules.Jobs/EDMI/ZUGFeRD/ImportZUGFeRDFiles.vb +++ b/Modules.Jobs/EDMI/ZUGFeRD/ImportZUGFeRDFiles.vb @@ -197,7 +197,10 @@ Public Class ImportZUGFeRDFiles Try For Each oFile In oFileGroupFiles - Dim oDocument As CrossIndustryDocumentType + ' 09.12.2021: oDocument is now an Object, because have different classes corresponding to the + ' different versions of ZUGFeRD and the type is unknown at compile-time. + Dim oDocument As Object + ' Start a global group counter for each file Dim oGlobalGroupCounter = 0 ' Clear missing properties for the new file diff --git a/Modules.Logging/LogConfig.vb b/Modules.Logging/LogConfig.vb index ef1ac8ef..081ffac1 100644 --- a/Modules.Logging/LogConfig.vb +++ b/Modules.Logging/LogConfig.vb @@ -73,12 +73,14 @@ Public Class LogConfig Private Const FILE_NAME_FORMAT_DEFAULT As String = "${shortdate}-${var:product}${var:suffix}${event-properties:item=ModuleName}.log" Private Const FILE_NAME_FORMAT_DEBUG As String = "${shortdate}-${var:product}${var:suffix}${event-properties:item=ModuleName}-Debug.log" + Private Const FILE_NAME_FORMAT_TRACE As String = "${shortdate}-${var:product}${var:suffix}${event-properties:item=ModuleName}-Trace.log" Private Const FILE_NAME_FORMAT_ERROR As String = "${shortdate}-${var:product}${var:suffix}${event-properties:item=ModuleName}-Error.log" Private Const TARGET_DEFAULT As String = "defaultTarget" Private Const TARGET_ERROR_EX As String = "errorExceptionTarget" Private Const TARGET_ERROR As String = "errorTarget" Private Const TARGET_DEBUG As String = "debugTarget" + Private Const TARGET_TRACE As String = "traceTarget" Private Const TARGET_MEMORY As String = "memoryTarget" Private Const LOG_FORMAT_BASE As String = "${time}|${logger:shortName=True}|${level:uppercase=true}" @@ -252,6 +254,7 @@ Public Class LogConfig Dim oLogger = GetLogger() oLogger.Info("Logging started for [{0}{1}] in [{2}]", oProductName, logFileSuffix, LogFile) + oLogger.Info("Logging Version [{0}]", Assembly.GetExecutingAssembly().GetName().Version) ' Clear old Logfiles as defined in `FileKeepInterval` ClearOldLogfiles(FileKeepRangeInDays) @@ -427,6 +430,7 @@ Public Class LogConfig _config.AddTarget(TARGET_ERROR, GetErrorLogTarget(_basePath)) _config.AddTarget(TARGET_DEFAULT, GetDefaultLogTarget(_basePath)) _config.AddTarget(TARGET_DEBUG, GetDebugLogTarget(_basePath)) + _config.AddTarget(TARGET_TRACE, GetTraceLogTarget(_basePath)) _config.AddTarget(TARGET_MEMORY, GetMemoryDebugTarget()) ' Add default rules @@ -472,8 +476,9 @@ Public Class LogConfig ' Add debug rule, if configured If Debug Then - _config.AddRuleForAllLevels(TARGET_DEBUG) - _config.AddRuleForAllLevels(TARGET_MEMORY) + _config.AddRuleForAllLevels(TARGET_TRACE) + _config.AddRule(LogLevel.Debug, LogLevel.Error, TARGET_DEBUG) + _config.AddRule(LogLevel.Debug, LogLevel.Error, TARGET_MEMORY) End If ' Reload all running loggers @@ -535,6 +540,22 @@ Public Class LogConfig Return debugLog End Function + Private Function GetTraceLogTarget(basePath As String) As FileTarget + Dim debugLog As New FileTarget() With { + .FileName = Path.Combine(basePath, FILE_NAME_FORMAT_TRACE), + .Name = TARGET_DEBUG, + .Layout = LOG_FORMAT_DEBUG, + .MaxArchiveFiles = MAX_ARCHIVE_FILES_DEBUG_DETAIL, + .ArchiveEvery = ARCHIVE_EVERY, + .KeepFileOpen = KEEP_FILES_OPEN_DEBUG, + .OpenFileCacheTimeout = OPEN_FILE_CACHE_TIMEOUT, + .AutoFlush = AUTO_FLUSH, + .OpenFileFlushTimeout = OPEN_FILE_FLUSH_TIMEOUT + } + + Return debugLog + End Function + Private Function GetMemoryDebugTarget() As MemoryTarget Dim memoryLog As New MemoryTarget() With { .Layout = LOG_FORMAT_DEBUG, diff --git a/Modules.Logging/My Project/AssemblyInfo.vb b/Modules.Logging/My Project/AssemblyInfo.vb index 2a2924ae..2afa596d 100644 --- a/Modules.Logging/My Project/AssemblyInfo.vb +++ b/Modules.Logging/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/Modules.Patterns/Modules/BaseModule.vb b/Modules.Patterns/Modules/BaseModule.vb index 87ea4498..7619462f 100644 --- a/Modules.Patterns/Modules/BaseModule.vb +++ b/Modules.Patterns/Modules/BaseModule.vb @@ -4,7 +4,7 @@ Imports System.Text.RegularExpressions Namespace Modules Public Class BaseModule Friend ReadOnly Logger As Logger - Private ReadOnly MyRegex As Regex = New Regex("{#(\w+)#([\:\.\w\s_-]+)}+") + Private ReadOnly MyRegex As Regex = New Regex("{#(\w+)#([\:\.\w\s_/-]+)}+") Private ReadOnly SqlPhrases As New List(Of String) From { "SELECT ", "UPDATE ", "DELETE ", "EXEC " } diff --git a/Modules.Patterns/Modules/Internal.vb b/Modules.Patterns/Modules/Internal.vb index ab26eb9e..65d075ef 100644 --- a/Modules.Patterns/Modules/Internal.vb +++ b/Modules.Patterns/Modules/Internal.vb @@ -12,9 +12,12 @@ Namespace Modules Public Const INT_VALUE_MACHINE = "MACHINE" Public Const INT_VALUE_DOMAIN = "DOMAIN" Public Const INT_VALUE_DATE = "DATE" - Public Const INT_VALUE_DATE_YYYY = "DATE_YYYY" - Public Const INT_VALUE_DATE_MM = "DATE_MM" - Public Const INT_VALUE_DATE_DD = "DATE_DD" + + Public Const INT_VALUE_DATE_YYYY = "YYYY" + Public Const INT_VALUE_DATE_MM = "MM" + Public Const INT_VALUE_DATE_DD = "DD" + Public Const INT_VALUE_DATE_YYYY_MM_DD = "YYYY/MM/DD" + Public Const INT_VALUE_DATE_YYYY_MM_DD_2 = "YYYY_MM_DD" Public Property PatternIdentifier As String = "INT" Implements IModule.PatternIdentifier Public Property IsComplex As Boolean = False Implements IModule.IsComplex @@ -28,30 +31,55 @@ Namespace Modules Dim oCounter = 0 Dim oNow As Date = Now + 'TODO: Make date patterns dynamic + + Logger.Trace("Replacing Internal Patterns") + ' Replace CurrentDate(s) - While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE) - oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("yyyy-MM-dd")) + While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE_YYYY_MM_DD) + Logger.Trace("Replacing Pattern [{0}]", INT_VALUE_DATE_YYYY_MM_DD) + oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("yyyy/MM/dd")) IncrementCounterOrThrow(oCounter) End While + Logger.Trace("Replace Counter: [{0}]", oCounter) + + ' Replace CurrentDate(s) + While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE_YYYY_MM_DD_2) + Logger.Trace("Replacing Pattern [{0}]", INT_VALUE_DATE_YYYY_MM_DD_2) + oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("yyyy_MM_dd")) + IncrementCounterOrThrow(oCounter) + End While + + Logger.Trace("Replace Counter: [{0}]", oCounter) + ' Replace Year(s) While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE_YYYY) + Logger.Trace("Replacing Pattern [{0}]", INT_VALUE_DATE_YYYY) oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("yyyy")) IncrementCounterOrThrow(oCounter) End While + Logger.Trace("Replace Counter: [{0}]", oCounter) + ' Replace Month(s) While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE_MM) + Logger.Trace("Replacing Pattern [{0}]", INT_VALUE_DATE_MM) oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("MM")) IncrementCounterOrThrow(oCounter) End While + Logger.Trace("Replace Counter: [{0}]", oCounter) + ' Replace Day(s) While ContainsPatternAndValue(oResult, PatternIdentifier, INT_VALUE_DATE_DD) + Logger.Trace("Replacing Pattern [{0}]", INT_VALUE_DATE_DD) oResult = ReplacePattern(oResult, PatternIdentifier, oNow.ToString("dd")) IncrementCounterOrThrow(oCounter) End While + Logger.Trace("Replace Counter: [{0}]", oCounter) + Return oResult End Function End Class diff --git a/Service.EDMIService/BaseClass.vb b/Service.EDMIService/BaseClass.vb index 6823af2d..42edda75 100644 --- a/Service.EDMIService/BaseClass.vb +++ b/Service.EDMIService/BaseClass.vb @@ -11,11 +11,19 @@ Public Class BaseClass Logger = pLogConfig.GetLogger(oClassName) End Sub + ''' + ''' + ''' + ''' Public Sub LogAndThrow(pMessage As String) Logger.Warn(pMessage) Throw New ApplicationException(pMessage) End Sub + ''' + ''' + ''' + ''' Public Sub LogAndThrow(pException As Exception, pMessage As String) Logger.Error(pException) Throw New ApplicationException(pMessage, pException) diff --git a/Service.EDMIService/EDMIService.vb b/Service.EDMIService/EDMIService.vb index acb34cef..cd4a0ba1 100644 --- a/Service.EDMIService/EDMIService.vb +++ b/Service.EDMIService/EDMIService.vb @@ -6,7 +6,6 @@ Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Language Imports DigitalData.Modules Imports DigitalData.Modules.EDMI -Imports DigitalData.Modules.EDMI.File Imports DigitalData.Modules.EDMI.API.Rights Imports DigitalData.Services.EDMIService.Messages Imports DigitalData.Services.EDMIService.Exceptions diff --git a/Service.EDMIService/EDMIService.vbproj b/Service.EDMIService/EDMIService.vbproj index 67fa652f..e629449f 100644 --- a/Service.EDMIService/EDMIService.vbproj +++ b/Service.EDMIService/EDMIService.vbproj @@ -145,7 +145,9 @@ + + @@ -160,7 +162,7 @@ - + diff --git a/Service.EDMIService/IDB/Helpers.vb b/Service.EDMIService/IDB/Helpers.vb index af19315a..eb3f8d56 100644 --- a/Service.EDMIService/IDB/Helpers.vb +++ b/Service.EDMIService/IDB/Helpers.vb @@ -37,9 +37,13 @@ Namespace IDB End Function Public Function UserAttributesToDictionary(pUserAttributes As List(Of UserAttributeValue)) As Dictionary(Of String, List(Of String)) + If pUserAttributes Is Nothing OrElse pUserAttributes.Count = 0 Then + Return New Dictionary(Of String, List(Of String)) + End If + Return pUserAttributes.ToDictionary( - Function(attr) attr.AttributeName, - Function(attr) attr.AttributeValues) + Function(attr) attr.Name, + Function(attr) attr.Values) End Function Public Function TestObjectIdExists(pObjectId As Long, Optional ByRef IsDeleted As Boolean = False, Optional ByRef IsActive As Boolean = False) As Boolean diff --git a/Service.EDMIService/Methods/AttributeValue.vb b/Service.EDMIService/Methods/AttributeValue.vb new file mode 100644 index 00000000..fee681e5 --- /dev/null +++ b/Service.EDMIService/Methods/AttributeValue.vb @@ -0,0 +1,29 @@ +Namespace Methods + + Public MustInherit Class BaseAttributeValue + + End Class + + ''' + ''' Attribute values supplied by the user + ''' + Public Class UserAttributeValue + Public Property Id As Integer + Public Property Name As String + Public Property Values As List(Of String) + Public Property ControlName As String + + Public Overrides Function ToString() As String + Return Name + End Function + End Class + + Public Class AutoAttributeValue + Inherits BaseAttributeValue + End Class + + Public Class SystemAttributeValue + Inherits BaseAttributeValue + End Class + +End Namespace \ No newline at end of file diff --git a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb index 423c5dce..1e5f56df 100644 --- a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb +++ b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb @@ -10,24 +10,19 @@ Namespace Methods.GlobalIndexer.ImportFile Public Class ImportFileMethod Inherits BaseMethod + Private ReadOnly Loader As Loader Private ReadOnly Patterns As Patterns2 Private ReadOnly GetDatatable As GetDatatableFromCacheMethod Private ReadOnly Connection As SqlClient.SqlConnection Private ReadOnly Transaction As SqlClient.SqlTransaction Private User As UserState - Private Profile As DataRow - - Private Const VIEW_PROFILE = "VWGI_DOCTYPE_IDB" - Private Const VIEW_INDEX_MANUAL = "VWDDINDEX_MAN" - Private Const VIEW_INDEX_AUTOMATIC = "VWDDINDEX_AUTOM" - Private Const TABLE_POST_PROCESSING = "TBDD_INDEX_MAN_POSTPROCESSING" Public Sub New(pLogConfig As LogConfig, pMSSQLServer As MSSQLServer, pGlobalState As GlobalState) MyBase.New(pLogConfig, pMSSQLServer, pGlobalState) Patterns = New Patterns2(pLogConfig) - GetDatatable = New GetDatatableFromCacheMethod(LogConfig, Database, GlobalState) + Loader = New Loader(pLogConfig, Database, pGlobalState) Connection = Database.GetConnection() Transaction = Connection.BeginTransaction() End Sub @@ -47,10 +42,10 @@ Namespace Methods.GlobalIndexer.ImportFile ' TODO: Add missing user properties in UserState from TBDD_USER 'pData.User = ResolveUserFromUserName(pData.User.UserName) - Dim oManualIndexes = LoadManualIndexes(pData.ProfileId) - Dim oAutomaticIndexes = LoadAutomaticIndexes(pData.ProfileId) - Dim oPostProcessingSteps As DataTable = LoadPostProcessingSteps(oManualIndexes) - LoadProfile(pData.ProfileId) + Dim oManualIndexes = Loader.LoadManualIndexes(pData.ProfileId) + Dim oAutomaticIndexes = Loader.LoadAutomaticIndexes(pData.ProfileId) + Dim oPostProcessingSteps As DataTable = Loader.LoadPostProcessingSteps(oManualIndexes) + Dim oProfile = Loader.LoadProfile(pData.ProfileId) Dim oUserAttributes = pData.AttributeValues Dim oAutoAttributes As List(Of UserAttributeValue) = Nothing @@ -79,15 +74,19 @@ Namespace Methods.GlobalIndexer.ImportFile Throw New ApplicationException(oResponse.ErrorMessage) End If - Logger.Info("Generating display filename for file [{0}]", pData.File.FileName) + ' Generate display Filename from nameconvention + Dim oDisplayFilename = GetFilenameByNameconvention( + pData.File.FileInfoRaw, oProfile.NameConvention, User, oUserAttributes, oAutoAttributes) - Dim oNameconvention As String = Profile.ItemEx(Of String)("NAMENKONVENTION") - Dim oDisplayFilename = GetFilenameByNameconvention(pData.File.FileInfoRaw, oNameconvention, User, oUserAttributes, oAutoAttributes) + ' Generate virtual path from profile + Dim oDynamicFilePath = GetVirtualPath( + pData.File.FileInfoRaw, oProfile.DynamicPath, User, oUserAttributes, oAutoAttributes) Logger.Info("Collecting Attributes for ObjectId [{0}]", oResponse.ObjectId) Dim oFinalAttributes As New Dictionary(Of String, List(Of String)) From { - {"DisplayFileName", New List(Of String) From {oDisplayFilename}} + {"DisplayFileName", New List(Of String) From {oDisplayFilename}}, + {"Dynamic Folder", New List(Of String) From {oDynamicFilePath}} } oFinalAttributes = oFinalAttributes. Concat(Helpers.UserAttributesToDictionary(oUserAttributes)). @@ -113,8 +112,27 @@ Namespace Methods.GlobalIndexer.ImportFile End Try End Function - Private Function GetFilenameByNameconvention(pFileInfo As FileInfo, pNameconvention As String, pUser As UserState, pAttributes As List(Of UserAttributeValue), pAutoAttributes As List(Of UserAttributeValue)) As String - Dim oAttributeDict = Helpers.UserAttributesToDictionary(pAttributes) + Private Function GetVirtualPath(pFileInfo As FileInfo, pPathConvention As String, pUser As UserState, pUserAttributes As List(Of UserAttributeValue), pAutoAttributes As List(Of UserAttributeValue)) + Logger.Info("Generating virtual path for file [{0}]", pFileInfo.Name) + + Dim oUserAttributeDict = Helpers.UserAttributesToDictionary(pUserAttributes) + Dim oAutoAttributeDict = Helpers.UserAttributesToDictionary(pAutoAttributes) + + If pPathConvention Is Nothing OrElse pPathConvention = String.Empty Then + Logger.Warn("Virtual path template for File [{0}] was empty. Returning empty string.", pFileInfo.Name) + Return String.Empty + + End If + + Dim oDynamicPath As String = Helpers.GetPlaceholderValue(pPathConvention, pFileInfo, pUser, oUserAttributeDict, oAutoAttributeDict) + Logger.Info("Virtual Path for file [{0}] is [{1}]", pFileInfo.Name, oDynamicPath) + Return oDynamicPath + End Function + + Private Function GetFilenameByNameconvention(pFileInfo As FileInfo, pNameconvention As String, pUser As UserState, pUserAttributes As List(Of UserAttributeValue), pAutoAttributes As List(Of UserAttributeValue)) As String + Logger.Info("Generating display filename for file [{0}]", pFileInfo.Name) + + Dim oUserAttributeDict = Helpers.UserAttributesToDictionary(pUserAttributes) Dim oAutoAttributeDict = Helpers.UserAttributesToDictionary(pAutoAttributes) If pNameconvention Is Nothing OrElse pNameconvention = String.Empty Then @@ -123,7 +141,8 @@ Namespace Methods.GlobalIndexer.ImportFile End If - Dim oFileName As String = Helpers.GetPlaceholderValue(pNameconvention, pFileInfo, pUser, oAttributeDict, oAutoAttributeDict) + Dim oFileName As String = Helpers.GetPlaceholderValue(pNameconvention, pFileInfo, pUser, oUserAttributeDict, oAutoAttributeDict) + Return oFileName & pFileInfo.Extension End Function @@ -141,7 +160,7 @@ Namespace Methods.GlobalIndexer.ImportFile ' Now make the call to the database Dim oSuccess = Helpers.SetAttributeValue(Connection, Transaction, pObjectId, oAttribute.Key, oValue, User.Language, User.UserName) If oSuccess Then - Logger.Info("Attribute [{0}] written with value [{1}]", oAttribute.Key, oAttribute.Value) + Logger.Info("Attribute [{0}] written with value [{1}]", oAttribute.Key, oAttribute.Value.First()) Else Logger.Warn("Attribute value could not be written") End If @@ -150,148 +169,6 @@ Namespace Methods.GlobalIndexer.ImportFile End Try Next End Sub - - ''' - ''' Load Profiles for this Import - ''' - Private Sub LoadProfile(pProfileId As Integer) - Logger.Debug("Start of Method [LoadAutomaticIndexes]") - - Try - Dim oProfile = GetDatatable.Run( - New GetDatatableFromCacheRequest With { - .DataTable = VIEW_PROFILE, - .FilterExpression = $"DOCTYPE_ID = {pProfileId}" - }) - - If oProfile.OK = False Then - LogAndThrow(oProfile.ErrorMessage) - End If - - Profile = oProfile.Table.Rows.Item(0) - Catch ex As Exception - LogAndThrow(ex, "Error while automatic loading indexes!") - End Try - End Sub - - ''' - ''' Load automatic indexes for this Import - ''' - Private Function LoadAutomaticIndexes(pProfileId As Integer) As List(Of AutomaticIndex) - Logger.Debug("Start of Method [LoadAutomaticIndexes]") - - Try - ' Load automatic Indexes for this Import - Dim oAutomaticIndexes = GetDatatable.Run( - New GetDatatableFromCacheRequest With { - .DataTable = VIEW_INDEX_AUTOMATIC, - .FilterExpression = $"DOCTYPE_ID = {pProfileId}" - }) - - If oAutomaticIndexes.OK = False Then - LogAndThrow(oAutomaticIndexes.ErrorMessage) - End If - - Dim oIndexes As New List(Of AutomaticIndex) - - For Each oRow As DataRow In oAutomaticIndexes.Table.Rows - Dim oAutomaticIndex As New AutomaticIndex With { - .Id = oRow.ItemEx(Of Integer)("GUID"), - .Name = oRow.ItemEx(Of String)("INDEXNAME"), - .ProfileId = oRow.ItemEx(Of Integer)("DOCTYPE_ID"), - .SQLCommand = oRow.ItemEx(Of String)("SQL_RESULT"), - .SQLConnectionId = oRow.ItemEx(Of Integer)("CONNECTION_ID"), - .Sequence = oRow.ItemEx(Of String)("SEQUENCE"), - .Value = oRow.ItemEx(Of String)("VALUE") - } - - oIndexes.Add(oAutomaticIndex) - Next - - Logger.Info("Automatic indexes loaded: [{0}]", oIndexes.Count) - - Return oIndexes - Catch ex As Exception - LogAndThrow(ex, "Error while automatic loading indexes!") - End Try - End Function - - ''' - ''' Load manual indexes for this Import - ''' - Private Function LoadManualIndexes(pProfileId As Integer) As List(Of ManualIndex) - Logger.Debug("Start of Method [LoadManualIndexes]") - - Try - ' Load manual Indexes for this Import - Dim oManualIndexes = GetDatatable.Run( - New GetDatatableFromCacheRequest With { - .DataTable = VIEW_INDEX_MANUAL, - .FilterExpression = $"DOK_ID = {pProfileId}" - }) - - If oManualIndexes.OK = False Then - LogAndThrow(oManualIndexes.ErrorMessage) - End If - - Dim oIndexes As New List(Of ManualIndex) - - For Each oRow As DataRow In oManualIndexes.Table.Rows - Dim oManualIndex As New ManualIndex With { - .Id = oRow.ItemEx(Of Integer)("GUID"), - .Name = oRow.ItemEx(Of String)("INDEXNAME"), - .ProfileId = oRow.ItemEx(Of Integer)("DOCTYPE_ID"), - .IsOptional = oRow.ItemEx(Of Boolean)("OPTIONAL"), - .IsMultiselect = oRow.ItemEx(Of String)("MULTISELECT"), - .SQLCommand = oRow.ItemEx(Of String)("SQL_RESULT"), - .SQLConnectionId = oRow.ItemEx(Of Integer)("CONNECTION_ID"), - .DefaultValue = oRow.ItemEx(Of String)("DEFAULT_VALUE"), - .DataType = oRow.ItemEx(Of String)("DATA_TYPE") - } - - oIndexes.Add(oManualIndex) - Next - - Logger.Info("Manual indexes loaded: [{0}]", oIndexes.Count) - - Return oIndexes - - Catch ex As Exception - LogAndThrow(ex, "Error while loading indexes!") - End Try - End Function - - Private Function LoadPostProcessingSteps(pManualIndexes As List(Of ManualIndex)) As DataTable - Logger.Debug("Start of Method [LoadPostProcessingSteps]") - - Try - ' Generate a string containing all index ids joined into a string - Dim oIndexIdList As List(Of Integer) = pManualIndexes. - Select(Function(index) index.Id). - ToList() - Dim oIndexIds As String = String.Join(",", oIndexIdList) - - If oIndexIdList.Count = 0 Then - Logger.Debug("No Postprocessing steps found for this profile. Exiting.") - Return Nothing - End If - - ' Load all relevant postprocessing steps - Dim oPostProcessingSteps = GetDatatable.Run( - New GetDatatableFromCacheRequest With { - .DataTable = TABLE_POST_PROCESSING, - .FilterExpression = $"IDXMAN_ID IN ({oIndexIds})" - }) - - If oPostProcessingSteps.OK = False Then - LogAndThrow(oPostProcessingSteps.ErrorMessage) - End If - - Return oPostProcessingSteps.Table - Catch ex As Exception - LogAndThrow(ex, "Error while loading post processing steps!") - End Try - End Function End Class End Namespace \ No newline at end of file diff --git a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/AutomaticIndexing.vb b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/AutomaticIndexing.vb index 2143a26a..f5110e6c 100644 --- a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/AutomaticIndexing.vb +++ b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/AutomaticIndexing.vb @@ -77,9 +77,9 @@ Namespace Methods.GlobalIndexer.ImportFile.Steps pAutomaticIndex.Value, pFileInfo, pUserState, oAttributeDict, oAutoAttributeDict) Return New UserAttributeValue With { - .AttributeValues = New List(Of String) From {oResult}, - .AttributeName = pAutomaticIndex.Name, - .AttributeId = pAutomaticIndex.Id + .Values = New List(Of String) From {oResult}, + .Name = pAutomaticIndex.Name, + .Id = pAutomaticIndex.Id } End If @@ -107,9 +107,9 @@ Namespace Methods.GlobalIndexer.ImportFile.Steps ' TODO: Return multiple values Return New UserAttributeValue With { - .AttributeValues = New List(Of String) From {oValue}, - .AttributeName = pAutomaticIndex.Name, - .AttributeId = pAutomaticIndex.Id + .Values = New List(Of String) From {oValue}, + .Name = pAutomaticIndex.Name, + .Id = pAutomaticIndex.Id } Catch ex As Exception Logger.Warn("Automatic Indexing for index failed.") diff --git a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/PostProcessing.vb b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/PostProcessing.vb index 21563be3..940891f0 100644 --- a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/PostProcessing.vb +++ b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/Steps/PostProcessing.vb @@ -32,21 +32,21 @@ Namespace Methods.GlobalIndexer.ImportFile.Steps For Each oProcessingRow As DataRow In PostprocessingSteps.Rows Dim oIndexId = oProcessingRow.ItemEx(Of Integer)("IDXMAN_ID") Dim oIndex As UserAttributeValue = pManualAttributes. - Where(Function(attr) attr.AttributeId = oProcessingRow.ItemEx(Of Integer)("IDXMAN_ID")). + Where(Function(attr) attr.Id = oProcessingRow.ItemEx(Of Integer)("IDXMAN_ID")). FirstOrDefault() Dim oIndexPosition = pManualAttributes.IndexOf(oIndex) - Logger.Info("Postprocessing Index [{0}]", oIndex.AttributeName) + Logger.Info("Postprocessing Index [{0}]", oIndex.Name) - Dim oValues = GetPostprocessingValue(oIndex.AttributeValues, oProcessingRow) + Dim oValues = GetPostprocessingValue(oIndex.Values, oProcessingRow) - Logger.Info("New Value for Index [{0}] is [{1}]", oIndex.AttributeName, String.Join(",", oValues)) + Logger.Info("New Value for Index [{0}] is [{1}]", oIndex.Name, String.Join(",", oValues)) ' Replace the old AttributeValue with the new one oAttributes.Item(oIndexPosition) = New UserAttributeValue With { - .AttributeId = oIndexId, - .AttributeName = oIndex.AttributeName, - .AttributeValues = oValues, + .Id = oIndexId, + .Name = oIndex.Name, + .Values = oValues, .ControlName = oIndex.ControlName } Next diff --git a/Service.EDMIService/Methods/GlobalIndexer/Loader.vb b/Service.EDMIService/Methods/GlobalIndexer/Loader.vb new file mode 100644 index 00000000..faba5096 --- /dev/null +++ b/Service.EDMIService/Methods/GlobalIndexer/Loader.vb @@ -0,0 +1,181 @@ +Imports DigitalData.Modules.Database +Imports DigitalData.Modules.Language +Imports DigitalData.Modules.Logging +Imports DigitalData.Services.EDMIService.Methods.GetDatatableFromCache + +Namespace Methods.GlobalIndexer + Public Class Loader + Inherits BaseClass + + Private Const VIEW_PROFILE = "VWGI_DOCTYPE_IDB" + Private Const VIEW_INDEX_MANUAL = "VWDDINDEX_MAN" + Private Const VIEW_INDEX_AUTOMATIC = "VWDDINDEX_AUTOM" + Private Const TABLE_POST_PROCESSING = "TBDD_INDEX_MAN_POSTPROCESSING" + + Private GetDatatable As GetDatatableFromCacheMethod + + Public Sub New(pLogConfig As LogConfig, pDatabase As MSSQLServer, pGlobalState As GlobalState) + MyBase.New(pLogConfig) + GetDatatable = New GetDatatableFromCacheMethod(pLogConfig, pDatabase, pGlobalState) + End Sub + + ''' + ''' Load Profiles for this Import + ''' + Public Function LoadProfile(pProfileId As Integer) As Profile + Logger.Debug("Start of Method [LoadProfile]") + + Try + Dim oProfile = GetDatatable.Run( + New GetDatatableFromCacheRequest With { + .DataTable = VIEW_PROFILE, + .FilterExpression = $"DOCTYPE_ID = {pProfileId}" + }) + + If oProfile.OK = False Then + LogAndThrow(oProfile.ErrorMessage) + End If + + Dim oRow As DataRow = oProfile.Table.Rows.Item(0) + Dim oProfileObject As New Profile With { + .Id = oRow.ItemEx("DOCTYPE_ID", 0), + .Name = oRow.ItemEx("DOCTYPE", "Missing Profile Name"), + .IsActive = oRow.ItemEx("AKTIV", False), + .NameConvention = oRow.ItemEx("NAMENKONVENTION", ""), + .ObjectStore = oRow.ItemEx("OBJECT_STORE", "Work"), + .ShortName = oRow.ItemEx("KURZNAME", ""), + .DynamicPath = oRow.ItemEx("DYNAMIC_FOLDER", "") + } + + Return oProfileObject + Catch ex As Exception + LogAndThrow(ex, "Error while automatic loading profile!") + Return Nothing + End Try + End Function + + ''' + ''' Load automatic indexes for this Import + ''' + Public Function LoadAutomaticIndexes(pProfileId As Integer) As List(Of AutomaticIndex) + Logger.Debug("Start of Method [LoadAutomaticIndexes]") + + Try + ' Load automatic Indexes for this Import + Dim oAutomaticIndexes = GetDatatable.Run( + New GetDatatableFromCacheRequest With { + .DataTable = VIEW_INDEX_AUTOMATIC, + .FilterExpression = $"DOCTYPE_ID = {pProfileId}" + }) + + If oAutomaticIndexes.OK = False Then + LogAndThrow(oAutomaticIndexes.ErrorMessage) + End If + + Dim oIndexes As New List(Of AutomaticIndex) + + For Each oRow As DataRow In oAutomaticIndexes.Table.Rows + Dim oAutomaticIndex As New AutomaticIndex With { + .Id = oRow.ItemEx(Of Integer)("GUID"), + .Name = oRow.ItemEx(Of String)("INDEXNAME"), + .ProfileId = oRow.ItemEx(Of Integer)("DOCTYPE_ID"), + .SQLCommand = oRow.ItemEx(Of String)("SQL_RESULT"), + .SQLConnectionId = oRow.ItemEx(Of Integer)("CONNECTION_ID"), + .Sequence = oRow.ItemEx(Of String)("SEQUENCE"), + .Value = oRow.ItemEx(Of String)("VALUE") + } + + oIndexes.Add(oAutomaticIndex) + Next + + Logger.Info("Automatic indexes loaded: [{0}]", oIndexes.Count) + + Return oIndexes + Catch ex As Exception + LogAndThrow(ex, "Error while automatic loading indexes!") + Return Nothing + End Try + End Function + + ''' + ''' Load manual indexes for this Import + ''' + Public Function LoadManualIndexes(pProfileId As Integer) As List(Of ManualIndex) + Logger.Debug("Start of Method [LoadManualIndexes]") + + Try + ' Load manual Indexes for this Import + Dim oManualIndexes = GetDatatable.Run( + New GetDatatableFromCacheRequest With { + .DataTable = VIEW_INDEX_MANUAL, + .FilterExpression = $"DOK_ID = {pProfileId}" + }) + + If oManualIndexes.OK = False Then + LogAndThrow(oManualIndexes.ErrorMessage) + End If + + Dim oIndexes As New List(Of ManualIndex) + + For Each oRow As DataRow In oManualIndexes.Table.Rows + Dim oManualIndex As New ManualIndex With { + .Id = oRow.ItemEx(Of Integer)("GUID"), + .Name = oRow.ItemEx(Of String)("INDEXNAME"), + .ProfileId = oRow.ItemEx(Of Integer)("DOCTYPE_ID"), + .IsOptional = oRow.ItemEx(Of Boolean)("OPTIONAL"), + .IsMultiselect = oRow.ItemEx(Of String)("MULTISELECT"), + .SQLCommand = oRow.ItemEx(Of String)("SQL_RESULT"), + .SQLConnectionId = oRow.ItemEx(Of Integer)("CONNECTION_ID"), + .DefaultValue = oRow.ItemEx(Of String)("DEFAULT_VALUE"), + .DataType = oRow.ItemEx(Of String)("DATA_TYPE") + } + + oIndexes.Add(oManualIndex) + Next + + Logger.Info("Manual indexes loaded: [{0}]", oIndexes.Count) + + Return oIndexes + + Catch ex As Exception + LogAndThrow(ex, "Error while loading indexes!") + Return Nothing + End Try + End Function + + Public Function LoadPostProcessingSteps(pManualIndexes As List(Of ManualIndex)) As DataTable + Logger.Debug("Start of Method [LoadPostProcessingSteps]") + + Try + ' Generate a string containing all index ids joined into a string + Dim oIndexIdList As List(Of Integer) = pManualIndexes. + Select(Function(index) index.Id). + ToList() + Dim oIndexIds As String = String.Join(",", oIndexIdList) + + If oIndexIdList.Count = 0 Then + Logger.Debug("No Postprocessing steps found for this profile. Exiting.") + Return Nothing + End If + + ' Load all relevant postprocessing steps + Dim oPostProcessingSteps = GetDatatable.Run( + New GetDatatableFromCacheRequest With { + .DataTable = TABLE_POST_PROCESSING, + .FilterExpression = $"IDXMAN_ID IN ({oIndexIds})" + }) + + If oPostProcessingSteps.OK = False Then + LogAndThrow(oPostProcessingSteps.ErrorMessage) + End If + + Return oPostProcessingSteps.Table + Catch ex As Exception + LogAndThrow(ex, "Error while loading post processing steps!") + Return Nothing + End Try + End Function + End Class + +End Namespace + diff --git a/Service.EDMIService/Methods/GlobalIndexer/Profile.vb b/Service.EDMIService/Methods/GlobalIndexer/Profile.vb new file mode 100644 index 00000000..99cd03c2 --- /dev/null +++ b/Service.EDMIService/Methods/GlobalIndexer/Profile.vb @@ -0,0 +1,11 @@ +Namespace Methods.GlobalIndexer + Public Class Profile + Public Property Id As Integer + Public Property Name As String + Public Property ShortName As String + Public Property DynamicPath As String + Public Property IsActive As Boolean + Public Property NameConvention As String + Public Property ObjectStore As String + End Class +End Namespace \ No newline at end of file diff --git a/Service.EDMIService/Methods/UserAttributeValue.vb b/Service.EDMIService/Methods/UserAttributeValue.vb deleted file mode 100644 index 4c5dfed8..00000000 --- a/Service.EDMIService/Methods/UserAttributeValue.vb +++ /dev/null @@ -1,14 +0,0 @@ -Namespace Methods - - Public Class UserAttributeValue - Public Property AttributeId As Integer - Public Property AttributeName As String - Public Property AttributeValues As List(Of String) - Public Property ControlName As String - - Public Overrides Function ToString() As String - Return AttributeName - End Function - End Class - -End Namespace \ No newline at end of file diff --git a/Service.EDMIService/Scheduler/DatatableJob.vb b/Service.EDMIService/Scheduler/DatatableJob.vb index 8614a9dc..1c9f0246 100644 --- a/Service.EDMIService/Scheduler/DatatableJob.vb +++ b/Service.EDMIService/Scheduler/DatatableJob.vb @@ -81,7 +81,7 @@ Public Class DatatableJob oResultTable.TableRelationColumn = oParentColumn End If - oLogger.Debug("Fetched Datatable [{0}]", oDatatableName) + oLogger.Info("Fetched Datatable [{0}]", oDatatableName) oResult.Tables.Add(oResultTable) Catch ex As Exception oLogger.Warn("Execute: Error while saving Table: [{0}]", oDatatableName) diff --git a/Service.EDMIService/Scheduler/Scheduler.vb b/Service.EDMIService/Scheduler/Scheduler.vb index 22b6f05b..e968b224 100644 --- a/Service.EDMIService/Scheduler/Scheduler.vb +++ b/Service.EDMIService/Scheduler/Scheduler.vb @@ -106,8 +106,6 @@ Public Class Scheduler _Logger.Warn("Unexpected Error while setting up scheduler: " & ex.Message) End Try End Sub - - Public Async Function GetCronJobs() As Task(Of DataTable) Try Dim oSQL As String = "SELECT * FROM TBAPPSERV_CRON_JOB WHERE ACTIVE = 1" diff --git a/Service.EDMIService/WindowsService.vb b/Service.EDMIService/WindowsService.vb index c2d4b424..e2752393 100644 --- a/Service.EDMIService/WindowsService.vb +++ b/Service.EDMIService/WindowsService.vb @@ -36,24 +36,35 @@ Public Class WindowsService Protected Overrides Sub OnStart(ByVal args As String()) Try + ' Init Dim oServicePath As String = AppDomain.CurrentDomain.BaseDirectory + Dim oServiceVersion As String = My.Application.Info.Version.ToString() + ' Initializing Logger LogConfig = New LogConfig(LogConfig.PathType.CustomPath, IO.Path.Combine(oServicePath, "Log"), FileKeepRangeInDays:=3) LogConfigScheduler = New LogConfig(LogConfig.PathType.CustomPath, IO.Path.Combine(oServicePath, "Log"), Suffix:="Scheduler", FileKeepRangeInDays:=3) Logger = LogConfig.GetLogger() - Logger.Info("Service {0} is starting...", SERVICE_DISPLAY_NAME) - Logger.Info("ServiceDirectory: {0}", oServicePath) + ' Log Initial + Logger.Info("Service [{0}] is starting...", SERVICE_DISPLAY_NAME) + Logger.Info("ServiceDirectory: [{0}]", oServicePath) + Logger.Info("Version: [{0}]", oServiceVersion) + ' Initializing Config Logger.Info("Loading Config") ConfigManager = New ConfigManager(Of Config)(LogConfig, oServicePath) Config = ConfigManager.Config - LogConfig.Debug = ConfigManager.Config.Debug + ' Setup Reload-timer for config Dim oTimer As New Timers.Timer(60000) AddHandler oTimer.Elapsed, AddressOf ReloadTimer_Tick oTimer.Start() + ' Setting Debug Flag + Logger.Info("Setting DEBUG Flag to [{0}]", ConfigManager.Config.Debug) + LogConfig.Debug = ConfigManager.Config.Debug + LogConfigScheduler.Debug = ConfigManager.Config.Debug + Logger.Debug("Connecting to Databases") Firebird = StartFirebird() @@ -61,7 +72,6 @@ Public Class WindowsService MSSQL_IDB = GetMSSQL_IDB(LogConfig) Logger.Debug("Initializing EDMI Functions") - Archive = New EDMI.File.Archive(LogConfig) Filesystem = New Filesystem.File(LogConfig) GlobalState = New GlobalState(LogConfig, MSSQL_IDB, MSSQL_ECM)