Rework validation for grids

This commit is contained in:
Jonathan Jenne 2022-06-24 13:24:05 +02:00
parent 4860713d17
commit eee2c83eea
7 changed files with 558 additions and 288 deletions

View File

@ -205,7 +205,7 @@ Public Class ClassAllgemeineFunktionen
Do While Check_File_exists(_Ziel, clsWD) = True
Dim neuername As String = Stammname & "~" & version & extension
_Ziel = neuername
version = version + 1
version += 1
Loop
My.Computer.FileSystem.MoveFile(vMove_File, _Ziel)
LOGGER.Info("Datei erfolgreich verschoben - Ziel: " & _Ziel)

View File

@ -1,6 +1,10 @@
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.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.CheckEdit, 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.XtraLayout.LayoutControl, DevExpress.XtraLayout.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.RepositoryItemProgressBar, 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.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.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.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.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

View File

@ -37,6 +37,7 @@ Partial Class frmColumn_Detail
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
Me.LU_CAPTIONTextBox = New System.Windows.Forms.TextBox()
Me.TYPE_COLUMNComboBox = New System.Windows.Forms.ComboBox()
Me.GUIDTextBox = New DevExpress.XtraEditors.TextEdit()
Me.SPALTENNAMETextBox = New DevExpress.XtraEditors.TextEdit()
@ -73,6 +74,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem11 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem13 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlGroup1 = New DevExpress.XtraLayout.LayoutControlGroup()
Me.LayoutControlItem16 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem14 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem15 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem17 = New DevExpress.XtraLayout.LayoutControlItem()
@ -80,9 +82,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem18 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem19 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem22 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LU_CAPTIONTextBox = New System.Windows.Forms.TextBox()
Me.LayoutControlItem23 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem16 = New DevExpress.XtraLayout.LayoutControlItem()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -121,6 +121,7 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem11, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).BeginInit()
@ -129,7 +130,6 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'TBPM_CONTROL_TABLEBindingSource
@ -252,6 +252,12 @@ Partial Class frmColumn_Detail
Me.LayoutControl1.Name = "LayoutControl1"
Me.LayoutControl1.Root = Me.Root
'
'LU_CAPTIONTextBox
'
Me.LU_CAPTIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "LU_CAPTION", True))
resources.ApplyResources(Me.LU_CAPTIONTextBox, "LU_CAPTIONTextBox")
Me.LU_CAPTIONTextBox.Name = "LU_CAPTIONTextBox"
'
'TYPE_COLUMNComboBox
'
Me.TYPE_COLUMNComboBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "TYPE_COLUMN", True))
@ -575,6 +581,15 @@ Partial Class frmColumn_Detail
Me.LayoutControlGroup1.Size = New System.Drawing.Size(553, 156)
resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1")
'
'LayoutControlItem16
'
Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem16.Name = "LayoutControlItem16"
Me.LayoutControlItem16.Size = New System.Drawing.Size(264, 24)
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem16.TextVisible = False
'
'LayoutControlItem14
'
Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox
@ -641,12 +656,6 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem22.Size = New System.Drawing.Size(553, 41)
Me.LayoutControlItem22.TextSize = New System.Drawing.Size(112, 13)
'
'LU_CAPTIONTextBox
'
Me.LU_CAPTIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "LU_CAPTION", True))
resources.ApplyResources(Me.LU_CAPTIONTextBox, "LU_CAPTIONTextBox")
Me.LU_CAPTIONTextBox.Name = "LU_CAPTIONTextBox"
'
'LayoutControlItem23
'
Me.LayoutControlItem23.Control = Me.LU_CAPTIONTextBox
@ -657,15 +666,6 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem23.Size = New System.Drawing.Size(553, 40)
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(112, 13)
'
'LayoutControlItem16
'
Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem16.Name = "LayoutControlItem16"
Me.LayoutControlItem16.Size = New System.Drawing.Size(264, 24)
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem16.TextVisible = False
'
'frmColumn_Detail
'
Me.Appearance.Options.UseFont = True
@ -680,7 +680,6 @@ Partial Class frmColumn_Detail
Me.Name = "frmColumn_Detail"
Me.Ribbon = Me.RibbonControl1
Me.StatusBar = Me.RibbonStatusBar1
Me.TopMost = True
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
@ -719,6 +718,7 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem11, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).EndInit()
@ -727,7 +727,6 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout

View File

@ -952,6 +952,12 @@
<data name="&gt;&gt;LayoutControlGroup1.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlGroup, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem16.Name" xml:space="preserve">
<value>LayoutControlItem16</value>
</data>
<data name="&gt;&gt;LayoutControlItem16.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem14.Name" xml:space="preserve">
<value>LayoutControlItem14</value>
</data>
@ -1000,12 +1006,6 @@
<data name="&gt;&gt;LayoutControlItem23.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem16.Name" xml:space="preserve">
<value>LayoutControlItem16</value>
</data>
<data name="&gt;&gt;LayoutControlItem16.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmColumn_Detail</value>
</data>

View File

@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
CAAAAk1TRnQBSQFMAgEBAgEAAcQBCAHEAQgBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
CAAAAk1TRnQBSQFMAgEBAgEAAcwBCAHMAQgBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA

View File

