diff --git a/MultiTool.Form/MultiTool.Form.vbproj b/MultiTool.Form/MultiTool.Form.vbproj
index 29d0946..7f286a0 100644
--- a/MultiTool.Form/MultiTool.Form.vbproj
+++ b/MultiTool.Form/MultiTool.Form.vbproj
@@ -254,12 +254,14 @@
frmImportMain.vb
+ Designer
frmImportMain.vb
frmMain.vb
+ Designer
frmRowEditor.vb
@@ -332,6 +334,12 @@
+
+
+
+
+
+
diff --git a/MultiTool.Form/My Project/Resources.Designer.vb b/MultiTool.Form/My Project/Resources.Designer.vb
index 8404a24..444de6f 100644
--- a/MultiTool.Form/My Project/Resources.Designer.vb
+++ b/MultiTool.Form/My Project/Resources.Designer.vb
@@ -280,6 +280,16 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property exporttopdf() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("exporttopdf", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -320,6 +330,16 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property insertpagenumber() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("insertpagenumber", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -450,6 +470,26 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property open27() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("open27", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property open3() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("open3", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -560,6 +600,16 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property squarified1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("squarified1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -610,6 +660,16 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property up1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("up1", 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 d3cce4e..f003383 100644
--- a/MultiTool.Form/My Project/Resources.resx
+++ b/MultiTool.Form/My Project/Resources.resx
@@ -148,6 +148,9 @@
..\Resources\actions_send3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\up1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\preview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -169,6 +172,9 @@
..\Resources\squarified.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\exporttopdf.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_reload.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -181,6 +187,9 @@
..\Resources\bo_product.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\open3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\paymentrefund.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -193,12 +202,18 @@
..\Resources\charthorizontalaxis_logscale.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\actions_arrow4down.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\deletetablerows.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\showallfieldcodes.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\open26.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\up.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -223,8 +238,8 @@
..\Resources\actions_send2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\actions_arrow4down.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\open27.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\actions_checkcircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -268,6 +283,9 @@
..\Resources\open23.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\insertpagenumber.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\pagesetup.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -283,7 +301,7 @@
..\Resources\itemtypechecked.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\open26.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\squarified1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/MultiTool.Form/My Project/licenses.licx b/MultiTool.Form/My Project/licenses.licx
index 50b2c05..3b88066 100644
--- a/MultiTool.Form/My Project/licenses.licx
+++ b/MultiTool.Form/My Project/licenses.licx
@@ -1,13 +1,14 @@
-DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.GridLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.GridLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraReports.UI.XtraReport, DevExpress.XtraReports.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.Repository.RepositoryItemImageComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.DateEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.SearchLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.Repository.RepositoryItemImageComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.DateEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/MultiTool.Form/Reports/OrderReport.Designer.vb b/MultiTool.Form/Reports/OrderReport.Designer.vb
index 8eed455..8e75cb3 100644
--- a/MultiTool.Form/Reports/OrderReport.Designer.vb
+++ b/MultiTool.Form/Reports/OrderReport.Designer.vb
@@ -87,9 +87,9 @@ Partial Public Class OrderReport
Me.XrTableCell18 = New DevExpress.XtraReports.UI.XRTableCell()
Me.tableCell46 = New DevExpress.XtraReports.UI.XRTableCell()
Me.XrTableCell8 = New DevExpress.XtraReports.UI.XRTableCell()
+ Me.ObjectDataSource1 = New DevExpress.DataAccess.ObjectBinding.ObjectDataSource(Me.components)
Me.GroupFooter1 = New DevExpress.XtraReports.UI.GroupFooterBand()
Me.label2 = New DevExpress.XtraReports.UI.XRLabel()
- Me.ObjectDataSource1 = New DevExpress.DataAccess.ObjectBinding.ObjectDataSource(Me.components)
CType(Me.XrTable2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.XrTable1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.table3, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -301,7 +301,7 @@ Partial Public Class OrderReport
'XrTable2
'
Me.XrTable2.ForeColor = System.Drawing.Color.FromArgb(CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer))
- Me.XrTable2.LocationFloat = New DevExpress.Utils.PointFloat(354.8623!, 0!)
+ Me.XrTable2.LocationFloat = New DevExpress.Utils.PointFloat(448.4831!, 0!)
Me.XrTable2.Name = "XrTable2"
Me.XrTable2.Padding = New DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 96.0!)
Me.XrTable2.Rows.AddRange(New DevExpress.XtraReports.UI.XRTableRow() {Me.XrTableRow3, Me.XrTableRow5, Me.XrTableRow4})
@@ -385,7 +385,7 @@ Partial Public Class OrderReport
Me.XrTable1.Name = "XrTable1"
Me.XrTable1.Padding = New DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 96.0!)
Me.XrTable1.Rows.AddRange(New DevExpress.XtraReports.UI.XRTableRow() {Me.XrTableRow1, Me.XrTableRow2})
- Me.XrTable1.SizeF = New System.Drawing.SizeF(322.9167!, 50.0!)
+ Me.XrTable1.SizeF = New System.Drawing.SizeF(415.625!, 50.0!)
Me.XrTable1.StylePriority.UseForeColor = False
'
'XrTableRow1
@@ -409,7 +409,7 @@ Partial Public Class OrderReport
Me.XrTableCell2.Multiline = True
Me.XrTableCell2.Name = "XrTableCell2"
Me.XrTableCell2.Text = "XrTableCell2"
- Me.XrTableCell2.Weight = 1.0R
+ Me.XrTableCell2.Weight = 1.5741933862025337R
'
'XrTableRow2
'
@@ -432,7 +432,7 @@ Partial Public Class OrderReport
Me.XrTableCell4.Multiline = True
Me.XrTableCell4.Name = "XrTableCell4"
Me.XrTableCell4.Text = "XrTableCell4"
- Me.XrTableCell4.Weight = 1.0R
+ Me.XrTableCell4.Weight = 1.5741933862025337R
'
'DetailReport
'
@@ -688,6 +688,11 @@ Partial Public Class OrderReport
Me.XrTableCell8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight
Me.XrTableCell8.Weight = 0.089263976911086243R
'
+ 'ObjectDataSource1
+ '
+ Me.ObjectDataSource1.DataSource = GetType(MultiTool.[Shared].Report.ReportSource)
+ Me.ObjectDataSource1.Name = "ObjectDataSource1"
+ '
'GroupFooter1
'
Me.GroupFooter1.Controls.AddRange(New DevExpress.XtraReports.UI.XRControl() {Me.label2})
@@ -697,18 +702,15 @@ Partial Public Class OrderReport
'
'label2
'
+ Me.label2.BackColor = System.Drawing.Color.FromArgb(CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer))
Me.label2.Borders = DevExpress.XtraPrinting.BorderSide.None
Me.label2.LocationFloat = New DevExpress.Utils.PointFloat(0!, 0!)
Me.label2.Name = "label2"
Me.label2.SizeF = New System.Drawing.SizeF(1080.0!, 2.083333!)
Me.label2.StyleName = "GroupFooterBackground3"
+ Me.label2.StylePriority.UseBackColor = False
Me.label2.StylePriority.UseBorders = False
'
- 'ObjectDataSource1
- '
- Me.ObjectDataSource1.DataSource = GetType(MultiTool.[Shared].Report.ReportSource)
- Me.ObjectDataSource1.Name = "ObjectDataSource1"
- '
'OrderReport
'
Me.Bands.AddRange(New DevExpress.XtraReports.UI.Band() {Me.TopMargin, Me.BottomMargin, Me.ReportHeader, Me.Detail, Me.DetailReport})
@@ -720,7 +722,7 @@ Partial Public Class OrderReport
Me.PageHeight = 850
Me.PageWidth = 1100
Me.StyleSheet.AddRange(New DevExpress.XtraReports.UI.XRControlStyle() {Me.Title, Me.DetailCaption1, Me.DetailData1, Me.GroupCaption2, Me.GroupData2, Me.DetailCaption2, Me.DetailData2, Me.GroupFooterBackground3, Me.DetailData3_Odd, Me.PageInfo})
- Me.Version = "19.2"
+ Me.Version = "21.2"
CType(Me.XrTable2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.XrTable1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.table3, System.ComponentModel.ISupportInitialize).EndInit()
@@ -768,8 +770,6 @@ Partial Public Class OrderReport
Friend WithEvents tableCell44 As DevExpress.XtraReports.UI.XRTableCell
Friend WithEvents tableCell45 As DevExpress.XtraReports.UI.XRTableCell
Friend WithEvents tableCell46 As DevExpress.XtraReports.UI.XRTableCell
- Friend WithEvents GroupFooter1 As DevExpress.XtraReports.UI.GroupFooterBand
- Friend WithEvents label2 As DevExpress.XtraReports.UI.XRLabel
Friend WithEvents XrLabel1 As DevExpress.XtraReports.UI.XRLabel
Friend WithEvents XrTable1 As DevExpress.XtraReports.UI.XRTable
Friend WithEvents XrTableRow1 As DevExpress.XtraReports.UI.XRTableRow
@@ -800,4 +800,6 @@ Partial Public Class OrderReport
Friend WithEvents XrTableCell16 As DevExpress.XtraReports.UI.XRTableCell
Friend WithEvents XrTableCell17 As DevExpress.XtraReports.UI.XRTableCell
Friend WithEvents XrTableCell18 As DevExpress.XtraReports.UI.XRTableCell
+ Friend WithEvents GroupFooter1 As DevExpress.XtraReports.UI.GroupFooterBand
+ Friend WithEvents label2 As DevExpress.XtraReports.UI.XRLabel
End Class
diff --git a/MultiTool.Form/Resources/exporttopdf.svg b/MultiTool.Form/Resources/exporttopdf.svg
new file mode 100644
index 0000000..7f8ebc6
--- /dev/null
+++ b/MultiTool.Form/Resources/exporttopdf.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/Resources/insertpagenumber.svg b/MultiTool.Form/Resources/insertpagenumber.svg
new file mode 100644
index 0000000..2a2d23e
--- /dev/null
+++ b/MultiTool.Form/Resources/insertpagenumber.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/Resources/open27.svg b/MultiTool.Form/Resources/open27.svg
new file mode 100644
index 0000000..04ab349
--- /dev/null
+++ b/MultiTool.Form/Resources/open27.svg
@@ -0,0 +1,13 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/Resources/open3.svg b/MultiTool.Form/Resources/open3.svg
new file mode 100644
index 0000000..2841e98
--- /dev/null
+++ b/MultiTool.Form/Resources/open3.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/Resources/squarified1.svg b/MultiTool.Form/Resources/squarified1.svg
new file mode 100644
index 0000000..c6b6e11
--- /dev/null
+++ b/MultiTool.Form/Resources/squarified1.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/Resources/up1.svg b/MultiTool.Form/Resources/up1.svg
new file mode 100644
index 0000000..d31bfcf
--- /dev/null
+++ b/MultiTool.Form/Resources/up1.svg
@@ -0,0 +1,13 @@
+
+
\ No newline at end of file
diff --git a/MultiTool.Form/frmExportMain.Designer.vb b/MultiTool.Form/frmExportMain.Designer.vb
index e63d1df..3824f5e 100644
--- a/MultiTool.Form/frmExportMain.Designer.vb
+++ b/MultiTool.Form/frmExportMain.Designer.vb
@@ -28,9 +28,14 @@ Partial Class frmExportMain
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.txtResults = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
+ Me.btnOpenInputDirectory = New DevExpress.XtraBars.BarButtonItem()
+ Me.btnOpenOutputDirectory = New DevExpress.XtraBars.BarButtonItem()
+ Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
+ Me.RibbonPage3 = New DevExpress.XtraBars.Ribbon.RibbonPage()
+ Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.GridControlDocuments = New DevExpress.XtraGrid.GridControl()
@@ -76,10 +81,6 @@ Partial Class frmExportMain
Me.colName2 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colId2 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.SplashScreenManager = New DevExpress.XtraSplashScreen.SplashScreenManager(Me, GetType(Global.MultiTool.Form.frmWaitForm), True, True)
- Me.RibbonPage3 = New DevExpress.XtraBars.Ribbon.RibbonPage()
- Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.btnOpenInputDirectory = New DevExpress.XtraBars.BarButtonItem()
- Me.btnOpenOutputDirectory = New DevExpress.XtraBars.BarButtonItem()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControlDocuments, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewDocuments, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -118,13 +119,16 @@ Partial Class frmExportMain
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
- Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.txtResults, Me.BarButtonItem2, Me.btnOpenInputDirectory, Me.btnOpenOutputDirectory})
+ Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.txtResults, Me.BarButtonItem2, Me.btnOpenInputDirectory, Me.btnOpenOutputDirectory, Me.BarButtonItem3})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
- Me.RibbonControl1.MaxItemId = 8
+ Me.RibbonControl1.MaxItemId = 9
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage3})
+ Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
+ Me.RibbonControl1.ShowToolbarCustomizeItem = False
Me.RibbonControl1.Size = New System.Drawing.Size(1107, 158)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
+ Me.RibbonControl1.Toolbar.ShowCustomizeItem = False
'
'BarButtonItem1
'
@@ -137,7 +141,9 @@ Partial Class frmExportMain
'
Me.txtResults.Caption = "Keine Ergebnisse"
Me.txtResults.Id = 4
+ Me.txtResults.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.insertpagenumber
Me.txtResults.Name = "txtResults"
+ Me.txtResults.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
'
'BarButtonItem2
'
@@ -146,17 +152,38 @@ Partial Class frmExportMain
Me.BarButtonItem2.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.actions_send5
Me.BarButtonItem2.Name = "BarButtonItem2"
'
+ 'btnOpenInputDirectory
+ '
+ Me.btnOpenInputDirectory.Caption = "Eingangsverzeichnis öffnen"
+ Me.btnOpenInputDirectory.Id = 6
+ Me.btnOpenInputDirectory.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.open27
+ Me.btnOpenInputDirectory.Name = "btnOpenInputDirectory"
+ '
+ 'btnOpenOutputDirectory
+ '
+ Me.btnOpenOutputDirectory.Caption = "Ausgangsverzeichnis öffnen"
+ Me.btnOpenOutputDirectory.Id = 7
+ Me.btnOpenOutputDirectory.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.up1
+ Me.btnOpenOutputDirectory.Name = "btnOpenOutputDirectory"
+ '
+ 'BarButtonItem3
+ '
+ Me.BarButtonItem3.Caption = "Vorlagenverzeichnis öffnen"
+ Me.BarButtonItem3.Id = 8
+ Me.BarButtonItem3.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.open3
+ Me.BarButtonItem3.Name = "BarButtonItem3"
+ '
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2})
Me.RibbonPage1.Name = "RibbonPage1"
- Me.RibbonPage1.Text = "RibbonPage1"
+ Me.RibbonPage1.Text = "Start"
'
'RibbonPageGroup1
'
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
- Me.RibbonPageGroup1.Text = "Start"
+ Me.RibbonPageGroup1.Text = "Suche"
'
'RibbonPageGroup2
'
@@ -165,6 +192,20 @@ Partial Class frmExportMain
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
Me.RibbonPageGroup2.Text = "Export"
'
+ 'RibbonPage3
+ '
+ Me.RibbonPage3.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup3})
+ Me.RibbonPage3.Name = "RibbonPage3"
+ Me.RibbonPage3.Text = "Erweitert"
+ '
+ 'RibbonPageGroup3
+ '
+ Me.RibbonPageGroup3.ItemLinks.Add(Me.btnOpenInputDirectory)
+ Me.RibbonPageGroup3.ItemLinks.Add(Me.btnOpenOutputDirectory)
+ Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem3)
+ Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
+ Me.RibbonPageGroup3.Text = "Verzeichnisse"
+ '
'RibbonStatusBar1
'
Me.RibbonStatusBar1.ItemLinks.Add(Me.txtResults)
@@ -607,31 +648,6 @@ Partial Class frmExportMain
'
Me.SplashScreenManager.ClosingDelay = 500
'
- 'RibbonPage3
- '
- Me.RibbonPage3.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup3})
- Me.RibbonPage3.Name = "RibbonPage3"
- Me.RibbonPage3.Text = "RibbonPage3"
- '
- 'RibbonPageGroup3
- '
- Me.RibbonPageGroup3.ItemLinks.Add(Me.btnOpenInputDirectory)
- Me.RibbonPageGroup3.ItemLinks.Add(Me.btnOpenOutputDirectory)
- Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
- Me.RibbonPageGroup3.Text = "RibbonPageGroup3"
- '
- 'btnOpenInputDirectory
- '
- Me.btnOpenInputDirectory.Caption = "BarButtonItem3"
- Me.btnOpenInputDirectory.Id = 6
- Me.btnOpenInputDirectory.Name = "btnOpenInputDirectory"
- '
- 'btnOpenOutputDirectory
- '
- Me.btnOpenOutputDirectory.Caption = "BarButtonItem4"
- Me.btnOpenOutputDirectory.Id = 7
- Me.btnOpenOutputDirectory.Name = "btnOpenOutputDirectory"
- '
'frmExportMain
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -640,6 +656,7 @@ Partial Class frmExportMain
Me.Controls.Add(Me.SplitContainerControl1)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
+ Me.IconOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.squarified1
Me.KeyPreview = True
Me.Name = "frmExportMain"
Me.Ribbon = Me.RibbonControl1
@@ -740,4 +757,5 @@ Partial Class frmExportMain
Friend WithEvents btnOpenOutputDirectory As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPage3 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
End Class
diff --git a/MultiTool.Form/frmExportMain.vb b/MultiTool.Form/frmExportMain.vb
index 99fa3ce..a7163ed 100644
--- a/MultiTool.Form/frmExportMain.vb
+++ b/MultiTool.Form/frmExportMain.vb
@@ -159,7 +159,13 @@ Public Class frmExportMain
Dim oDocument As Document = GridViewDocuments.GetRow(GridViewDocuments.FocusedRowHandle)
Dim oMandator As Mandator = lookupMandator.EditValue
- Await WebService.ExportDocumentFromWinline(oDocument, CurrentTemplate, oMandator)
+ Dim oExportResult = Await WebService.ExportDocumentFromWinline(oDocument, CurrentTemplate, oMandator)
+
+ If oExportResult = True Then
+ 'TODO: Execute the FinalSql before exiting
+ 'TODO: Replace a few numbers like account numbers back to GLNs
+ MsgBox("Datei wurde ergfolgreich exportiert!", MsgBoxStyle.Information, Text)
+ End If
Catch ex As Exception
FormHelper.ShowError(ex, "Exportieren der Daten")
@@ -177,4 +183,8 @@ Public Class frmExportMain
Private Sub btnOpenOutputDirectory_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnOpenOutputDirectory.ItemClick
FormHelper.TryOpenDirectory(CurrentTemplate.OutputDirectory, My.Resources.frmImportMainExtra.Ausgabeverzeichnis)
End Sub
+
+ Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
+ FormHelper.TryOpenDirectory(My.GeneralConfiguration.TemplateDirectory, My.Resources.frmImportMainExtra.Vorlagenverzeichnis)
+ End Sub
End Class
\ No newline at end of file
diff --git a/MultiTool.Form/frmImportMain.Designer.vb b/MultiTool.Form/frmImportMain.Designer.vb
index 6620e9a..16db233 100644
--- a/MultiTool.Form/frmImportMain.Designer.vb
+++ b/MultiTool.Form/frmImportMain.Designer.vb
@@ -38,7 +38,6 @@ Partial Class frmImportMain
Me.cmbMandators = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox()
Me.BandedGridColumn1 = New DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn()
Me.RibbonControl = New DevExpress.XtraBars.Ribbon.RibbonControl()
- Me.txtVersion = New DevExpress.XtraBars.BarStaticItem()
Me.txtFilesLoaded = New DevExpress.XtraBars.BarStaticItem()
Me.btnLoadFiles = New DevExpress.XtraBars.BarButtonItem()
Me.btnTransferFile = New DevExpress.XtraBars.BarButtonItem()
@@ -53,12 +52,12 @@ Partial Class frmImportMain
Me.btnOpenConfigDirectory = New DevExpress.XtraBars.BarButtonItem()
Me.txtCurrentFile = New DevExpress.XtraBars.BarStaticItem()
Me.btnConfig = New DevExpress.XtraBars.BarButtonItem()
- Me.txtCulture = New DevExpress.XtraBars.BarStaticItem()
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.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
+ Me.btnDebugExportReport = 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()
@@ -238,9 +237,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.btnTestTransferFile, Me.BarButtonItem1})
+ Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, 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.btnRemoveRow, Me.BarWorkspaceMenuItem1, Me.btnTestTransferFile, Me.BarButtonItem1, Me.btnDebugExportReport})
resources.ApplyResources(Me.RibbonControl, "RibbonControl")
- Me.RibbonControl.MaxItemId = 33
+ Me.RibbonControl.MaxItemId = 34
Me.RibbonControl.Name = "RibbonControl"
Me.RibbonControl.PageHeaderItemLinks.Add(Me.BarWorkspaceMenuItem1)
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage2})
@@ -250,16 +249,6 @@ Partial Class frmImportMain
Me.RibbonControl.StatusBar = Me.RibbonStatusBar
Me.RibbonControl.Toolbar.ShowCustomizeItem = False
'
- 'txtVersion
- '
- Me.txtVersion.Alignment = DevExpress.XtraBars.BarItemLinkAlignment.Right
- resources.ApplyResources(Me.txtVersion, "txtVersion")
- Me.txtVersion.Id = 1
- Me.txtVersion.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.bo_product
- Me.txtVersion.Name = "txtVersion"
- Me.txtVersion.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
- Me.txtVersion.Tag = "Version {0}"
- '
'txtFilesLoaded
'
resources.ApplyResources(Me.txtFilesLoaded, "txtFilesLoaded")
@@ -366,16 +355,6 @@ Partial Class frmImportMain
Me.btnConfig.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.bo_unknown
Me.btnConfig.Name = "btnConfig"
'
- 'txtCulture
- '
- Me.txtCulture.Alignment = DevExpress.XtraBars.BarItemLinkAlignment.Right
- resources.ApplyResources(Me.txtCulture, "txtCulture")
- Me.txtCulture.Id = 26
- Me.txtCulture.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.followupall
- Me.txtCulture.Name = "txtCulture"
- Me.txtCulture.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
- Me.txtCulture.Tag = "Culture: {0}"
- '
'btnRemoveRow
'
resources.ApplyResources(Me.btnRemoveRow, "btnRemoveRow")
@@ -410,6 +389,13 @@ Partial Class frmImportMain
Me.BarButtonItem1.Id = 30
Me.BarButtonItem1.Name = "BarButtonItem1"
'
+ 'btnDebugExportReport
+ '
+ resources.ApplyResources(Me.btnDebugExportReport, "btnDebugExportReport")
+ Me.btnDebugExportReport.Id = 33
+ Me.btnDebugExportReport.ImageOptions.SvgImage = Global.MultiTool.Form.My.Resources.Resources.exporttopdf
+ Me.btnDebugExportReport.Name = "btnDebugExportReport"
+ '
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup4, Me.RibbonPageGroup3, Me.RibbonPageGroup7})
@@ -461,6 +447,7 @@ Partial Class frmImportMain
'RibbonPageGroup2
'
Me.RibbonPageGroup2.ItemLinks.Add(Me.btnShowXml)
+ Me.RibbonPageGroup2.ItemLinks.Add(Me.btnDebugExportReport)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
resources.ApplyResources(Me.RibbonPageGroup2, "RibbonPageGroup2")
'
@@ -477,8 +464,6 @@ Partial Class frmImportMain
'
'RibbonStatusBar
'
- Me.RibbonStatusBar.ItemLinks.Add(Me.txtCulture)
- Me.RibbonStatusBar.ItemLinks.Add(Me.txtVersion)
Me.RibbonStatusBar.ItemLinks.Add(Me.txtFilesLoaded)
Me.RibbonStatusBar.ItemLinks.Add(Me.txtCurrentFile)
resources.ApplyResources(Me.RibbonStatusBar, "RibbonStatusBar")
@@ -698,7 +683,6 @@ Partial Class frmImportMain
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonStatusBar As DevExpress.XtraBars.Ribbon.RibbonStatusBar
Friend WithEvents GridControlFiles As DevExpress.XtraGrid.GridControl
- Friend WithEvents txtVersion As DevExpress.XtraBars.BarStaticItem
Friend WithEvents txtFilesLoaded As DevExpress.XtraBars.BarStaticItem
Friend WithEvents btnLoadFiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents SplitContainerGrids As DevExpress.XtraEditors.SplitContainerControl
@@ -737,7 +721,6 @@ Partial Class frmImportMain
Friend WithEvents btnConfig As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RepositoryItemProgressBar1 As Repository.RepositoryItemProgressBar
Friend WithEvents SplashScreenManager As DevExpress.XtraSplashScreen.SplashScreenManager
- Friend WithEvents txtCulture As DevExpress.XtraBars.BarStaticItem
Friend WithEvents btnRemoveRow As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup7 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl
@@ -756,4 +739,5 @@ Partial Class frmImportMain
Friend WithEvents GridBand2 As DevExpress.XtraGrid.Views.BandedGrid.GridBand
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents btnDebugExportReport As DevExpress.XtraBars.BarButtonItem
End Class
diff --git a/MultiTool.Form/frmImportMain.resx b/MultiTool.Form/frmImportMain.resx
index ffc5080..7e734e7 100644
--- a/MultiTool.Form/frmImportMain.resx
+++ b/MultiTool.Form/frmImportMain.resx
@@ -202,9 +202,6 @@
True
-
- Version 1.0.0.0
-
0 Dateien geladen
@@ -247,9 +244,6 @@
Konfiguration
-
- Culture xx-xx
-
Zeile löschen
@@ -368,12 +362,6 @@
DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- txtVersion
-
-
- DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
txtFilesLoaded
@@ -458,12 +446,6 @@
DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- txtCulture
-
-
- DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
btnRemoveRow
@@ -494,6 +476,12 @@
DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ btnDebugExportReport
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
RibbonPage1
@@ -620,6 +608,9 @@
BarButtonItem1
+
+ Bericht Exportieren
+
0, 0
diff --git a/MultiTool.Form/frmImportMain.vb b/MultiTool.Form/frmImportMain.vb
index a3a4214..1c62d59 100644
--- a/MultiTool.Form/frmImportMain.vb
+++ b/MultiTool.Form/frmImportMain.vb
@@ -410,23 +410,28 @@ Public Class frmImportMain
End If
' Transfer to winline
- Await WebService.TransferDocumentToWinline(oDocument, CurrentTemplate, lookupMandator.EditValue)
+ Dim oTransferResult = Await WebService.TransferDocumentToWinline(oDocument, CurrentTemplate, lookupMandator.EditValue)
- WebService.RaiseWebServiceProgress("Bericht erzeugen")
+ If oTransferResult = True Then
- ' Generate the report
- Dim oReport = ReportGenerator.GenerateReport(oDocument)
- Dim oFilePath = ReportGenerator.GetReportFilePath(oDocument, CurrentTemplate)
+ WebService.RaiseWebServiceProgress("Bericht erzeugen")
- WebService.RaiseWebServiceProgress("Bericht exportieren")
+ ' Generate the report
+ Dim oReport = ReportGenerator.GenerateReport(oDocument)
+ Dim oFilePath = ReportGenerator.GetReportFilePath(oDocument, CurrentTemplate)
- ' Export it to pdf
- oReport.ExportToPdf(oFilePath)
+ WebService.RaiseWebServiceProgress("Bericht exportieren")
- ' Mark Document as Imported
- oDocument.Imported = True
+ ' Export it to pdf
+ oReport.ExportToPdf(oFilePath)
- MsgBox(My.Resources.frmImportMainExtra.Datei_erfolgreich_in_die_WinLine_übertragen, MsgBoxStyle.Information, Text)
+ WebService.RaiseWebServiceProgress("Datei archivieren")
+
+ ' Mark Document as Imported, will be moved on Form Close
+ oDocument.Imported = True
+ End If
+
+ '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)
@@ -616,4 +621,16 @@ Public Class frmImportMain
SplashScreenManager.CloseWaitForm()
End Try
End Sub
+
+ Private Sub btnDebugExportReport_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnDebugExportReport.ItemClick
+ ' Get the document
+ Dim oDocument As Document = GridViewFiles.GetRow(GridViewFiles.FocusedRowHandle)
+
+ ' Generate the report
+ Dim oReport = ReportGenerator.GenerateReport(oDocument)
+ Dim oFilePath = ReportGenerator.GetReportFilePath(oDocument, CurrentTemplate)
+
+ ' Export it to pdf
+ oReport.ExportToPdf(oFilePath)
+ End Sub
End Class
\ No newline at end of file
diff --git a/MultiTool.Shared/Documents/DocumentCleaner.vb b/MultiTool.Shared/Documents/DocumentCleaner.vb
index 0f4a31d..e87f2e4 100644
--- a/MultiTool.Shared/Documents/DocumentCleaner.vb
+++ b/MultiTool.Shared/Documents/DocumentCleaner.vb
@@ -17,7 +17,7 @@ Namespace Documents
Public Function CleanImportedDocuments(pDocuments As List(Of Document)) As Boolean
Dim oResult = True
- Dim oOutputDirectory = FileEx.GetDateDirectory(Template.OutputXmlFileDirectory)
+ Dim oOutputDirectory = FileEx.CreateDateDirectory(Template.ArchiveDirectory)
Dim oImportedDocuments = pDocuments.
Where(Function(doc) doc.Imported = True).
ToList()
diff --git a/MultiTool.Shared/MultiTool.Shared.vbproj b/MultiTool.Shared/MultiTool.Shared.vbproj
index de51d40..bd4e5bd 100644
--- a/MultiTool.Shared/MultiTool.Shared.vbproj
+++ b/MultiTool.Shared/MultiTool.Shared.vbproj
@@ -127,6 +127,7 @@
Settings.settings
True
+
diff --git a/MultiTool.Shared/Patterns.vb b/MultiTool.Shared/Patterns.vb
new file mode 100644
index 0000000..3385dae
--- /dev/null
+++ b/MultiTool.Shared/Patterns.vb
@@ -0,0 +1,66 @@
+Imports System.Text.RegularExpressions
+Imports DigitalData.Modules.Logging
+Imports MultiTool.Shared.Documents
+Imports MultiTool.Shared.Templates
+
+Public Class Patterns
+ Inherits BaseClass
+
+ Private GeneralConfig As GeneralConfig
+
+ Public Sub New(pLogConfig As LogConfig, pGeneralConfig As GeneralConfig)
+ MyBase.New(pLogConfig)
+ GeneralConfig = pGeneralConfig
+ End Sub
+
+ Public Function Replace(pDocument As Document, pRow As DocumentRow, oString As String)
+ Dim oRegex = New Regex("{#(\w+)#([\w\s_-]+)}+")
+ Dim oMatches As MatchCollection = oRegex.Matches(oString)
+
+ For Each oMatch As Match In oMatches
+ Dim oPlaceholderString As String = oMatch.Groups.Item(0)?.Value
+ Dim oPlaceholderType As String = oMatch.Groups.Item(1)?.Value
+ Dim oPlaceholderValue As String = oMatch.Groups.Item(2)?.Value
+
+ Select Case oPlaceholderType.ToUpper
+ Case "FIELD"
+ Dim oFieldName = oPlaceholderValue
+ Dim oTargetField = pRow.Fields.
+ Where(Function(field) field.Key = oFieldName).
+ SingleOrDefault()
+
+ oString = oString.Replace(oPlaceholderString, oTargetField.Value.Final)
+
+ Case "CONST"
+ Dim oValue = ""
+
+ Select Case oMatch.Groups.Item(2).Value.ToUpper
+ Case "MESOYEAR"
+ oValue = GeneralConfig.GetWinLineYear()
+
+ Case "MESOCOMP"
+ oValue = pDocument.Mandator.Id
+
+ Case "USERNAME"
+ oValue = Environment.UserName
+
+ Case "CURRENTDATE"
+ oValue = Now.ToString()
+
+ Case "FILENAME"
+ oValue = pDocument.FileName
+
+ Case Else
+ oValue = ""
+
+ End Select
+
+ If oValue <> "" Then
+ oString = oString.Replace(oPlaceholderValue, oValue)
+ End If
+ End Select
+ Next
+
+ Return oString
+ End Function
+End Class
diff --git a/MultiTool.Shared/Report/ReportGenerator.vb b/MultiTool.Shared/Report/ReportGenerator.vb
index 052730a..9dd1208 100644
--- a/MultiTool.Shared/Report/ReportGenerator.vb
+++ b/MultiTool.Shared/Report/ReportGenerator.vb
@@ -13,6 +13,7 @@ Public Class ReportGenerator(Of TReport As IReport)
Private ReadOnly Database As MSSQLServer
Private ReadOnly TemplateConfig As TemplateConfig
Private ReadOnly GeneralConfig As GeneralConfig
+ Private ReadOnly Patterns As Patterns
Private ReadOnly FileEx As DigitalData.Modules.Filesystem.File
Public Sub New(pLogConfig As LogConfig, pDatabase As MSSQLServer, pTemplateConfig As TemplateConfig, pGeneralConfig As GeneralConfig)
@@ -20,11 +21,12 @@ Public Class ReportGenerator(Of TReport As IReport)
Database = pDatabase
GeneralConfig = pGeneralConfig
TemplateConfig = pTemplateConfig
+ Patterns = New Patterns(pLogConfig, pGeneralConfig)
FileEx = New DigitalData.Modules.Filesystem.File(LogConfig)
End Sub
Public Function GetReportFilePath(pDocument As Document, pTemplate As Template)
- Dim oFinalDirectory = FileEx.GetDateDirectory(pTemplate.OutputReportDirectory)
+ Dim oFinalDirectory = FileEx.CreateDateDirectory(pTemplate.OutputReportDirectory)
Dim oFileName = FileEx.GetFilenameWithSuffix(IO.Path.GetFileNameWithoutExtension(pDocument.File.Name), FileEx.GetDateTimeString, "pdf")
Dim oFilePath As String = IO.Path.Combine(oFinalDirectory, oFileName)
Return oFilePath
@@ -34,7 +36,7 @@ Public Class ReportGenerator(Of TReport As IReport)
Dim oMapperConfig As New Mapper(LogConfig)
Dim oHeadMapper = oMapperConfig.GetMapper(Of ReportHead)(New Dictionary(Of String, String) From {
- {"Fakt_Kontonummer[External]", "Text1"},
+ {"Fakt_Kontoname", "Text1"},
{"Fakt_Kontonummer[Final]", "Text2"},
{"Auftrags-Bestellnummer", "Text3"},
{"Datum_Auftrag-Bestellung", "Text4"},
@@ -44,6 +46,7 @@ Public Class ReportGenerator(Of TReport As IReport)
Dim oPositionMapper = oMapperConfig.GetMapper(Of ReportPosition)(New Dictionary(Of String, String) From {
{"Artikelnummer", "Text1"},
{"Lieferantenartikelnummer", "Text2"},
+ {"Bezeichnung", "Text3"},
{"Menge_bestellt", "Text4"},
{"Menge_geliefert", "Text5"},
{"Colli", "Text6"},
@@ -112,35 +115,8 @@ Public Class ReportGenerator(Of TReport As IReport)
Where(Function(field) field.Key = oSQLConfigItem.Name).
SingleOrDefault()
- Dim oRegex = New Regex("{#(\w+)#([\w\s_-]+)}+")
Dim oSQL = oSQLConfigItem.Function.Params
- Dim oMatches As MatchCollection = oRegex.Matches(oSQL)
-
- For Each oMatch As Match In oMatches
- Dim oPlaceholderString As String = oMatch.Groups.Item(0)?.Value
- Dim oPlaceholderType As String = oMatch.Groups.Item(1)?.Value
- Dim oPlaceholderValue As String = oMatch.Groups.Item(2)?.Value
-
- Select Case oPlaceholderType.ToUpper
- Case "FIELD"
- Dim oFieldName = oPlaceholderValue
- Dim oTargetField = oRow.Fields.
- Where(Function(field) field.Key = oFieldName).
- SingleOrDefault()
-
- oSQL = oSQL.Replace(oPlaceholderString, oTargetField.Value.Final)
-
- Case "CONST"
- Select Case oMatch.Groups.Item(2).Value.ToUpper
- Case "MESOYEAR"
- oSQL = oSQL.Replace(oPlaceholderString, GeneralConfig.GetWinLineYear())
-
- Case "MESOCOMP"
- oSQL = oSQL.Replace(oPlaceholderString, pDocument.Mandator.Id)
-
- End Select
- End Select
- Next
+ oSQL = Patterns.Replace(pDocument, oRow, oSQL)
Dim oValue = Database.GetScalarValue(oSQL)
diff --git a/MultiTool.Shared/Winline/WebServiceData.vb b/MultiTool.Shared/Winline/WebServiceData.vb
index 13ad825..b3d179c 100644
--- a/MultiTool.Shared/Winline/WebServiceData.vb
+++ b/MultiTool.Shared/Winline/WebServiceData.vb
@@ -31,6 +31,7 @@ Namespace Winline
RaiseEvent WebServiceProgress(Me, pMessage)
End Sub
+#Region "Import"
Public Async Function TransferDocumentToWinline(pDocument As Documents.Document, pTemplate As Template, pMandator As Mandator, Optional pIsTest As Boolean = False) As Task(Of Boolean)
Dim oBytes As Byte() = GetBytesFromDocument(pDocument)
Dim oWS = Config
@@ -43,17 +44,19 @@ Namespace Winline
Dim oFileName = FileEx.GetFilenameWithSuffix(oBaseFileName, "Request", "xml")
' --- Get and create path for request/response files
- Dim oOutputDirectory = FileEx.GetDateDirectory(pTemplate.OutputWebserviceDirectory)
-
- ' Relative Path for Webservice Call
- Dim oImportRelativeFilePath = IO.Path.Combine(FileEx.GetDateDirectory(oWS.ImportRelativePath), oFileName)
-
- ' Absolute Path to copy Request file
- Dim oImportAbsoluteFilePath = IO.Path.Combine(oWS.ImportBasePath, FileEx.GetDateDirectory(oWS.ImportRelativePath), oFileName)
-
- ' Output path
+ Dim oOutputDirectory = FileEx.CreateDateDirectory(pTemplate.OutputWebserviceDirectory)
Dim oOutputFilePath = IO.Path.Combine(oOutputDirectory, oFileName)
+ ' Generate absolute path to copy xml file to
+ Dim oAbsolutePath = IO.Path.Combine(oWS.ImportBasePath, oWS.ImportRelativePath)
+ oAbsolutePath = FileEx.CreateDateDirectory(oAbsolutePath)
+ Dim oImportAbsoluteFilePath = IO.Path.Combine(oAbsolutePath, oFileName)
+
+ ' Generate relative path to supply to winline
+ Dim oRelativePath = IO.Path.Combine(oWS.ImportRelativePath)
+ oRelativePath = FileEx.GetDateDirectory(oRelativePath)
+ Dim oImportRelativeFilePath = IO.Path.Combine(oRelativePath, oFileName)
+
RaiseEvent WebServiceProgress(Me, "Dateien schreiben")
' --- Serialize Data into XML string
@@ -105,6 +108,98 @@ Namespace Winline
End Try
End Function
+ Private Async Function HandleImportResponse(pResponse As HttpResponseMessage, pTemplate As Template, pBaseFileNAme As String) As Task
+ pResponse.EnsureSuccessStatusCode()
+ Dim oResponseBody As String = Await pResponse.Content.ReadAsStringAsync()
+ Dim oContentType = pResponse.Content.Headers.ContentType.MediaType
+ Dim oSerializer = Serializer.GetSerializer(GetType(Templates.Entities.MESOWebServiceResult))
+
+ RaiseEvent WebServiceProgress(Me, "Antwort verarbeiten")
+
+ Select Case oContentType
+ Case "text/xml"
+ Dim oOutputDirectory = FileEx.CreateDateDirectory(pTemplate.OutputWebserviceDirectory)
+ WriteResponseFile(oOutputDirectory, pBaseFileNAme, oResponseBody, "xml")
+
+ Dim oBytes As Byte() = Encoding.UTF8.GetBytes(oResponseBody)
+ Using oStream As New IO.MemoryStream(oBytes)
+ Dim oResponseObject As Templates.Entities.MESOWebServiceResult = oSerializer.Deserialize(oStream)
+ Dim oErrorStrings As New List(Of String)
+
+ If oResponseObject.ResultDetails IsNot Nothing Then
+ For Each oDetails As Templates.Entities.MESOWebServiceResultResultDetails In oResponseObject.ResultDetails
+
+ If oDetails.Success = True Then
+ Logger.Info("KeyValue: [{0}]", oDetails.KeyValue)
+ Logger.Info("VoucherNumber: [{0}]", oDetails.VoucherNumber)
+ Else
+ Logger.Warn("ErrorCode: [{0}]", oDetails.ErrorCode)
+ Logger.Warn("ErrorText: [{0}]", oDetails.ErrorText)
+ oErrorStrings.Add($"[{oDetails.ErrorCode}] {oDetails.ErrorText}")
+ End If
+ Next
+ End If
+
+ If oResponseObject.OverallSuccess = False Then
+ Dim oMessage = $"Request to Webservice was unsuccessful:{vbNewLine}{vbNewLine}{String.Join(vbNewLine, oErrorStrings.ToArray)}"
+
+ Throw New ApplicationException(oMessage)
+ End If
+ End Using
+
+ Case "text/html"
+ WriteResponseFile(pTemplate.OutputWebserviceDirectory, pBaseFileNAme, oResponseBody, "txt")
+
+ Throw New ApplicationException(oResponseBody)
+
+ Case Else
+ Throw New ApplicationException(oResponseBody)
+ End Select
+ End Function
+
+ Private Function GetBytesFromDocument(pDocument As Documents.Document) As Byte()
+ Using oStream As New IO.MemoryStream()
+ Dim w = XmlWriter.Create(oStream)
+
+ w.WriteStartDocument()
+ w.WriteStartElement("MESOWebService")
+ w.WriteAttributeString("Template", pDocument.TemplateName)
+ w.WriteAttributeString("TemplateType", pDocument.TemplateType)
+ w.WriteAttributeString("option", pDocument.Option)
+ w.WriteAttributeString("printVoucher", pDocument.PrintVoucher)
+
+ pDocument.Rows.Sort()
+
+ For Each oRow In pDocument.Rows
+ w.WriteStartElement(oRow.Name)
+
+ For Each oField As KeyValuePair(Of String, DocumentRow.FieldValue) In oRow.Fields
+ If oField.Value.Final = String.Empty Then
+ Continue For
+ End If
+
+ If oField.Value.IsVirtual Then
+ Continue For
+ End If
+
+ w.WriteStartElement(oField.Key)
+ w.WriteValue(oField.Value.Final)
+ w.WriteEndElement() ' Field
+ Next
+
+ w.WriteEndElement() ' Row
+ Next
+ w.WriteEndElement() ' MESOWebService
+ w.WriteEndDocument() ' Document
+ w.Close()
+
+ Return oStream.ToArray()
+ End Using
+ End Function
+
+#End Region
+
+#Region "Export"
Async Function ExportDocumentFromWinline(pDocument As Entities.Document, pTemplate As Template, pMandator As Mandator, Optional pIsTest As Boolean = False) As Task(Of Boolean)
Dim oWS = Config
@@ -181,54 +276,7 @@ Namespace Winline
Throw New ApplicationException(oResponseBody)
End Select
End Function
-
- Private Async Function HandleImportResponse(pResponse As HttpResponseMessage, pTemplate As Template, pBaseFileNAme As String) As Task
- pResponse.EnsureSuccessStatusCode()
- Dim oResponseBody As String = Await pResponse.Content.ReadAsStringAsync()
- Dim oContentType = pResponse.Content.Headers.ContentType.MediaType
- Dim oSerializer = Serializer.GetSerializer(GetType(Templates.Entities.MESOWebServiceResult))
-
- RaiseEvent WebServiceProgress(Me, "Antwort verarbeiten")
-
- Select Case oContentType
- Case "text/xml"
- WriteResponseFile(pTemplate.OutputWebserviceDirectory, pBaseFileNAme, oResponseBody, "xml")
-
- Dim oBytes As Byte() = Encoding.UTF8.GetBytes(oResponseBody)
- Using oStream As New IO.MemoryStream(oBytes)
- Dim oResponseObject As Templates.Entities.MESOWebServiceResult = oSerializer.Deserialize(oStream)
- Dim oErrorStrings As New List(Of String)
-
- If oResponseObject.ResultDetails IsNot Nothing Then
- For Each oDetails As Templates.Entities.MESOWebServiceResultResultDetails In oResponseObject.ResultDetails
-
- If oDetails.Success = True Then
- Logger.Info("KeyValue: [{0}]", oDetails.KeyValue)
- Logger.Info("VoucherNumber: [{0}]", oDetails.VoucherNumber)
- Else
- Logger.Warn("ErrorCode: [{0}]", oDetails.ErrorCode)
- Logger.Warn("ErrorText: [{0}]", oDetails.ErrorText)
- oErrorStrings.Add($"[{oDetails.ErrorCode}] {oDetails.ErrorText}")
- End If
- Next
- End If
-
- If oResponseObject.OverallSuccess = False Then
- Dim oMessage = $"Request to Webservice was unsuccessful:{vbNewLine}{vbNewLine}{String.Join(vbNewLine, oErrorStrings.ToArray)}"
-
- Throw New ApplicationException(oMessage)
- End If
- End Using
-
- Case "text/html"
- WriteResponseFile(pTemplate.OutputWebserviceDirectory, pBaseFileNAme, oResponseBody, "txt")
-
- Throw New ApplicationException(oResponseBody)
-
- Case Else
- Throw New ApplicationException(oResponseBody)
- End Select
- End Function
+#End Region
Private Function WriteResponseFile(pPath As String, pBaseFileName As String, pResponseBody As String, pExtension As String)
Try
@@ -242,46 +290,6 @@ Namespace Winline
Return False
End Try
End Function
-
- Private Function GetBytesFromDocument(pDocument As Documents.Document) As Byte()
- Using oStream As New IO.MemoryStream()
- Dim w = XmlWriter.Create(oStream)
-
- w.WriteStartDocument()
- w.WriteStartElement("MESOWebService")
- w.WriteAttributeString("Template", pDocument.TemplateName)
- w.WriteAttributeString("TemplateType", pDocument.TemplateType)
- w.WriteAttributeString("option", pDocument.Option)
- w.WriteAttributeString("printVoucher", pDocument.PrintVoucher)
-
- pDocument.Rows.Sort()
-
- For Each oRow In pDocument.Rows
- w.WriteStartElement(oRow.Name)
-
- For Each oField As KeyValuePair(Of String, DocumentRow.FieldValue) In oRow.Fields
- If oField.Value.Final = String.Empty Then
- Continue For
- End If
-
- If oField.Value.IsVirtual Then
- Continue For
- End If
-
- w.WriteStartElement(oField.Key)
- w.WriteValue(oField.Value.Final)
- w.WriteEndElement() ' Field
- Next
-
- w.WriteEndElement() ' Row
- Next
- w.WriteEndElement() ' MESOWebService
- w.WriteEndDocument() ' Document
- w.Close()
-
- Return oStream.ToArray()
- End Using
- End Function
End Class
End Namespace
\ No newline at end of file
diff --git a/MultiTool.Shared/Winline/WinlineData.vb b/MultiTool.Shared/Winline/WinlineData.vb
index 47ffaf7..ff57831 100644
--- a/MultiTool.Shared/Winline/WinlineData.vb
+++ b/MultiTool.Shared/Winline/WinlineData.vb
@@ -543,6 +543,16 @@ Namespace Winline
End Try
End Function
+ Public Async Function ExecuteFinalSQL(pDocument As Document, pTemplate As Template) As Task(Of Boolean)
+ Try
+ Dim oSql As String = pTemplate.FinalSQL
+
+
+ Catch ex As Exception
+
+ End Try
+ End Function
+
Private Function GetDocumentFromDataRow(pDataRow As DataRow) As Document
Dim oAccountNumber = pDataRow.Item("ACCOUNT_NUMBER")
Dim oRunningNumber As String = pDataRow.Item("RUNNING_NUMBER")