WIP
This commit is contained in:
parent
8dfc659ef8
commit
a519b93f47
@ -82,7 +82,8 @@ CREATE TABLE [dbo].[TBEDI_XML_ITEMS](
|
|||||||
[XML_NAME] [nvarchar](50) NOT NULL,
|
[XML_NAME] [nvarchar](50) NOT NULL,
|
||||||
[XML_NODE_ID] [int] NOT NULL,
|
[XML_NODE_ID] [int] NOT NULL,
|
||||||
[XML_TYPE_ID] [int] NOT NULL,
|
[XML_TYPE_ID] [int] NOT NULL,
|
||||||
[READ_ONLY] [bit] NOT NULL,
|
[IS_READ_ONLY] [bit] NOT NULL,
|
||||||
|
[IS_VISIBLE] [bit] NOT NULL,
|
||||||
[FUNCTION_ID] [int] NULL
|
[FUNCTION_ID] [int] NULL
|
||||||
) ON [PRIMARY]
|
) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
@ -96,8 +97,8 @@ ALTER TABLE [dbo].[TBEDI_XML_ITEMS]
|
|||||||
REFERENCES [dbo].[TBEDI_XML_ITEMS] (GUID)
|
REFERENCES [dbo].[TBEDI_XML_ITEMS] (GUID)
|
||||||
|
|
||||||
ALTER TABLE [dbo].[TBEDI_XML_ITEMS]
|
ALTER TABLE [dbo].[TBEDI_XML_ITEMS]
|
||||||
ADD CONSTRAINT DF_TBEDI_XML_ITEMS_READ_ONLY
|
ADD CONSTRAINT DF_TBEDI_XML_ITEMS_IS_READ_ONLY
|
||||||
DEFAULT 0 FOR READ_ONLY
|
DEFAULT 0 FOR IS_READ_ONLY
|
||||||
|
|
||||||
|
|
||||||
DROP VIEW [dbo].[VWEDI_XML_ITEMS]
|
DROP VIEW [dbo].[VWEDI_XML_ITEMS]
|
||||||
@ -114,7 +115,8 @@ AS
|
|||||||
,[TBFUNCTIONS].[GUID] [FUNCTION_ID]
|
,[TBFUNCTIONS].[GUID] [FUNCTION_ID]
|
||||||
,[TBFUNCTIONS].[NAME] [FUNCTION_NAME]
|
,[TBFUNCTIONS].[NAME] [FUNCTION_NAME]
|
||||||
,[TBFUNCTIONS].[PARAMETERS] [FUNCTION_PARAMETERS]
|
,[TBFUNCTIONS].[PARAMETERS] [FUNCTION_PARAMETERS]
|
||||||
,[TBITEMS].[READ_ONLY]
|
,[TBITEMS].[IS_READ_ONLY]
|
||||||
|
,[TBITEMS].[IS_VISIBLE]
|
||||||
FROM
|
FROM
|
||||||
[dbo].[TBEDI_XML_ITEMS] [TBITEMS]
|
[dbo].[TBEDI_XML_ITEMS] [TBITEMS]
|
||||||
INNER JOIN [dbo].[TBEDI_XML_NODES] [TBNODES] ON [TBITEMS].[XML_NODE_ID] = [TBNODES].[GUID]
|
INNER JOIN [dbo].[TBEDI_XML_NODES] [TBNODES] ON [TBITEMS].[XML_NODE_ID] = [TBNODES].[GUID]
|
||||||
@ -127,33 +129,58 @@ GO
|
|||||||
|
|
||||||
/* Kopfdaten */
|
/* Kopfdaten */
|
||||||
|
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('BELEGKEY', 1, 1, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Fakt_Kontonummer', 1, 1, 1, 1)
|
VALUES ('BELEGKEY', 1, 1, 1, 0, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Laufnummer', 1, 1, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Bestellt_von', 1, 1, 1, NULL)
|
VALUES ('Fakt_Kontonummer', 1, 1, 1, 1, 1)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Lief_Kontonummer', 1, 1, 1, 1)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Belegart', 1, 2, 1, NULL)
|
VALUES ('Laufnummer', 1, 1, 1, 0, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Datum_Auftrag-Bestellung', 1, 3, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Auftrags-Bestellnummer', 1, 1, 1, NULL)
|
VALUES ('Bestellt_von', 1, 1, 1, 1, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Leistungsdatum', 1, 3, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Infotext', 1, 1, 1, NULL)
|
VALUES ('Lief_Kontonummer', 1, 1, 1, 1, 1)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Belegart', 1, 2, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Datum_Auftrag-Bestellung', 1, 3, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Auftrags-Bestellnummer', 1, 1, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Leistungsdatum', 1, 3, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Infotext', 1, 1, 1, 0, NULL)
|
||||||
|
|
||||||
/* Positionsdaten */
|
/* Positionsdaten */
|
||||||
|
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('BELEGKEY', 2, 1, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Zeilennummer', 2, 1, 1, NULL)
|
VALUES ('BELEGKEY', 2, 1, 1, 0, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Datentyp', 2, 2, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Artikelnummer', 2, 1, 1, 2)
|
VALUES ('Zeilennummer', 2, 1, 1, 1, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Bezeichnung', 2, 1, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Lieferantenartikelnummer', 2, 1, 1, NULL)
|
VALUES ('Datentyp', 2, 2, 1, 0, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Menge_bestellt', 2, 5, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Menge_geliefert', 2, 5, 1, NULL)
|
VALUES ('Artikelnummer', 2, 1, 1, 1, 2)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Colli', 2, 1, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Einzelpreis', 2, 5, 1, NULL)
|
VALUES ('Bezeichnung', 2, 1, 1, 1, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Zeilenrabatt1', 2, 5, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Zeilenrabatt2', 2, 5, 1, NULL)
|
VALUES ('Lieferantenartikelnummer', 2, 1, 1, 1, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Zeilenrabatt3', 2, 5, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Zeilenrabatt4', 2, 5, 1, NULL)
|
VALUES ('Menge_bestellt', 2, 5, 1, 1, NULL)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('Umsatzsteuerprozent_Zeile', 2, 2, 1, NULL)
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, READ_ONLY, FUNCTION_ID) VALUES ('EDI_Infotext', 2, 1, 1, NULL)
|
VALUES ('Menge_geliefert', 2, 5, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Colli', 2, 1, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Einzelpreis', 2, 5, 1, 1, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Zeilenrabatt1', 2, 5, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Zeilenrabatt2', 2, 5, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Zeilenrabatt3', 2, 5, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Zeilenrabatt4', 2, 5, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('Umsatzsteuerprozent_Zeile', 2, 2, 1, 0, NULL)
|
||||||
|
INSERT [dbo].[TBEDI_XML_ITEMS] (XML_NAME, XML_NODE_ID, XML_TYPE_ID, IS_READ_ONLY, IS_VISIBLE, FUNCTION_ID)
|
||||||
|
VALUES ('EDI_Infotext', 2, 1, 1, 0, NULL)
|
||||||
@ -38,4 +38,12 @@
|
|||||||
MyBase.New(message)
|
MyBase.New(message)
|
||||||
End Sub
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
Public Class MalformedXmlException
|
||||||
|
Inherits ApplicationException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
16
EDIDocumentImport/FormHelpers.vb
Normal file
16
EDIDocumentImport/FormHelpers.vb
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
Imports DigitalData.Modules.Logging
|
||||||
|
|
||||||
|
Public Class Message
|
||||||
|
Private Logger As Logger
|
||||||
|
|
||||||
|
Public Sub New(pLogConfig As LogConfig)
|
||||||
|
Logger = pLogConfig.GetLogger()
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Sub [Error](pException As Exception, pMessage As String)
|
||||||
|
Logger.Error(pException)
|
||||||
|
Dim oMessage As String = $"{pMessage}{vbNewLine}{vbNewLine}{pException.Message}"
|
||||||
|
MsgBox(oMessage, MsgBoxStyle.Critical, "Schwerwiegender Fehler")
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
End Class
|
||||||
@ -18,9 +18,14 @@ Public Class GridLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
Dim oInvisibleColumns As New List(Of String) From {
|
Dim oInvisibleColumns As New List(Of String) From {
|
||||||
"Zeilennummer",
|
|
||||||
"BELEGKEY",
|
"BELEGKEY",
|
||||||
"Infotext"
|
"Zeilennummer",
|
||||||
|
"Belegart",
|
||||||
|
"Infotext",
|
||||||
|
"Leistungsdatum",
|
||||||
|
"Projektnummer",
|
||||||
|
"Auftragsreferenz",
|
||||||
|
"Laufnummer"
|
||||||
}
|
}
|
||||||
|
|
||||||
oGrid.ForceInitialize()
|
oGrid.ForceInitialize()
|
||||||
@ -63,16 +68,16 @@ Public Class GridLoader
|
|||||||
|
|
||||||
Private Function GetColumnType(pColumn As Schemas.Schema.Column)
|
Private Function GetColumnType(pColumn As Schemas.Schema.Column)
|
||||||
Select Case pColumn.DataType
|
Select Case pColumn.DataType
|
||||||
Case Schemas.Schema.ColumnType.Boolean
|
Case ImporterShared.Constants.ColumnType.Boolean
|
||||||
Return DevExpress.Data.UnboundColumnType.Boolean
|
Return DevExpress.Data.UnboundColumnType.Boolean
|
||||||
|
|
||||||
Case Schemas.Schema.ColumnType.Date
|
Case ImporterShared.Constants.ColumnType.Date
|
||||||
Return DevExpress.Data.UnboundColumnType.DateTime
|
Return DevExpress.Data.UnboundColumnType.DateTime
|
||||||
|
|
||||||
Case Schemas.Schema.ColumnType.Integer
|
Case ImporterShared.Constants.ColumnType.Integer
|
||||||
Return DevExpress.Data.UnboundColumnType.Integer
|
Return DevExpress.Data.UnboundColumnType.Integer
|
||||||
|
|
||||||
Case Schemas.Schema.ColumnType.Decimal
|
Case ImporterShared.Constants.ColumnType.Decimal
|
||||||
Return DevExpress.Data.UnboundColumnType.Decimal
|
Return DevExpress.Data.UnboundColumnType.Decimal
|
||||||
|
|
||||||
Case Else
|
Case Else
|
||||||
|
|||||||
@ -151,6 +151,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Exceptions.vb" />
|
<Compile Include="Exceptions.vb" />
|
||||||
|
<Compile Include="FormHelpers.vb" />
|
||||||
<Compile Include="frmImportMain.Designer.vb">
|
<Compile Include="frmImportMain.Designer.vb">
|
||||||
<DependentUpon>frmImportMain.vb</DependentUpon>
|
<DependentUpon>frmImportMain.vb</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
|||||||
37
EDIDocumentImport/frmImportMain.Designer.vb
generated
37
EDIDocumentImport/frmImportMain.Designer.vb
generated
@ -42,6 +42,7 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerGrids = New DevExpress.XtraEditors.SplitContainerControl()
|
Me.SplitContainerGrids = New DevExpress.XtraEditors.SplitContainerControl()
|
||||||
Me.SplitContainerGrids1 = New DevExpress.XtraEditors.SplitContainerControl()
|
Me.SplitContainerGrids1 = New DevExpress.XtraEditors.SplitContainerControl()
|
||||||
Me.SplitContainerGrids2 = New DevExpress.XtraEditors.SplitContainerControl()
|
Me.SplitContainerGrids2 = New DevExpress.XtraEditors.SplitContainerControl()
|
||||||
|
Me.txtMandator = New DevExpress.XtraBars.BarStaticItem()
|
||||||
CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.SplitContainerControl1.SuspendLayout()
|
Me.SplitContainerControl1.SuspendLayout()
|
||||||
@ -60,9 +61,9 @@ Partial Class frmImportMain
|
|||||||
'RibbonControl
|
'RibbonControl
|
||||||
'
|
'
|
||||||
Me.RibbonControl.ExpandCollapseItem.Id = 0
|
Me.RibbonControl.ExpandCollapseItem.Id = 0
|
||||||
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.txtVersion, Me.txtFilesLoaded, Me.btnLoadFiles, Me.btnTransferFile, Me.btnOpenInputDirectory, Me.btnOpenOutputDirectory, Me.btnOpenSchemaDirectory, Me.btnReloadFile})
|
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.txtVersion, Me.txtFilesLoaded, Me.btnLoadFiles, Me.btnTransferFile, Me.btnOpenInputDirectory, Me.btnOpenOutputDirectory, Me.btnOpenSchemaDirectory, Me.btnReloadFile, Me.txtMandator})
|
||||||
Me.RibbonControl.Location = New System.Drawing.Point(0, 0)
|
Me.RibbonControl.Location = New System.Drawing.Point(0, 0)
|
||||||
Me.RibbonControl.MaxItemId = 12
|
Me.RibbonControl.MaxItemId = 13
|
||||||
Me.RibbonControl.Name = "RibbonControl"
|
Me.RibbonControl.Name = "RibbonControl"
|
||||||
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
|
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
|
||||||
Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
|
Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
@ -75,15 +76,17 @@ Partial Class frmImportMain
|
|||||||
'txtVersion
|
'txtVersion
|
||||||
'
|
'
|
||||||
Me.txtVersion.Alignment = DevExpress.XtraBars.BarItemLinkAlignment.Right
|
Me.txtVersion.Alignment = DevExpress.XtraBars.BarItemLinkAlignment.Right
|
||||||
Me.txtVersion.Caption = "BarStaticItem1"
|
Me.txtVersion.Caption = "Version 1.0.0.0"
|
||||||
Me.txtVersion.Id = 1
|
Me.txtVersion.Id = 1
|
||||||
Me.txtVersion.Name = "txtVersion"
|
Me.txtVersion.Name = "txtVersion"
|
||||||
|
Me.txtVersion.Tag = "Version {0}"
|
||||||
'
|
'
|
||||||
'txtFilesLoaded
|
'txtFilesLoaded
|
||||||
'
|
'
|
||||||
Me.txtFilesLoaded.Caption = "BarStaticItem2"
|
Me.txtFilesLoaded.Caption = "0 Dateien geladen"
|
||||||
Me.txtFilesLoaded.Id = 2
|
Me.txtFilesLoaded.Id = 2
|
||||||
Me.txtFilesLoaded.Name = "txtFilesLoaded"
|
Me.txtFilesLoaded.Name = "txtFilesLoaded"
|
||||||
|
Me.txtFilesLoaded.Tag = "{0} Dateien geladen"
|
||||||
'
|
'
|
||||||
'btnLoadFiles
|
'btnLoadFiles
|
||||||
'
|
'
|
||||||
@ -154,6 +157,7 @@ Partial Class frmImportMain
|
|||||||
'
|
'
|
||||||
Me.RibbonStatusBar.ItemLinks.Add(Me.txtVersion)
|
Me.RibbonStatusBar.ItemLinks.Add(Me.txtVersion)
|
||||||
Me.RibbonStatusBar.ItemLinks.Add(Me.txtFilesLoaded)
|
Me.RibbonStatusBar.ItemLinks.Add(Me.txtFilesLoaded)
|
||||||
|
Me.RibbonStatusBar.ItemLinks.Add(Me.txtMandator)
|
||||||
Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 722)
|
Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 722)
|
||||||
Me.RibbonStatusBar.Name = "RibbonStatusBar"
|
Me.RibbonStatusBar.Name = "RibbonStatusBar"
|
||||||
Me.RibbonStatusBar.Ribbon = Me.RibbonControl
|
Me.RibbonStatusBar.Ribbon = Me.RibbonControl
|
||||||
@ -169,7 +173,7 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerControl1.Panel2.Controls.Add(Me.SplitContainerMain)
|
Me.SplitContainerControl1.Panel2.Controls.Add(Me.SplitContainerMain)
|
||||||
Me.SplitContainerControl1.Panel2.Text = "Panel2"
|
Me.SplitContainerControl1.Panel2.Text = "Panel2"
|
||||||
Me.SplitContainerControl1.Size = New System.Drawing.Size(1215, 590)
|
Me.SplitContainerControl1.Size = New System.Drawing.Size(1215, 590)
|
||||||
Me.SplitContainerControl1.SplitterPosition = 325
|
Me.SplitContainerControl1.SplitterPosition = 362
|
||||||
Me.SplitContainerControl1.TabIndex = 2
|
Me.SplitContainerControl1.TabIndex = 2
|
||||||
'
|
'
|
||||||
'GridControlFiles
|
'GridControlFiles
|
||||||
@ -179,7 +183,7 @@ Partial Class frmImportMain
|
|||||||
Me.GridControlFiles.MainView = Me.GridViewFiles
|
Me.GridControlFiles.MainView = Me.GridViewFiles
|
||||||
Me.GridControlFiles.MenuManager = Me.RibbonControl
|
Me.GridControlFiles.MenuManager = Me.RibbonControl
|
||||||
Me.GridControlFiles.Name = "GridControlFiles"
|
Me.GridControlFiles.Name = "GridControlFiles"
|
||||||
Me.GridControlFiles.Size = New System.Drawing.Size(325, 590)
|
Me.GridControlFiles.Size = New System.Drawing.Size(362, 590)
|
||||||
Me.GridControlFiles.TabIndex = 0
|
Me.GridControlFiles.TabIndex = 0
|
||||||
Me.GridControlFiles.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewFiles})
|
Me.GridControlFiles.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewFiles})
|
||||||
'
|
'
|
||||||
@ -188,6 +192,8 @@ Partial Class frmImportMain
|
|||||||
Me.GridViewFiles.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colSelected, Me.colFilename})
|
Me.GridViewFiles.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colSelected, Me.colFilename})
|
||||||
Me.GridViewFiles.GridControl = Me.GridControlFiles
|
Me.GridViewFiles.GridControl = Me.GridControlFiles
|
||||||
Me.GridViewFiles.Name = "GridViewFiles"
|
Me.GridViewFiles.Name = "GridViewFiles"
|
||||||
|
Me.GridViewFiles.OptionsView.ShowDetailButtons = False
|
||||||
|
Me.GridViewFiles.OptionsView.ShowIndicator = False
|
||||||
'
|
'
|
||||||
'colSelected
|
'colSelected
|
||||||
'
|
'
|
||||||
@ -195,6 +201,8 @@ Partial Class frmImportMain
|
|||||||
Me.colSelected.FieldName = "Selected"
|
Me.colSelected.FieldName = "Selected"
|
||||||
Me.colSelected.ImageOptions.SvgImage = CType(resources.GetObject("colSelected.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
Me.colSelected.ImageOptions.SvgImage = CType(resources.GetObject("colSelected.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||||
Me.colSelected.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16)
|
Me.colSelected.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16)
|
||||||
|
Me.colSelected.MaxWidth = 30
|
||||||
|
Me.colSelected.MinWidth = 30
|
||||||
Me.colSelected.Name = "colSelected"
|
Me.colSelected.Name = "colSelected"
|
||||||
Me.colSelected.UnboundType = DevExpress.Data.UnboundColumnType.[Boolean]
|
Me.colSelected.UnboundType = DevExpress.Data.UnboundColumnType.[Boolean]
|
||||||
Me.colSelected.Visible = True
|
Me.colSelected.Visible = True
|
||||||
@ -208,6 +216,7 @@ Partial Class frmImportMain
|
|||||||
Me.colFilename.Name = "colFilename"
|
Me.colFilename.Name = "colFilename"
|
||||||
Me.colFilename.Visible = True
|
Me.colFilename.Visible = True
|
||||||
Me.colFilename.VisibleIndex = 1
|
Me.colFilename.VisibleIndex = 1
|
||||||
|
Me.colFilename.Width = 333
|
||||||
'
|
'
|
||||||
'SplitContainerMain
|
'SplitContainerMain
|
||||||
'
|
'
|
||||||
@ -218,7 +227,7 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerMain.Panel1.Text = "Panel1"
|
Me.SplitContainerMain.Panel1.Text = "Panel1"
|
||||||
Me.SplitContainerMain.Panel2.Text = "Panel2"
|
Me.SplitContainerMain.Panel2.Text = "Panel2"
|
||||||
Me.SplitContainerMain.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1
|
Me.SplitContainerMain.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1
|
||||||
Me.SplitContainerMain.Size = New System.Drawing.Size(880, 590)
|
Me.SplitContainerMain.Size = New System.Drawing.Size(843, 590)
|
||||||
Me.SplitContainerMain.SplitterPosition = 588
|
Me.SplitContainerMain.SplitterPosition = 588
|
||||||
Me.SplitContainerMain.TabIndex = 1
|
Me.SplitContainerMain.TabIndex = 1
|
||||||
'
|
'
|
||||||
@ -232,7 +241,7 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerGrids.Panel1.Text = "Panel1"
|
Me.SplitContainerGrids.Panel1.Text = "Panel1"
|
||||||
Me.SplitContainerGrids.Panel2.Controls.Add(Me.SplitContainerGrids2)
|
Me.SplitContainerGrids.Panel2.Controls.Add(Me.SplitContainerGrids2)
|
||||||
Me.SplitContainerGrids.Panel2.Text = "Panel2"
|
Me.SplitContainerGrids.Panel2.Text = "Panel2"
|
||||||
Me.SplitContainerGrids.Size = New System.Drawing.Size(880, 590)
|
Me.SplitContainerGrids.Size = New System.Drawing.Size(843, 590)
|
||||||
Me.SplitContainerGrids.SplitterPosition = 288
|
Me.SplitContainerGrids.SplitterPosition = 288
|
||||||
Me.SplitContainerGrids.TabIndex = 0
|
Me.SplitContainerGrids.TabIndex = 0
|
||||||
'
|
'
|
||||||
@ -244,7 +253,7 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerGrids1.Name = "SplitContainerGrids1"
|
Me.SplitContainerGrids1.Name = "SplitContainerGrids1"
|
||||||
Me.SplitContainerGrids1.Panel1.Text = "Panel1"
|
Me.SplitContainerGrids1.Panel1.Text = "Panel1"
|
||||||
Me.SplitContainerGrids1.Panel2.Text = "Panel2"
|
Me.SplitContainerGrids1.Panel2.Text = "Panel2"
|
||||||
Me.SplitContainerGrids1.Size = New System.Drawing.Size(880, 288)
|
Me.SplitContainerGrids1.Size = New System.Drawing.Size(843, 288)
|
||||||
Me.SplitContainerGrids1.SplitterPosition = 118
|
Me.SplitContainerGrids1.SplitterPosition = 118
|
||||||
Me.SplitContainerGrids1.TabIndex = 0
|
Me.SplitContainerGrids1.TabIndex = 0
|
||||||
'
|
'
|
||||||
@ -256,10 +265,17 @@ Partial Class frmImportMain
|
|||||||
Me.SplitContainerGrids2.Name = "SplitContainerGrids2"
|
Me.SplitContainerGrids2.Name = "SplitContainerGrids2"
|
||||||
Me.SplitContainerGrids2.Panel1.Text = "Panel1"
|
Me.SplitContainerGrids2.Panel1.Text = "Panel1"
|
||||||
Me.SplitContainerGrids2.Panel2.Text = "Panel2"
|
Me.SplitContainerGrids2.Panel2.Text = "Panel2"
|
||||||
Me.SplitContainerGrids2.Size = New System.Drawing.Size(880, 292)
|
Me.SplitContainerGrids2.Size = New System.Drawing.Size(843, 292)
|
||||||
Me.SplitContainerGrids2.SplitterPosition = 126
|
Me.SplitContainerGrids2.SplitterPosition = 126
|
||||||
Me.SplitContainerGrids2.TabIndex = 0
|
Me.SplitContainerGrids2.TabIndex = 0
|
||||||
'
|
'
|
||||||
|
'txtMandator
|
||||||
|
'
|
||||||
|
Me.txtMandator.Caption = "Mandant: Keiner"
|
||||||
|
Me.txtMandator.Id = 12
|
||||||
|
Me.txtMandator.Name = "txtMandator"
|
||||||
|
Me.txtMandator.Tag = "Mandant: {0}"
|
||||||
|
'
|
||||||
'frmImportMain
|
'frmImportMain
|
||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
@ -312,4 +328,5 @@ Partial Class frmImportMain
|
|||||||
Friend WithEvents btnOpenSchemaDirectory As DevExpress.XtraBars.BarButtonItem
|
Friend WithEvents btnOpenSchemaDirectory As DevExpress.XtraBars.BarButtonItem
|
||||||
Friend WithEvents SplitContainerMain As DevExpress.XtraEditors.SplitContainerControl
|
Friend WithEvents SplitContainerMain As DevExpress.XtraEditors.SplitContainerControl
|
||||||
Friend WithEvents btnReloadFile As DevExpress.XtraBars.BarButtonItem
|
Friend WithEvents btnReloadFile As DevExpress.XtraBars.BarButtonItem
|
||||||
|
Friend WithEvents txtMandator As DevExpress.XtraBars.BarStaticItem
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@ -24,15 +24,18 @@ Public Class frmImportMain
|
|||||||
Private PositionData As PositionData
|
Private PositionData As PositionData
|
||||||
Private DocumentLoader As Documents.DocumentLoader
|
Private DocumentLoader As Documents.DocumentLoader
|
||||||
Private SchemaLoader As Schemas.SchemaLoader
|
Private SchemaLoader As Schemas.SchemaLoader
|
||||||
|
Private Message As Message
|
||||||
|
|
||||||
Private Grids As List(Of GridControl)
|
Private Grids As List(Of GridControl)
|
||||||
Private GridLoader As GridLoader
|
Private GridLoader As GridLoader
|
||||||
Private GridBuilder As GridBuilder
|
Private GridBuilder As GridBuilder
|
||||||
|
|
||||||
Private CurrentSchema As String
|
Private CurrentSchemaName As String
|
||||||
|
Private CurrentSchema As Schema
|
||||||
Private CurrentDocument As Document
|
Private CurrentDocument As Document
|
||||||
|
|
||||||
Private Sub frmImportMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
Private Sub frmImportMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||||
|
Try
|
||||||
txtVersion.Caption = String.Format(txtVersion.Caption, Application.ProductVersion)
|
txtVersion.Caption = String.Format(txtVersion.Caption, Application.ProductVersion)
|
||||||
|
|
||||||
LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, "Digital Data", "EDI Document Importer")
|
LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, "Digital Data", "EDI Document Importer")
|
||||||
@ -44,6 +47,8 @@ Public Class frmImportMain
|
|||||||
Application.CommonAppDataPath,
|
Application.CommonAppDataPath,
|
||||||
Application.StartupPath)
|
Application.StartupPath)
|
||||||
|
|
||||||
|
Message = New Message(LogConfig)
|
||||||
|
|
||||||
GridBuilder = New GridBuilder(GridViewFiles)
|
GridBuilder = New GridBuilder(GridViewFiles)
|
||||||
GridBuilder.
|
GridBuilder.
|
||||||
WithDefaults.
|
WithDefaults.
|
||||||
@ -65,14 +70,19 @@ Public Class frmImportMain
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
' Initialize Database
|
' Initialize Database
|
||||||
Dim oConnectionString = MSSQLServer.DecryptConnectionString(ConfigManager.Config.ConnectionString)
|
Dim oConnectionString = MSSQLServer.DecryptConnectionString(ConfigManager.Config.ConnectionString)
|
||||||
Database = New MSSQLServer(LogConfig, oConnectionString)
|
Database = New MSSQLServer(LogConfig, oConnectionString)
|
||||||
Winline = New Data(LogConfig, Database, ConfigManager.Config)
|
Winline = New Data(LogConfig, Database, ConfigManager.Config)
|
||||||
WebService = New WebService(LogConfig, ConfigManager.Config)
|
WebService = New WebService(LogConfig, ConfigManager.Config)
|
||||||
PositionData = New PositionData(LogConfig, Winline)
|
PositionData = New PositionData(LogConfig, Winline)
|
||||||
|
Catch ex As Exception
|
||||||
|
Message.Error(ex, "Fehler beim Initialisieren der Anwendung Daten")
|
||||||
|
End Try
|
||||||
|
|
||||||
' Load WinLine Data
|
' Load WinLine Data
|
||||||
|
Try
|
||||||
Winline.Mandators.Clear()
|
Winline.Mandators.Clear()
|
||||||
Winline.LoadMandators()
|
Winline.LoadMandators()
|
||||||
Winline.LoadEconomicYears()
|
Winline.LoadEconomicYears()
|
||||||
@ -81,18 +91,25 @@ Public Class frmImportMain
|
|||||||
For Each oMandator In Winline.Mandators
|
For Each oMandator In Winline.Mandators
|
||||||
Winline.LoadAccounts(oMandator)
|
Winline.LoadAccounts(oMandator)
|
||||||
Next
|
Next
|
||||||
|
Catch ex As Exception
|
||||||
|
Message.Error(ex, "Fehler beim Laden der WinLine Daten")
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Try
|
||||||
DocumentLoader = New DocumentLoader(LogConfig, Winline)
|
DocumentLoader = New DocumentLoader(LogConfig, Winline)
|
||||||
SchemaLoader = New SchemaLoader(LogConfig)
|
SchemaLoader = New SchemaLoader(LogConfig)
|
||||||
GridLoader = New GridLoader(LogConfig)
|
GridLoader = New GridLoader(LogConfig)
|
||||||
|
|
||||||
SchemaLoader.LoadFiles(ConfigManager.Config.SchemaDirectory)
|
SchemaLoader.LoadFiles(ConfigManager.Config.SchemaDirectory)
|
||||||
CurrentSchema = SchemaLoader.SchemaList.First().FullName
|
CurrentSchemaName = SchemaLoader.SchemaList.First().FullName
|
||||||
|
CurrentSchema = SchemaLoader.GetSchemaFromFile(CurrentSchemaName)
|
||||||
Dim oSchema = SchemaLoader.GetSchemaFromFile(CurrentSchema)
|
|
||||||
Grids = CreateGridsAndColumns(oSchema)
|
|
||||||
|
|
||||||
|
Grids = CreateGridsAndColumns(CurrentSchema)
|
||||||
|
Catch ex As Exception
|
||||||
|
Message.Error(ex, "Fehler beim Laden der Vorlagen Daten")
|
||||||
|
End Try
|
||||||
|
|
||||||
|
txtVersion.Caption = String.Format(txtVersion.Tag.ToString, My.Application.Info.Version.ToString)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
@ -175,8 +192,9 @@ Public Class frmImportMain
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub btnLoadFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnLoadFiles.ItemClick
|
Private Sub btnLoadFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnLoadFiles.ItemClick
|
||||||
If DocumentLoader.LoadFiles(ConfigManager.Config.InputDirectory) Then
|
If DocumentLoader.LoadFiles(ConfigManager.Config.InputDirectory, CurrentSchema) Then
|
||||||
GridControlFiles.DataSource = DocumentLoader.Files
|
GridControlFiles.DataSource = DocumentLoader.Files
|
||||||
|
txtFilesLoaded.Caption = String.Format(txtFilesLoaded.Tag.ToString, DocumentLoader.Files.Count)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -280,7 +298,7 @@ Public Class frmImportMain
|
|||||||
If oResult = DialogResult.Yes Then
|
If oResult = DialogResult.Yes Then
|
||||||
Dim oDocument As Document = GridViewFiles.GetRow(GridViewFiles.FocusedRowHandle)
|
Dim oDocument As Document = GridViewFiles.GetRow(GridViewFiles.FocusedRowHandle)
|
||||||
|
|
||||||
Dim oNewDocument = DocumentLoader.LoadFile(oDocument.File)
|
Dim oNewDocument = DocumentLoader.LoadFile(oDocument.File, CurrentSchema)
|
||||||
Dim oIndex = DocumentLoader.Files.IndexOf(oDocument)
|
Dim oIndex = DocumentLoader.Files.IndexOf(oDocument)
|
||||||
DocumentLoader.Files.Item(oIndex) = oNewDocument
|
DocumentLoader.Files.Item(oIndex) = oNewDocument
|
||||||
|
|
||||||
|
|||||||
@ -1,10 +1,7 @@
|
|||||||
Imports System.IO
|
Imports System.IO
|
||||||
Imports DevExpress.XtraGrid.Views.Grid
|
Imports DevExpress.XtraGrid.Views.Grid
|
||||||
Imports DevExpress.XtraGrid.Columns
|
|
||||||
Imports DevExpress.XtraRichEdit
|
Imports DevExpress.XtraRichEdit
|
||||||
Imports DevExpress.XtraEditors
|
Imports DevExpress.XtraEditors
|
||||||
Imports DevExpress.XtraReports.UI
|
|
||||||
Imports DevExpress.DataAccess.ObjectBinding
|
|
||||||
Imports DigitalData.Modules.Logging
|
Imports DigitalData.Modules.Logging
|
||||||
Imports DigitalData.Modules.Database
|
Imports DigitalData.Modules.Database
|
||||||
Imports DigitalData.Modules.Config
|
Imports DigitalData.Modules.Config
|
||||||
@ -12,9 +9,7 @@ Imports DigitalData.Controls.SQLConfig
|
|||||||
Imports DigitalData.GUIs.Common
|
Imports DigitalData.GUIs.Common
|
||||||
Imports ImporterShared.Documents
|
Imports ImporterShared.Documents
|
||||||
Imports ImporterShared.Winline
|
Imports ImporterShared.Winline
|
||||||
Imports ImporterShared.Schemas
|
|
||||||
Imports ImporterForm.Positions
|
Imports ImporterForm.Positions
|
||||||
Imports DevExpress.XtraLayout
|
|
||||||
|
|
||||||
Public Class frmImportMain_old
|
Public Class frmImportMain_old
|
||||||
Public LogConfig As LogConfig
|
Public LogConfig As LogConfig
|
||||||
@ -125,7 +120,7 @@ Public Class frmImportMain_old
|
|||||||
|
|
||||||
Private Sub btnLoadDocuments_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnLoadDocuments.ItemClick
|
Private Sub btnLoadDocuments_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnLoadDocuments.ItemClick
|
||||||
Try
|
Try
|
||||||
If DocumentLoader.LoadFiles(ConfigManager.Config.InputDirectory) = True Then
|
If DocumentLoader.LoadFiles(ConfigManager.Config.InputDirectory, Nothing) = True Then
|
||||||
|
|
||||||
RibbonGroupDataTransmission.Enabled = True
|
RibbonGroupDataTransmission.Enabled = True
|
||||||
RibbonGroupDocument.Enabled = True
|
RibbonGroupDocument.Enabled = True
|
||||||
|
|||||||
@ -5,16 +5,17 @@ Imports ImporterShared.Documents
|
|||||||
Imports ImporterShared.DocumentRow
|
Imports ImporterShared.DocumentRow
|
||||||
Imports DevExpress.XtraEditors.Repository
|
Imports DevExpress.XtraEditors.Repository
|
||||||
Imports ImporterShared.Winline
|
Imports ImporterShared.Winline
|
||||||
|
Imports DigitalData.Modules.Language
|
||||||
|
|
||||||
Public Class frmRowEditor
|
Public Class frmRowEditor
|
||||||
Private ReadOnly _Columns As List(Of String)
|
Private ReadOnly _Columns As List(Of String)
|
||||||
Private ReadOnly _DataTable As New DataTable
|
Private ReadOnly _DataTable As New DataTable
|
||||||
Private ReadOnly _Accounts As List(Of Account)
|
Private ReadOnly _Accounts As List(Of Account)
|
||||||
Private _DocumentRow As ImporterShared.DocumentRow
|
Private ReadOnly _DocumentRow As ImporterShared.DocumentRow
|
||||||
|
|
||||||
Private DatePicker As New RepositoryItemDateEdit()
|
Private ReadOnly DatePicker As New RepositoryItemDateEdit()
|
||||||
Private MultilineEditor As New RepositoryItemMemoEdit()
|
Private ReadOnly MultilineEditor As New RepositoryItemMemoEdit()
|
||||||
Private AccountPicker As New RepositoryItemSearchLookUpEdit
|
Private ReadOnly AccountPicker As New RepositoryItemSearchLookUpEdit
|
||||||
|
|
||||||
Private Const COL_KEY = "KEY"
|
Private Const COL_KEY = "KEY"
|
||||||
Private Const COL_VALUE_ORIGINAL = "VALUE_ORIGINAL"
|
Private Const COL_VALUE_ORIGINAL = "VALUE_ORIGINAL"
|
||||||
@ -39,6 +40,11 @@ Public Class frmRowEditor
|
|||||||
AccountPicker.DataSource = _Accounts
|
AccountPicker.DataSource = _Accounts
|
||||||
AccountPicker.DisplayMember = "Name"
|
AccountPicker.DisplayMember = "Name"
|
||||||
AccountPicker.ValueMember = "Id"
|
AccountPicker.ValueMember = "Id"
|
||||||
|
|
||||||
|
'DatePicker.EditFormat.FormatType = DevExpress.Utils.FormatType.DateTime
|
||||||
|
'DatePicker.EditFormat.FormatString = "dd/MM/yyyy"
|
||||||
|
'DatePicker.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime
|
||||||
|
'DatePicker.DisplayFormat.FormatString = "yyyy-MM-dd"
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub frmRowEditor_Load(sender As Object, e As EventArgs) Handles Me.Load
|
Private Sub frmRowEditor_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||||
@ -82,8 +88,8 @@ Public Class frmRowEditor
|
|||||||
oField = New KeyValuePair(Of String, FieldValue)(oRow.Item(COL_KEY), New FieldValue())
|
oField = New KeyValuePair(Of String, FieldValue)(oRow.Item(COL_KEY), New FieldValue())
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim oFieldValue = oField.Value
|
Dim oFieldValue As FieldValue = oField.Value
|
||||||
oFieldValue.Final = oRow.Item(COL_VALUE_FINAL)
|
oFieldValue.Final = Utils.Notnull(oRow.Item(COL_VALUE_FINAL), String.Empty)
|
||||||
|
|
||||||
If _DocumentRow.Fields.ContainsKey(oField.Key) Then
|
If _DocumentRow.Fields.ContainsKey(oField.Key) Then
|
||||||
_DocumentRow.Fields.Item(oField.Key) = oFieldValue
|
_DocumentRow.Fields.Item(oField.Key) = oFieldValue
|
||||||
|
|||||||
@ -3,4 +3,12 @@
|
|||||||
GLN = 1
|
GLN = 1
|
||||||
EAN = 2
|
EAN = 2
|
||||||
End Enum
|
End Enum
|
||||||
|
|
||||||
|
Public Enum ColumnType As Integer
|
||||||
|
[String]
|
||||||
|
[Integer]
|
||||||
|
[Date]
|
||||||
|
[Boolean]
|
||||||
|
[Decimal]
|
||||||
|
End Enum
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@ -1,10 +1,12 @@
|
|||||||
Imports System.IO
|
Imports System.IO
|
||||||
|
Imports ImporterShared.Schemas
|
||||||
|
|
||||||
Namespace Documents
|
Namespace Documents
|
||||||
Public Class Document
|
Public Class Document
|
||||||
Public File As FileInfo
|
Public File As FileInfo
|
||||||
Public Mandator As String
|
|
||||||
Public Type As DocumentType
|
Public Type As DocumentType
|
||||||
|
Public Schema As Schema
|
||||||
|
Public Mandator As String
|
||||||
Public Selected As Boolean = False
|
Public Selected As Boolean = False
|
||||||
|
|
||||||
''' <summary>
|
''' <summary>
|
||||||
@ -12,7 +14,6 @@ Namespace Documents
|
|||||||
''' </summary>
|
''' </summary>
|
||||||
Public CreatedAt As Date
|
Public CreatedAt As Date
|
||||||
|
|
||||||
|
|
||||||
Public TemplateName As String
|
Public TemplateName As String
|
||||||
Public TemplateType As Integer
|
Public TemplateType As Integer
|
||||||
Public [Option] As Integer
|
Public [Option] As Integer
|
||||||
|
|||||||
@ -1,20 +1,12 @@
|
|||||||
Imports System.ComponentModel
|
Imports System.IO
|
||||||
Imports System.IO
|
|
||||||
Imports System.Reflection
|
|
||||||
Imports System.Text.RegularExpressions
|
|
||||||
Imports System.Xml.Serialization
|
|
||||||
Imports System.Xml.XPath
|
|
||||||
Imports DigitalData.Modules.Language
|
|
||||||
Imports DigitalData.Modules.Logging
|
Imports DigitalData.Modules.Logging
|
||||||
Imports ImporterShared.Documents
|
Imports ImporterShared.Schemas
|
||||||
Imports ImporterShared.Schemas.Orders
|
|
||||||
|
|
||||||
Namespace Documents
|
Namespace Documents
|
||||||
Public Class DocumentLoader
|
Public Class DocumentLoader
|
||||||
Inherits BaseClass
|
Inherits BaseClass
|
||||||
|
|
||||||
Private ReadOnly Winline As Winline.Data
|
Private ReadOnly Winline As Winline.Data
|
||||||
Private ReadOnly Serializer As Serializer
|
|
||||||
|
|
||||||
Public Files As New List(Of Document)
|
Public Files As New List(Of Document)
|
||||||
|
|
||||||
@ -22,10 +14,10 @@ Namespace Documents
|
|||||||
Public Sub New(pLogConfig As LogConfig, pWinline As Winline.Data)
|
Public Sub New(pLogConfig As LogConfig, pWinline As Winline.Data)
|
||||||
MyBase.New(pLogConfig, pLogConfig.GetLogger())
|
MyBase.New(pLogConfig, pLogConfig.GetLogger())
|
||||||
Winline = pWinline
|
Winline = pWinline
|
||||||
Serializer = New Serializer(pLogConfig)
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Function LoadFiles(pInputDirectory) As Boolean
|
|
||||||
|
Public Function LoadFiles(pInputDirectory As String, pSchema As Schema) As Boolean
|
||||||
If pInputDirectory = String.Empty Then
|
If pInputDirectory = String.Empty Then
|
||||||
Throw New ArgumentNullException("InputDirectory")
|
Throw New ArgumentNullException("InputDirectory")
|
||||||
End If
|
End If
|
||||||
@ -40,7 +32,7 @@ Namespace Documents
|
|||||||
Logger.Debug("Found [{0}] files in directory [{1}]", oFiles.Count, oDirectory)
|
Logger.Debug("Found [{0}] files in directory [{1}]", oFiles.Count, oDirectory)
|
||||||
|
|
||||||
For Each oFile In oFiles
|
For Each oFile In oFiles
|
||||||
Dim oDocument = LoadFile(oFile)
|
Dim oDocument = LoadFile(oFile, pSchema)
|
||||||
Files.Add(oDocument)
|
Files.Add(oDocument)
|
||||||
Next
|
Next
|
||||||
|
|
||||||
@ -53,57 +45,110 @@ Namespace Documents
|
|||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function LoadFile(pFileInfo As FileInfo) As Document
|
Public Function LoadFile(pFileInfo As FileInfo, pSchema As Schema) As Document
|
||||||
Dim oFileList As New List(Of FileInfo) From {pFileInfo}
|
Dim oFileList As New List(Of FileInfo) From {pFileInfo}
|
||||||
Logger.Info("Loading file [{0}]", pFileInfo.Name)
|
Logger.Info("Loading file [{0}]", pFileInfo.Name)
|
||||||
|
|
||||||
|
Try
|
||||||
Return oFileList.
|
Return oFileList.
|
||||||
Select(AddressOf WrapFileInfo).
|
Select(AddressOf WrapFileInfo).
|
||||||
Select(AddressOf LoadDocumentData2).
|
Select(Function(d) IncludeSchema(d, pSchema)).
|
||||||
|
Select(Function(d) LoadDocumentData(d, pSchema)).
|
||||||
Select(Function(d) MatchDataFromWinLine(d, Winline.Mandators)).
|
Select(Function(d) MatchDataFromWinLine(d, Winline.Mandators)).
|
||||||
SingleOrDefault()
|
SingleOrDefault()
|
||||||
|
Catch ex As Exception
|
||||||
|
Logger.Error(ex)
|
||||||
|
Return Nothing
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Function LoadDocumentData2(pDocument As Document) As Document
|
|
||||||
|
Private Function IncludeSchema(pDocument As Document, pSchema As Schema) As Document
|
||||||
|
pDocument.Schema = pSchema
|
||||||
|
Return pDocument
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Loads a single document from the FullName Property in the Document Object
|
||||||
|
''' </summary>
|
||||||
|
''' <example>
|
||||||
|
'''
|
||||||
|
''' A document might look like this:
|
||||||
|
''' <MESOWebService>
|
||||||
|
''' <Row1></Row1>
|
||||||
|
''' <Row2></Row2>
|
||||||
|
''' <Row3></Row3>
|
||||||
|
''' </MESOWebService>
|
||||||
|
'''
|
||||||
|
''' </example>
|
||||||
|
Private Function LoadDocumentData(pDocument As Document, pSchema As Schema) As Document
|
||||||
Dim oText As String = IO.File.ReadAllText(pDocument.FullName)
|
Dim oText As String = IO.File.ReadAllText(pDocument.FullName)
|
||||||
Dim oDoc = XDocument.Parse(oText)
|
Dim oDoc = XDocument.Parse(oText)
|
||||||
|
|
||||||
Dim oRootElement As XElement = XmlData.GetElement(oDoc, "MESOWebService")
|
Dim oRootElement As XElement = XmlData.GetElement(oDoc, "MESOWebService")
|
||||||
|
If oRootElement Is Nothing Then
|
||||||
|
Throw New Exceptions.MalformedXmlException("Datei enthält kein MESOWebService-Element")
|
||||||
|
End If
|
||||||
|
|
||||||
Dim oTemplateName = XmlData.GetElementAttribute(oRootElement, "Template")
|
Dim oTemplateName = XmlData.GetElementAttribute(oRootElement, "Template")
|
||||||
|
If oTemplateName Is Nothing Then
|
||||||
|
Throw New Exceptions.MalformedXmlException("Datei enthält kein Template-Attribut")
|
||||||
|
End If
|
||||||
|
|
||||||
Dim oTemplateType = XmlData.GetElementAttribute(oRootElement, "TemplateType")
|
Dim oTemplateType = XmlData.GetElementAttribute(oRootElement, "TemplateType")
|
||||||
|
If oTemplateType Is Nothing Then
|
||||||
|
Throw New Exceptions.MalformedXmlException("Datei enthält kein TemplateType-Attribut")
|
||||||
|
End If
|
||||||
|
|
||||||
Dim oOption = XmlData.GetElementAttribute(oRootElement, "option")
|
Dim oOption = XmlData.GetElementAttribute(oRootElement, "option")
|
||||||
|
If oOption Is Nothing Then
|
||||||
|
Throw New Exceptions.MalformedXmlException("Datei enthält kein option-Attribut")
|
||||||
|
End If
|
||||||
|
|
||||||
Dim oPrintVoucher = XmlData.GetElementAttribute(oRootElement, "printVoucher")
|
Dim oPrintVoucher = XmlData.GetElementAttribute(oRootElement, "printVoucher")
|
||||||
|
If oPrintVoucher Is Nothing Then
|
||||||
|
Throw New Exceptions.MalformedXmlException("Datei enthält kein printVoucher-Attribut")
|
||||||
|
End If
|
||||||
|
|
||||||
Dim oRowElements As List(Of XElement) = oRootElement.Elements.ToList
|
' The first level of Elements are the document Rows
|
||||||
|
Dim oTopLevelElements As List(Of XElement) = oRootElement.Elements.ToList
|
||||||
|
Dim oDocumentRows As New List(Of DocumentRow)
|
||||||
|
|
||||||
|
For Each oTopLevelElement As XElement In oTopLevelElements
|
||||||
Dim oRows As New List(Of DocumentRow)
|
|
||||||
|
|
||||||
For Each oElement As XElement In oRowElements
|
|
||||||
Dim oFields As New Dictionary(Of String, DocumentRow.FieldValue)
|
Dim oFields As New Dictionary(Of String, DocumentRow.FieldValue)
|
||||||
|
Dim oSubElements = oTopLevelElement.Descendants().ToList()
|
||||||
Dim oSubElements = oElement.Descendants().ToList()
|
Dim oTable = pSchema.Tables.
|
||||||
|
Where(Function(t) t.Name = oTopLevelElement.Name).
|
||||||
|
FirstOrDefault()
|
||||||
|
|
||||||
For Each oSubElement As XElement In oSubElements
|
For Each oSubElement As XElement In oSubElements
|
||||||
|
Dim oSchemaField = oTable.Columns.
|
||||||
|
Where(Function(c) c.Name = oSubElement.Name).
|
||||||
|
SingleOrDefault()
|
||||||
|
|
||||||
oFields.Add(oSubElement.Name.ToString, New DocumentRow.FieldValue With {
|
oFields.Add(oSubElement.Name.ToString, New DocumentRow.FieldValue With {
|
||||||
.Original = oSubElement.Value,
|
.Original = oSubElement.Value,
|
||||||
.Final = oSubElement.Value
|
.Final = oSubElement.Value,
|
||||||
|
.DataType = oSchemaField.DataType
|
||||||
})
|
})
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
' Create a DocumentRow object for each Top Level Element
|
||||||
Dim oRow = New DocumentRow With {
|
Dim oRow = New DocumentRow With {
|
||||||
.Name = oElement.Name.ToString,
|
.Name = oTopLevelElement.Name.ToString,
|
||||||
.Fields = oFields
|
.Fields = oFields
|
||||||
}
|
}
|
||||||
|
|
||||||
oRows.Add(oRow)
|
oDocumentRows.Add(oRow)
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
' Update the document
|
||||||
pDocument.TemplateName = oTemplateName
|
pDocument.TemplateName = oTemplateName
|
||||||
pDocument.TemplateType = oTemplateType
|
pDocument.TemplateType = oTemplateType
|
||||||
pDocument.Rows = oRows
|
|
||||||
pDocument.Option = oOption
|
pDocument.Option = oOption
|
||||||
pDocument.PrintVoucher = oPrintVoucher
|
pDocument.PrintVoucher = oPrintVoucher
|
||||||
|
pDocument.Rows = oDocumentRows
|
||||||
|
|
||||||
Return pDocument
|
Return pDocument
|
||||||
End Function
|
End Function
|
||||||
@ -121,26 +166,13 @@ Namespace Documents
|
|||||||
Logger.Warn("Mandator not found for File [{0}]", pDocument.File.Name)
|
Logger.Warn("Mandator not found for File [{0}]", pDocument.File.Name)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
pDocument = MatchOrderData(pDocument, oMandator)
|
pDocument = MatchDocumentData(pDocument, oMandator)
|
||||||
pDocument.Mandator = oMandator.Id
|
pDocument.Mandator = oMandator.Id
|
||||||
|
|
||||||
|
|
||||||
'If TypeOf pDocument.Data Is Schemas.Orders.Input.MESOWebService Then
|
|
||||||
' Dim oMandator = Winline.FindMatchingMandatorFromOrder(pDocument.Data)
|
|
||||||
' Dim oData As Schemas.Orders.Input.MESOWebService = MatchOrderData(pDocument.Data, oMandator)
|
|
||||||
|
|
||||||
' If oMandator Is Nothing Then
|
|
||||||
' Logger.Warn("Mandator not found for File [{0}]", pDocument.File.Name)
|
|
||||||
' End If
|
|
||||||
|
|
||||||
' pDocument.Mandator = oMandator.Id
|
|
||||||
' pDocument.Data = oData
|
|
||||||
'End If
|
|
||||||
|
|
||||||
Return pDocument
|
Return pDocument
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Function MatchOrderData(pDocument As Document, pMandator As Winline.Mandator) As Document
|
Private Function MatchDocumentData(pDocument As Document, pMandator As Winline.Mandator) As Document
|
||||||
Dim oYear = Winline.GetWinLineYear()
|
Dim oYear = Winline.GetWinLineYear()
|
||||||
|
|
||||||
If pMandator Is Nothing Then
|
If pMandator Is Nothing Then
|
||||||
|
|||||||
@ -15,6 +15,7 @@
|
|||||||
Public Original As String = ""
|
Public Original As String = ""
|
||||||
Public External As String = ""
|
Public External As String = ""
|
||||||
Public Final As String = ""
|
Public Final As String = ""
|
||||||
|
Public DataType As Constants.ColumnType = Constants.ColumnType.String
|
||||||
|
|
||||||
Public Overrides Function ToString() As String
|
Public Overrides Function ToString() As String
|
||||||
Return Final
|
Return Final
|
||||||
|
|||||||
49
ImporterShared/Exceptions.vb
Normal file
49
ImporterShared/Exceptions.vb
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
Public Class Exceptions
|
||||||
|
Public MustInherit Class DocumentShowException
|
||||||
|
Inherits ApplicationException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class WebServiceException
|
||||||
|
Inherits ApplicationException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class NoMandatorException
|
||||||
|
Inherits DocumentShowException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class MultipleAccountsException
|
||||||
|
Inherits DocumentShowException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class NoAccountException
|
||||||
|
Inherits DocumentShowException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class MalformedXmlException
|
||||||
|
Inherits ApplicationException
|
||||||
|
|
||||||
|
Public Sub New(message As String)
|
||||||
|
MyBase.New(message)
|
||||||
|
End Sub
|
||||||
|
End Class
|
||||||
|
End Class
|
||||||
@ -100,6 +100,7 @@
|
|||||||
<Compile Include="Documents\DocumentRow.vb" />
|
<Compile Include="Documents\DocumentRow.vb" />
|
||||||
<Compile Include="Documents\DocumentType.vb" />
|
<Compile Include="Documents\DocumentType.vb" />
|
||||||
<Compile Include="Documents\DocumentLoader.vb" />
|
<Compile Include="Documents\DocumentLoader.vb" />
|
||||||
|
<Compile Include="Exceptions.vb" />
|
||||||
<Compile Include="IDictionaryEx.vb" />
|
<Compile Include="IDictionaryEx.vb" />
|
||||||
<Compile Include="IEnumerableEx.vb" />
|
<Compile Include="IEnumerableEx.vb" />
|
||||||
<Compile Include="My Project\AssemblyInfo.vb" />
|
<Compile Include="My Project\AssemblyInfo.vb" />
|
||||||
@ -127,6 +128,7 @@
|
|||||||
<Compile Include="Schemas\Schema.vb" />
|
<Compile Include="Schemas\Schema.vb" />
|
||||||
<Compile Include="Schemas\SchemaLoader.vb" />
|
<Compile Include="Schemas\SchemaLoader.vb" />
|
||||||
<Compile Include="Serializer.vb" />
|
<Compile Include="Serializer.vb" />
|
||||||
|
<Compile Include="Winline\Configuration.vb" />
|
||||||
<Compile Include="Winline\Entities\Account.vb" />
|
<Compile Include="Winline\Entities\Account.vb" />
|
||||||
<Compile Include="Winline\Data.vb" />
|
<Compile Include="Winline\Data.vb" />
|
||||||
<Compile Include="Winline\Entities\Contact.vb" />
|
<Compile Include="Winline\Entities\Contact.vb" />
|
||||||
|
|||||||
@ -1,14 +1,5 @@
|
|||||||
Namespace Schemas
|
Namespace Schemas
|
||||||
Public Class Schema
|
Public Class Schema
|
||||||
|
|
||||||
Public Enum ColumnType As Integer
|
|
||||||
[String]
|
|
||||||
[Integer]
|
|
||||||
[Date]
|
|
||||||
[Boolean]
|
|
||||||
[Decimal]
|
|
||||||
End Enum
|
|
||||||
|
|
||||||
Public Property Tables As New List(Of Table)
|
Public Property Tables As New List(Of Table)
|
||||||
Public Property Name As String
|
Public Property Name As String
|
||||||
|
|
||||||
@ -20,9 +11,8 @@
|
|||||||
Class Column
|
Class Column
|
||||||
Public Property Name As String
|
Public Property Name As String
|
||||||
Public Property Required As String
|
Public Property Required As String
|
||||||
Public Property DataType As ColumnType
|
Public Property DataType As Constants.ColumnType
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
End Namespace
|
End Namespace
|
||||||
|
|
||||||
|
|||||||
@ -41,8 +41,11 @@ Namespace Schemas
|
|||||||
|
|
||||||
Public Function GetSchemaFromFile(pSchemaFilePath As String) As Schema
|
Public Function GetSchemaFromFile(pSchemaFilePath As String) As Schema
|
||||||
Dim oSchema As New Schema
|
Dim oSchema As New Schema
|
||||||
|
Dim oFileInfo As New FileInfo(pSchemaFilePath)
|
||||||
Dim oElements = GetSchemaElements(pSchemaFilePath)
|
Dim oElements = GetSchemaElements(pSchemaFilePath)
|
||||||
|
|
||||||
|
oSchema.Name = oFileInfo.Name
|
||||||
|
|
||||||
For Each oElement In oElements
|
For Each oElement In oElements
|
||||||
Dim oColumns = GetElementColumns(oElement)
|
Dim oColumns = GetElementColumns(oElement)
|
||||||
Dim oSchemaColumns As New List(Of Schema.Column)
|
Dim oSchemaColumns As New List(Of Schema.Column)
|
||||||
@ -76,7 +79,7 @@ Namespace Schemas
|
|||||||
Return oSchema
|
Return oSchema
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function GetElementType(pElement As XElement) As Schema.ColumnType
|
Public Function GetElementType(pElement As XElement) As Constants.ColumnType
|
||||||
Dim oTypeString = XmlData.GetElementAttribute(pElement, "type")
|
Dim oTypeString = XmlData.GetElementAttribute(pElement, "type")
|
||||||
|
|
||||||
If oTypeString Is Nothing Then
|
If oTypeString Is Nothing Then
|
||||||
@ -89,15 +92,15 @@ Namespace Schemas
|
|||||||
|
|
||||||
Select Case oTypeString
|
Select Case oTypeString
|
||||||
Case "xs:date"
|
Case "xs:date"
|
||||||
Return Schema.ColumnType.Date
|
Return Constants.ColumnType.Date
|
||||||
Case "xs:integer"
|
Case "xs:integer"
|
||||||
Return Schema.ColumnType.Integer
|
Return Constants.ColumnType.Integer
|
||||||
Case "xs:decimal"
|
Case "xs:decimal"
|
||||||
Return Schema.ColumnType.Decimal
|
Return Constants.ColumnType.Decimal
|
||||||
Case "xs:boolean"
|
Case "xs:boolean"
|
||||||
Return Schema.ColumnType.Boolean
|
Return Constants.ColumnType.Boolean
|
||||||
Case Else
|
Case Else
|
||||||
Return Schema.ColumnType.String
|
Return Constants.ColumnType.String
|
||||||
End Select
|
End Select
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
|||||||
7
ImporterShared/Winline/Configuration.vb
Normal file
7
ImporterShared/Winline/Configuration.vb
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Class for loading column/field config from database
|
||||||
|
''' </summary>
|
||||||
|
Public Class Configuration
|
||||||
|
|
||||||
|
End Class
|
||||||
Loading…
x
Reference in New Issue
Block a user