@ -131,31 +131,6 @@
<data name="SplitContainer1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="TITLELabel1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="TITLELabel1.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI Symbol, 12pt, style=Bold</value>
</data>
<data name="TITLELabel1.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 4</value>
</data>
<data name="TITLELabel1.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
<value>No</value>
</data>
<data name="TITLELabel1.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 29</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="TITLELabel1.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="TITLELabel1.Text" xml:space="preserve">
<value>Label1</value>
</data>
<data name="TITLELabel1.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;TITLELabel1.Name" xml:space="preserve">
<value>TITLELabel1</value>
</data>
@ -168,30 +143,6 @@
<data name="&gt;&gt;TITLELabel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnSave.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left, Right</value>
</data>
<data name="btnSave.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 9.75pt</value>
</data>
<data name="btnSave.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="btnSave.Location" type="System.Drawing.Point, System.Drawing">
<value>7, 454</value>
</data>
<data name="btnSave.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 4, 3, 4</value>
</data>
<data name="btnSave.Size" type="System.Drawing.Size, System.Drawing">
<value>445, 50</value>
</data>
<data name="btnSave.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnSave.Text" xml:space="preserve">
<value>Validierung speichern - Nächstes Dokument</value>
</data>
<data name="&gt;&gt;btnSave.Name" xml:space="preserve">
<value>btnSave</value>
</data>
@ -204,21 +155,6 @@
<data name="&gt;&gt;btnSave.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="DESCRIPTIONLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="DESCRIPTIONLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>5, 33</value>
</data>
<data name="DESCRIPTIONLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>447, 48</value>
</data>
<data name="DESCRIPTIONLabel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="DESCRIPTIONLabel.Text" xml:space="preserve">
<value>Label3</value>
</data>
<data name="&gt;&gt;DESCRIPTIONLabel.Name" xml:space="preserve">
<value>DESCRIPTIONLabel</value>
</data>
@ -231,24 +167,6 @@
<data name="&gt;&gt;DESCRIPTIONLabel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="PanelValidatorControl.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="PanelValidatorControl.AutoScroll" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="PanelValidatorControl.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 85</value>
</data>
<data name="PanelValidatorControl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 4, 3, 4</value>
</data>
<data name="PanelValidatorControl.Size" type="System.Drawing.Size, System.Drawing">
<value>444, 361</value>
</data>
<data name="PanelValidatorControl.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
</data>
<data name="&gt;&gt;PanelValidatorControl.Name" xml:space="preserve">
<value>PanelValidatorControl</value>
</data>
@ -273,6 +191,7 @@
<data name="Panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>455, 511</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="Panel1.TabIndex" type="System.Int32, mscorlib">
<value>24</value>
</data>
@ -319,7 +238,7 @@
<value>DocumentViewerValidator</value>
</data>
<data name="&gt;&gt;DocumentViewerValidator.Type" xml:space="preserve">
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=1.7.0.1, Culture=neutral, PublicKeyToken=null</value>
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=1.8.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;DocumentViewerValidator.Parent" xml:space="preserve">
<value>SplitContainer1.Panel2</value>
@ -441,6 +360,135 @@
<data name="&gt;&gt;SplitContainer2_DV_Chat.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="TITLELabel1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="TITLELabel1.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI Symbol, 12pt, style=Bold</value>
</data>
<data name="TITLELabel1.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 4</value>
</data>
<data name="TITLELabel1.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
<value>No</value>
</data>
<data name="TITLELabel1.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 29</value>
</data>
<data name="TITLELabel1.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="TITLELabel1.Text" xml:space="preserve">
<value>Label1</value>
</data>
<data name="TITLELabel1.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;TITLELabel1.Name" xml:space="preserve">
<value>TITLELabel1</value>
</data>
<data name="&gt;&gt;TITLELabel1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TITLELabel1.Parent" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="&gt;&gt;TITLELabel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnSave.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left, Right</value>
</data>
<data name="btnSave.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 9.75pt</value>
</data>
<data name="btnSave.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="btnSave.Location" type="System.Drawing.Point, System.Drawing">
<value>7, 454</value>
</data>
<data name="btnSave.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 4, 3, 4</value>
</data>
<data name="btnSave.Size" type="System.Drawing.Size, System.Drawing">
<value>445, 50</value>
</data>
<data name="btnSave.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnSave.Text" xml:space="preserve">
<value>Validierung speichern - Nächstes Dokument</value>
</data>
<data name="&gt;&gt;btnSave.Name" xml:space="preserve">
<value>btnSave</value>
</data>
<data name="&gt;&gt;btnSave.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnSave.Parent" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="&gt;&gt;btnSave.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="DESCRIPTIONLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="DESCRIPTIONLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>5, 33</value>
</data>
<data name="DESCRIPTIONLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>447, 48</value>
</data>
<data name="DESCRIPTIONLabel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="DESCRIPTIONLabel.Text" xml:space="preserve">
<value>Label3</value>
</data>
<data name="&gt;&gt;DESCRIPTIONLabel.Name" xml:space="preserve">
<value>DESCRIPTIONLabel</value>
</data>
<data name="&gt;&gt;DESCRIPTIONLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DESCRIPTIONLabel.Parent" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="&gt;&gt;DESCRIPTIONLabel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="PanelValidatorControl.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="PanelValidatorControl.AutoScroll" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="PanelValidatorControl.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 85</value>
</data>
<data name="PanelValidatorControl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 4, 3, 4</value>
</data>
<data name="PanelValidatorControl.Size" type="System.Drawing.Size, System.Drawing">
<value>444, 361</value>
</data>
<data name="PanelValidatorControl.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
</data>
<data name="&gt;&gt;PanelValidatorControl.Name" xml:space="preserve">
<value>PanelValidatorControl</value>
</data>
<data name="&gt;&gt;PanelValidatorControl.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;PanelValidatorControl.Parent" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="&gt;&gt;PanelValidatorControl.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<metadata name="BarAndDockingController3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
@ -1029,43 +1077,9 @@
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="RibbonPageGroupConv1.Text" xml:space="preserve">
<value>Aktionen</value>
</data>
<data name="RibbonPageGroupConv_Change.Text" xml:space="preserve">
<value>Beendete Konversationen</value>
</data>
<data name="RibbonPage3.Text" xml:space="preserve">
<value>Funktionen</value>
</data>
<data name="RibbonPageConversations.Text" xml:space="preserve">
<value>Konversationen</value>
</data>
<data name="RibbonPageFile.Text" xml:space="preserve">
<value>Datei</value>
</data>
<data name="RibbonPageGroup3.Text" xml:space="preserve">
<value>Aktionen</value>
</data>
<data name="RibbonPageGroupCustom.Text" xml:space="preserve">
<value>Anhänge zu Beleg</value>
</data>
<data name="RibbonPageGroup2.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAALdEVYdFRpdGxlAEluZm87bRIthgAAAVxJREFUWEfF
l7FxwzAMRT2Bq4yjPp1nyAAZxNu4dZkt0rnLCm4ZPF+gg5LPCLJko3h3Ovn/T5gCSWnXWitF3nwm48Uw
DHPsjYNxNM7Gxbj+wDX3+A0NWpUxsqSAF+Pd+DBaErR48KrMdAGvxslQg2TAS8af7EwBb8anoYKXQAZZ
k/y5AjB8GSrwHsiaFPFfAUzZFv/8N2SOj6NXAE2z5pnPQfatMXsF0LnKuCWMIQtg7aaXmvuCX+oEjLF3
XwxgA1EGifuCX+o6HNwXA9jFlFjivuCXug5H98UAtlIllrgv+KWuw9l9MYD9XIkl7gt+qetwcV8M4FBR
Yon7gl/qOlzdFwPKCyh/BOVNWL4MF21EK5EbUflWDOnDyH3BL3WC7mEE5ccxlL6QOKWvZA6GLWaCjMng
kCkAmLI1PYF3nPZItgCgaejc9BI10OK5NZxiSQHOYz/NqpA3n0fbfQM/tJcKTygMggAAAABJRU5ErkJg
gg==
</value>
</data>
<data name="RibbonPageGroup2.Text" xml:space="preserve">
<value>Information</value>
</data>
<data name="RibbonPage1.Text" xml:space="preserve">
<value>Start</value>
</data>
@ -1993,6 +2007,39 @@
<data name="PdfExactZoomListBarSubItem2.Caption" xml:space="preserve">
<value>Zoom</value>
</data>
<data name="PdfExactZoomListBarSubItem2.SuperTip" type="DevExpress.Utils.SuperToolTip, DevExpress.Utils.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYyMS4yLCBWZXJzaW9uPTIxLjIu
NC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFlE
ZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVi
bGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURldkV4cHJlc3MuVXRpbHMuU3VwZXJUb29s
VGlwBwAAAA1BbGxvd0h0bWxUZXh0EUZpeGVkVG9vbFRpcFdpZHRoCkl0ZW1zQ291bnQJaXRlbVR5cGUw
BWl0ZW0wCWl0ZW1UeXBlMQVpdGVtMQQAAAQEBAQfRGV2RXhwcmVzcy5VdGlscy5EZWZhdWx0Qm9vbGVh
bgMAAAABCCVEZXZFeHByZXNzLlV0aWxzLlN1cGVyVG9vbFRpcEl0ZW1UeXBlAgAAACFEZXZFeHByZXNz
LlV0aWxzLlRvb2xUaXBUaXRsZUl0ZW0CAAAAJURldkV4cHJlc3MuVXRpbHMuU3VwZXJUb29sVGlwSXRl
bVR5cGUCAAAAHERldkV4cHJlc3MuVXRpbHMuVG9vbFRpcEl0ZW0CAAAAAgAAAAX8////H0RldkV4cHJl
c3MuVXRpbHMuRGVmYXVsdEJvb2xlYW4BAAAAB3ZhbHVlX18ACAMAAAACAAAAAAIAAAAF+////yVEZXZF
eHByZXNzLlV0aWxzLlN1cGVyVG9vbFRpcEl0ZW1UeXBlAQAAAAd2YWx1ZV9fAAgCAAAAAQAAAAkGAAAA
Afn////7////AAAAAAkIAAAADAkAAABRU3lzdGVtLkRyYXdpbmcsIFZlcnNpb249NC4wLjAuMCwgQ3Vs
dHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1iMDNmNWY3ZjExZDUwYTNhBQYAAAAhRGV2RXhwcmVz
cy5VdGlscy5Ub29sVGlwVGl0bGVJdGVtBwAAAA1BbGxvd0h0bWxUZXh0BEljb24MSW1hZ2VPcHRpb25z
CkxlZnRJbmRlbnQITWF4V2lkdGgST3duZXJBbGxvd0h0bWxUZXh0BFRleHQEBAQAAAABH0RldkV4cHJl
c3MuVXRpbHMuRGVmYXVsdEJvb2xlYW4DAAAAE1N5c3RlbS5EcmF3aW5nLkljb24JAAAAKERldkV4cHJl
c3MuVXRpbHMuVG9vbFRpcEl0ZW1JbWFnZU9wdGlvbnMCAAAACAgBAgAAAAH2/////P///wIAAAAKCQsA
AAAAAAAAPAEAAAAGDAAAAARab29tBQgAAAAcRGV2RXhwcmVzcy5VdGlscy5Ub29sVGlwSXRlbQcAAAAN
QWxsb3dIdG1sVGV4dARJY29uDEltYWdlT3B0aW9ucwpMZWZ0SW5kZW50CE1heFdpZHRoEk93bmVyQWxs
b3dIdG1sVGV4dARUZXh0BAQEAAAAAR9EZXZFeHByZXNzLlV0aWxzLkRlZmF1bHRCb29sZWFuAwAAABNT
eXN0ZW0uRHJhd2luZy5JY29uCQAAAChEZXZFeHByZXNzLlV0aWxzLlRvb2xUaXBJdGVtSW1hZ2VPcHRp
b25zAgAAAAgIAQIAAAAB8/////z///8CAAAACgkOAAAAAAAAADwBAAAABg8AAAApw4RuZGVybiBkZXIg
Wm9vbS1TdHVmZSBkZXMgUERGLURva3VtZW50cy4FCwAAAChEZXZFeHByZXNzLlV0aWxzLlRvb2xUaXBJ
dGVtSW1hZ2VPcHRpb25zBQAAAAhJbWFnZVVyaQxTdmdJbWFnZVNpemUJQWxpZ25tZW50CkltYWdlSW5k
ZXgTSW1hZ2VUb1RleHREaXN0YW5jZQEEBAAAE1N5c3RlbS5EcmF3aW5nLlNpemUJAAAAJkRldkV4cHJl
c3MuVXRpbHMuVG9vbFRpcEltYWdlQWxpZ25tZW50AgAAAAgIAgAAAAYQAAAAAAXv////E1N5c3RlbS5E
cmF3aW5nLlNpemUCAAAABXdpZHRoBmhlaWdodAAACAgJAAAAAAAAAAAAAAAF7v///yZEZXZFeHByZXNz
LlV0aWxzLlRvb2xUaXBJbWFnZUFsaWdubWVudAEAAAAHdmFsdWVfXwAIAgAAAAAAAAD/////DgAAAAEO
AAAACwAAAAkQAAAAAe3////v////AAAAAAAAAAAB7P///+7///8AAAAA/////w4AAAAL
</value>
</data>
<data name="PdfZoom10CheckItem2.Caption" xml:space="preserve">
<value>10%</value>
</data>
@ -2035,39 +2082,6 @@
<data name="PdfSetFitVisibleZoomModeCheckItem2.Caption" xml:space="preserve">
<value>sichtbare einpassen</value>
</data>
<data name="PdfExactZoomListBarSubItem2.SuperTip" type="DevExpress.Utils.SuperToolTip, DevExpress.Utils.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYyMS4yLCBWZXJzaW9uPTIxLjIu
NC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFlE
ZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVi
bGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURldkV4cHJlc3MuVXRpbHMuU3VwZXJUb29s
VGlwBwAAAA1BbGxvd0h0bWxUZXh0EUZpeGVkVG9vbFRpcFdpZHRoCkl0ZW1zQ291bnQJaXRlbVR5cGUw
BWl0ZW0wCWl0ZW1UeXBlMQVpdGVtMQQAAAQEBAQfRGV2RXhwcmVzcy5VdGlscy5EZWZhdWx0Qm9vbGVh
bgMAAAABCCVEZXZFeHByZXNzLlV0aWxzLlN1cGVyVG9vbFRpcEl0ZW1UeXBlAgAAACFEZXZFeHByZXNz
LlV0aWxzLlRvb2xUaXBUaXRsZUl0ZW0CAAAAJURldkV4cHJlc3MuVXRpbHMuU3VwZXJUb29sVGlwSXRl
bVR5cGUCAAAAHERldkV4cHJlc3MuVXRpbHMuVG9vbFRpcEl0ZW0CAAAAAgAAAAX8////H0RldkV4cHJl
c3MuVXRpbHMuRGVmYXVsdEJvb2xlYW4BAAAAB3ZhbHVlX18ACAMAAAACAAAAAAIAAAAF+////yVEZXZF
eHByZXNzLlV0aWxzLlN1cGVyVG9vbFRpcEl0ZW1UeXBlAQAAAAd2YWx1ZV9fAAgCAAAAAQAAAAkGAAAA
Afn////7////AAAAAAkIAAAADAkAAABRU3lzdGVtLkRyYXdpbmcsIFZlcnNpb249NC4wLjAuMCwgQ3Vs
dHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1iMDNmNWY3ZjExZDUwYTNhBQYAAAAhRGV2RXhwcmVz
cy5VdGlscy5Ub29sVGlwVGl0bGVJdGVtBwAAAA1BbGxvd0h0bWxUZXh0BEljb24MSW1hZ2VPcHRpb25z
CkxlZnRJbmRlbnQITWF4V2lkdGgST3duZXJBbGxvd0h0bWxUZXh0BFRleHQEBAQAAAABH0RldkV4cHJl
c3MuVXRpbHMuRGVmYXVsdEJvb2xlYW4DAAAAE1N5c3RlbS5EcmF3aW5nLkljb24JAAAAKERldkV4cHJl
c3MuVXRpbHMuVG9vbFRpcEl0ZW1JbWFnZU9wdGlvbnMCAAAACAgBAgAAAAH2/////P///wIAAAAKCQsA
AAAAAAAAPAEAAAAGDAAAAARab29tBQgAAAAcRGV2RXhwcmVzcy5VdGlscy5Ub29sVGlwSXRlbQcAAAAN
QWxsb3dIdG1sVGV4dARJY29uDEltYWdlT3B0aW9ucwpMZWZ0SW5kZW50CE1heFdpZHRoEk93bmVyQWxs
b3dIdG1sVGV4dARUZXh0BAQEAAAAAR9EZXZFeHByZXNzLlV0aWxzLkRlZmF1bHRCb29sZWFuAwAAABNT
eXN0ZW0uRHJhd2luZy5JY29uCQAAAChEZXZFeHByZXNzLlV0aWxzLlRvb2xUaXBJdGVtSW1hZ2VPcHRp
b25zAgAAAAgIAQIAAAAB8/////z///8CAAAACgkOAAAAAAAAADwBAAAABg8AAAApw4RuZGVybiBkZXIg
Wm9vbS1TdHVmZSBkZXMgUERGLURva3VtZW50cy4FCwAAAChEZXZFeHByZXNzLlV0aWxzLlRvb2xUaXBJ
dGVtSW1hZ2VPcHRpb25zBQAAAAhJbWFnZVVyaQxTdmdJbWFnZVNpemUJQWxpZ25tZW50CkltYWdlSW5k
ZXgTSW1hZ2VUb1RleHREaXN0YW5jZQEEBAAAE1N5c3RlbS5EcmF3aW5nLlNpemUJAAAAJkRldkV4cHJl
c3MuVXRpbHMuVG9vbFRpcEltYWdlQWxpZ25tZW50AgAAAAgIAgAAAAYQAAAAAAXv////E1N5c3RlbS5E
cmF3aW5nLlNpemUCAAAABXdpZHRoBmhlaWdodAAACAgJAAAAAAAAAAAAAAAF7v///yZEZXZFeHByZXNz
LlV0aWxzLlRvb2xUaXBJbWFnZUFsaWdubWVudAEAAAAHdmFsdWVfXwAIAgAAAAAAAAD/////DgAAAAEO
AAAACwAAAAkQAAAAAe3////v////AAAAAAAAAAAB7P///+7///8AAAAA/////w4AAAAL
</value>
</data>
<data name="BarButtonItem1.Caption" xml:space="preserve">
<value>BarButtonItem1</value>
</data>
@ -2080,6 +2094,40 @@
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>1029, 17</value>
</metadata>
<data name="RibbonPage3.Text" xml:space="preserve">
<value>Funktionen</value>
</data>
<data name="RibbonPageGroupConv1.Text" xml:space="preserve">
<value>Aktionen</value>
</data>
<data name="RibbonPageGroupConv_Change.Text" xml:space="preserve">
<value>Beendete Konversationen</value>
</data>
<data name="RibbonPageFile.Text" xml:space="preserve">
<value>Datei</value>
</data>
<data name="RibbonPageGroup3.Text" xml:space="preserve">
<value>Aktionen</value>
</data>
<data name="RibbonPageGroupCustom.Text" xml:space="preserve">
<value>Anhänge zu Beleg</value>
</data>
<data name="RibbonPageGroup2.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAALdEVYdFRpdGxlAEluZm87bRIthgAAAVxJREFUWEfF
l7FxwzAMRT2Bq4yjPp1nyAAZxNu4dZkt0rnLCm4ZPF+gg5LPCLJko3h3Ovn/T5gCSWnXWitF3nwm48Uw
DHPsjYNxNM7Gxbj+wDX3+A0NWpUxsqSAF+Pd+DBaErR48KrMdAGvxslQg2TAS8af7EwBb8anoYKXQAZZ
k/y5AjB8GSrwHsiaFPFfAUzZFv/8N2SOj6NXAE2z5pnPQfatMXsF0LnKuCWMIQtg7aaXmvuCX+oEjLF3
XwxgA1EGifuCX+o6HNwXA9jFlFjivuCXug5H98UAtlIllrgv+KWuw9l9MYD9XIkl7gt+qetwcV8M4FBR
Yon7gl/qOlzdFwPKCyh/BOVNWL4MF21EK5EbUflWDOnDyH3BL3WC7mEE5ccxlL6QOKWvZA6GLWaCjMng
kCkAmLI1PYF3nPZItgCgaejc9BI10OK5NZxiSQHOYz/NqpA3n0fbfQM/tJcKTygMggAAAABJRU5ErkJg
gg==
</value>
</data>
<data name="RibbonPageGroup2.Text" xml:space="preserve">
<value>Information</value>
</data>
<data name="RibbonPage2.Text" xml:space="preserve">
<value>RibbonPage2</value>
</data>

