diff --git a/MultiTool.Form/GlobalSuppressions.vb b/MultiTool.Form/GlobalSuppressions.vb deleted file mode 100644 index fa65077..0000000 --- a/MultiTool.Form/GlobalSuppressions.vb +++ /dev/null @@ -1,8 +0,0 @@ -' This file is used by Code Analysis to maintain SuppressMessage -' attributes that are applied to this project. -' Project-level suppressions either have no target or are given -' a specific target and scoped to a namespace, type, member, etc. - -Imports System.Diagnostics.CodeAnalysis - - diff --git a/MultiTool.Form/MultiTool.Form.vbproj b/MultiTool.Form/MultiTool.Form.vbproj index 7cff93d..b5a1e3a 100644 --- a/MultiTool.Form/MultiTool.Form.vbproj +++ b/MultiTool.Form/MultiTool.Form.vbproj @@ -181,7 +181,7 @@ Form - + OrderReport.vb @@ -325,6 +325,8 @@ + + diff --git a/MultiTool.Form/My Project/Resources.Designer.vb b/MultiTool.Form/My Project/Resources.Designer.vb index be3f697..96aeba2 100644 --- a/MultiTool.Form/My Project/Resources.Designer.vb +++ b/MultiTool.Form/My Project/Resources.Designer.vb @@ -150,6 +150,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property actions_send3() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("actions_send3", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -480,6 +490,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property support() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("support", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' diff --git a/MultiTool.Form/My Project/Resources.resx b/MultiTool.Form/My Project/Resources.resx index 48cac91..73567eb 100644 --- a/MultiTool.Form/My Project/Resources.resx +++ b/MultiTool.Form/My Project/Resources.resx @@ -121,15 +121,15 @@ ..\Resources\logical.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\bo_country.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - ..\Resources\logical1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\mailmergepreview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\redo.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\logical1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\bo_unknown1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -142,11 +142,17 @@ ..\Resources\tableproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_send3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\rotatecounterclockwise.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\preview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\mailmergepreview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\bo_country.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\actions_send2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -160,12 +166,15 @@ ..\Resources\togglefieldcodes.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\actions_reload.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\squarified.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\open21.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\itemtypechecked.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\bo_product.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -181,9 +190,6 @@ ..\Resources\charthorizontalaxis_logscale.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\actions_arrow4down.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\deletetablerows.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -208,14 +214,14 @@ ..\Resources\bo_validation.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\rotatecounterclockwise.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_reload.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\actions_deletecircled.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\actions_checkcircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_arrow4down.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\open2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -253,10 +259,10 @@ ..\Resources\resetview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\itemtypechecked.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_checkcircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\squarified.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\support.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a \ No newline at end of file diff --git a/MultiTool.Form/MyApplication.vb b/MultiTool.Form/MyApplication.vb new file mode 100644 index 0000000..09c15cc --- /dev/null +++ b/MultiTool.Form/MyApplication.vb @@ -0,0 +1,9 @@ +Imports MultiTool.Shared.Schemas + +Namespace My + + Module MyExtensions + Friend Property TemplateConfiguration As SchemaConfig + Friend Property MappingConfiguration As New List(Of MappingConfig) + End Module +End Namespace diff --git a/MultiTool.Form/Reports/OrderReport.Designer.vb b/MultiTool.Form/Reports/OrderReport.Designer.vb index e0234a6..e858d6a 100644 --- a/MultiTool.Form/Reports/OrderReport.Designer.vb +++ b/MultiTool.Form/Reports/OrderReport.Designer.vb @@ -36,6 +36,7 @@ Partial Public Class OrderReport Me.pageInfo1 = New DevExpress.XtraReports.UI.XRPageInfo() Me.pageInfo2 = New DevExpress.XtraReports.UI.XRPageInfo() Me.ReportHeader = New DevExpress.XtraReports.UI.ReportHeaderBand() + Me.XrLabel4 = New DevExpress.XtraReports.UI.XRLabel() Me.XrLabel2 = New DevExpress.XtraReports.UI.XRLabel() Me.XrLabel1 = New DevExpress.XtraReports.UI.XRLabel() Me.Detail = New DevExpress.XtraReports.UI.DetailBand() @@ -46,6 +47,9 @@ Partial Public Class OrderReport Me.XrTableRow5 = New DevExpress.XtraReports.UI.XRTableRow() Me.XrTableCell9 = New DevExpress.XtraReports.UI.XRTableCell() Me.XrTableCell10 = New DevExpress.XtraReports.UI.XRTableCell() + Me.XrTableRow4 = New DevExpress.XtraReports.UI.XRTableRow() + Me.XrTableCell11 = New DevExpress.XtraReports.UI.XRTableCell() + Me.XrTableCell12 = New DevExpress.XtraReports.UI.XRTableCell() Me.XrTable1 = New DevExpress.XtraReports.UI.XRTable() Me.XrTableRow1 = New DevExpress.XtraReports.UI.XRTableRow() Me.XrTableCell1 = New DevExpress.XtraReports.UI.XRTableCell() @@ -84,9 +88,6 @@ Partial Public Class OrderReport Me.GroupFooter1 = New DevExpress.XtraReports.UI.GroupFooterBand() Me.label2 = New DevExpress.XtraReports.UI.XRLabel() Me.ObjectDataSource1 = New DevExpress.DataAccess.ObjectBinding.ObjectDataSource(Me.components) - Me.XrTableRow4 = New DevExpress.XtraReports.UI.XRTableRow() - Me.XrTableCell11 = New DevExpress.XtraReports.UI.XRTableCell() - Me.XrTableCell12 = New DevExpress.XtraReports.UI.XRTableCell() CType(Me.XrTable2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.XrTable1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.table3, System.ComponentModel.ISupportInitialize).BeginInit() @@ -228,10 +229,10 @@ Partial Public Class OrderReport ' 'pageInfo1 ' - Me.pageInfo1.LocationFloat = New DevExpress.Utils.PointFloat(12.0!, 12.0!) + Me.pageInfo1.LocationFloat = New DevExpress.Utils.PointFloat(12.0!, 11.99999!) Me.pageInfo1.Name = "pageInfo1" Me.pageInfo1.PageInfo = DevExpress.XtraPrinting.PageInfo.DateTime - Me.pageInfo1.SizeF = New System.Drawing.SizeF(438.0!, 26.0!) + Me.pageInfo1.SizeF = New System.Drawing.SizeF(272.2448!, 26.0!) Me.pageInfo1.StyleName = "PageInfo" Me.pageInfo1.TextFormatString = "{0:dddd, d. MMMM yyyy HH:mm' Uhr'}" ' @@ -246,10 +247,24 @@ Partial Public Class OrderReport ' 'ReportHeader ' - Me.ReportHeader.Controls.AddRange(New DevExpress.XtraReports.UI.XRControl() {Me.XrLabel2, Me.XrLabel1}) + Me.ReportHeader.Controls.AddRange(New DevExpress.XtraReports.UI.XRControl() {Me.XrLabel4, Me.XrLabel2, Me.XrLabel1}) Me.ReportHeader.HeightF = 76.24998! Me.ReportHeader.Name = "ReportHeader" ' + 'XrLabel4 + ' + Me.XrLabel4.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Head].[Filename]")}) + Me.XrLabel4.Font = New System.Drawing.Font("Arial", 11.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.XrLabel4.LocationFloat = New DevExpress.Utils.PointFloat(652.6498!, 10.00001!) + Me.XrLabel4.Multiline = True + Me.XrLabel4.Name = "XrLabel4" + Me.XrLabel4.Padding = New DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100.0!) + Me.XrLabel4.SizeF = New System.Drawing.SizeF(417.3502!, 23.0!) + Me.XrLabel4.StylePriority.UseFont = False + Me.XrLabel4.StylePriority.UseTextAlignment = False + Me.XrLabel4.Text = "XrLabel1" + Me.XrLabel4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight + ' 'XrLabel2 ' Me.XrLabel2.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Head].[Subtitle]")}) @@ -338,6 +353,29 @@ Partial Public Class OrderReport Me.XrTableCell10.TextFormatString = "{0:yyyy-MM-dd}" Me.XrTableCell10.Weight = 1.0R ' + 'XrTableRow4 + ' + Me.XrTableRow4.Cells.AddRange(New DevExpress.XtraReports.UI.XRTableCell() {Me.XrTableCell11, Me.XrTableCell12}) + Me.XrTableRow4.Name = "XrTableRow4" + Me.XrTableRow4.Weight = 1.0R + ' + 'XrTableCell11 + ' + Me.XrTableCell11.Font = New System.Drawing.Font("Arial", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.XrTableCell11.Multiline = True + Me.XrTableCell11.Name = "XrTableCell11" + Me.XrTableCell11.StylePriority.UseFont = False + Me.XrTableCell11.Text = "Bestellt von" + Me.XrTableCell11.Weight = 1.0R + ' + 'XrTableCell12 + ' + Me.XrTableCell12.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Head].[Text5]")}) + Me.XrTableCell12.Multiline = True + Me.XrTableCell12.Name = "XrTableCell12" + Me.XrTableCell12.Text = "XrTableCell12" + Me.XrTableCell12.Weight = 1.0R + ' 'XrTable1 ' Me.XrTable1.ForeColor = System.Drawing.Color.FromArgb(CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer)) @@ -631,29 +669,6 @@ Partial Public Class OrderReport Me.ObjectDataSource1.DataSource = GetType(MultiTool.[Shared].ReportSource) Me.ObjectDataSource1.Name = "ObjectDataSource1" ' - 'XrTableRow4 - ' - Me.XrTableRow4.Cells.AddRange(New DevExpress.XtraReports.UI.XRTableCell() {Me.XrTableCell11, Me.XrTableCell12}) - Me.XrTableRow4.Name = "XrTableRow4" - Me.XrTableRow4.Weight = 1.0R - ' - 'XrTableCell11 - ' - Me.XrTableCell11.Font = New System.Drawing.Font("Arial", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.XrTableCell11.Multiline = True - Me.XrTableCell11.Name = "XrTableCell11" - Me.XrTableCell11.StylePriority.UseFont = False - Me.XrTableCell11.Text = "Bestellt von" - Me.XrTableCell11.Weight = 1.0R - ' - 'XrTableCell12 - ' - Me.XrTableCell12.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Head].[Text5]")}) - Me.XrTableCell12.Multiline = True - Me.XrTableCell12.Name = "XrTableCell12" - Me.XrTableCell12.Text = "XrTableCell12" - Me.XrTableCell12.Weight = 1.0R - ' 'OrderReport ' Me.Bands.AddRange(New DevExpress.XtraReports.UI.Band() {Me.TopMargin, Me.BottomMargin, Me.ReportHeader, Me.Detail, Me.DetailReport}) @@ -742,4 +757,5 @@ Partial Public Class OrderReport Friend WithEvents XrTableRow4 As DevExpress.XtraReports.UI.XRTableRow Friend WithEvents XrTableCell11 As DevExpress.XtraReports.UI.XRTableCell Friend WithEvents XrTableCell12 As DevExpress.XtraReports.UI.XRTableCell + Friend WithEvents XrLabel4 As DevExpress.XtraReports.UI.XRLabel End Class diff --git a/MultiTool.Form/Resources/actions_send3.svg b/MultiTool.Form/Resources/actions_send3.svg new file mode 100644 index 0000000..c0372ba --- /dev/null +++ b/MultiTool.Form/Resources/actions_send3.svg @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/MultiTool.Form/Resources/support.svg b/MultiTool.Form/Resources/support.svg new file mode 100644 index 0000000..0d0203f --- /dev/null +++ b/MultiTool.Form/Resources/support.svg @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/MultiTool.Form/frmImportMain.Designer.vb b/MultiTool.Form/frmImportMain.Designer.vb index 92ccb1d..f0ce73d 100644 --- a/MultiTool.Form/frmImportMain.Designer.vb +++ b/MultiTool.Form/frmImportMain.Designer.vb @@ -56,6 +56,7 @@ Partial Class frmImportMain Me.btnRemoveRow = New DevExpress.XtraBars.BarButtonItem() Me.BarWorkspaceMenuItem1 = New DevExpress.XtraBars.BarWorkspaceMenuItem() Me.WorkspaceManager1 = New DevExpress.Utils.WorkspaceManager(Me.components) + Me.btnTestTransferFile = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup4 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() @@ -206,9 +207,9 @@ Partial Class frmImportMain 'RibbonControl ' 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.btnTransferAllFiles, Me.btnOpenReport, Me.btnShowXml, Me.btnOpenLogDirectory, Me.btnOpenConfigDirectory, Me.txtCurrentFile, Me.btnConfig, Me.txtCulture, Me.btnRemoveRow, Me.BarWorkspaceMenuItem1}) + 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.btnTransferAllFiles, Me.btnOpenReport, Me.btnShowXml, Me.btnOpenLogDirectory, Me.btnOpenConfigDirectory, Me.txtCurrentFile, Me.btnConfig, Me.txtCulture, Me.btnRemoveRow, Me.BarWorkspaceMenuItem1, Me.btnTestTransferFile}) resources.ApplyResources(Me.RibbonControl, "RibbonControl") - Me.RibbonControl.MaxItemId = 29 + Me.RibbonControl.MaxItemId = 30 Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.PageHeaderItemLinks.Add(Me.BarWorkspaceMenuItem1) Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage2}) @@ -364,6 +365,14 @@ Partial Class frmImportMain Me.WorkspaceManager1.TargetControl = Me Me.WorkspaceManager1.TransitionType = PushTransition1 ' + 'btnTestTransferFile + ' + resources.ApplyResources(Me.btnTestTransferFile, "btnTestTransferFile") + Me.btnTestTransferFile.Id = 29 + Me.btnTestTransferFile.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.support + Me.btnTestTransferFile.ImageOptions.SvgImageColorizationMode = DevExpress.Utils.SvgImageColorizationMode.CommonPalette + Me.btnTestTransferFile.Name = "btnTestTransferFile" + ' 'RibbonPage1 ' Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup4, Me.RibbonPageGroup3, Me.RibbonPageGroup7}) @@ -389,6 +398,7 @@ Partial Class frmImportMain Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far Me.RibbonPageGroup3.ItemLinks.Add(Me.btnTransferFile) Me.RibbonPageGroup3.ItemLinks.Add(Me.btnTransferAllFiles) + Me.RibbonPageGroup3.ItemLinks.Add(Me.btnTestTransferFile) Me.RibbonPageGroup3.Name = "RibbonPageGroup3" resources.ApplyResources(Me.RibbonPageGroup3, "RibbonPageGroup3") ' @@ -665,4 +675,5 @@ Partial Class frmImportMain Friend WithEvents gridBand3 As DevExpress.XtraGrid.Views.BandedGrid.GridBand Friend WithEvents BarWorkspaceMenuItem1 As DevExpress.XtraBars.BarWorkspaceMenuItem Friend WithEvents WorkspaceManager1 As DevExpress.Utils.WorkspaceManager + Friend WithEvents btnTestTransferFile As DevExpress.XtraBars.BarButtonItem End Class diff --git a/MultiTool.Form/frmImportMain.resx b/MultiTool.Form/frmImportMain.resx index e14f301..cdefe19 100644 --- a/MultiTool.Form/frmImportMain.resx +++ b/MultiTool.Form/frmImportMain.resx @@ -467,6 +467,12 @@ DevExpress.Utils.WorkspaceManager, DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + btnTestTransferFile + + + DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + RibbonPage1 @@ -581,6 +587,9 @@ DevExpress.XtraBars.Ribbon.RibbonForm, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + Übermittlung Testen + 0, 0 diff --git a/MultiTool.Form/frmImportMain.vb b/MultiTool.Form/frmImportMain.vb index 7d8c151..0d3aa12 100644 --- a/MultiTool.Form/frmImportMain.vb +++ b/MultiTool.Form/frmImportMain.vb @@ -364,7 +364,7 @@ Public Class frmImportMain oGrid.DataSource = oDataTable Next - txtCurrentFile.Caption = String.Format(My.Resources.frmImportMainExtra.Aktuelle_Datei___0_, pDocument.Name) + txtCurrentFile.Caption = String.Format(My.Resources.frmImportMainExtra.Aktuelle_Datei___0_, pDocument.FileName) CurrentDocument = pDocument SetDocumentButtonsEnabled(True) @@ -515,8 +515,6 @@ Public Class frmImportMain End Sub Private Function GenerateReport(pDocument As Document) As ReportPrintTool - - Dim oPrintTool As ReportPrintTool = Nothing Dim oMapperConfig As New Mapper(LogConfig) @@ -550,6 +548,7 @@ Public Class frmImportMain Dim oReportHead = oHeadMapper.Map(Of Dictionary(Of String, FieldValue), ReportHead)(oHeadRow) oReportHead.Title = "EDI Bestellung (orders)" oReportHead.Subtitle = "Schaum" + oReportHead.Filename = pDocument.FileName Dim oReportPositions As New List(Of ReportPosition) @@ -612,4 +611,33 @@ Public Class frmImportMain e.Appearance.BackColor = Color.LightCoral End If End Sub + + Private Async Sub btnTestTransferFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnTestTransferFile.ItemClick + Try + SplashScreenManager.ShowWaitForm() + SetDocumentButtonsEnabled(False) + GridControlFiles.Enabled = False + btnLoadFiles.Enabled = False + SplitContainerGrids.Enabled = False + + Dim oDocument As Document = GridViewFiles.GetRow(GridViewFiles.FocusedRowHandle) + Await WebService.TransferDocumentToWinline(oDocument, lookupMandator.EditValue, pIsTest:=True) + + MsgBox(My.Resources.frmImportMainExtra.Datei_erfolgreich_in_die_WinLine_übertragen, MsgBoxStyle.Information, Text) + Catch ex As HttpRequestException + FormHelper.ShowError(ex, My.Resources.frmImportMainExtra.Übertragung_zur_WinLine, My.Resources.frmImportMainExtra.Die_Verbindung_zum_WinLine_Server_ist_fehlgeschlagen) + + Catch ex As Exception + FormHelper.ShowError(ex, My.Resources.frmImportMainExtra.Übertragung_zur_WinLine) + + Finally + SplitContainerGrids.Enabled = True + btnLoadFiles.Enabled = True + GridControlFiles.Enabled = True + SetDocumentButtonsEnabled(True) + SplashScreenManager.CloseWaitForm() + End Try + End Sub + + End Class \ No newline at end of file diff --git a/MultiTool.Form/frmMain.Designer.vb b/MultiTool.Form/frmMain.Designer.vb index 0b3367d..e528555 100644 --- a/MultiTool.Form/frmMain.Designer.vb +++ b/MultiTool.Form/frmMain.Designer.vb @@ -28,7 +28,6 @@ Partial Class frmMain Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() - Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPage3 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() @@ -39,6 +38,7 @@ Partial Class frmMain Me.colName = New DevExpress.XtraGrid.Columns.GridColumn() Me.colDescription = New DevExpress.XtraGrid.Columns.GridColumn() Me.colFileName = New DevExpress.XtraGrid.Columns.GridColumn() + Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit() @@ -103,17 +103,10 @@ Partial Class frmMain ' 'RibbonPageGroup1 ' - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1) + Me.RibbonPageGroup1.ItemLinks.Add(Me.btnOpenImportExportForm) Me.RibbonPageGroup1.Name = "RibbonPageGroup1" Me.RibbonPageGroup1.Text = "Start" ' - 'RibbonPageGroup3 - ' - Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far - Me.RibbonPageGroup3.ItemLinks.Add(Me.btnOpenImportExportForm) - Me.RibbonPageGroup3.Name = "RibbonPageGroup3" - Me.RibbonPageGroup3.Text = "RibbonPageGroup3" - ' 'RibbonPage3 ' Me.RibbonPage3.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2}) @@ -186,6 +179,13 @@ Partial Class frmMain Me.colFileName.Visible = True Me.colFileName.VisibleIndex = 2 ' + 'RibbonPageGroup3 + ' + Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far + Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1) + Me.RibbonPageGroup3.Name = "RibbonPageGroup3" + Me.RibbonPageGroup3.Text = "RibbonPageGroup3" + ' 'frmMain ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) diff --git a/MultiTool.Form/frmMain.vb b/MultiTool.Form/frmMain.vb index 8b62ae7..624d254 100644 --- a/MultiTool.Form/frmMain.vb +++ b/MultiTool.Form/frmMain.vb @@ -55,6 +55,11 @@ Public Class frmMain SchemaLoader = New SchemaLoader(LogConfig, Database) Await SchemaLoader.LoadTemplates() Await SchemaLoader.LoadTemplateConfiguration() + Await SchemaLoader.LoadMappingConfiguration() + + ' Save Schema data in 'My' Namespace + My.MappingConfiguration = SchemaLoader.MappingConfiguration + My.TemplateConfiguration = SchemaLoader.TemplateConfiguration Dim oBindingSource = New BindingList(Of Schema) For Each oSchema As Schema In SchemaLoader.SchemaList @@ -70,7 +75,7 @@ Public Class frmMain Private Sub btnOpenImportExportForm_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnOpenImportExportForm.ItemClick Try - Dim oSchema = GridViewTemplates.GetRow(GridViewTemplates.FocusedRowHandle) + Dim oSchema As Schema = GridViewTemplates.GetRow(GridViewTemplates.FocusedRowHandle) If oSchema Is Nothing Then MsgBox("Keine Vorlage ausgewählt! Bitte wählen Sie eine Vorlage aus!", MsgBoxStyle.Exclamation, Text) @@ -80,8 +85,12 @@ Public Class frmMain oSchema = SchemaLoader.UpdateSchemaFromFile(oSchema, ConfigManager.Config.SchemaDirectory) oSchema = SchemaLoader.UpdateSchemaFromDatabase(oSchema, SchemaLoader.TemplateConfiguration) - Dim oForm As New frmImportMain(LogConfig, ConfigManager, oSchema) - oForm.ShowDialog() + If oSchema.IsImport Then + Dim oForm As New frmImportMain(LogConfig, ConfigManager, oSchema) + oForm.ShowDialog() + Else + MsgBox("Export-Vorlagen werden noch nicht unterstützt!", MsgBoxStyle.Exclamation, Text) + End If Catch ex As Exception FormHelper.ShowError(ex, My.Resources.frmMainExtra.Laden_der_Vorlage) diff --git a/MultiTool.Shared/Documents/Document.vb b/MultiTool.Shared/Documents/Document.vb index 93627fc..1235d9b 100644 --- a/MultiTool.Shared/Documents/Document.vb +++ b/MultiTool.Shared/Documents/Document.vb @@ -45,7 +45,7 @@ Namespace Documents End Get End Property - Public ReadOnly Property Name As String + Public ReadOnly Property FileName As String Get Return File?.Name End Get diff --git a/MultiTool.Shared/Documents/DocumentLoader.vb b/MultiTool.Shared/Documents/DocumentLoader.vb index 2c9475a..9112376 100644 --- a/MultiTool.Shared/Documents/DocumentLoader.vb +++ b/MultiTool.Shared/Documents/DocumentLoader.vb @@ -137,7 +137,7 @@ Namespace Documents ' 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) - Dim oSortKey As Integer = 0 + Dim oRowSortKey As Integer = 0 ' TODO: Somehow add all fields in the correct order ' @@ -147,12 +147,14 @@ Namespace Documents ' ' leads to unordered fields. For Each oTopLevelElement As XElement In oTopLevelElements + Dim oColumnSortKey = 0 Dim oFields As New Dictionary(Of String, DocumentRow.FieldValue) Dim oSubElements = oTopLevelElement.Descendants().ToList() Dim oTable = pSchema.Tables. Where(Function(t) t.Name = oTopLevelElement.Name). FirstOrDefault() + For Each oColumn In oTable.Columns Dim oSubElement = oSubElements. Where(Function(e) e.Name = oColumn.Name). @@ -172,7 +174,8 @@ Namespace Documents .Original = oValue, .Final = oValue, .DataType = oColumn.DataType, - .Required = oRequired + .Required = oRequired, + .SortKey = oColumnSortKey }) Else Dim oColumnError = DocumentRow.FieldError.None @@ -181,9 +184,12 @@ Namespace Documents End If oFields.Add(oColumn.Name, New DocumentRow.FieldValue With { - .[Error] = oColumnError + .[Error] = oColumnError, + .SortKey = oColumnSortKey }) End If + + oColumnSortKey += 1 Next 'For Each oSubElement As XElement In oSubElements @@ -229,12 +235,12 @@ Namespace Documents ' Create a DocumentRow object for each Top Level Element Dim oRow = New DocumentRow With { - .SortKey = oSortKey, + .SortKey = oRowSortKey, .Name = oTopLevelElement.Name.ToString, .Fields = oFields } - oSortKey += 1 + oRowSortKey += 1 oDocumentRows.Add(oRow) Next diff --git a/MultiTool.Shared/Documents/DocumentRow.vb b/MultiTool.Shared/Documents/DocumentRow.vb index 137b902..9a5b555 100644 --- a/MultiTool.Shared/Documents/DocumentRow.vb +++ b/MultiTool.Shared/Documents/DocumentRow.vb @@ -57,6 +57,7 @@ Public Property External As String = "" Public Property Final As String = "" Public Property Required As Boolean = False + Public Property SortKey As Integer = 0 Public ReadOnly Property HasError As Boolean Get diff --git a/MultiTool.Shared/MultiTool.Shared.vbproj b/MultiTool.Shared/MultiTool.Shared.vbproj index 5255e76..1482971 100644 --- a/MultiTool.Shared/MultiTool.Shared.vbproj +++ b/MultiTool.Shared/MultiTool.Shared.vbproj @@ -125,6 +125,7 @@ True + @@ -135,7 +136,7 @@ - + diff --git a/MultiTool.Shared/Schemas/MappingConfig.vb b/MultiTool.Shared/Schemas/MappingConfig.vb new file mode 100644 index 0000000..005158f --- /dev/null +++ b/MultiTool.Shared/Schemas/MappingConfig.vb @@ -0,0 +1,12 @@ +Namespace Schemas + Public Class MappingConfig + Public Property OrderKey As Integer + Public Property SourceName As String + Public Property SourceItem As String + Public Property SourceRegex As String + Public Property DestinationName As String + Public Property DestinationItem As String + Public Property DestinationValue As String + End Class + +End Namespace \ No newline at end of file diff --git a/MultiTool.Shared/Schemas/Report/ReportHead.vb b/MultiTool.Shared/Schemas/Report/ReportHead.vb index 6fa3d24..f7e711a 100644 --- a/MultiTool.Shared/Schemas/Report/ReportHead.vb +++ b/MultiTool.Shared/Schemas/Report/ReportHead.vb @@ -1,6 +1,7 @@ Public Class ReportHead Public Property Title As String Public Property Subtitle As String + Public Property Filename As String Public Property DateCreated As Date Public Property Id As String diff --git a/MultiTool.Shared/Schemas/Configuration.vb b/MultiTool.Shared/Schemas/SchemaConfig.vb similarity index 93% rename from MultiTool.Shared/Schemas/Configuration.vb rename to MultiTool.Shared/Schemas/SchemaConfig.vb index b0cb2cd..0ed4d65 100644 --- a/MultiTool.Shared/Schemas/Configuration.vb +++ b/MultiTool.Shared/Schemas/SchemaConfig.vb @@ -5,7 +5,7 @@ Namespace Schemas ''' ''' Class for loading column/field config from database ''' - Public Class Configuration + Public Class SchemaConfig Public Columns As List(Of ColumnConfig) Public Function GetColumn(pName As String) As ColumnConfig diff --git a/MultiTool.Shared/Schemas/SchemaLoader.vb b/MultiTool.Shared/Schemas/SchemaLoader.vb index 1bd3564..cd98e54 100644 --- a/MultiTool.Shared/Schemas/SchemaLoader.vb +++ b/MultiTool.Shared/Schemas/SchemaLoader.vb @@ -10,12 +10,14 @@ Namespace Schemas Private ReadOnly ns As XNamespace = "http://www.w3.org/2001/XMLSchema" - Public SchemaList As List(Of Schema) - Public TemplateConfiguration As New Configuration + Public Property SchemaList As List(Of Schema) + Public Property TemplateConfiguration As New SchemaConfig + Public Property MappingConfiguration As New List(Of MappingConfig) Private ReadOnly Database As MSSQLServer Private Const VWEDI_XML_ITEMS = "VWEDI_XML_ITEMS" + Private Const VWEDI_XML_MAPPING = "VWEDI_XML_MAPPING" Public Sub New(pLogConfig As LogConfig, pMSSQL As MSSQLServer) MyBase.New(pLogConfig, pLogConfig.GetLogger) @@ -49,6 +51,36 @@ Namespace Schemas End Try End Function + Public Async Function LoadMappingConfiguration() As Task(Of Boolean) + Try + Dim oSql = $"SELECT * FROM [DD_ECM].[dbo].[{VWEDI_XML_MAPPING}]" + Dim oTable As DataTable = Await Database.GetDatatableAsync(oSql) + Dim oMappingConfigList As New List(Of MappingConfig) + + For Each oRow As DataRow In oTable.Rows + Dim oTemplate As New MappingConfig With { + .OrderKey = GetRowItem(oRow, "ORDER_KEY", String.Empty), + .SourceName = GetRowItem(oRow, "SOURCE_NAME", String.Empty), + .SourceItem = GetRowItem(oRow, "SOURCE_ITEM", String.Empty), + .SourceRegex = GetRowItem(oRow, "SOURCE_REGEX", String.Empty), + .DestinationName = GetRowItem(oRow, "DESTINATION_NAME", String.Empty), + .DestinationItem = GetRowItem(oRow, "DESTINATION_ITEM", String.Empty), + .DestinationValue = GetRowItem(oRow, "DESTINATION_VALUE", String.Empty) + } + + oMappingConfigList.Add(oTemplate) + Next + + MappingConfiguration = oMappingConfigList + + Return True + Catch ex As Exception + Logger.Error(ex) + Return False + + End Try + End Function + Public Async Function LoadTemplateConfiguration() As Task(Of Boolean) Try Dim oSql = $"SELECT * FROM [DD_ECM].[dbo].[{VWEDI_XML_ITEMS}]" @@ -76,7 +108,7 @@ Namespace Schemas oItems.Add(oColumn) Next - TemplateConfiguration = New Configuration With { + TemplateConfiguration = New SchemaConfig With { .Columns = oItems } @@ -131,7 +163,7 @@ Namespace Schemas Return pSchema End Function - Public Function UpdateSchemaFromDatabase(pSchema As Schema, pTemplateConfig As Configuration) As Schema + Public Function UpdateSchemaFromDatabase(pSchema As Schema, pTemplateConfig As SchemaConfig) As Schema If pTemplateConfig Is Nothing Then Return pSchema End If diff --git a/MultiTool.Shared/Winline/WebService.vb b/MultiTool.Shared/Winline/WebService.vb index 919b640..1ceb17c 100644 --- a/MultiTool.Shared/Winline/WebService.vb +++ b/MultiTool.Shared/Winline/WebService.vb @@ -22,7 +22,7 @@ Namespace Winline AppDataPath = pAppDataPath End Sub - Public Async Function TransferDocumentToWinline(pDocument As Document, pMandator As Mandator) As Task(Of Boolean) + Public Async Function TransferDocumentToWinline(pDocument As Document, pMandator As Mandator, Optional pIsTest As Boolean = False) As Task(Of Boolean) Dim oBytes As Byte() = GetBytesFromDocument(pDocument) Dim oWS As Config.WebServiceConfig = Config.Webservice @@ -68,9 +68,12 @@ Namespace Winline Dim oTemplateName = pDocument.TemplateName ' ActionCode: Should this be a test or not? - ' 0 = Testcall + ' 0 = Test call ' 1 = Real call Dim oActionCode = 1 + If pIsTest = True Then + oActionCode = 0 + End If ' Byref: Should data be supplied as file or as string? ' 0 = As String diff --git a/MultiTool.Shared/Winline/WinlineData.vb b/MultiTool.Shared/Winline/WinlineData.vb index 744d61b..31144b5 100644 --- a/MultiTool.Shared/Winline/WinlineData.vb +++ b/MultiTool.Shared/Winline/WinlineData.vb @@ -2,6 +2,7 @@ Imports DigitalData.Modules.Language Imports DigitalData.Modules.Database Imports MultiTool.Shared.Helpers +Imports MultiTool.Shared.Schemas Imports System.Text.RegularExpressions Namespace Winline @@ -165,16 +166,17 @@ Namespace Winline .Server = oDbInfo.Item2 } - Dim oMandatorConfig As Config.MandatorConfig = Config.Mandators. - Where(Function(m) oMandator.Id = m.Name). - SingleOrDefault() + 'Dim oMandatorConfig As Config.MandatorConfig = Config.Mandators. + ' Where(Function(m) oMandator.Id = m.Name). + ' SingleOrDefault() - If oMandatorConfig IsNot Nothing Then - oMandator.IsWhitelisted = True - oMandator.Regex = oMandatorConfig.ArticleRegex - oMandator.Order = oMandatorConfig.Order - End If + 'Dim oMandatorConfig2 = MappingConfiguration.Where(Function(c) c.) + 'If oMandatorConfig IsNot Nothing Then + ' oMandator.IsWhitelisted = True + ' oMandator.Regex = oMandatorConfig.ArticleRegex + ' oMandator.Order = oMandatorConfig.Order + 'End If Mandators.Add(oMandator) Next