View File

@ -8,6 +8,7 @@ Imports DigitalData.Controls.LookupGrid
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.Modules.Language.Utils
Imports DigitalData.Modules.Language
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.EDMI.API.Constants
Imports DevExpress.XtraBars
@ -15,6 +16,7 @@ Imports DigitalData.GUIs.Common.DocumentResultList
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.ZooFlow.Constants
Imports DigitalData.GUIs.Common
Imports DevExpress.XtraGrid.Columns
Public Class frmValidator
Private Property Current_Document As DocumentResultList.Document = Nothing
@ -3772,7 +3774,7 @@ Public Class frmValidator
LOGGER.Debug("frmValidation_Shown finished!")
End Sub
Private Sub btnSave_Click(sender As System.Object, e As System.EventArgs) Handles btnSave.Click
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
btnSave.Enabled = False
' TODO: Use when working on Validation
@ -3800,7 +3802,7 @@ Public Class frmValidator
Continue For
End If
If oView.UpdateCurrentRow() = False Then
If DoCellValidation(oView) = False Then
oValidation = False
End If
@ -3814,6 +3816,28 @@ Public Class frmValidator
Return True
End Function
Private Function DoCellValidation(pView As GridView) As Boolean
For i As Integer = 0 To pView.DataRowCount - 1
Dim oRowHandle = i
pView.FocusedRowHandle = oRowHandle
For Each oColumn As GridColumn In pView.Columns
pView.FocusedColumn = oColumn
If pView.PostEditor() = True Then
If pView.UpdateCurrentRow() = False Then
Return False
End If
Else
Return False
End If
Next
Next
Return True
End Function
Private Function btnFinish_continue()
Try
Dim oSQL = PROFIL_FINISH_SQL
@ -5074,130 +5098,147 @@ Public Class frmValidator
End Try
Case "DevExpress.XtraGrid.GridControl"
Try
Dim dgv As GridControl = oControl
Dim oGrid As GridControl = oControl
Dim oSettings = New ControlSettings() With {
.IndexName = oIndexName,
.ControlType = Type,
.Name = oControlName,
.IsRequired = oIsRequired,
.IDBAttributeType = oIDBTyp
}
Dim oGridColumnDefinition As DataTable = DT_COLUMNS_GRID.Clone()
Dim oExpression = $"CONTROL_ID = {oControlRow.Item("GUID")}"
DT_COLUMNS_GRID.Select(oExpression, "SEQUENCE").CopyToDataTable(oGridColumnDefinition, LoadOption.PreserveChanges)
Dim oRowCount As Integer = dgv.DataSource.Rows.Count
LOGGER.Debug("Grid Row Count: [{0}]", oRowCount)
'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
If oIsRequired = True And oRowCount = 0 Then
oMissing = True
oErrMsgMissingInput = "Fehlende Eingabe in Tabelle '" & dgv.Name & "'"
oControl.BackColor = Color.Red
LOGGER.Warn(oErrMsgMissingInput)
Dim oResult = ValidateGridControl(oGrid, oSettings, oGridColumnDefinition, oMissing, oErrMsgMissingInput)
If oResult = False Then
Exit For
ElseIf oRowCount > 0 Then
Dim ZeilenGrid As Integer = 0
Dim myVektorArr As String()
'Jeden Werte des Datagridviews durchlaufen
For Each row As DataRow In dgv.DataSource.Rows
Dim exists = False
Select Case oControlType
Case "TABLE"
Dim oRowValue = row.Item(0)
If IsNothing(oRowValue) Then
oRowValue = String.Empty
ElseIf IsDBNull(oRowValue) Then
oRowValue = String.Empty
End If
' MsgBox(row.Cells(0).Value.GetType.ToString)
Dim str As String = String.Empty
'If oRowValue <> String.Empty Then
'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid)
Dim oValueList As New List(Of String)
For Each item In row.ItemArray
item = NotNull(item, String.Empty)
If TypeOf item IsNot String Then item.ToString()
oValueList.Add(item)
Next
str = String.Join(PMDelimiter, oValueList.ToArray)
' 22.10.2021 Attempt at fixing empty lines appearing in indexes
LOGGER.Debug("Grid Value before saving: [{0}]", str)
If str.Trim.Length = 0 Or str.Trim.Replace(PMDelimiter, "").Length = 0 Then
LOGGER.Debug("Empty line in Grid [{0}]. Skipping.", oControlName)
Continue For
End If
'Den Wert im Array speichern
myVektorArr(ZeilenGrid) = str
ZeilenGrid += 1
'Try
' Dim dgv As GridControl = oControl
' Dim oRowCount As Integer = dgv.DataSource.Rows.Count
' LOGGER.Debug("Grid Row Count: [{0}]", oRowCount)
' 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
' If oIsRequired = True And oRowCount = 0 Then
' oMissing = True
' oErrMsgMissingInput = "Fehlende Eingabe in Tabelle '" & dgv.Name & "'"
' oControl.BackColor = Color.Red
' LOGGER.Warn(oErrMsgMissingInput)
' Exit For
' ElseIf oRowCount > 0 Then
' Dim ZeilenGrid As Integer = 0
' Dim myVektorArr As String()
' 'Jeden Werte des Datagridviews durchlaufen
' For Each oRow As DataRow In dgv.DataSource.Rows
' Dim exists = False
' Select Case oControlType
' Case "TABLE"
' Dim oRowValue = oRow.Item(0)
' If IsNothing(oRowValue) Then
' oRowValue = String.Empty
' ElseIf IsDBNull(oRowValue) Then
' oRowValue = String.Empty
' End If
Case Else
' MsgBox(row.Cells(0).Value.GetType.ToString)
If row.Item(0) Is Nothing = False Then
'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid)
'Den Wert im Array speichern
myVektorArr(ZeilenGrid) = row.Item(0).Value.ToString
ZeilenGrid += 1
End If
End Select
' ' MsgBox(row.Cells(0).Value.GetType.ToString)
' Dim str As String = String.Empty
' 'If oRowValue <> String.Empty Then
' 'Das Array anpassen
' ReDim Preserve myVektorArr(ZeilenGrid)
Next
' Dim oValueList As New List(Of String)
' For Each item In oRow.ItemArray
' item = NotNull(item, String.Empty)
' If TypeOf item IsNot String Then item.ToString()
' oValueList.Add(item)
' Next
' str = String.Join(PMDelimiter, oValueList.ToArray)
' ' 22.10.2021 Attempt at fixing empty lines appearing in indexes
' LOGGER.Debug("Grid Value before saving: [{0}]", str)
' If str.Trim.Length = 0 Or str.Trim.Replace(PMDelimiter, "").Length = 0 Then
' LOGGER.Debug("Empty line in Grid [{0}]. Skipping.", oControlName)
' Continue For
' End If
' 'Den Wert im Array speichern
' myVektorArr(ZeilenGrid) = str
' ZeilenGrid += 1
' 'End If
' Case Else
' ' MsgBox(row.Cells(0).Value.GetType.ToString)
' If oRow.Item(0) Is Nothing = False Then
' 'Das Array anpassen
' ReDim Preserve myVektorArr(ZeilenGrid)
' 'Den Wert im Array speichern
' myVektorArr(ZeilenGrid) = oRow.Item(0).Value.ToString
' ZeilenGrid += 1
' End If
' End Select
' Next
If IDB_ACTIVE = False Then
If Indexiere_File(CURRENT_WMFILE, oIndexName, myVektorArr) = False Then
oMissing = True
oErrMsgMissingInput = $"Error while indexing table (1) {dgv.Name} - ERROR: " & idxerr_message
LOGGER.Warn(oErrMsgMissingInput)
Exit For
End If
Else
Dim oMyDT = DT_FOR_ARRAY(myVektorArr)
If oMyDT.Rows.Count > 0 Then
If IDBData.SetVariableValue(oIndexName, oMyDT, True, oIDBTyp) = False Then
oMissing = True
oErrMsgMissingInput = $"Error while indexing table IDB (1) {dgv.Name} - ERROR: " & idxerr_message
LOGGER.Warn(oErrMsgMissingInput)
Exit For
End If
End If
End If
' If IDB_ACTIVE = False Then
' If Indexiere_File(CURRENT_WMFILE, oIndexName, myVektorArr) = False Then
' oMissing = True
' oErrMsgMissingInput = $"Error while indexing table (1) {dgv.Name} - ERROR: " & idxerr_message
' LOGGER.Warn(oErrMsgMissingInput)
' Exit For
' End If
' Else
' Dim oMyDT = DT_FOR_ARRAY(myVektorArr)
' If oMyDT.Rows.Count > 0 Then
' If IDBData.SetVariableValue(oIndexName, oMyDT, True, oIDBTyp) = False Then
' oMissing = True
' oErrMsgMissingInput = $"Error while indexing table IDB (1) {dgv.Name} - ERROR: " & idxerr_message
' LOGGER.Warn(oErrMsgMissingInput)
' Exit For
' End If
' End If
' End If
Else
LOGGER.Debug("Required = False And RowCount > 0")
' Else
' LOGGER.Debug("Required = False And RowCount > 0")
Dim oValue As New List(Of Object) From {String.Empty}
' Dim oValue As New List(Of Object) From {String.Empty}
If IDB_ACTIVE = False Then
If Indexiere_File(CURRENT_WMFILE, oIndexName, oValue.ToArray) = False Then
oMissing = True
'oErrorMessage = "Error while indexing der Tabelle - ERROR: " & idxerr_message
oErrMsgMissingInput = $"Error while indexing table (2) {dgv.Name} - ERROR: " & idxerr_message
LOGGER.Warn(oErrMsgMissingInput)
Exit For
End If
Else
Dim oOldAttributeResult = IDBData.GetVariableValue(oIndexName, oIDBTyp)
Dim oTypeOldResult = oOldAttributeResult.GetType.ToString
If oTypeOldResult = "System.Data.DataTable" Then
Dim oDT As DataTable = IDBData.GetVariableValue(oIndexName, oIDBTyp)
If oDT.Rows.Count > 0 Then
LOGGER.Debug("User cleared the grid, so data needs to be erased!")
IDBData.Delete_AttributeData(CURRENT_DOC_ID, oIndexName)
End If
Else
LOGGER.Debug("(String) User cleared the grid, so data needs to be erased!")
IDBData.Delete_AttributeData(CURRENT_DOC_ID, oIndexName)
End If
' If IDB_ACTIVE = False Then
' If Indexiere_File(CURRENT_WMFILE, oIndexName, oValue.ToArray) = False Then
' oMissing = True
' 'oErrorMessage = "Error while indexing der Tabelle - ERROR: " & idxerr_message
' oErrMsgMissingInput = $"Error while indexing table (2) {dgv.Name} - ERROR: " & idxerr_message
' LOGGER.Warn(oErrMsgMissingInput)
' Exit For
' End If
' Else
' Dim oOldAttributeResult = IDBData.GetVariableValue(oIndexName, oIDBTyp)
' Dim oTypeOldResult = oOldAttributeResult.GetType.ToString
' If oTypeOldResult = "System.Data.DataTable" Then
' Dim oDT As DataTable = IDBData.GetVariableValue(oIndexName, oIDBTyp)
' If oDT.Rows.Count > 0 Then
' LOGGER.Debug("User cleared the grid, so data needs to be erased!")
' IDBData.Delete_AttributeData(CURRENT_DOC_ID, oIndexName)
' End If
' Else
' LOGGER.Debug("(String) User cleared the grid, so data needs to be erased!")
' IDBData.Delete_AttributeData(CURRENT_DOC_ID, oIndexName)
' End If
End If
' End If
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
' End If
'Catch ex As Exception
' LOGGER.Error(ex)
'End Try
End Select
End If 'End If für Control und ReadOnly = False
Next
@ -5226,6 +5267,184 @@ Public Class frmValidator
End Try
End Function
Private Class ControlSettings
Public Name As String
Public IsRequired As Boolean
Public IndexName As String
Public ControlType As String
Public IDBAttributeType As Integer
End Class
Private Function ValidateGridControl(pGrid As GridControl, pSettings As ControlSettings, pColumnDefinition As DataTable, ByRef pMissing As Boolean, ByRef pMissingMessage As String) As Boolean
Try
Dim oRowCount As Integer = pGrid.DataSource.Rows.Count
LOGGER.Debug("Grid Row Count: [{0}]", oRowCount)
'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
If pSettings.IsRequired = True And oRowCount = 0 Then
pMissing = True
pMissingMessage = "Fehlende Eingabe in Tabelle '" & pGrid.Name & "'"
pGrid.BackColor = Color.Red
LOGGER.Warn(pMissingMessage)
'Exit For
Return False
End If
If oRowCount > 0 Then
Dim oView As GridView = pGrid.FocusedView
Dim oDatasource As DataTable = pGrid.DataSource
Dim oRowIndex As Integer = 0
For Each oRow As DataRow In oDatasource.Rows
For Each oColumn As DataColumn In oRow.Table.Columns
Dim oValue = oRow.ItemEx(oColumn.ColumnName, "")
Dim oDefinition = pColumnDefinition.AsEnumerable().
Where(Function(row) row.Item("SPALTENNAME") = oColumn.ColumnName).
FirstOrDefault()
If oDefinition IsNot Nothing Then
Dim oIsRequired = oDefinition.Item("VALIDATION")
If oIsRequired = True And oValue = String.Empty Then
' Translates the visible row index into the internal rowhandle
' they might be different because of sorting
Dim oRowHandle = oView.GetRowHandle(oRowIndex)
oView.FocusedRowHandle = oRowHandle
oView.FocusedColumn = oView.Columns.Item(oColumn.ColumnName)
pMissing = True
pMissingMessage = $"Fehlende Eingabe in Tabelle '{pGrid.Name}' in Spalte '{oDefinition.Item("SPALTEN_HEADER")}', Zeile '{oRowHandle + 1}'"
Return False
End If
End If
Next
oRowIndex += 1
Next
Dim ZeilenGrid As Integer = 0
Dim myVektorArr As String()
'Jeden Werte des Datagridviews durchlaufen
For Each oRow As DataRow In pGrid.DataSource.Rows
Dim exists = False
Select Case pSettings.ControlType
Case "TABLE"
Dim oRowValue = oRow.Item(0)
If IsNothing(oRowValue) Then
oRowValue = String.Empty
ElseIf IsDBNull(oRowValue) Then
oRowValue = String.Empty
End If
' MsgBox(row.Cells(0).Value.GetType.ToString)
Dim str As String = String.Empty
'If oRowValue <> String.Empty Then
'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid)
Dim oValueList As New List(Of String)
For Each item In oRow.ItemArray
item = NotNull(item, String.Empty)
If TypeOf item IsNot String Then item.ToString()
oValueList.Add(item)
Next
str = String.Join(PMDelimiter, oValueList.ToArray)
' 22.10.2021 Attempt at fixing empty lines appearing in indexes
LOGGER.Debug("Grid Value before saving: [{0}]", str)
If str.Trim.Length = 0 Or str.Trim.Replace(PMDelimiter, "").Length = 0 Then
LOGGER.Debug("Empty line in Grid [{0}]. Skipping.", pSettings.Name)
Continue For
End If
'Den Wert im Array speichern
myVektorArr(ZeilenGrid) = str
ZeilenGrid += 1
'End If
Case Else
' MsgBox(row.Cells(0).Value.GetType.ToString)
If oRow.Item(0) Is Nothing = False Then
'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid)
'Den Wert im Array speichern
myVektorArr(ZeilenGrid) = oRow.Item(0).Value.ToString
ZeilenGrid += 1
End If
End Select
Next
If IDB_ACTIVE = False Then
If Indexiere_File(CURRENT_WMFILE, pSettings.IndexName, myVektorArr) = False Then
pMissing = True
pMissingMessage = $"Error while indexing table (1) {pGrid.Name} - ERROR: " & idxerr_message
LOGGER.Warn(pMissingMessage)
'Exit For
Return False
End If
Else
Dim oMyDT = DT_FOR_ARRAY(myVektorArr)
If oMyDT.Rows.Count > 0 Then
If IDBData.SetVariableValue(pSettings.IndexName, oMyDT, True, pSettings.IDBAttributeType) = False Then
pMissing = True
pMissingMessage = $"Error while indexing table IDB (1) {pGrid.Name} - ERROR: " & idxerr_message
LOGGER.Warn(pMissingMessage)
'Exit For
Return False
End If
End If
End If
Else ' Row Count = 0
Dim oValue As New List(Of Object) From {String.Empty}
If IDB_ACTIVE = False Then
If Indexiere_File(CURRENT_WMFILE, pSettings.IndexName, oValue.ToArray) = False Then
pMissing = True
'oErrorMessage = "Error while indexing der Tabelle - ERROR: " & idxerr_message
pMissingMessage = $"Error while indexing table (2) {pGrid.Name} - ERROR: " & idxerr_message
LOGGER.Warn(pMissingMessage)
'Exit For
Return False
End If
Else
Dim oOldAttributeResult = IDBData.GetVariableValue(pSettings.IndexName, pSettings.IDBAttributeType)
Dim oTypeOldResult = oOldAttributeResult.GetType.ToString
If oTypeOldResult = "System.Data.DataTable" Then
Dim oDT As DataTable = IDBData.GetVariableValue(pSettings.IndexName, pSettings.IDBAttributeType)
If oDT.Rows.Count > 0 Then
LOGGER.Debug("User cleared the grid, so data needs to be erased!")
IDBData.Delete_AttributeData(CURRENT_DOC_ID, pSettings.IndexName)
End If
Else
LOGGER.Debug("(String) User cleared the grid, so data needs to be erased!")
IDBData.Delete_AttributeData(CURRENT_DOC_ID, pSettings.IndexName)
End If
End If
End If
Return True
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End Function
Private Function Indexiere_File(_dok As WINDREAMLib.WMObject, pIndexName As String, pIndexValues As Object) As Boolean
Dim File_indexiert As Boolean = False
idxerr_message = ""