diff --git a/app/DD_PM_WINDREAM/App.config b/app/DD_PM_WINDREAM/App.config
index c5ec99d..d3c8393 100644
--- a/app/DD_PM_WINDREAM/App.config
+++ b/app/DD_PM_WINDREAM/App.config
@@ -6,7 +6,8 @@
-
+
@@ -40,6 +41,12 @@
0, 0
+
+ 0, 0
+
+
+ 0, 0
+
diff --git a/app/DD_PM_WINDREAM/ClassControlCreator.vb b/app/DD_PM_WINDREAM/ClassControlCreator.vb
index 8688d4b..fb538ad 100644
--- a/app/DD_PM_WINDREAM/ClassControlCreator.vb
+++ b/app/DD_PM_WINDREAM/ClassControlCreator.vb
@@ -350,4 +350,72 @@ Public Class ClassControlCreator
e.Graphics.DrawLine(New Pen(ForeColor, 100), New Point(0, 0), New Point(e.ClipRectangle.Width, 2))
End Sub
End Class
+
+ Public Shared Function GET_CONTROL_PROPERTIES(DT_CONTROL As DataTable, ControlName As String)
+ Try
+ CURRENT_CONTROL_ID = 0
+ CURR_CON_ID = 0
+ CURR_SELECT_CONTROL = ""
+ CURR_CHOICE_LIST = ""
+ Dim dt As New DataTable
+ dt = DT_CONTROL
+ ' Define the filter
+ Dim filter As String = "NAME = '" & ControlName & "'"
+ ' Filter the rows using Select() method of DataTable
+ Dim FilteredRows As DataRow() = dt.Select(filter)
+ If FilteredRows.Count = 1 Then
+ For Each row As DataRow In FilteredRows
+ CURRENT_CONTROL_ID = row("GUID")
+ CURR_CON_ID = row("CONNECTION_ID")
+ CURR_SELECT_CONTROL = row("SQL_UEBERPRUEFUNG")
+ CURR_CHOICE_LIST = row("CHOICE_LIST")
+ Next
+ Return 1
+ Else
+ Return 0
+ End If
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in GET_CONTROL_PROPERTIES (" & ControlName & "):" & ex.Message)
+ Return 0
+ End Try
+
+ End Function
+ Public Shared Function GET_DEPENDING_CONTROLS(DT_CONTROLS As DataTable, ControlName As String)
+ Try
+ Dim dt As New DataTable
+ dt = DT_CONTROLS
+ ' Define the filter
+ Dim filter As String = String.Format("SQL_UEBERPRUEFUNG LIKE '%{0}%'", ControlName)
+ Dim FilteredRows As DataRow() = dt.Select(filter)
+ CURR_DT_DEPENDING_CONTROLS = Nothing
+ If FilteredRows.Length > 0 Then
+ CURR_DT_DEPENDING_CONTROLS = FilteredRows.CopyToDataTable
+ End If
+
+ Return True
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in GET_DEPENDING_CONTROLS (" & ControlName & "):" & ex.Message)
+ Return 0
+ End Try
+ End Function
+ Public Shared Function GET_CONNECTION_INFO(CON_ID As Integer)
+ Try
+
+ Dim dt As New DataTable
+ dt = CURRENT_DT_TBDD_CONNECTION
+ ' Define the filter
+ Dim filter As String = "GUID = " & CON_ID
+ ' Filter the rows using Select() method of DataTable
+ Dim FilteredRows As DataRow() = dt.Select(filter)
+ If FilteredRows.Count = 1 Then
+ Return FilteredRows
+ Else
+ Return Nothing
+ End If
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in GET_CONNECTION_INFO (" & CON_ID.ToString & "):" & ex.Message)
+ Return Nothing
+ End Try
+
+ End Function
End Class
diff --git a/app/DD_PM_WINDREAM/ClassInit.vb b/app/DD_PM_WINDREAM/ClassInit.vb
index 4ea9370..7a5f5d2 100644
--- a/app/DD_PM_WINDREAM/ClassInit.vb
+++ b/app/DD_PM_WINDREAM/ClassInit.vb
@@ -83,12 +83,13 @@ Public Class ClassInit
Dim sql = String.Format("SELECT * FROM TBDD_USER WHERE LOWER(USERNAME) = LOWER('{0}')", Environment.UserName)
ClassLogger.Add(">> Username: " & USER_USERNAME, False)
- Dim dt As DataTable = ClassDatabase.Return_Datatable(sql)
- CURRENT_USER_ID = dt.Rows(0).Item("GUID")
- CURRENT_USER_SURNAME = dt.Rows(0).Item("NAME")
- CURRENT_USER_PRENAME = dt.Rows(0).Item("PRENAME")
- CURRENT_USER_SHORTNAME = dt.Rows(0).Item("SHORTNAME")
- CURRENT_USER_EMAIL = dt.Rows(0).Item("EMAIL")
+ Dim dtUser As DataTable = ClassDatabase.Return_Datatable(sql)
+ CURRENT_USER_ID = dtUser.Rows(0).Item("GUID")
+ CURRENT_USER_SURNAME = dtUser.Rows(0).Item("NAME")
+ CURRENT_USER_PRENAME = dtUser.Rows(0).Item("PRENAME")
+ CURRENT_USER_SHORTNAME = dtUser.Rows(0).Item("SHORTNAME")
+ CURRENT_USER_EMAIL = dtUser.Rows(0).Item("EMAIL")
+ CURRENT_USER_LANGUAGE = dtUser.Rows(0).Item("LANGUAGE")
If IsDBNull(CURRENT_USER_ID) Or IsNothing(CURRENT_USER_ID) Then
USER_EXISTS = False
@@ -139,6 +140,9 @@ Public Class ClassInit
Try
Dim sql = String.Format("select * from TBPM_KONFIGURATION WHERE GUID = 1")
CURRENT_DT_CONFIG = ClassDatabase.Return_Datatable(sql)
+
+ sql = "select * from TBDD_CONNECTION"
+ CURRENT_DT_TBDD_CONNECTION = ClassDatabase.Return_Datatable(sql)
Catch ex As Exception
ClassLogger.Add("Unexpected Error in InitBasics: " & ex.Message, True)
ERROR_STATE = "Basics not initialized"
diff --git a/app/DD_PM_WINDREAM/ClassPatterns.vb b/app/DD_PM_WINDREAM/ClassPatterns.vb
index c85457d..1be5103 100644
--- a/app/DD_PM_WINDREAM/ClassPatterns.vb
+++ b/app/DD_PM_WINDREAM/ClassPatterns.vb
@@ -49,7 +49,7 @@ Public Class ClassPatterns
result = ReplaceInternalValues(result)
result = ReplaceControlValues(result, panel)
- result = ReplaceWindreamIndicies(result, document)
+ If Not IsNothing(document) Then result = ReplaceWindreamIndicies(result, document)
result = ReplaceUserValues(result, prename, surname, shortname, email)
Return result
diff --git a/app/DD_PM_WINDREAM/ClassWorkDoc.vb b/app/DD_PM_WINDREAM/ClassWorkDoc.vb
new file mode 100644
index 0000000..0c1387d
--- /dev/null
+++ b/app/DD_PM_WINDREAM/ClassWorkDoc.vb
@@ -0,0 +1,5 @@
+Public Class ClassWorkDoc
+ Public Shared Function WORK_HISTORY(DT_PROFIL As DataTable, single_doc As Boolean)
+
+ End Function
+End Class
diff --git a/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj b/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
index e31b773..caa1b57 100644
--- a/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
+++ b/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
@@ -160,6 +160,7 @@
+
frmAbout.vb
@@ -229,6 +230,12 @@
Form
+
+ frmMassValidator.vb
+
+
+ Form
+
frmProfileDesigner.vb
@@ -329,6 +336,9 @@
frmMain.vb
+
+ frmMassValidator.vb
+
frmProfileDesigner.vb
Designer
diff --git a/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb b/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
index bbbcaae..aa07ebd 100644
--- a/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
+++ b/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
@@ -23,6 +23,7 @@ Module ModuleRuntimeVariables
Public CURRENT_USER_SURNAME
Public CURRENT_USER_SHORTNAME
Public CURRENT_USER_EMAIL
+ Public CURRENT_USER_LANGUAGE As String = "de-DE"
Public USER_EXISTS = False
Public USER_IN_MODULE = False
@@ -36,10 +37,20 @@ Module ModuleRuntimeVariables
Public CURRENT_SQL_CON As Integer
Public CURRENT_SQL_COMAMND As String
Public CURRENT_DT_SQL_CONFIG_TABLE As DataTable
+ Public CURRENT_DT_TBDD_CONNECTION As DataTable
Public CURRENT_DT_CONFIG As DataTable
Public CURRENT_CLICKED_PROFILE_ID As Integer = 0
Public CURRENT_CLICKED_PROFILE_TITLE As String
+ Public CURR_CON_ID As Integer
+ Public CURR_SELECT_CONTROL As String
+ Public CURR_CHOICE_LIST As String
+
+ Public CURR_DT_DEPENDING_CONTROLS As DataTable 'enthält zur Laufzeit die abhängigen Controls
+
+
+ Public CURRENT_DT_MASS_CHANGE_DOCS As DataTable
+
Public CURRENT_DT_FINAL_INDEXING As DataTable
Public CURRENT_DT_PROFILE As DataTable
diff --git a/app/DD_PM_WINDREAM/My Project/Settings.Designer.vb b/app/DD_PM_WINDREAM/My Project/Settings.Designer.vb
index d6cabee..e404cf5 100644
--- a/app/DD_PM_WINDREAM/My Project/Settings.Designer.vb
+++ b/app/DD_PM_WINDREAM/My Project/Settings.Designer.vb
@@ -15,7 +15,7 @@ Option Explicit On
Namespace My
_
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
@@ -180,6 +180,30 @@ Namespace My
Me("frmValidatorPosition") = value
End Set
End Property
+
+ _
+ Public Property frmMassValidatorSize() As Global.System.Drawing.Size
+ Get
+ Return CType(Me("frmMassValidatorSize"),Global.System.Drawing.Size)
+ End Get
+ Set
+ Me("frmMassValidatorSize") = value
+ End Set
+ End Property
+
+ _
+ Public Property frmMassValidatorposition() As Global.System.Drawing.Point
+ Get
+ Return CType(Me("frmMassValidatorposition"),Global.System.Drawing.Point)
+ End Get
+ Set
+ Me("frmMassValidatorposition") = value
+ End Set
+ End Property
End Class
End Namespace
diff --git a/app/DD_PM_WINDREAM/My Project/Settings.settings b/app/DD_PM_WINDREAM/My Project/Settings.settings
index e8d06f7..a31be12 100644
--- a/app/DD_PM_WINDREAM/My Project/Settings.settings
+++ b/app/DD_PM_WINDREAM/My Project/Settings.settings
@@ -37,5 +37,11 @@
0, 0
+
+ 0, 0
+
+
+ 0, 0
+
\ No newline at end of file
diff --git a/app/DD_PM_WINDREAM/frmError.Designer.vb b/app/DD_PM_WINDREAM/frmError.Designer.vb
index 863baff..d2e5ea1 100644
--- a/app/DD_PM_WINDREAM/frmError.Designer.vb
+++ b/app/DD_PM_WINDREAM/frmError.Designer.vb
@@ -85,7 +85,7 @@ Partial Class frmError
Me.MinimizeBox = False
Me.Name = "frmError"
Me.ShowInTaskbar = False
- Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
+ Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Fehlermeldung:"
Me.TopMost = True
Me.ResumeLayout(False)
diff --git a/app/DD_PM_WINDREAM/frmFormDesigner.vb b/app/DD_PM_WINDREAM/frmFormDesigner.vb
index f0e5f08..bced4a2 100644
--- a/app/DD_PM_WINDREAM/frmFormDesigner.vb
+++ b/app/DD_PM_WINDREAM/frmFormDesigner.vb
@@ -751,7 +751,7 @@ Public Class frmFormDesigner
Dim fontSize As Integer = Math.Truncate(font.SizeInPoints)
UpdateSingleValue("FONT_SIZE", fontSize)
UpdateSingleValue("FONT_FAMILY", font.FontFamily.Name)
- UpdateSingleValue("FONT_STYLE", font.Style.ToString)
+ UpdateSingleValue("FONT_STYLE", CInt(font.Style))
CurrentControl.Font = font
Case "TextColor"
@@ -785,10 +785,12 @@ Public Class frmFormDesigner
End If
Try
- ClassDatabase.Execute_non_Query($"UPDATE TBPM_PROFILE_CONTROLS SET {columnName} = {escapedValue}, CHANGED_WHO = '{Environment.UserName}' WHERE GUID = {guid}")
+ If ClassDatabase.Execute_non_Query($"UPDATE TBPM_PROFILE_CONTROLS SET {columnName} = {escapedValue}, CHANGED_WHO = '{Environment.UserName}' WHERE GUID = {guid}", True) = True Then
+ tslblAenderungen.Visible = True
+ tslblAenderungen.Text = "Änderungen gespeichert - " & Now
+ End If
+
- tslblAenderungen.Visible = True
- tslblAenderungen.Text = "Änderungen gespeichert - " & Now
Catch ex As Exception
Dim msg = $"UpdateSingleValue - Fehler beim Speichern von Control (Id: {guid}, column: {columnName}): {vbCrLf}{ex.Message}"
MsgBox(msg)
diff --git a/app/DD_PM_WINDREAM/frmMain.Designer.vb b/app/DD_PM_WINDREAM/frmMain.Designer.vb
index 1a457fb..6190442 100644
--- a/app/DD_PM_WINDREAM/frmMain.Designer.vb
+++ b/app/DD_PM_WINDREAM/frmMain.Designer.vb
@@ -57,6 +57,11 @@ Partial Class frmMain
Me.tslblmessage = New System.Windows.Forms.ToolStripStatusLabel()
Me.Panel1 = New System.Windows.Forms.Panel()
Me.GridControl_Docs = New DevExpress.XtraGrid.GridControl()
+ Me.ContextMenuGrid = New System.Windows.Forms.ContextMenuStrip(Me.components)
+ Me.CMGroupStart = New System.Windows.Forms.ToolStripMenuItem()
+ Me.CMFileStart = New System.Windows.Forms.ToolStripMenuItem()
+ Me.MarkierteDateienAbschliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+ Me.TabellenlayoutZurücksetzenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.GridView_Docs = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.lblViewType = New System.Windows.Forms.Label()
Me.NavBarControl1 = New DevExpress.XtraNavBar.NavBarControl()
@@ -66,11 +71,6 @@ Partial Class frmMain
Me.NavBarGroupMore = New DevExpress.XtraNavBar.NavBarGroup()
Me.NavBarItemOverview = New DevExpress.XtraNavBar.NavBarItem()
Me.NavBarItemDashboard = New DevExpress.XtraNavBar.NavBarItem()
- Me.ContextMenuGrid = New System.Windows.Forms.ContextMenuStrip(Me.components)
- Me.CMGroupStart = New System.Windows.Forms.ToolStripMenuItem()
- Me.CMFileStart = New System.Windows.Forms.ToolStripMenuItem()
- Me.MarkierteDateienAbschliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
- Me.TabellenlayoutZurücksetzenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.NotifyIcon1 = New System.Windows.Forms.NotifyIcon(Me.components)
Me.TimerRefresh = New System.Windows.Forms.Timer(Me.components)
Me.VWPM_PROFILE_USERBindingSource = New System.Windows.Forms.BindingSource(Me.components)
@@ -82,6 +82,18 @@ Partial Class frmMain
Me.TBPM_PROFILE_FILESBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.TBPM_PROFILE_FILESTableAdapter = New DD_PM_WINDREAM.DD_DMSLiteDataSetTableAdapters.TBPM_PROFILE_FILESTableAdapter()
Me.TimerReminder = New System.Windows.Forms.Timer(Me.components)
+ Me.BindingNavigator1 = New System.Windows.Forms.BindingNavigator(Me.components)
+ Me.BindingNavigatorMoveFirstItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorMovePreviousItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorSeparator = New System.Windows.Forms.ToolStripSeparator()
+ Me.BindingNavigatorPositionItem = New System.Windows.Forms.ToolStripTextBox()
+ Me.BindingNavigatorCountItem = New System.Windows.Forms.ToolStripLabel()
+ Me.BindingNavigatorSeparator1 = New System.Windows.Forms.ToolStripSeparator()
+ Me.BindingNavigatorMoveNextItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorMoveLastItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorSeparator2 = New System.Windows.Forms.ToolStripSeparator()
+ Me.pnlNavigator = New System.Windows.Forms.Panel()
+ Me.bindsourcegrid = New System.Windows.Forms.BindingSource(Me.components)
CType(Me.SplitContainerDashboard, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerDashboard.Panel1.SuspendLayout()
Me.SplitContainerDashboard.Panel2.SuspendLayout()
@@ -104,14 +116,18 @@ Partial Class frmMain
Me.StatusStrip1.SuspendLayout()
Me.Panel1.SuspendLayout()
CType(Me.GridControl_Docs, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.ContextMenuGrid.SuspendLayout()
CType(Me.GridView_Docs, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.cmsNavPane.SuspendLayout()
- Me.ContextMenuGrid.SuspendLayout()
CType(Me.VWPM_PROFILE_USERBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_USERBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_KONFIGURATIONBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_PROFILE_FILESBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.BindingNavigator1, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.BindingNavigator1.SuspendLayout()
+ Me.pnlNavigator.SuspendLayout()
+ CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'SplitContainerDashboard
@@ -350,6 +366,7 @@ Partial Class frmMain
'
'Panel1
'
+ Me.Panel1.Controls.Add(Me.pnlNavigator)
Me.Panel1.Controls.Add(Me.GridControl_Docs)
Me.Panel1.Controls.Add(Me.lblViewType)
Me.Panel1.Controls.Add(Me.NavBarControl1)
@@ -366,6 +383,34 @@ Partial Class frmMain
Me.GridControl_Docs.Name = "GridControl_Docs"
Me.GridControl_Docs.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView_Docs})
'
+ 'ContextMenuGrid
+ '
+ Me.ContextMenuGrid.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.CMGroupStart, Me.CMFileStart, Me.MarkierteDateienAbschliessenToolStripMenuItem, Me.TabellenlayoutZurücksetzenToolStripMenuItem})
+ Me.ContextMenuGrid.Name = "ContextMenuStrip1"
+ resources.ApplyResources(Me.ContextMenuGrid, "ContextMenuGrid")
+ '
+ 'CMGroupStart
+ '
+ Me.CMGroupStart.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.database_go
+ Me.CMGroupStart.Name = "CMGroupStart"
+ resources.ApplyResources(Me.CMGroupStart, "CMGroupStart")
+ '
+ 'CMFileStart
+ '
+ Me.CMFileStart.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.shape_square_go
+ Me.CMFileStart.Name = "CMFileStart"
+ resources.ApplyResources(Me.CMFileStart, "CMFileStart")
+ '
+ 'MarkierteDateienAbschliessenToolStripMenuItem
+ '
+ resources.ApplyResources(Me.MarkierteDateienAbschliessenToolStripMenuItem, "MarkierteDateienAbschliessenToolStripMenuItem")
+ Me.MarkierteDateienAbschliessenToolStripMenuItem.Name = "MarkierteDateienAbschliessenToolStripMenuItem"
+ '
+ 'TabellenlayoutZurücksetzenToolStripMenuItem
+ '
+ Me.TabellenlayoutZurücksetzenToolStripMenuItem.Name = "TabellenlayoutZurücksetzenToolStripMenuItem"
+ resources.ApplyResources(Me.TabellenlayoutZurücksetzenToolStripMenuItem, "TabellenlayoutZurücksetzenToolStripMenuItem")
+ '
'GridView_Docs
'
Me.GridView_Docs.Appearance.EvenRow.BackColor = CType(resources.GetObject("GridView_Docs.Appearance.EvenRow.BackColor"), System.Drawing.Color)
@@ -375,8 +420,10 @@ Partial Class frmMain
Me.GridView_Docs.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[True]
Me.GridView_Docs.OptionsBehavior.Editable = False
Me.GridView_Docs.OptionsSelection.MultiSelect = True
+ Me.GridView_Docs.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect
Me.GridView_Docs.OptionsView.ColumnAutoWidth = False
Me.GridView_Docs.OptionsView.EnableAppearanceEvenRow = True
+ Me.GridView_Docs.OptionsView.ShowAutoFilterRow = True
'
'lblViewType
'
@@ -434,35 +481,6 @@ Partial Class frmMain
resources.ApplyResources(Me.NavBarItemDashboard, "NavBarItemDashboard")
Me.NavBarItemDashboard.Name = "NavBarItemDashboard"
'
- 'ContextMenuGrid
- '
- Me.ContextMenuGrid.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.CMGroupStart, Me.CMFileStart, Me.MarkierteDateienAbschliessenToolStripMenuItem, Me.TabellenlayoutZurücksetzenToolStripMenuItem})
- Me.ContextMenuGrid.Name = "ContextMenuStrip1"
- resources.ApplyResources(Me.ContextMenuGrid, "ContextMenuGrid")
- '
- 'CMGroupStart
- '
- Me.CMGroupStart.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.database_go
- Me.CMGroupStart.Name = "CMGroupStart"
- resources.ApplyResources(Me.CMGroupStart, "CMGroupStart")
- '
- 'CMFileStart
- '
- Me.CMFileStart.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.shape_square_go
- Me.CMFileStart.Name = "CMFileStart"
- resources.ApplyResources(Me.CMFileStart, "CMFileStart")
- '
- 'MarkierteDateienAbschliessenToolStripMenuItem
- '
- Me.MarkierteDateienAbschliessenToolStripMenuItem.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.Checked_outforEdit_Color_13297
- Me.MarkierteDateienAbschliessenToolStripMenuItem.Name = "MarkierteDateienAbschliessenToolStripMenuItem"
- resources.ApplyResources(Me.MarkierteDateienAbschliessenToolStripMenuItem, "MarkierteDateienAbschliessenToolStripMenuItem")
- '
- 'TabellenlayoutZurücksetzenToolStripMenuItem
- '
- Me.TabellenlayoutZurücksetzenToolStripMenuItem.Name = "TabellenlayoutZurücksetzenToolStripMenuItem"
- resources.ApplyResources(Me.TabellenlayoutZurücksetzenToolStripMenuItem, "TabellenlayoutZurücksetzenToolStripMenuItem")
- '
'NotifyIcon1
'
Me.NotifyIcon1.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info
@@ -511,6 +529,77 @@ Partial Class frmMain
'TimerReminder
'
'
+ 'BindingNavigator1
+ '
+ Me.BindingNavigator1.AddNewItem = Nothing
+ Me.BindingNavigator1.BindingSource = Me.bindsourcegrid
+ Me.BindingNavigator1.CountItem = Me.BindingNavigatorCountItem
+ Me.BindingNavigator1.CountItemFormat = "von {0} Dateien"
+ Me.BindingNavigator1.DeleteItem = Nothing
+ resources.ApplyResources(Me.BindingNavigator1, "BindingNavigator1")
+ Me.BindingNavigator1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BindingNavigatorMoveFirstItem, Me.BindingNavigatorMovePreviousItem, Me.BindingNavigatorSeparator, Me.BindingNavigatorPositionItem, Me.BindingNavigatorCountItem, Me.BindingNavigatorSeparator1, Me.BindingNavigatorMoveNextItem, Me.BindingNavigatorMoveLastItem, Me.BindingNavigatorSeparator2})
+ Me.BindingNavigator1.MoveFirstItem = Me.BindingNavigatorMoveFirstItem
+ Me.BindingNavigator1.MoveLastItem = Me.BindingNavigatorMoveLastItem
+ Me.BindingNavigator1.MoveNextItem = Me.BindingNavigatorMoveNextItem
+ Me.BindingNavigator1.MovePreviousItem = Me.BindingNavigatorMovePreviousItem
+ Me.BindingNavigator1.Name = "BindingNavigator1"
+ Me.BindingNavigator1.PositionItem = Me.BindingNavigatorPositionItem
+ '
+ 'BindingNavigatorMoveFirstItem
+ '
+ Me.BindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ resources.ApplyResources(Me.BindingNavigatorMoveFirstItem, "BindingNavigatorMoveFirstItem")
+ Me.BindingNavigatorMoveFirstItem.Name = "BindingNavigatorMoveFirstItem"
+ '
+ 'BindingNavigatorMovePreviousItem
+ '
+ Me.BindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ resources.ApplyResources(Me.BindingNavigatorMovePreviousItem, "BindingNavigatorMovePreviousItem")
+ Me.BindingNavigatorMovePreviousItem.Name = "BindingNavigatorMovePreviousItem"
+ '
+ 'BindingNavigatorSeparator
+ '
+ Me.BindingNavigatorSeparator.Name = "BindingNavigatorSeparator"
+ resources.ApplyResources(Me.BindingNavigatorSeparator, "BindingNavigatorSeparator")
+ '
+ 'BindingNavigatorPositionItem
+ '
+ resources.ApplyResources(Me.BindingNavigatorPositionItem, "BindingNavigatorPositionItem")
+ Me.BindingNavigatorPositionItem.Name = "BindingNavigatorPositionItem"
+ '
+ 'BindingNavigatorCountItem
+ '
+ Me.BindingNavigatorCountItem.Name = "BindingNavigatorCountItem"
+ resources.ApplyResources(Me.BindingNavigatorCountItem, "BindingNavigatorCountItem")
+ '
+ 'BindingNavigatorSeparator1
+ '
+ Me.BindingNavigatorSeparator1.Name = "BindingNavigatorSeparator"
+ resources.ApplyResources(Me.BindingNavigatorSeparator1, "BindingNavigatorSeparator1")
+ '
+ 'BindingNavigatorMoveNextItem
+ '
+ Me.BindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ resources.ApplyResources(Me.BindingNavigatorMoveNextItem, "BindingNavigatorMoveNextItem")
+ Me.BindingNavigatorMoveNextItem.Name = "BindingNavigatorMoveNextItem"
+ '
+ 'BindingNavigatorMoveLastItem
+ '
+ Me.BindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ resources.ApplyResources(Me.BindingNavigatorMoveLastItem, "BindingNavigatorMoveLastItem")
+ Me.BindingNavigatorMoveLastItem.Name = "BindingNavigatorMoveLastItem"
+ '
+ 'BindingNavigatorSeparator2
+ '
+ Me.BindingNavigatorSeparator2.Name = "BindingNavigatorSeparator"
+ resources.ApplyResources(Me.BindingNavigatorSeparator2, "BindingNavigatorSeparator2")
+ '
+ 'pnlNavigator
+ '
+ resources.ApplyResources(Me.pnlNavigator, "pnlNavigator")
+ Me.pnlNavigator.Controls.Add(Me.BindingNavigator1)
+ Me.pnlNavigator.Name = "pnlNavigator"
+ '
'frmMain
'
resources.ApplyResources(Me, "$this")
@@ -548,14 +637,20 @@ Partial Class frmMain
Me.Panel1.ResumeLayout(False)
Me.Panel1.PerformLayout()
CType(Me.GridControl_Docs, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.ContextMenuGrid.ResumeLayout(False)
CType(Me.GridView_Docs, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.cmsNavPane.ResumeLayout(False)
- Me.ContextMenuGrid.ResumeLayout(False)
CType(Me.VWPM_PROFILE_USERBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_USERBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_KONFIGURATIONBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_PROFILE_FILESBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.BindingNavigator1, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.BindingNavigator1.ResumeLayout(False)
+ Me.BindingNavigator1.PerformLayout()
+ Me.pnlNavigator.ResumeLayout(False)
+ Me.pnlNavigator.PerformLayout()
+ CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -618,4 +713,16 @@ Partial Class frmMain
Friend WithEvents MarkierteDateienAbschliessenToolStripMenuItem As ToolStripMenuItem
Friend WithEvents GridControl_Docs As DevExpress.XtraGrid.GridControl
Friend WithEvents GridView_Docs As DevExpress.XtraGrid.Views.Grid.GridView
+ Friend WithEvents pnlNavigator As Panel
+ Friend WithEvents BindingNavigator1 As BindingNavigator
+ Friend WithEvents BindingNavigatorCountItem As ToolStripLabel
+ Friend WithEvents BindingNavigatorMoveFirstItem As ToolStripButton
+ Friend WithEvents BindingNavigatorMovePreviousItem As ToolStripButton
+ Friend WithEvents BindingNavigatorSeparator As ToolStripSeparator
+ Friend WithEvents BindingNavigatorPositionItem As ToolStripTextBox
+ Friend WithEvents BindingNavigatorSeparator1 As ToolStripSeparator
+ Friend WithEvents BindingNavigatorMoveNextItem As ToolStripButton
+ Friend WithEvents BindingNavigatorMoveLastItem As ToolStripButton
+ Friend WithEvents BindingNavigatorSeparator2 As ToolStripSeparator
+ Friend WithEvents bindsourcegrid As BindingSource
End Class
diff --git a/app/DD_PM_WINDREAM/frmMain.resx b/app/DD_PM_WINDREAM/frmMain.resx
index 902af9d..ec65ddc 100644
--- a/app/DD_PM_WINDREAM/frmMain.resx
+++ b/app/DD_PM_WINDREAM/frmMain.resx
@@ -478,7 +478,7 @@
Panel1
- 4
+ 5
770, 17
@@ -488,7 +488,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
- CAAAAk1TRnQBSQFMAgEBAgEAAWwBAwFsAQMBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ CAAAAk1TRnQBSQFMAgEBAgEAAYQBAwGEAQMBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -547,30 +547,6 @@
Tahoma, 9pt
-
- 0, 0
-
-
- 1023, 25
-
-
- 2
-
-
- ToolStrip1
-
-
- ToolStrip1
-
-
- System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Panel1
-
-
- 3
-
Segoe UI, 9pt, style=Bold, Italic
@@ -628,36 +604,36 @@
Aktualisieren
+
+ 0, 0
+
+
+ 1023, 25
+
+
+ 2
+
+
+ ToolStrip1
+
+
+ ToolStrip1
+
+
+ System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Panel1
+
+
+ 4
+
1015, 17
Tahoma, 9pt
-
- 0, 502
-
-
- 1023, 25
-
-
- 3
-
-
- StatusStrip1
-
-
- StatusStrip1
-
-
- System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 3
-
146, 20
@@ -703,12 +679,235 @@
0, 20
+
+ 0, 502
+
+
+ 1023, 25
+
+
+ 3
+
+
+ StatusStrip1
+
+
+ StatusStrip1
+
+
+ System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ $this
+
+
+ 3
+
+
+ Top, Left, Right
+
+
+ 500, 134
+
+
+ 654, 134
+
+
+ 87, 22
+
+
+ von {0} Dateien
+
+
+ Die Gesamtanzahl der Elemente.
+
+
+ Fill
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEqSURBVDhPYxg8oHDW8/9NC57/z5z4+D9UCAOEtz/AKceQ
+ O/PZ/1VH3v/HpSi++8H/4IZruA3ImPL0/8J9H7Aqiu95+H/p/v///asv4DYgoefJ/2lb3mMoimi/D9ac
+ Oev/f6/SE7gNiOx69L939QcURaGt98CaW9cBbe/8+98l/wBuAwKbH/6vm/8Orii45e7/RXv//+8Aas6Y
+ 8/O/Xd3P//YZ23Eb4FF1/3/+tDcoiuyKb/9Pn/P7v3/Xt/86he/+WySsx22Afend/9mTX2Mo0k85/9+k
+ 6MV/laxP/40jl+E2wCLvzv/U/tdYFRkknfgvm/b1v27wPNwGGGbd/h/W8hKnIv3Uy/81fKfhNkAn7cZ/
+ v+qHeBWpeEzAbYBT7pX/IAV4FQ1CwMAAAPB2wKul5ZpwAAAAAElFTkSuQmCC
+
+
+
+ True
+
+
+ 23, 22
+
+
+ Erste verschieben
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAC2SURBVDhPYxg6ILz9wX8ok3QQ3/3gf3DDNfIMiO95+H/p
+ /v///asvkG5ARPt9sObMWf//e5WeIM2A0NZ7YM2t64C2d/7975J/gHgDglvu/l+09///DqDmjDk//9vV
+ /fxvn7GdNBfYFd/+nz7n93//rm//dQrf/bdIWE96GOinnP9vUvTiv0rWp//GkctINwAEDJJO/JdN+/pf
+ N3geeQaAgH7q5f8avtPINwAEVDwmUGbAYAUMDADQFGCYBLpQVQAAAABJRU5ErkJggg==
+
+
+
+ True
+
+
+ 23, 22
+
+
+ Vorherige verschieben
+
+
+ 6, 25
+
+
+ Position
+
+
+ False
+
+
+ 50, 23
+
+
+ 0
+
+
+ Aktuelle Position
+
+
+ 6, 25
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACjSURBVDhPYxh8oHDW8/9QJnkgd+az/wnd98g3JGPK0//z
+ 9v/+n9B1hzxDEnqe/J+979f/zq1//7uVXibdkMiuR/+nbPv1v2Tp3/8J0//+t8k9S5ohgc0P/7eufQ/W
+ bFzy5b909LX/xpHLiDfEo+r+/5K57+CaFV16SHOBfend/4Etz8jTDAIWeXf+2xRcIU8zCBhm3SZfMwjo
+ pN0gX/NQBAwMAKB+X6AHNEI4AAAAAElFTkSuQmCC
+
+
+
+ True
+
+
+ 23, 22
+
+
+ Nächste verschieben
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEsSURBVDhPYxhcoHDW8/9QJgYAyTUteP4/c+JjnGoYcmc+
+ +5/QfQ+rApDcqiPv/4e3P8BtQMaUp//n7f/9P6HrDoYikNzCfR/+Bzdcw21AQs+T/7P3/frfufXvf7fS
+ yygKQXLTtrz/7199AbcBkV2P/k/Z9ut/ydK//xOm//1vk3sWrhgk17v6w3+v0hO4DQhsfvi/de17sGbj
+ ki//paOv/TeOXAbWAJKrm//uv0v+AdwGeFTd/18y9x1cs6JLD1wxSC5/2pv/9hnbcRtgX3r3f2DLMwzN
+ IACSy578+r9FwnrcBljk3flvU3AFQzMIgORS+1/DvYQVGGbdxqoZBEByYS0v/+sGz8NtgE7aDZySIDm/
+ 6of/NXyn4TYAH3DKvfJfxWMCGEOFBgVgYAAAvtG/s7kMTpwAAAAASUVORK5CYII=
+
+
+
+ True
+
+
+ 23, 22
+
+
+ Letzte verschieben
+
+
+ 6, 25
+
+
+ 0, 0
+
+
+ 778, 25
+
+
+ 9
+
+
+ BindingNavigator1
+
+
+ BindingNavigator1
+
+
+ System.Windows.Forms.BindingNavigator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ pnlNavigator
+
+
+ 0
+
+
+ 242, 45
+
+
+ 778, 25
+
+
+ 10
+
+
+ pnlNavigator
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Panel1
+
+
+ 0
+
Top, Bottom, Left, Right
894, 95
+
+ 265, 22
+
+
+ Validierung für Gruppe/Profil starten
+
+
+ 265, 22
+
+
+ Validierung für Datei starten
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAAM5JREFUOE9jwAa+fv3a8O3bt/9I+D0QCECl8QOQQpAG+fTl/xmC5/yvXnryP8hA
+ qDRhALJx1s4rYM38sYv+P3/zAcUlX758MYAqhQAkSbACEI1se2Rk5H8nJycwTklJ+f/8+XNUQ0CakDUg
+ 2754xVq4ZpyGgPyHrAnZsI8fPv3/8P4jHOfl5mEagh5oyLYja0Y2AGYISB+GK2C2g/yObgAMwwwBhRfY
+ AJgrQAIgvHnzZrACbJpBGMMAZAAShCnAphmER5IBhDDtDCAef/sPAEGjQ6y45GCmAAAAAElFTkSuQmCC
+
+
+
+ 265, 22
+
+
+ Massenabschluss markierte Dateien
+
+
+ 265, 22
+
+
+ Tabellenlayout zurücksetzen
+
266, 92
@@ -719,13 +918,13 @@
System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- 242, 44
+ 242, 73
Aqua
- 778, 455
+ 778, 426
8
@@ -740,7 +939,7 @@
Panel1
- 0
+ 1
True
@@ -770,7 +969,7 @@
Panel1
- 1
+ 2
Profilübersicht
@@ -827,6 +1026,12 @@
1043, 95
+
+ 215, 22
+
+
+ Starte Validierung für Profil
+
216, 26
@@ -842,51 +1047,6 @@
Weitere Ansichten
-
-
- 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
- QmCC
-
-
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAB10RVh0VGl0
@@ -995,6 +1155,51 @@
ozk0xzFyplk+zeIZP5OBrU5e8ruu/jlwZa4EstkB2XBhB7n4ZcHFl+GThdM+d+BMeDMuKODkrYAji4SD
V6aAZwbsPYh02LP8FIuc8+mwI9zlHJvTCfeYNn8b0r/m9GlE9yTtSoKcvQo/fgV+wqDfMHGLLf8BKVH4
p8+ug0MAAAAASUVORK5CYII=
+
+
+
+
+ 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
+ QmCC
@@ -1022,7 +1227,7 @@
Panel1
- 2
+ 3
Fill
@@ -1051,36 +1256,6 @@
2
-
- 215, 22
-
-
- Starte Validierung für Profil
-
-
- 265, 22
-
-
- Validierung für Gruppe/Profil starten
-
-
- 265, 22
-
-
- Validierung für Datei starten
-
-
- 265, 22
-
-
- Markierte Dateien abschliessen
-
-
- 265, 22
-
-
- Tabellenlayout zurücksetzen
-
1132, 17
@@ -2082,6 +2257,30 @@
System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ CMGroupStart
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ CMFileStart
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ MarkierteDateienAbschliessenToolStripMenuItem
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ TabellenlayoutZurücksetzenToolStripMenuItem
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
GridView_Docs
@@ -2118,30 +2317,6 @@
DevExpress.XtraNavBar.NavBarItem, DevExpress.XtraNavBar.v15.2, Version=15.2.16.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- CMGroupStart
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- CMFileStart
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MarkierteDateienAbschliessenToolStripMenuItem
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- TabellenlayoutZurücksetzenToolStripMenuItem
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
NotifyIcon1
@@ -2208,6 +2383,66 @@
System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ BindingNavigatorMoveFirstItem
+
+
+ System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorMovePreviousItem
+
+
+ System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorSeparator
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorPositionItem
+
+
+ System.Windows.Forms.ToolStripTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorCountItem
+
+
+ System.Windows.Forms.ToolStripLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorSeparator1
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorMoveNextItem
+
+
+ System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorMoveLastItem
+
+
+ System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ BindingNavigatorSeparator2
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ bindsourcegrid
+
+
+ System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
frmMain
diff --git a/app/DD_PM_WINDREAM/frmMain.vb b/app/DD_PM_WINDREAM/frmMain.vb
index cd70f90..db371e4 100644
--- a/app/DD_PM_WINDREAM/frmMain.vb
+++ b/app/DD_PM_WINDREAM/frmMain.vb
@@ -290,6 +290,7 @@ Public Class frmMain
Sub Layout_Single_Profile()
If GridControl_Docs.Visible = False Then
GridControl_Docs.Visible = True
+ pnlNavigator.Visible = True
SplitContainerDashboard.Visible = False
End If
End Sub
@@ -298,6 +299,7 @@ Public Class frmMain
If GridControl_Docs.Visible = True Then
GridControl_Docs.Visible = False
+ pnlNavigator.Visible = False
Dim groupCount As Integer
Dim charts As List(Of ChartControl)
SplitContainerDashboard.Visible = True
@@ -483,7 +485,7 @@ Public Class frmMain
Dim Columns_Removed = GridView_CheckInvalidColumns()
RestoreLayout()
-
+ lblViewType.Text = "Detailansicht Profil: " & CURRENT_CLICKED_PROFILE_TITLE
End If
Catch ex As Exception
@@ -526,7 +528,8 @@ Public Class frmMain
End Select
Next
- GridControl_Docs.DataSource = CURR_DT_PROFILEGRID
+ bindsourcegrid.DataSource = CURR_DT_PROFILEGRID
+ GridControl_Docs.DataSource = bindsourcegrid
'GridControlDocRow.ForceInitialize()
RestoreLayout()
@@ -769,8 +772,15 @@ Public Class frmMain
Case "GROUP"
CMGroupStart.Enabled = True
Case "ROW"
- CMFileStart.Enabled = True
+ Dim selectedRows As Integer() = GridView_Docs.GetSelectedRows()
+ If selectedRows.Count > 1 Then
+ CMFileStart.Enabled = False
+ Else
+ CMFileStart.Enabled = True
+ End If
+
End Select
+
End Sub
Private Sub CMFileStart_Click(sender As Object, e As EventArgs) Handles CMFileStart.Click
@@ -868,60 +878,60 @@ Public Class frmMain
Private Sub MarkierteDateienAbschliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles MarkierteDateienAbschliessenToolStripMenuItem.Click
Dim selectedRows As Integer() = GridView_Docs.GetSelectedRows()
Dim hitInfo As GridHitInfo = GridView_Docs.CalcHitInfo(GridCursorLocation)
+ Dim workedFiles As Integer = 0
+ Dim dt As New DataTable
+ dt.Columns.Add("DOC_ID")
+ dt.Columns.Add("DOC_GUID")
+ dt.Columns.Add("FULL_PATH")
+
+
If Init_windream() = True Then
+ CURRENT_ProfilGUID = 0
+ Dim i As Integer = 0
For Each rowhandle As Integer In selectedRows
- Dim PROFILE_ID = GridView_Docs.GetRowCellValue(GridView_Docs.GetDataRowHandleByGroupRowHandle(GridView_Docs.GetParentRowHandle(hitInfo.RowHandle)), GridView_Docs.Columns("PROFILE_ID"))
- If PROFILE_ID <> CURRENT_ProfilGUID Then
+ Dim R As DataRow = dt.NewRow
+ Dim PROFILE_ID As Integer = 0
+ PROFILE_ID = GridView_Docs.GetRowCellValue(GridView_Docs.GetDataRowHandleByGroupRowHandle(GridView_Docs.GetParentRowHandle(hitInfo.RowHandle)), GridView_Docs.Columns("PROFILE_ID"))
+ If i = 0 And CURRENT_ProfilGUID = 0 Then
CURRENT_ProfilGUID = PROFILE_ID
CURRENT_DT_FINAL_INDEXING = ClassDatabase.Return_Datatable(String.Format("select * from TBPM_PROFILE_FINAL_INDEXING where PROFIL_ID = {0}", CURRENT_ProfilGUID))
CURRENT_DT_PROFILE = ClassDatabase.Return_Datatable(String.Format("select * from TBPM_PROFILE where GUID = {0}", CURRENT_ProfilGUID))
CURRENT_PROFILE_VEKTOR_LOG = CURRENT_DT_PROFILE.Rows(0).Item("PM_VEKTOR_INDEX")
+ If CURRENT_PROFILE_VEKTOR_LOG = "" Then
+ CURRENT_PROFILE_VEKTOR_LOG = CURRENT_DT_PROFILE.Rows(0).Item("LOG_INDEX")
+ End If
End If
- If CURRENT_PROFILE_VEKTOR_LOG = "" Then
- CURRENT_PROFILE_VEKTOR_LOG = CURRENT_DT_PROFILE.Rows(0).Item("LOG_INDEX")
+ If PROFILE_ID <> CURRENT_ProfilGUID Then
+ If CURRENT_USER_LANGUAGE <> "de_DE" Then
+ MsgBox("Sorry but You can only mass-validate docs which belong to he same profile!", MsgBoxStyle.Exclamation)
+ Else
+ MsgBox("Bitte bachten Sie dass Sie nur Dokumente, welche zum gleichen Profil gehören, mit der Massenfunktion bearbeiten können!", MsgBoxStyle.Exclamation)
+ End If
+ Exit Sub
End If
+
Dim DOC_ID = GridView_Docs.GetRowCellValue(rowhandle, "DOC_ID")
CURRENT_DOC_ID = DOC_ID
Dim DOC_PATH = GridView_Docs.GetRowCellValue(rowhandle, "FULL_FILE_PATH")
CURRENT_DOC_PATH = DOC_PATH
CURRENT_DOC_GUID = GridView_Docs.GetRowCellValue(rowhandle, "GUID")
-
-
- Dim WM_DOC = _windream.oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, DOC_PATH.Substring(2))
- If Not IsNothing(WM_DOC) Then
- CURRENT_WMFILE = WM_DOC
- If ClassFinalizeDoc.Write_Final_Metadata = True Then
- Dim sql = String.Format("UPDATE TBPM_PROFILE_FILES SET IN_WORK = 0, WORK_USER = '{0}', EDIT = 1 WHERE GUID = {1}", Environment.UserName, CURRENT_DOC_GUID)
- ClassDatabase.Execute_non_Query(sql)
-
- End If
- End If
-
-
-
+ R("DOC_ID") = CURRENT_DOC_ID
+ R("FULL_PATH") = CURRENT_DOC_PATH
+ R("DOC_GUID") = GridView_Docs.GetRowCellValue(rowhandle, "GUID")
+ dt.Rows.Add(R)
+ CURRENT_DT_MASS_CHANGE_DOCS = Nothing
+ CURRENT_DT_MASS_CHANGE_DOCS = dt
Next
+
End If
+
+ frmMassValidator.ShowDialog()
+
+
Load_Profile_items()
Decide_Load()
- 'Dim Row As DataRow
- 'Dim Rows() As DataRow
- 'Dim I As Integer
- 'ReDim Rows(GridView_Docs.SelectedRowsCount - 1)
- 'For I = 0 To GridView_Docs.SelectedRowsCount - 1
- ' Rows(I) = GridView_Docs.GetDataRow(GridView_Docs.GetSelectedRows(I))
- 'Next
- 'GridView_Docs.BeginSort()
- 'Try
- ' For Each Row In Rows
- ' Dim DOC_ID = GridView_Docs.GetRowCellValue(Row, GridView_Docs.Columns("DOC_ID")) ' GridView_Docs.GetRowCellValue(Row, "DOC_ID").ToString()
-
- ' Row.Delete()
- ' Next
- 'Finally
- ' GridView_Docs.EndSort()
- 'End Try
End Sub
Private Sub CMGroupStart_Click(sender As Object, e As EventArgs) Handles CMGroupStart.Click
Item_Scope()
@@ -975,6 +985,8 @@ Public Class frmMain
If CURR_DT_PROFILEGRID.Rows.Count = 0 Then
lblViewType.Text = "Aktuell keine Workflowdaten vorhanden!"
'MsgBox("Aktuell keine Workflowdaten vorhanden!", MsgBoxStyle.Information)
+ GridControl_Docs.Visible = False
+ pnlNavigator.Visible = False
GridControl_Docs.DataSource = Nothing
Try
GridView_Docs.Columns.Clear()
@@ -984,6 +996,8 @@ Public Class frmMain
Cursor = Cursors.Default
Exit Sub
End If
+ GridControl_Docs.Visible = True
+ pnlNavigator.Visible = True
' Spalte für Status Icon erstellen
Dim columnStateIcon As New DataColumn()
columnStateIcon.DataType = GetType(Image)
@@ -1009,9 +1023,10 @@ Public Class frmMain
row.Item("ICON") = My.Resources.ampel_gruen
End Select
Next
+ bindsourcegrid.DataSource = CURR_DT_PROFILEGRID
+ GridControl_Docs.DataSource = bindsourcegrid
- GridControl_Docs.DataSource = CURR_DT_PROFILEGRID
-
+ lblViewType.Text = "Gesamtübersicht"
'GridControlDocRow.ForceInitialize()
' GridControl1.DataSource = CURR_DT_PROFILEGRID
@@ -1082,6 +1097,8 @@ Public Class frmMain
'GridView_Docs.SaveLayoutToXml(GetXML_LayoutName())
SaveGridLayout()
Else
+ GridControl_Docs.Visible = False
+ pnlNavigator.Visible = False
GridControl_Docs.DataSource = Nothing
Try
GridView_Docs.Columns.Clear()
@@ -1093,6 +1110,7 @@ Public Class frmMain
+
Catch ex As Exception
ClassLogger.Add("Load_Grid_Overview - Fehler: " & ex.Message)
MsgBox("Fehler Load_Grid_Overview - Fehler: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
@@ -1158,12 +1176,7 @@ Public Class frmMain
End Sub
Private Sub GridView_Docs_RowClick(sender As Object, e As RowClickEventArgs) Handles GridView_Docs.RowClick
- If (ModifierKeys = Keys.Control) Then
- GridView_Docs.OptionsSelection.MultiSelect = True
- Else
- GridView_Docs.OptionsSelection.MultiSelect = False
- End If
End Sub
Private Sub GridView_Docs_DoubleClick(sender As Object, e As EventArgs) Handles GridView_Docs.DoubleClick
diff --git a/app/DD_PM_WINDREAM/frmMassValidator.Designer.vb b/app/DD_PM_WINDREAM/frmMassValidator.Designer.vb
new file mode 100644
index 0000000..d9345b1
--- /dev/null
+++ b/app/DD_PM_WINDREAM/frmMassValidator.Designer.vb
@@ -0,0 +1,143 @@
+ _
+Partial Class frmMassValidator
+ Inherits System.Windows.Forms.Form
+
+ 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
+ _
+ Protected Overrides Sub Dispose(ByVal disposing As Boolean)
+ Try
+ If disposing AndAlso components IsNot Nothing Then
+ components.Dispose()
+ End If
+ Finally
+ MyBase.Dispose(disposing)
+ End Try
+ End Sub
+
+ 'Wird vom Windows Form-Designer benötigt.
+ Private components As System.ComponentModel.IContainer
+
+ 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
+ 'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
+ 'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
+ _
+ Private Sub InitializeComponent()
+ Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMassValidator))
+ Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
+ Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
+ Me.tslblCountDocs = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.TITLELabel1 = New System.Windows.Forms.Label()
+ Me.pnldesigner = New System.Windows.Forms.Panel()
+ Me.DESCRIPTIONLabel = New System.Windows.Forms.Label()
+ Me.btnSave = New System.Windows.Forms.Button()
+ Me.StatusStrip1.SuspendLayout()
+ Me.SuspendLayout()
+ '
+ 'ToolStrip1
+ '
+ Me.ToolStrip1.Location = New System.Drawing.Point(0, 0)
+ Me.ToolStrip1.Name = "ToolStrip1"
+ Me.ToolStrip1.Size = New System.Drawing.Size(586, 25)
+ Me.ToolStrip1.TabIndex = 0
+ Me.ToolStrip1.Text = "ToolStrip1"
+ '
+ 'StatusStrip1
+ '
+ Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tslblCountDocs})
+ Me.StatusStrip1.Location = New System.Drawing.Point(0, 518)
+ Me.StatusStrip1.Name = "StatusStrip1"
+ Me.StatusStrip1.Size = New System.Drawing.Size(586, 22)
+ Me.StatusStrip1.TabIndex = 1
+ Me.StatusStrip1.Text = "StatusStrip1"
+ '
+ 'tslblCountDocs
+ '
+ Me.tslblCountDocs.Name = "tslblCountDocs"
+ Me.tslblCountDocs.Size = New System.Drawing.Size(120, 17)
+ Me.tslblCountDocs.Text = "ToolStripStatusLabel1"
+ '
+ 'TITLELabel1
+ '
+ Me.TITLELabel1.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.TITLELabel1.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.TITLELabel1.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.TITLELabel1.Location = New System.Drawing.Point(12, 25)
+ Me.TITLELabel1.Name = "TITLELabel1"
+ Me.TITLELabel1.RightToLeft = System.Windows.Forms.RightToLeft.No
+ Me.TITLELabel1.Size = New System.Drawing.Size(562, 29)
+ Me.TITLELabel1.TabIndex = 19
+ Me.TITLELabel1.Text = "Label1"
+ Me.TITLELabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
+ '
+ 'pnldesigner
+ '
+ Me.pnldesigner.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
+ Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.pnldesigner.AutoScroll = True
+ Me.pnldesigner.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
+ Me.pnldesigner.Font = New System.Drawing.Font("Tahoma", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.pnldesigner.Location = New System.Drawing.Point(15, 125)
+ Me.pnldesigner.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
+ Me.pnldesigner.Name = "pnldesigner"
+ Me.pnldesigner.Size = New System.Drawing.Size(559, 331)
+ Me.pnldesigner.TabIndex = 21
+ '
+ 'DESCRIPTIONLabel
+ '
+ Me.DESCRIPTIONLabel.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.DESCRIPTIONLabel.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.DESCRIPTIONLabel.Location = New System.Drawing.Point(12, 54)
+ Me.DESCRIPTIONLabel.Name = "DESCRIPTIONLabel"
+ Me.DESCRIPTIONLabel.Size = New System.Drawing.Size(725, 67)
+ Me.DESCRIPTIONLabel.TabIndex = 20
+ Me.DESCRIPTIONLabel.Text = "Label3"
+ '
+ 'btnSave
+ '
+ Me.btnSave.Anchor = CType(((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.btnSave.Font = New System.Drawing.Font("Tahoma", 9.75!)
+ Me.btnSave.Image = Global.DD_PM_WINDREAM.My.Resources.Resources.flag_pink
+ Me.btnSave.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
+ Me.btnSave.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.btnSave.Location = New System.Drawing.Point(12, 464)
+ Me.btnSave.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
+ Me.btnSave.Name = "btnSave"
+ Me.btnSave.Size = New System.Drawing.Size(562, 50)
+ Me.btnSave.TabIndex = 22
+ Me.btnSave.Text = "Alle Dokumente abschliessen"
+ Me.btnSave.UseVisualStyleBackColor = True
+ '
+ 'frmMassValidator
+ '
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
+ Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
+ Me.ClientSize = New System.Drawing.Size(586, 540)
+ Me.Controls.Add(Me.btnSave)
+ Me.Controls.Add(Me.TITLELabel1)
+ Me.Controls.Add(Me.DESCRIPTIONLabel)
+ Me.Controls.Add(Me.pnldesigner)
+ Me.Controls.Add(Me.StatusStrip1)
+ Me.Controls.Add(Me.ToolStrip1)
+ Me.Font = New System.Drawing.Font("Tahoma", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
+ Me.Name = "frmMassValidator"
+ Me.Text = "Mass Validator"
+ Me.TopMost = True
+ Me.StatusStrip1.ResumeLayout(False)
+ Me.StatusStrip1.PerformLayout()
+ Me.ResumeLayout(False)
+ Me.PerformLayout()
+
+ End Sub
+
+ Friend WithEvents ToolStrip1 As ToolStrip
+ Friend WithEvents StatusStrip1 As StatusStrip
+ Friend WithEvents TITLELabel1 As Label
+ Friend WithEvents pnldesigner As Panel
+ Friend WithEvents DESCRIPTIONLabel As Label
+ Friend WithEvents btnSave As Button
+ Friend WithEvents tslblCountDocs As ToolStripStatusLabel
+End Class
diff --git a/app/DD_PM_WINDREAM/frmMassValidator.resx b/app/DD_PM_WINDREAM/frmMassValidator.resx
new file mode 100644
index 0000000..45e58b5
--- /dev/null
+++ b/app/DD_PM_WINDREAM/frmMassValidator.resx
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
+ 124, 17
+
+
+
+
+ AAABAAIAEBAQAAEABAAoAQAAJgAAABAQAAABAAgAaAUAAE4BAAAoAAAAEAAAACAAAAABAAQAAAAAAIAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
+ AAAA//8A/wAAAP8A/wD//wAA////AAAP//8AAAAAD/d3d/8AAAD4d/iHd/////eI//+HeHd/9/////94
+ d3/3j///+H/3fwh///+Hj/d/D3d4/3j/938A+Hd3f//3fwAA+I////d/AAD3f///938AAPd///d3fwAA
+ 93//93fwAAD3d3d3fwAAAPd3d3fwAAAA/////wAA4P8AAIA/AAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAA
+ AADAAAAA8AAAAPAAAADwAAAA8AEAAPADAADwBwAA8A8AACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAA
+ AAAAAAAAAAEAAAABAAAAAAAAQkJCAE1NTQBZWVkAY2JjAGRkZABvb28AeXl5AISDgwCGhoYAj46OAJGR
+ kQCcnJwApKOkAKenpwCzs7MAurm6AL29vQDFxMUAycnJANDPzwDb2doA4ODgAObk5QDr6+sA8e/wAPLw
+ 8QD08/MA9fX1APj4+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAD///8AAAAAHR0dHR0AAAAAAAAAAAAdGAYBAQYHFh0AAAAAAAAdEQUHGRQSCAII
+ GB0dHR0dHQIRFRkZGRkVCgUPAQEBHR0BGRkZGRkZGRkBEwEBAR0dBQ0ZGRkZGRYRAh0ZAQEdABMFGRkZ
+ GRkRAxEdGQEBHQAYBQgIDRkWBQ8dGRkBAR0AABgNDAMBAQsdGRkZAQEdAAAAAB0PEx0dGRkZGQEBHQAA
+ AAAdAQEZGRkZGRkBAR0AAAAAHQEBGRkZGQEBAQgdAAAAAB0BARkZGRkBAQgdAAAAAAAdAQEBAQEBAQgd
+ AAAAAAAAHQEBAQEBAQgdAAAAAAAAAB0dHR0dHR0dAAAAAOD/AACAPwAAAAAAAAAAAAAAAAAAAAAAAIAA
+ AACAAAAAwAAAAPAAAADwAAAA8AAAAPABAADwAwAA8AcAAPAPAAA=
+
+
+
\ No newline at end of file
diff --git a/app/DD_PM_WINDREAM/frmMassValidator.vb b/app/DD_PM_WINDREAM/frmMassValidator.vb
new file mode 100644
index 0000000..4095a4f
--- /dev/null
+++ b/app/DD_PM_WINDREAM/frmMassValidator.vb
@@ -0,0 +1,1550 @@
+Imports WINDREAMLib
+Imports Oracle.ManagedDataAccess.Client
+Imports System.ComponentModel
+
+Public Class frmMassValidator
+ Dim DT_PROFIL As DataTable
+ Dim DT_PROFILE_CONTROLS As DataTable
+
+ Private Delimiter As String
+ Private PROFIL_VEKTORINDEX As String
+ Private PROFIL_LOGINDEX As String
+ Private WM_SEARCH As String
+ Private FINAL_PROFILE As String
+ Private MOVE2Folder As String
+ Private me_closing As Boolean = False
+ Private CTRLS_Loaded As Boolean = False
+ Private FORM_Shown As Boolean = False
+ Private _dependingControl_in_action As Boolean = False
+
+ Private errmessage As String
+ Private _windream As New ClassWindream_allgemein
+ Private _windreamPM As New ClassPMWindream
+ Private _allgFunk As New ClassAllgemeineFunktionen
+ Dim WMObject As WMObject
+ Private Sub frmMassValidator_Load(sender As Object, e As EventArgs) Handles Me.Load
+ FORM_Shown = False
+ Try
+ _windream = New ClassWindream_allgemein
+ _windream.Init()
+ If LogErrorsOnly = False Then ClassLogger.Add("windream initialized frmMassValidator", False)
+
+ Catch ex As Exception
+ MsgBox("Error Init_windream:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Attention:")
+ ClassLogger.Add(">> Fehler in Init_windream: " & ex.Message, True)
+ Exit Sub
+ End Try
+
+ If My.Settings.frmMassValidatorposition.IsEmpty = False Then
+ If My.Settings.frmMassValidatorposition.X > 0 And My.Settings.frmMassValidatorposition.Y > 0 Then
+ Location = My.Settings.frmMassValidatorposition
+ End If
+ End If
+ If My.Settings.frmMassValidatorSize.IsEmpty = False Then
+ Size = My.Settings.frmMassValidatorSize
+ End If
+ Try
+ DT_PROFIL = ClassDatabase.Return_Datatable("SELECT * FROM TBPM_PROFILE WHERE GUID = " & CURRENT_ProfilGUID)
+ DT_PROFILE_CONTROLS = ClassDatabase.Return_Datatable("SELECT * FROM TBPM_PROFILE_CONTROLS WHERE CTRL_TYPE <> 'TABLE' AND SQL_UEBERPRUEFUNG NOT LIKE '%WMI%' AND PROFIL_ID = " & CURRENT_ProfilGUID)
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Profile Data geladen", False)
+ Catch ex As Exception
+ MsgBox("Error LOADING profile-data:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Attention:")
+ ClassLogger.Add(">> Fehler in LOADING profile-data: " & ex.Message, True)
+ Me.Close()
+ End Try
+
+ ' Try
+ Delimiter = CURRENT_DT_CONFIG.Rows(0).Item("VEKTOR_DELIMITER")
+
+ If DT_PROFIL.Rows.Count = 0 Then
+ ClassLogger.Add(">> Profildaten konnten nicht geladen werden - Übergebenes Profil: : " & CURRENT_ProfilName, True)
+ MsgBox("Achtung: Profildaten konnten nicht übergeben oder geladen werden.", MsgBoxStyle.Critical, "Achtung:")
+ Me.Close()
+ End If
+ If DT_PROFIL.Rows.Count > 1 Then
+ MsgBox("Es wurden mehr als 1 Profil zurückgegeben!!", MsgBoxStyle.Critical, "Achtung:")
+ Me.Close()
+ Else
+ If DT_PROFIL.Rows.Count <> 0 Then
+ For Each dr In DT_PROFIL.Rows
+ PROFIL_VEKTORINDEX = dr.Item("PM_VEKTOR_INDEX")
+ PROFIL_LOGINDEX = dr.Item("LOG_INDEX")
+ Me.Text = "Process Manager - " & dr.Item("TITLE")
+ If PROFIL_VEKTORINDEX.GetType.ToString.ToLower = "system.dbnull" Then
+ PROFIL_VEKTORINDEX = ""
+ End If
+ If PROFIL_LOGINDEX.GetType.ToString.ToLower = "system.dbnull" Then
+ PROFIL_LOGINDEX = ""
+ End If
+
+ WM_SEARCH = dr.Item("WD_SEARCH")
+ FINAL_PROFILE = dr.Item("FINAL_PROFILE")
+
+ MOVE2Folder = IIf(IsDBNull(dr.Item("MOVE2Folder")), "", dr.Item("MOVE2Folder"))
+
+ tslblCountDocs.Text = "#Documents for MassChange: " & CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count
+
+ Next
+ If LogErrorsOnly = False Then
+ ClassLogger.Add(" >> Profildaten gespeichert", False)
+ ClassLogger.Add(" >> WD_Search: " & WM_SEARCH, False)
+ ClassLogger.Add(" >> finalProfile: " & FINAL_PROFILE, False)
+ ClassLogger.Add(" >> Move2Folder: " & MOVE2Folder, False)
+
+ End If
+
+ Load_Controls()
+
+
+ End If
+ End If
+
+ 'Catch ex As Exception
+ ' MsgBox("Error SAVING Profile-Data:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Attention:")
+ ' ClassLogger.Add(">> Fehler in SAVING Profile-Data: " & ex.Message, True)
+ 'End Try
+ 'Me.lblerror.Visible = False
+
+ If CURRENT_USER_LANGUAGE <> "de-DE" Then
+ btnSave.Text = String.Format("Finish all documents (#{0})", CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count.ToString)
+ Else
+ btnSave.Text = String.Format("Alle Dokumente (#{0}) abschliessen.", CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count.ToString)
+ End If
+
+ End Sub
+ Sub Load_Controls()
+ ' Try
+ pnldesigner.Controls.Clear()
+ 'Dim dt As DataTable = DD_DMSLiteDataSet.VWPM_CONTROL_INDEX
+
+
+
+ For Each dr As DataRow In DT_PROFILE_CONTROLS.Rows
+ Dim ctrl As Control
+
+ Select Case dr.Item("CTRL_TYPE").ToString.ToUpper
+ Case "TXT"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch TXT zu laden", False)
+ Dim txt As TextBox = ClassControlCreator.CreateExistingTextbox(dr, False)
+
+ AddHandler txt.GotFocus, AddressOf OnTextBoxFocus
+ AddHandler txt.LostFocus, AddressOf OnTextBoxLostFocus
+ AddHandler txt.KeyUp, AddressOf OnTextBoxKeyUp
+
+ ctrl = txt
+ Case "LBL"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch LBL zu laden", False)
+ ctrl = ClassControlCreator.CreateExistingLabel(dr, False)
+ Case "CMB"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch CMB zu laden", False)
+
+ Dim cmb = ClassControlCreator.CreateExistingCombobox(dr, False)
+
+ AddHandler cmb.SelectedValueChanged, AddressOf OnCmbselectedIndex
+#Region "CONTROL LIST"
+ If ClassControlCreator.GET_CONTROL_PROPERTIES(DT_PROFILE_CONTROLS, cmb.Name) = 0 Then
+ MsgBox("Unexpected Error in getting control-properties (CMB load) - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+ Dim CURR_SQL_PROVIDER As String
+ If CURRENT_CONTROL_ID > 0 Then
+ If CURR_CON_ID > 0 Then
+ Dim commandsql = CURR_SELECT_CONTROL
+ If commandsql <> "" Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> ConID > 0 And commandsql <> ''", False)
+ Dim connectionString As String
+
+ Dim ConRow As DataRow() = ClassControlCreator.GET_CONNECTION_INFO(CURR_CON_ID)
+ If ConRow Is Nothing Then
+ MsgBox("Unexpected Error in getting Coninfo (CMB load) - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+ For Each row As DataRow In ConRow
+ Select Case row("SQL_PROVIDER").ToString.ToLower
+ Case "ms-sql"
+ CURR_SQL_PROVIDER = "ms-sql"
+ If row("USERNAME") = "WINAUTH" Then
+ connectionString = "Data Source=" & row("SERVER") & ";Initial Catalog=" & row("DATENBANK") & ";Trusted_Connection=True;"
+ Else
+ connectionString = "Data Source=" & row("SERVER") & ";Initial Catalog= " & row("DATENBANK") & ";User Id=" & row("USERNAME") & ";Password=" & row("PASSWORD") & ";"
+ End If
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> ConnString Sql-Server: " & connectionString)
+ Case "oracle"
+ CURR_SQL_PROVIDER = "oracle"
+ Dim conn As New OracleConnectionStringBuilder
+ Dim connstr As String
+ If row("SERVER") <> "" And row("DATENBANK").GetType.ToString <> "system.dbnull" Then
+ connstr = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" & row("SERVER") & ")(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=" &
+ row("DATENBANK") & ")));User Id=" & row("USERNAME") & ";Password=" & row("PASSWORD") & ";"
+ Else
+ conn.DataSource = row("SERVER")
+ conn.UserID = row("USERNAME")
+ conn.Password = row("PASSWORD")
+ conn.PersistSecurityInfo = True
+ conn.ConnectionTimeout = 120
+ connstr = conn.ConnectionString
+ End If
+
+ connectionString = connstr
+ Case Else
+ ClassLogger.Add("ConnectionString-Type not integrated", False)
+ MsgBox("ConnectionString-Type not integrated", MsgBoxStyle.Critical)
+ Exit Sub
+ End Select
+
+
+ Next
+
+ If connectionString Is Nothing = False And CURR_SQL_PROVIDER = "ms-sql" Then
+ Try
+ Dim sqlCnn As SqlClient.SqlConnection
+ Dim sqlCmd As SqlClient.SqlCommand
+ Dim adapter As New SqlClient.SqlDataAdapter
+ Dim NewDataset As New DataSet
+ Dim i As Integer
+
+
+ 'sql = ClassPatterns.ReplaceAllValues(sql, pnldesigner, aktivesDokument)
+ If ClassPatterns.HasOnlySimplePatterns(CURR_SELECT_CONTROL) Then
+ CURR_SELECT_CONTROL = ClassPatterns.ReplaceInternalValues(CURR_SELECT_CONTROL)
+ CURR_SELECT_CONTROL = ClassPatterns.ReplaceControlValues(CURR_SELECT_CONTROL, pnldesigner)
+
+ sqlCnn = New SqlClient.SqlConnection(connectionString)
+ ' Try
+ sqlCnn.Open()
+ sqlCmd = New SqlClient.SqlCommand(CURR_SELECT_CONTROL, sqlCnn)
+ adapter.SelectCommand = sqlCmd
+ adapter.Fill(NewDataset)
+
+ For i = 0 To NewDataset.Tables(0).Rows.Count - 1
+ cmb.Items.Add(NewDataset.Tables(0).Rows(i).Item(0))
+ Next
+ adapter.Dispose()
+ sqlCmd.Dispose()
+ sqlCnn.Close()
+ End If
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in running depending sql-command: " & ex.Message)
+ MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected Error in running depending sql-command:")
+ End Try
+ End If
+ Else
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Else Row 571", False)
+ End If
+ Else
+ If CURR_CHOICE_LIST <> "" Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> In add_ComboBox - AListe: " & CURR_CHOICE_LIST, False)
+ Dim liste = _windream.GetValuesfromAuswahlliste(CURR_CHOICE_LIST)
+ If liste IsNot Nothing Then
+ cmb.Items.Add("")
+ For Each index As String In liste
+ cmb.Items.Add(index)
+ Next
+ cmb.SelectedIndex = -1
+ Else
+ MsgBox("Resultliste windream is nothing!", MsgBoxStyle.Exclamation, CURR_CHOICE_LIST)
+ End If
+ End If
+ End If
+ End If
+#End Region
+
+ Dim maxWith As Integer = cmb.Width
+ Using g As Graphics = Me.CreateGraphics
+ For Each oItem As Object In cmb.Items 'Für alle Einträge...
+ Dim g1 As Graphics = cmb.CreateGraphics
+ If g1.MeasureString(Text, cmb.Font).Width + 30 > maxWith Then
+ maxWith = g1.MeasureString(Text, cmb.Font).Width + 30
+ End If
+ g1.Dispose()
+ Next oItem
+ End Using
+ cmb.DropDownWidth = maxWith
+
+ ctrl = cmb
+ Case "DTP"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch DTP zu laden", False)
+ ctrl = ClassControlCreator.CreateExistingDatepicker(dr, False)
+ Case "DGV"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch DGV zu laden", False)
+ Dim dgv = ClassControlCreator.CreateExistingDataGridView(dr, False)
+
+ AddHandler dgv.RowValidating, AddressOf onDGVRowValidating
+
+ ctrl = dgv
+ Case "CHK"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch Checkbox zu laden", False)
+
+ ctrl = ClassControlCreator.CreateExisingCheckbox(dr, False)
+ 'Case "TABLE"
+ ' If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch Tabelle zu laden", False)
+
+ ' For Each c As DataColumn In DT_PROFILE_CONTROLS.Columns
+ ' '... = c.ColumnName
+ ' Next
+
+ ' Dim columns As List(Of DD_DMSLiteDataSet.TBPM_CONTROL_TABLERow) = (From r As DD_DMSLiteDataSet.TBPM_CONTROL_TABLERow In DT_PROFILE_CONTROLS
+ ' Where r.CONTROL_ID = dr.Item("GUID")
+ ' Select r).ToList()
+
+ ' ctrl = ClassControlCreator.CreateExistingTable(dr, columns, False)
+
+ Case "LINE"
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch Linie zu laden", False)
+
+ ctrl = ClassControlCreator.CreateExistingLine(dr, False)
+ End Select
+
+ If TypeOf ctrl IsNot Label Then
+ ' If first_control Is Nothing Then
+ 'first_control = ctrl
+ 'End If
+ 'last_control = ctrl
+ End If
+
+ pnldesigner.Controls.Add(ctrl)
+
+ LoadSimpleData(ctrl, dr.Item("GUID"))
+ Next
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Controls geladen", False)
+ ClassLogger.Add("", False)
+ CTRLS_Loaded = True
+ FillIndexValues()
+ 'Catch ex As Exception
+ ' If LogErrorsOnly = False Then MsgBox("Error Load_Controls: " & ex.Message, MsgBoxStyle.Critical, "Attention error:")
+ ' ' allgFunk.Insert_LogEntry(CURRENT_ProfilGUID, "Error Load_Controls: " & ex.Message, Environment.UserName)
+ ' ClassLogger.Add("Unvorhergesehener Fehler bei Load_Controls:" & ex.Message)
+ ' ClassLogger.Add("", False)
+
+ 'End Try
+
+ End Sub
+
+ Sub FillIndexValues()
+ Dim controltype As String
+ Dim indexname As String
+ Dim resultvalue
+
+ 'Try
+ For Each inctrl As Control In Me.pnldesigner.Controls
+
+ Dim CONTROL_ID = inctrl.Tag
+ Dim controlRow = (From form In DT_PROFILE_CONTROLS.AsEnumerable' DD_DMSLiteDataSet.VWPM_CONTROL_INDEX.AsEnumerable()
+ Select form
+ Where form.Item("GUID") = CONTROL_ID).Single()
+
+ Dim Type As String = inctrl.GetType.ToString
+ Dim Typ As String = controlRow.Item("CTRL_TYPE")
+ If Typ = "LBL" Or Typ = "LINE" Then
+ Continue For
+ End If
+ Dim idxname As String = controlRow.Item("INDEX_NAME")
+ ' Wenn kein defaultValue existiert, leeren String setzen
+ Dim defaultValue As String = NotNull(controlRow.Item("DEFAULT_VALUE"), String.Empty)
+ indexname = idxname
+ Dim LoadIDX As Boolean = controlRow.Item("LOAD_IDX_VALUE")
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> INDEX: " & idxname & " - CONTROLNAME: " & inctrl.Name & " - LOAD IDXVALUES: " & LoadIDX.ToString, False)
+ Dim wertWD
+ Select Case Type
+ Case "System.Windows.Forms.TextBox"
+ Try
+ controltype = "Textbox"
+ If idxname = "" Then
+ MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & inctrl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
+ Exit For
+ End If
+ If idxname Is Nothing = False Then
+ If LoadIDX = False Or idxname = "DD PM-ONLY FOR DISPLAY" Then
+ ' Wenn kein Index exisitiert, defaultValue laden
+ inctrl.Text = defaultValue
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexwert soll nicht geladen werden.", False)
+ Exit Select
+ End If
+
+ wertWD = GetWM_Value_Multiple_Docs(idxname)
+ If wertWD = "" And defaultValue <> "" Then
+ inctrl.Text = defaultValue
+ Else
+ inctrl.Text = NotNull(wertWD, defaultValue)
+ End If
+
+ End If
+ Catch ex As Exception
+ errormessage = "Unexpected error in FillIndexValues TextBox(MI):" & vbNewLine & ex.Message & vbNewLine & "Check Logfile"
+ My.Settings.Save()
+ frmError.ShowDialog()
+ ClassLogger.Add(">> Unexpected error in FillIndexValues TextBox(MI): " & ex.Message, True)
+ ClassLogger.Add(">> Controltype: " & controltype, False)
+ ClassLogger.Add(">> Indexname windream: " & indexname, False)
+ Exit Sub
+ End Try
+
+ Case "System.Windows.Forms.ComboBox"
+ controltype = "ComboBox"
+ Dim cmb As ComboBox = inctrl
+ If idxname = "" Then
+ MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & inctrl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
+ Exit For
+ End If
+ If idxname Is Nothing = False Then
+ If LoadIDX = False Then
+ If defaultValue = String.Empty Then
+ cmb.SelectedIndex = -1
+ Else
+ cmb.Text = defaultValue
+ End If
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexwert soll nicht geladen werden.", False)
+ Exit Select
+ End If
+ wertWD = GetWM_Value_Multiple_Docs(idxname)
+
+ If wertWD Is Nothing Or wertWD = "" Then
+ If defaultValue = String.Empty Then
+ cmb.SelectedIndex = -1
+ Else
+ cmb.SelectedIndex = cmb.FindStringExact(defaultValue)
+ End If
+ Else
+ cmb.SelectedIndex = cmb.FindStringExact(wertWD)
+ End If
+ End If
+ Case "System.Windows.Forms.DataGridView"
+ controltype = "DataGridView"
+ Dim dgv As DataGridView = inctrl
+ If idxname = "" Then
+ MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & inctrl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
+ Exit For
+ End If
+ If idxname Is Nothing = False Then
+ If LoadIDX = False Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexwert soll nicht geladen werden.", False)
+ Exit Select
+ End If
+
+ wertWD = GetWM_Value_Multiple_Docs(idxname)
+
+ If wertWD Is Nothing = False Then
+ 'Es wird gegen ein Vektorfeld nachindexiert
+ If wertWD.GetType.ToString.Contains("System.Object") Then
+ Select Case Typ
+ 'Tabellendarstellung
+ Case "TABLE"
+ Dim dt As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBPM_CONTROL_TABLE WHERE CONTROL_ID = " & CONTROL_ID)
+ Dim SpaltenWerte As String()
+ If dt.Rows.Count > 1 Then
+ For Each Zeile As Object In wertWD
+ SpaltenWerte = Split(Zeile, Delimiter)
+ Select Case dt.Rows.Count
+ Case 2
+ If SpaltenWerte.Length = 2 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1)})
+ Else
+ dgv.Rows.Add(New String() {SpaltenWerte(0), ""})
+ End If
+ Case 3
+ If SpaltenWerte.Length = 3 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1), SpaltenWerte(2)})
+ ElseIf SpaltenWerte.Length = 2 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1), ""})
+ Else
+ dgv.Rows.Add(New String() {SpaltenWerte(0), "", ""})
+ End If
+ Case 4
+ If SpaltenWerte.Length = 4 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1), SpaltenWerte(2), SpaltenWerte(3)})
+ ElseIf SpaltenWerte.Length = 3 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1), SpaltenWerte(2), ""})
+ ElseIf SpaltenWerte.Length = 2 Then
+ dgv.Rows.Add(New String() {SpaltenWerte(0), SpaltenWerte(1), "", ""})
+ Else
+ dgv.Rows.Add(New String() {SpaltenWerte(0), "", "", ""})
+ End If
+
+ End Select
+ Next
+ End If
+
+ Case Else
+ 'es handelt sich um ein einfaches Vektorfeld mit einem Wert
+ For Each obj As Object In wertWD
+ If obj Is Nothing = False Then
+ dgv.Rows.Add(New String() {obj.ToString})
+ End If
+
+ Next
+ End Select
+
+
+ End If
+ End If
+ End If
+
+ Case "System.Windows.Forms.CheckBox"
+ controltype = "CheckBox"
+ If idxname = "" Then
+ MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & inctrl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
+ Exit For
+ End If
+ If idxname Is Nothing = False Then
+
+ Dim chk As CheckBox = inctrl
+
+ If LoadIDX = False Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexwert soll nicht geladen werden.", False)
+
+ If defaultValue <> String.Empty Then
+ Dim result
+ If Boolean.TryParse(defaultValue, result) Then
+ chk.Checked = result
+ End If
+ End If
+
+ Exit Select
+ End If
+ wertWD = GetWM_Value_Multiple_Docs(idxname)
+
+ If wertWD Is Nothing Then
+ ClassLogger.Add(">> Zurückgegebener Wert des Wertes für Checkbox mit Indexname '" & indexname & "' ist nothing. Check defaultvalue", False)
+ chk.Checked = False
+ Else
+ If wertWD.ToString = "" Then
+ If defaultValue <> String.Empty Then
+ Dim result
+ If Boolean.TryParse(defaultValue, result) Then
+ chk.Checked = result
+ Else : chk.Checked = False
+ End If
+ Else
+ chk.Checked = False
+ End If
+ Else
+ Dim _value
+ If wertWD.ToString = "System.Object[]" Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> CheckBoxValue with VektorField: " & idxname, False)
+ If wertWD.length = 1 Then
+ _value = wertWD(0)
+ Else '
+ ClassLogger.Add(" >> Vectorfield " & idxname & "' contains more then one value - First value will be used", False)
+ _value = wertWD(0)
+ End If
+ Else
+ _value = wertWD
+ End If
+ Try
+ Select Case CBool(_value)
+ Case True
+ chk.Checked = True
+ Case Else
+ chk.Checked = False
+ End Select
+ Catch ex As Exception
+ ClassLogger.Add(">> Unvorhergesehener Fehler bei CBool(wertWD) - CheckBox: " & ex.Message & vbNewLine & "Wert WD: " & wertWD.ToString, True)
+ chk.Checked = False
+ End Try
+ End If
+ End If
+
+ End If
+ Case "System.Windows.Forms.DateTimePicker"
+ controltype = "DateTimePicker"
+ Dim DTP As DateTimePicker = inctrl
+ If idxname = "" Then
+ MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & inctrl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
+ Exit For
+ End If
+ End Select
+ Next
+ 'Catch ex As Exception
+ ' errormessage = "Unexpected Error in FillIndexValues(MI):" & vbNewLine & ex.Message & vbNewLine & "Check Logfile"
+ ' My.Settings.Save()
+ ' frmError.ShowDialog()
+ ' ClassLogger.Add(">> Unexpected Error in FillIndexValues(MIs: " & ex.Message, True)
+ ' ClassLogger.Add(">> Controltype: " & controltype, False)
+ ' ClassLogger.Add(">> Indexname windream: " & indexname, False)
+
+
+ 'End Try
+
+
+ End Sub
+ Private Function GetWM_Value_Multiple_Docs(idxname As String)
+ Try
+ Dim valueAllOver = ""
+ Dim tempIndexValue = ""
+ Dim idoccount As Integer = 1
+ For Each docrow As DataRow In CURRENT_DT_MASS_CHANGE_DOCS.Rows
+ Dim WMDOC As WMObject
+ Try
+ WMDOC = _windream.oSession.GetWMObjectByPath(WMEntity.WMEntityDocument, docrow.Item("FULL_PATH").ToString.Substring(2))
+ Catch ex As Exception
+ ClassLogger.Add("error while creating WMObject in (textCheckIndex): " & ex.Message)
+ Exit For
+ End Try
+ If Not IsNothing(WMDOC) Then
+ CURRENT_WMFILE = WMDOC
+ If idxname.StartsWith("[%VKT") And PROFIL_VEKTORINDEX <> "" Then
+ tempIndexValue = ReturnVektor_IndexValue(idxname, WMDOC)
+ Else
+ tempIndexValue = WMDOC.GetVariableValue(idxname)
+ If IsNothing(tempIndexValue) Then tempIndexValue = ""
+ If tempIndexValue.ToString = "System.Object[]" Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> TextBox with VektorField: " & idxname, False)
+ If tempIndexValue.Length = 1 Then
+ tempIndexValue = tempIndexValue(0)
+ Else '
+ ClassLogger.Add(" >> Vectorfield " & idxname & "' contains more then one value - First value will be used", False)
+ tempIndexValue = tempIndexValue(0)
+ End If
+ End If
+ End If
+
+ If idoccount = 1 Then
+ valueAllOver = tempIndexValue
+ Else
+ If valueAllOver <> tempIndexValue Then
+ If CURRENT_USER_LANGUAGE <> "de-DE" Then
+ valueAllOver = "(Different values)"
+ Else
+ valueAllOver = "(Untersch. Werte)"
+ End If
+ End If
+ End If
+ idoccount += 1
+ End If
+ Next
+ Return valueAllOver
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected error in GetWM_Value_Multiple_Docs: " & ex.Message, True)
+ Return "Unexp. error in GetWM_Value_Multiple_Docs"
+ End Try
+ End Function
+ Private Function ReturnVektor_IndexValue(VKTBezeichner As String, WMFile As WMObject)
+ Try
+ Dim value
+ Dim name = VKTBezeichner.Replace("[%VKT", "")
+ Dim Sort_Arr() As String
+ Dim i As Integer = 0
+ 'Jetzt im Vektorfeld des Profils nachsehen ob der WErt bereits vorhanden ist
+ Dim wertWD = WMFile.GetVariableValue(PROFIL_VEKTORINDEX)
+ If wertWD Is Nothing = False Then
+ 'Es wird gegen ein Vektorfeld nachindexiert
+ If wertWD.GetType.ToString.Contains("System.Object") Then
+ 'es handelt sich um ein Vektorfeld - Zuweisen der Indexwerte des Vektorfeldes zu Array
+ For Each obj As Object In wertWD
+ If obj Is Nothing = False Then
+ ReDim Preserve Sort_Arr(i)
+ Sort_Arr(i) = obj.ToString()
+ i += 1
+ End If
+ Next
+ 'Das Ergebnis-Array nun Rückwärts sortieren, um die letzte Änderung zu finden
+ For Each _string As Object In Sort_Arr.Reverse()
+ Dim DDPM_String As String = _string.ToString()
+ '
+ Dim VektorArray() = Split(DDPM_String, Delimiter)
+ If VektorArray(1).ToString.ToLower = name.ToLower Then
+ value = VektorArray(2)
+ Exit For
+ End If
+
+ Next
+
+ End If
+ End If
+ If value Is Nothing Then value = ""
+ Return value
+ Catch ex As Exception
+ MsgBox("Unexpected Error in ReturnVektor_IndexValue(MV): " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
+ ClassLogger.Add("Unexpected Error in ReturnVektor_IndexValue(MV): " & ex.Message)
+ Return ""
+ End Try
+
+
+
+
+ End Function
+
+ Public Sub OnTextBoxFocus(sender As Object, e As EventArgs)
+ Dim box As TextBox = sender
+ box.BackColor = Color.Lime
+ box.SelectAll()
+ End Sub
+ Public Sub OnTextBoxLostFocus(sender As System.Object, e As System.EventArgs)
+ Dim box As TextBox = sender
+ box.BackColor = Color.White
+ End Sub
+ Public Sub OnTextBoxKeyUp(sender As Object, e As KeyEventArgs)
+ Dim box As TextBox = sender
+ If box.Text <> String.Empty And me_closing = False And CTRLS_Loaded = True And FORM_Shown = True Then
+
+ If (e.KeyCode = Keys.Return) Or (e.KeyCode = Keys.Tab) Or (e.KeyCode = Keys.Enter) Then
+ Try
+ If ClassControlCreator.GET_CONTROL_PROPERTIES(DT_PROFILE_CONTROLS, box.Name) = 0 Then
+ MsgBox("Unexpected Error in getting control-properties - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+ If ClassControlCreator.GET_DEPENDING_CONTROLS(DT_PROFILE_CONTROLS, box.Name) = False Then
+ MsgBox("Unexpected Error in getting dependent controls - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+ For Each ROW As DataRow In CURR_DT_DEPENDING_CONTROLS.Rows
+ 'Try
+ Dim displayboxname = ROW.Item(Name).ToString
+ If Not IsDBNull(ROW.Item(1)) And Not IsDBNull(ROW.Item(2)) Then
+ Dim sql_Statement = ROW.Item(2)
+ sql_Statement = ClassPatterns.ReplaceAllValues(sql_Statement, pnldesigner, WMObject, CURRENT_USER_PRENAME, CURRENT_USER_SURNAME, CURRENT_USER_SHORTNAME, CURRENT_USER_EMAIL)
+
+ _dependingControl_in_action = True
+ Depending_Control_Set_Result(displayboxname, sql_Statement, ROW.Item(1))
+ _dependingControl_in_action = False
+ End If
+ 'Catch ex As Exception
+ ' ClassLogger.Add("Unexpected Error in displaying SQL-result for control: " & ROW.Item(0).ToString & " - ERROR: " & ex.Message)
+ 'End Try
+
+ Next
+
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in Eventhandler OnTextBoxKeyUp - ERROR: " & ex.Message)
+ End Try
+
+ End If
+ End If
+
+ End Sub
+ Private Sub Depending_Control_Set_Result(displayboxname As String, sqlCommand As String, sqlConnection As String)
+ 'Try
+ Dim resultDT As DataTable = ClassDatabase.Return_Datatable_CS(sqlCommand, sqlConnection)
+ If Not IsNothing(resultDT) Then
+ 'Ist das Control ein Control was mehrfachwerte enthalten kann
+ If displayboxname.StartsWith(ClassControlCreator.PREFIX_COMBOBOX) Or displayboxname.StartsWith(ClassControlCreator.PREFIX_DATAGRIDVIEW) Or displayboxname.StartsWith(ClassControlCreator.PREFIX_TABLE) Then
+ If displayboxname.StartsWith(ClassControlCreator.PREFIX_COMBOBOX) Then
+ Dim cmbpanel As ComboBox = pnldesigner.Controls(displayboxname)
+ If IsNothing(cmbpanel) Then
+ Exit Sub
+ End If
+ cmbpanel.DataSource = Nothing
+ cmbpanel.DataSource = resultDT
+ cmbpanel.DisplayMember = resultDT.Columns(0).ColumnName
+ cmbpanel.ValueMember = resultDT.Columns(0).ColumnName
+ ElseIf displayboxname.StartsWith(ClassControlCreator.PREFIX_DATAGRIDVIEW) Or displayboxname.StartsWith(ClassControlCreator.PREFIX_TABLE) Then
+ 'not implemented
+ End If
+ Else
+ If resultDT.Rows.Count = 1 Then
+ pnldesigner.Controls(displayboxname).Text = resultDT.Rows(0).Item(0).ToString
+ Else
+ pnldesigner.Controls(displayboxname).Text = "RESULT = NOTHING or MORE THAN 1 ROW"
+ End If
+ End If
+ End If
+ 'Catch ex As Exception
+ ' ClassLogger.Add("Unexpected Ersror in Depending_Control_Set_Result - ERROR: " & ex.Message)
+ ' MsgBox("Unexpected error in Depending_Control_Set_Result: " & ex.Message, MsgBoxStyle.Critical)
+ 'End Try
+ End Sub
+ Public Sub OnCmbselectedIndex(sender As System.Object, e As System.EventArgs)
+ Dim cmb As ComboBox = sender
+ If cmb.SelectedIndex <> -1 And CTRLS_Loaded = True And FORM_Shown = True Then
+ ' Try
+ If ClassControlCreator.GET_CONTROL_PROPERTIES(DT_PROFILE_CONTROLS, cmb.Name) = 0 Then
+ MsgBox("Unexpected Error in getting control-properties CMB - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+ If ClassControlCreator.GET_DEPENDING_CONTROLS(DT_PROFILE_CONTROLS, cmb.Name) = False Then
+ MsgBox("Unexpected Error in getting dependent controls CMB- Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+ If _dependingControl_in_action = True Or CURR_DT_DEPENDING_CONTROLS Is Nothing Then
+ Exit Sub
+ End If
+
+ For Each ROW As DataRow In CURR_DT_DEPENDING_CONTROLS.Rows
+ 'Try
+ Dim displayboxname = ROW.Item("NAME").ToString
+ If Not IsDBNull(ROW.Item("CONNECTION_ID")) And Not IsDBNull(ROW.Item("SQL_UEBERPRUEFUNG")) Then
+ Dim sql_Statement = ROW.Item("SQL_UEBERPRUEFUNG")
+
+ sql_Statement = ClassPatterns.ReplaceAllValues(sql_Statement, pnldesigner, WMObject, CURRENT_USER_PRENAME, CURRENT_USER_SURNAME, CURRENT_USER_SHORTNAME, CURRENT_USER_EMAIL)
+
+
+ _dependingControl_in_action = True
+ Depending_Control_Set_Result(displayboxname, sql_Statement, ROW.Item(1))
+ _dependingControl_in_action = False
+
+ End If
+ 'Catch ex As Exception
+ ' ClassLogger.Add("Unexpected Error in displaying SQL-result for control: " & ROW.Item(0).ToString & " - ERROR: " & ex.Message)
+ 'End Try
+ Next
+
+ 'Catch ex As Exception
+ ' ClassLogger.Add("Unexpected Error in Eventhandler OnCmbselectedIndex - ERROR: " & ex.Message)
+ 'End Try
+
+ SendKeys.Send("{TAB}")
+
+ End If
+ End Sub
+ Public Sub onDGVRowValidating(ByVal sender As Object, ByVal e As DataGridViewCellCancelEventArgs)
+ Dim dgv As DataGridView = sender
+ Try
+ If ClassControlCreator.GET_CONTROL_PROPERTIES(DT_PROFILE_CONTROLS, dgv.Name) = 0 Then
+ MsgBox("Unexpected Error in getting control-properties DGV - Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+ If ClassControlCreator.GET_DEPENDING_CONTROLS(DT_PROFILE_CONTROLS, dgv.Name) = False Then
+ MsgBox("Unexpected Error in getting dependent controls DGV- Check the log and inform Your sysadmin!", MsgBoxStyle.Critical)
+ Exit Sub
+ End If
+
+
+ If Not IsNothing(CURR_DT_DEPENDING_CONTROLS) And CURR_DT_DEPENDING_CONTROLS.Rows.Count > 0 Then
+ For Each ROW As DataRow In CURR_DT_DEPENDING_CONTROLS.Rows
+ Try
+ Dim displayboxname = ROW.Item(0).ToString
+ If Not IsDBNull(ROW.Item(1)) And Not IsDBNull(ROW.Item(2)) Then
+ Dim sql_Statement = ROW.Item(2)
+ Dim cellvalue = dgv.Rows(dgv.Rows.Count - 2).Cells(0).Value.ToString()
+ sql_Statement = sql_Statement.ToString.Replace(dgv.Name, cellvalue)
+ Dim resultDT As DataTable = ClassDatabase.Return_Datatable_CS(sql_Statement, ROW.Item(1))
+ If resultDT.Rows.Count >= 1 Then
+ 'Nur dediziert einen Wert zurückerhalten
+ For Each row1 As DataRow In resultDT.Rows
+ Dim result = row1.Item(0)
+ If Not IsNothing(result) Then
+ pnldesigner.Controls(displayboxname).Text = result.ToString
+
+ Exit For
+ Else
+ pnldesigner.Controls(displayboxname).Text = "RESULT = NOTHING"
+
+ Exit For
+ End If
+ Next
+ Else
+ pnldesigner.Controls(displayboxname).Text = "NO RESULT"
+
+ End If
+
+
+ End If
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in Display SQL result for control: " & ROW.Item(0).ToString & " - ERROR: " & ex.Message)
+ End Try
+
+ Next
+
+ End If
+
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in Eventhandler Variable SQL Result - ERROR: " & ex.Message)
+ End Try
+
+ End Sub
+ Sub LoadSimpleData(control As Control, controlId As Integer)
+ If TypeOf control Is Label Then Exit Sub
+
+ Dim sql As String = $"SELECT NAME, CONNECTION_ID, SQL_UEBERPRUEFUNG FROM TBPM_PROFILE_CONTROLS WHERE GUID = {controlId} AND PROFIL_ID = {CURRENT_ProfilGUID} AND LEN(ISNULL(SQL_UEBERPRUEFUNG,'')) > 0 AND SQL_UEBERPRUEFUNG NOT LIKE '%#WMI#%' AND SQL_UEBERPRUEFUNG NOT LIKE '%#CTRL#%'"
+ Dim dt As DataTable = ClassDatabase.Return_Datatable(sql)
+
+ If IsNothing(dt) Then Exit Sub
+ If dt.Rows.Count = 0 Then Exit Sub
+
+ For Each row As DataRow In dt.Rows
+ Dim name As String = row.Item("NAME")
+
+ If IsDBNull(row.Item("CONNECTION_ID")) Then Continue For
+ If IsDBNull(row.Item("SQL_UEBERPRUEFUNG")) Then Continue For
+
+ Dim sqlStatement As String = row.Item("SQL_UEBERPRUEFUNG")
+ Dim connectionId As Integer = row.Item("CONNECTION_ID")
+
+ sql = ClassPatterns.ReplaceInternalValues(sqlStatement)
+ dt = ClassDatabase.Return_Datatable(sql)
+
+ If IsNothing(dt) Then
+ MsgBox($"SQL-Query for control {control.Name} is invalid.")
+ Exit Sub
+ End If
+
+ If TypeOf control Is TextBox Then
+ Dim firstRow As DataRow = dt.Rows(0)
+ Dim value = firstRow.Item(0)
+
+ control.Text = value
+ ElseIf TypeOf control Is ComboBox Then
+ Dim comboxBox As ComboBox = control
+ Dim list As New List(Of String)
+
+ For Each _row As DataRow In dt.Rows
+ list.Add(_row.Item(0))
+ Next
+
+ comboxBox.DataSource = list
+ ElseIf TypeOf control Is DataGridView Then
+ Dim dataGridView As DataGridView = control
+
+ dataGridView.DataSource = dt
+ End If
+ Next
+ End Sub
+
+ Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
+ Abschluss()
+
+ End Sub
+ Sub Abschluss()
+ btnSave.Enabled = False
+
+ 'Eingaben auf Form überprüfen
+ If Check_UpdateIndexe() = False Then
+
+ Dim workedFiles As Integer
+ For Each docrow As DataRow In CURRENT_DT_MASS_CHANGE_DOCS.Rows
+ CURRENT_DOC_ID = docrow.Item("DOC_ID")
+ CURRENT_DOC_GUID = docrow.Item("DOC_GUID")
+ Dim WMDOC As WMObject
+ Try
+ WMDOC = _windream.oSession.GetWMObjectByPath(WMEntity.WMEntityDocument, docrow.Item("FULL_PATH").ToString.Substring(2))
+ Catch ex As Exception
+ ClassLogger.Add("error while creating WMObject in (IndexVKTMultipleFiles): " & ex.Message)
+ Exit For
+ End Try
+ If Not IsNothing(WMDOC) Then
+ CURRENT_WMFILE = WMDOC
+ If ClassFinalizeDoc.Write_Final_Metadata = True Then
+ Dim sql = String.Format("UPDATE TBPM_PROFILE_FILES SET IN_WORK = 0, WORK_USER = '{0}', EDIT = 1 WHERE GUID = {1}", Environment.UserName, CURRENT_DOC_GUID)
+ If ClassDatabase.Execute_non_Query(sql) = True Then
+ workedFiles += 1
+ End If
+ End If
+
+ Dim WORK_HISTORY_ENTRY = Nothing
+ Try
+ WORK_HISTORY_ENTRY = DT_PROFIL.Rows(0).Item("WORK_HISTORY_ENTRY")
+ If IsDBNull(WORK_HISTORY_ENTRY) Then
+ WORK_HISTORY_ENTRY = Nothing
+ End If
+ Catch ex As Exception
+ WORK_HISTORY_ENTRY = Nothing
+ End Try
+ If Not IsNothing(WORK_HISTORY_ENTRY) Then
+ If WORK_HISTORY_ENTRY <> String.Empty Then
+ Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
+ ' einen Regulären Ausdruck laden
+ Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
+ ' die Vorkommen im SQL-String auslesen
+ Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(WORK_HISTORY_ENTRY)
+ '####
+ ' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
+ For Each element As System.Text.RegularExpressions.Match In elemente
+ Try
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> element in RegeX WORK_HISTORY_ENTRY: " & element.Value, False)
+ Dim CTRL_ID = element.Value.Substring(2, element.Value.Length - 3)
+ CTRL_ID = CTRL_ID.Replace("CTRLID", "")
+ Dim value_from_control
+ For Each inctrl As Control In Me.pnldesigner.Controls
+ If IsNothing(inctrl.Tag) Then
+ Continue For
+ End If
+ If inctrl.Tag = CTRL_ID Then
+ '######
+ Dim Type As String = inctrl.GetType.ToString
+ Select Case Type
+ Case "System.Windows.Forms.TextBox"
+ Try
+ value_from_control = inctrl.Text
+ Catch ex As Exception
+ value_from_control = String.Empty
+ End Try
+
+ Case "System.Windows.Forms.ComboBox"
+ Dim cmb As ComboBox = inctrl
+ Try
+ value_from_control = cmb.Text
+ Catch ex As Exception
+ value_from_control = String.Empty
+ End Try
+ Case "System.Windows.Forms.DateTimePicker"
+ Dim dtp As DateTimePicker = inctrl
+ Try
+ value_from_control = dtp.Value.ToString
+ Catch ex As Exception
+ value_from_control = String.Empty
+ End Try
+
+ Case "System.Windows.Forms.CheckBox"
+ Dim chk As CheckBox = inctrl
+ Try
+ value_from_control = chk.Checked
+ Catch ex As Exception
+ value_from_control = String.Empty
+ End Try
+ End Select
+
+ End If
+ Next
+ If Not IsNothing(value_from_control) And value_from_control <> String.Empty Then
+ WORK_HISTORY_ENTRY = WORK_HISTORY_ENTRY.ToString.Replace(element.Value, value_from_control)
+ End If
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in Checking control values for WORK_HISTORY_ENTRY - ERROR: " & ex.Message)
+ End Try
+ Next
+ If WORK_HISTORY_ENTRY.ToString.Contains("@DATE") Then
+ WORK_HISTORY_ENTRY.ToString.Replace("@DATE", Now.ToShortDateString)
+ End If
+ If WORK_HISTORY_ENTRY.ToString.Contains("@USERNAME") Then
+ WORK_HISTORY_ENTRY.ToString.Replace("@USERNAME", Environment.UserName)
+ End If
+ Else
+ WORK_HISTORY_ENTRY = ""
+ End If
+ Dim ins = String.Format("INSERT INTO TBPM_FILES_WORK_HISTORY (PROFIL_ID, DOC_ID,WORKED_BY,WORKED_WHERE,STATUS_COMMENT) VALUES ({0},{1},'{2}','{3}','{4}')", CURRENT_ProfilGUID, CURRENT_DOC_ID, Environment.UserName, Environment.MachineName, WORK_HISTORY_ENTRY)
+ ClassDatabase.Execute_non_Query(ins)
+
+ '####### ANNOTIEREN WENN KONFIGURIERT #######
+ If docrow.Item("FULL_PATH").ToString.ToLower.EndsWith(".pdf") Then
+ If Not IsNothing(WORK_HISTORY_ENTRY) Then
+ If CBool(DT_PROFIL.Rows(0).Item("ANNOTATE_WORK_HISTORY_ENTRY")) = True Then
+ Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE GUID = (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = {0} AND DOC_ID = {1})", CURRENT_ProfilGUID, CURRENT_DOC_ID)
+ Dim DT_ENTRY As DataTable = ClassDatabase.Return_Datatable(Sql, True)
+ If Not IsNothing(DT_ENTRY) Then
+ If DT_ENTRY.Rows.Count = 1 Then
+ Dim AnnotationString = DT_ENTRY.Rows(0).Item("WORKED_WHEN") & " " & DT_ENTRY.Rows(0).Item("WORKED_BY") & ": " & DT_ENTRY.Rows(0).Item("STATUS_COMMENT")
+ ClassAnnotation.Annotate_PDF("Workflow-State:", AnnotationString, 0)
+ End If
+ End If
+ End If
+ Dim value = DT_PROFIL.Rows(0).Item("ANNOTATE_ALL_WORK_HISTORY_ENTRIES")
+ If CBool(value) = True Then
+ Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE DOC_ID = {1} ORDER BY GUID", CURRENT_ProfilGUID, CURRENT_DOC_ID)
+ Dim DT_ENTRIES As DataTable = ClassDatabase.Return_Datatable(Sql, True)
+ If Not IsNothing(DT_ENTRIES) Then
+ If DT_ENTRIES.Rows.Count > 0 Then
+ Dim AnnotationString As String = ""
+ For Each rw As DataRow In DT_ENTRIES.Rows
+ AnnotationString = AnnotationString & rw.Item("WORKED_WHEN") & " " & rw.Item("WORKED_BY") & ": " & rw.Item("STATUS_COMMENT") & vbNewLine
+ Next
+ ClassAnnotation.Annotate_PDF("Workflow History:", AnnotationString, 0, 10, 40)
+ End If
+ End If
+ End If
+ End If
+ End If
+
+ '####### WENN MOVE2FOLDER KONFIGURIERT IST#######
+ If MOVE2Folder <> "" Then
+ Dim idxerr_message = _allgFunk.Move2Folder(docrow.Item("FULL_PATH").ToString, MOVE2Folder, CURRENT_ProfilGUID)
+ If idxerr_message <> "" Then
+ MsgBox("Error in Move2Folder - Check the log And inform Your sysadmin", MsgBoxStyle.Critical)
+
+ End If
+ End If
+
+ End If
+
+
+ End If
+ Next
+
+ 'Wenn kein Fehler nach der finalen Indexierung gesetzt wurde
+
+ If workedFiles = CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count Then
+ If CURRENT_USER_LANGUAGE = "de-DE" Then
+ MsgBox(String.Format("{0} Dateien wurden abgeschlossen!", workedFiles), MsgBoxStyle.Information, "Erfolgsmeldung:")
+ ElseIf CURRENT_USER_LANGUAGE = "en-US" Then
+ MsgBox(String.Format("{0} files have been worked successfully!", workedFiles), MsgBoxStyle.Information, "Success:")
+ End If
+ Else
+ If CURRENT_USER_LANGUAGE = "de-DE" Then
+ MsgBox(String.Format("{0} von {1} Dateien wurden abgeschlossen! Bitte prüfen Sie das Log und informieren Ihren Sysadmin.", workedFiles, CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count), MsgBoxStyle.Information, "Achtung:")
+ ElseIf CURRENT_USER_LANGUAGE = "en-US" Then
+ MsgBox(String.Format("{0} of {1} files have been worked successfully - Check the log And inform Your sysadmin!", workedFiles, CURRENT_DT_MASS_CHANGE_DOCS.Rows.Count), MsgBoxStyle.Information, "Attention:")
+ End If
+
+ End If
+ Me.Close()
+ 'Catch ex As Exception
+ ' errormessage = "Unvorhergesehener Fehler bei Abschluss:" & ex.Message
+ ' My.Settings.Save()
+ ' frmError.ShowDialog()
+ ' ClassLogger.Add(">> Unvorhergesehener Fehler bei Abschluss: " & ex.Message, True)
+ 'End Try
+ Else
+ 'lblerror.Visible = True
+ 'lblerror.Text = errmessage
+ errormessage = errmessage
+ frmError.ShowDialog()
+ End If
+ btnSave.Enabled = True
+ End Sub
+
+ Function Check_UpdateIndexe()
+ ' Try
+
+ Dim missing As Boolean = False
+ 'Jedes Control auf panel durchlaufen
+ For Each inctrl As Control In Me.pnldesigner.Controls
+ 'Der input der Box,Cmb muss jedes mal geleert werden
+ Dim input As String = ""
+ 'Jedes Control in Konfig Tab durchlaufn
+ For Each dr As DataRow In DT_PROFILE_CONTROLS.Rows
+ If dr.Item("CTRL_TYPE") = "LBL" Or dr.Item("CTRL_TYPE") = "LINE" Then
+ Continue For
+ End If
+ 'Den Indexnamen auslesen
+ Dim _IDXName As String = dr.Item("INDEX_NAME")
+ Dim _MUSSEINGABE As Boolean = CBool(dr.Item("VALIDATION"))
+ Dim _READ_ONLY As Boolean = CBool(dr.Item("READ_ONLY"))
+ Dim Typ As String = dr.Item("CTRL_TYPE")
+ Dim CONTROL_ID As String = dr.Item("GUID")
+ Dim ctrl = dr.Item("NAME")
+ 'Nur wenn der Name der Zeile entspricht und der Index READ_ONLY FALSE ist
+ If dr.Item("NAME") = inctrl.Name And (_READ_ONLY = False Or dr.Item("SQL_UEBERPRUEFUNG") <> "") And _IDXName <> "DD PM-ONLY FOR DISPLAY" Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexierung für Control (" & CONTROL_ID & ") '" & ctrl & "' gestartet. Indexname '" & _IDXName & "'", False)
+ If _IDXName = "" Then
+ ClassLogger.Add(" >> Indexname is unexpected empty.", False)
+ Continue For
+ End If
+ Dim Type As String = inctrl.GetType.ToString
+ Select Case Type
+ Case "System.Windows.Forms.TextBox"
+ Try
+ 'Als erstes überprüfen ob überhaupt etwas eingetragen worden ist
+ If Check_Missing(inctrl, "txt") = True And _MUSSEINGABE = True Then 'NICHTS EINGETRAGEN
+ missing = True
+ errmessage = "Missing input in textbox '" & inctrl.Name & "'"
+ inctrl.BackColor = Color.Red
+ Exit For
+ Else
+ input = inctrl.Text
+ 'Wenn der Wert in ein Vektorfeld geschrieben wird
+ If _IDXName.StartsWith("[%VKT") Then
+ input = Return_PM_VEKTOR(input, _IDXName)
+ 'Hier muss nun separat als Vektorfeld indexiert werden
+ If IndexVKTMultipleFiles(input, PROFIL_VEKTORINDEX) = True Then
+ missing = True
+ errmessage = "Error while indexing Textbox with VEKTOR - Check the log and inform Your sysadmin"
+
+ Exit For
+ End If
+ Else
+ Dim result() As String
+ ReDim Preserve result(0)
+
+ result(0) = input
+ If IndexMultipleFiles(_IDXName, result) = False Then
+ missing = True
+ errmessage = "error while indexing Textbox - Check the log and inform Your sysadmin"
+ Exit For
+ Else
+ 'Nun das Logging
+ If PROFIL_LOGINDEX <> "" Then
+ input = Return_LOGString(input, input, _IDXName)
+ IndexVKTMultipleFiles(input, PROFIL_LOGINDEX)
+ End If
+ End If
+ End If
+
+ End If
+ Catch ex As Exception
+ Dim st As New StackTrace(True)
+ st = New StackTrace(ex, True)
+ MsgBox("Unvorhergesehener Fehler in Check_UpdateIndexe TextBox: " & vbNewLine & ex.Message & vbNewLine & "Line: " & st.GetFrame(0).GetFileLineNumber().ToString, MsgBoxStyle.Critical, "Error:")
+ ClassLogger.Add("Unvorhergesehener Fehler in Check_UpdateIndexe:" & ex.Message & " - Line: " & st.GetFrame(0).GetFileLineNumber().ToString, True)
+ Return True
+ End Try
+
+ Case "System.Windows.Forms.ComboBox"
+ Dim cmb As ComboBox = inctrl
+ 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
+ If cmb.SelectedIndex = -1 And _MUSSEINGABE = True Then
+ missing = True
+ errmessage = "Please Choose an entry out of ComboBox '" & cmb.Name & "'"
+ Exit For
+ ElseIf cmb.SelectedIndex <> -1 Then
+ input = cmb.Text
+ 'Wenn der Wert in ein Vektorfeld geschrieben wird
+ If _IDXName.StartsWith("[%VKT") Then
+ input = Return_PM_VEKTOR(input, _IDXName)
+ 'Hier muss nun separat als Vektorfeld indexiert werden
+ If IndexVKTMultipleFiles(input, PROFIL_VEKTORINDEX) = True Then
+ missing = True
+ errmessage = "Error while indexing Combobox with VEKTOR - Check the log and inform Your sysadmin"
+ Exit For
+ End If
+ Else
+ Dim result() As String
+ ReDim Preserve result(0)
+ result(0) = input
+ If IndexMultipleFiles(_IDXName, result) = False Then
+ cmb.DroppedDown = True
+ missing = True
+ errmessage = "error while indexing Combobox - Check the log and inform Your sysadmin"
+ Exit For
+ Else
+ 'Nun das Logging
+ If PROFIL_LOGINDEX <> "" Then
+ input = Return_LOGString(input, input, _IDXName)
+ IndexVKTMultipleFiles(input, PROFIL_LOGINDEX)
+ End If
+ End If
+ End If
+ End If
+ Case "System.Windows.Forms.DateTimePicker"
+ Dim dtp As DateTimePicker = inctrl
+ 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
+ If _MUSSEINGABE = True And dtp.Value.ToString = String.Empty Then
+ missing = True
+ errmessage = "Please Choose DateValue for field'" & dtp.Name & "'"
+ Exit For
+ ElseIf dtp.Value.ToString <> "01.01.0001 00:00:00" Then
+ input = CDate(dtp.Value)
+ 'Wenn der WErt in ein Vektorfeld geschrieben wird
+ If _IDXName.StartsWith("[%VKT") Then
+ 'Input = die String komponente als String
+ input = Return_PM_VEKTOR(input, _IDXName)
+ 'Hier muss nun separat als Vektorfeld indexiert werden
+ If IndexVKTMultipleFiles(input, PROFIL_VEKTORINDEX) = True Then
+ missing = True
+ errmessage = "Error while indexing DatePicker with VEKTOR - Check the log and inform Your sysadmin"
+ Exit For
+ End If
+ Else
+ Dim result()
+ ReDim Preserve result(0)
+ result(0) = CDate(input)
+ 'MsgBox(_IDXName)
+ If IndexMultipleFiles(_IDXName, result) = False Then
+ missing = True
+ errmessage = "Error while indexing DatePicker - Check the log and inform Your sysadmin"
+ Exit For
+ Else
+ 'Nun das Logging
+ If PROFIL_LOGINDEX <> "" Then
+ input = Return_LOGString(input, input, _IDXName)
+ IndexVKTMultipleFiles(input, PROFIL_LOGINDEX)
+ End If
+ End If
+ End If
+
+ Else
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> DateValue is 01.01.0001 00:00:00", False)
+ End If
+ Case "System.Windows.Forms.CheckBox"
+ Dim chk As CheckBox = inctrl
+ input = chk.Checked.ToString
+
+ If chk.Checked = False And _MUSSEINGABE = True Then
+ missing = True
+ errmessage = "Option '" & chk.Name & "' is required."
+ Exit For
+ End If
+
+
+ Dim result() As String
+ ReDim Preserve result(0)
+ If chk.Checked Then
+ result(0) = 1
+ Else
+ result(0) = 0
+ End If
+
+ If _IDXName.StartsWith("[%VKT") Then
+ 'Input = die String komponente mit Boolean als String
+ input = Return_PM_VEKTOR(chk.Checked.ToString, _IDXName)
+ 'Hier muss nun separat als Vektorfeld indexiert werden
+ If IndexVKTMultipleFiles(input, PROFIL_VEKTORINDEX) = True Then
+ missing = True
+ errmessage = "Error while indexing Checkbox with VEKTOR - Check the log and inform Your sysadmin"
+
+ Exit For
+ End If
+ Else
+ If IndexMultipleFiles(_IDXName, result) = False Then
+ missing = True
+ errmessage = "error while indexing Checkbox - Check the log and inform Your sysadmin"
+ Exit For
+ Else
+ 'Nun das Logging
+ If PROFIL_LOGINDEX <> "" Then
+ input = Return_LOGString(CBool(result(0)).ToString, result(0).ToString, _IDXName)
+ IndexVKTMultipleFiles(input, PROFIL_LOGINDEX)
+ End If
+ End If
+ End If
+
+ Case "System.Windows.Forms.DataGridView"
+ Dim dgv As DataGridView = inctrl
+
+ Dim Zeilen As Integer = 0
+ For Each row As DataGridViewRow In dgv.Rows
+ Dim exists = False
+ ' MsgBox(row.Cells(0).Value.GetType.ToString)
+ If row.Cells(0).Value Is Nothing = False Then
+ Zeilen += 1
+ End If
+ Next
+ 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
+ If _MUSSEINGABE = True And Zeilen = 0 Then
+ missing = True
+ errmessage = "Missing input in vectorfield'" & dgv.Name & "'"
+ Exit For
+ ElseIf Zeilen > 0 Then
+ Dim ZeilenGrid As Integer = 0
+ Dim myVektorArr As String()
+ 'Jeden Werte des Datagridviews durchlaufen
+ For Each row As DataGridViewRow In dgv.Rows
+ Dim exists = False
+ Select Case Typ
+ Case "TABLE"
+ ' MsgBox(row.Cells(0).Value.GetType.ToString)
+ Dim str As String
+ If row.Cells(0).Value Is Nothing = False Then
+ 'Das Array anpassen
+ ReDim Preserve myVektorArr(ZeilenGrid)
+ For i = 0 To row.Cells.Count - 1
+ Select Case i
+ Case 0
+ str = row.Cells(i).Value
+ Case Else
+ str = str & Delimiter & row.Cells(i).Value
+ End Select
+
+ Next
+ 'Den Wert im Array speichern
+ myVektorArr(ZeilenGrid) = str
+ ZeilenGrid += 1
+ End If
+ Case Else
+ ' MsgBox(row.Cells(0).Value.GetType.ToString)
+ If row.Cells(0).Value Is Nothing = False Then
+ 'Das Array anpassen
+ ReDim Preserve myVektorArr(ZeilenGrid)
+ 'Den Wert im Array speichern
+ myVektorArr(ZeilenGrid) = row.Cells(0).Value.ToString
+ ZeilenGrid += 1
+ End If
+ End Select
+
+ Next
+ 'Jetzt die Datei indexieren
+ If IndexMultipleFiles(_IDXName, myVektorArr) = False Then
+ missing = True
+ errmessage = "error while indexing Vektorfeld - Check the log and inform Your sysadmin"
+ Exit For
+ End If
+ End If
+ End Select
+ End If 'End If für Control und ReadOnly = False
+ Next
+ Next
+
+ Return missing
+
+ 'Catch ex As Exception
+ ' Dim st As New StackTrace(True)
+ ' st = New StackTrace(ex, True)
+ ' MsgBox("Unvorhergesehener Fehler in Check_UpdateIndexe: " & vbNewLine & ex.Message & vbNewLine & "Line: " & st.GetFrame(0).GetFileLineNumber().ToString, MsgBoxStyle.Critical, "Error:")
+ ' ClassLogger.Add("Unvorhergesehener Fehler in Check_UpdateIndexe:" & ex.Message & " - Line: " & st.GetFrame(0).GetFileLineNumber().ToString, True)
+ ' Return True
+ 'End Try
+
+ End Function
+ Function Check_Missing(control As Control, typ As String)
+ Select Case typ
+ Case "txt"
+ If control.Text = String.Empty Or control.Text = "(Different values)" Or control.Text = "(Untersch. Werte)" Then
+ Return True
+ End If
+ Return False
+ End Select
+ End Function
+
+ Private Function IndexMultipleFiles(idxxname As String, idxvalue As Object)
+ Dim _allfine As Boolean = True
+ Try
+ For Each docrow As DataRow In CURRENT_DT_MASS_CHANGE_DOCS.Rows
+ Dim WMDOC As WMObject
+ Try
+ WMDOC = _windream.oSession.GetWMObjectByPath(WMEntity.WMEntityDocument, docrow.Item("FULL_PATH").ToString.Substring(2))
+ Catch ex As Exception
+ ClassLogger.Add("error while creating WMObject in (IndexMultipleFiles): " & ex.Message)
+ _allfine = False
+ Exit For
+
+ End Try
+
+ 'Die Arrays vorbereiten
+ Dim arrIndex() As String = Nothing
+ Dim arrValue() As String = Nothing
+ arrIndex = Nothing
+ arrValue = Nothing
+ 'Den Indexnamen übergeben
+ ReDim Preserve arrIndex(0)
+ arrIndex(0) = idxxname
+ 'Das Array der Idnexwerte überprüfen
+ If idxvalue Is Nothing = False Then
+ If idxvalue.Length() > 1 Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexing Index '" & idxxname & "' with Arrayvalue", False)
+ Dim anzahl As Integer = 0
+ For Each indexvalue As String In idxvalue
+ ReDim Preserve arrValue(anzahl)
+ arrValue(anzahl) = indexvalue
+ anzahl += 1
+ Next
+ Else
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexing Index '" & idxxname & "' with value '" & idxvalue(0) & "'", False)
+ ReDim Preserve arrValue(0)
+ arrValue(0) = idxvalue(0).ToString
+ End If
+ 'Jetzt das eigentliche Indexieren der Datei
+ If Me._windreamPM.RunIndexing(WMDOC, arrIndex, arrValue) = False Then
+ _allfine = False
+ Exit For
+ End If
+
+ End If
+ Next
+
+ Return _allfine
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected error in IndexMultipleFiles: " & ex.Message.ToString, True)
+ Return False
+ End Try
+ End Function
+ Private Function IndexVKTMultipleFiles(input As String, NameVKTIndex As String)
+ Dim _allfine As Boolean = True
+ Dim missing As Boolean = False
+ For Each docrow As DataRow In CURRENT_DT_MASS_CHANGE_DOCS.Rows
+ Dim WMDOC As WMObject
+ Try
+ WMDOC = _windream.oSession.GetWMObjectByPath(WMEntity.WMEntityDocument, docrow.Item("FULL_PATH").ToString.Substring(2))
+ Catch ex As Exception
+ ClassLogger.Add("error while creating WMObject in (IndexVKTMultipleFiles): " & ex.Message)
+ _allfine = False
+ missing = True
+ Exit For
+ End Try
+
+ Dim Anzahl As Integer = 0
+ Dim myInputArr As String()
+ 'Jeden Wert des Vektorfeldes durchlaufen
+ Dim wertWD = WMDOC.GetVariableValue(NameVKTIndex)
+ If wertWD Is Nothing = False Then
+ 'Es wird gegen ein Vektorfeld nachindexiert
+ If wertWD.GetType.ToString.Contains("System.Object") Then
+ 'es handelt sich um ein Vektorfeld - Zuweisen der Indexwerte des Vektorfeldes zu Array
+ For Each obj As Object In wertWD
+ If obj Is Nothing = False Then
+ 'Das Array anpassen
+ ReDim Preserve myInputArr(Anzahl)
+ 'Den Wert im Array speichern
+ myInputArr(Anzahl) = obj.ToString
+ Anzahl += 1
+ End If
+ Next
+ End If
+ 'Das Array anpassen
+ ReDim Preserve myInputArr(Anzahl)
+ 'und den letzten Wert übergeben
+ myInputArr(Anzahl) = input
+ Else
+ 'Das Array anpassen
+ ReDim Preserve myInputArr(Anzahl)
+ 'und den letzten Wert übergeben
+ myInputArr(Anzahl) = input
+ End If
+
+ If myInputArr.Length > 0 Then
+ 'Jetzt die Datei indexieren
+ If IndexSinglefile(WMDOC, NameVKTIndex, myInputArr) = False Then
+ missing = True
+ End If
+ End If
+ Next
+
+ Return missing
+ End Function
+ Private Function IndexSinglefile(_dok As WINDREAMLib.WMObject, idxxname As String, idxvalue As Object)
+ Dim File_indexiert As Boolean = False
+ Try
+ 'Die Arrays vorbereiten
+ Dim arrIndex() As String = Nothing
+ Dim arrValue() As String = Nothing
+ arrIndex = Nothing
+ arrValue = Nothing
+ 'Den Indexnamen übergeben
+ ReDim Preserve arrIndex(0)
+ arrIndex(0) = idxxname
+ 'Das Array der Idnexwerte überprüfen
+ If idxvalue Is Nothing = False Then
+ If idxvalue.Length() > 1 Then
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexing Index '" & idxxname & "' with Arrayvalue", False)
+ Dim anzahl As Integer = 0
+ For Each indexvalue As String In idxvalue
+ ReDim Preserve arrValue(anzahl)
+ arrValue(anzahl) = indexvalue
+ anzahl += 1
+ Next
+ Else
+ If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexing Index '" & idxxname & "' with value '" & idxvalue(0) & "'", False)
+ ReDim Preserve arrValue(0)
+ arrValue(0) = idxvalue(0).ToString
+ End If
+ 'Jetzt das eigentliche Indexieren der Datei
+ File_indexiert = Me._windreamPM.RunIndexing(_dok, arrIndex, arrValue)
+ Return File_indexiert
+ End If
+
+ Catch ex As Exception
+ ClassLogger.Add("Unexpected Error in IndexSinglefile: " & ex.Message.ToString, True)
+ Return Err()
+ End Try
+ End Function
+ Function Return_PM_VEKTOR(input As String, VKTBezeichner As String)
+ Dim PM_String As String
+ Try
+ Dim Bezeichner As String = VKTBezeichner.Replace("[%VKT", "")
+ PM_String = "DD-PM" & Delimiter & Bezeichner & Delimiter & input & Delimiter & Environment.UserName & Delimiter & Now.ToString
+ Catch ex As Exception
+ ClassLogger.Add(">> Fehler in Return_PM_VEKTOR: " & ex.Message, True)
+ PM_String = "DD-PM ERROR: " & ex.Message
+ End Try
+ Return PM_String
+
+ End Function
+ Function Return_LOGString(input As String, old As String, indexname As String)
+ Dim PM_String As String
+ Try
+ If old = "DDFINALINDEX" Then
+ PM_String = "DD-PMlog-FINAL" & Delimiter & indexname & Delimiter & input & Delimiter & Environment.UserName & Delimiter & Now.ToString
+ Else
+ PM_String = "DD-PMlog-CHG" & Delimiter & indexname & Delimiter & "NEW: '" & input & "'" & Delimiter & Environment.UserName & Delimiter & Now.ToString
+ End If
+
+ Catch ex As Exception
+ ClassLogger.Add(">> Fehler in Return_LOGString: " & ex.Message, True)
+ PM_String = "DD-PM ERROR: " & ex.Message
+ End Try
+ Return PM_String
+
+ End Function
+
+ Private Sub frmMassValidator_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
+ My.Settings.frmMassValidatorSize = Me.Size
+ My.Settings.frmMassValidatorposition = Me.Location
+ My.Settings.Save()
+ End Sub
+
+ Private Sub frmMassValidator_Shown(sender As Object, e As EventArgs) Handles Me.Shown
+ FORM_Shown = True
+ End Sub
+End Class
\ No newline at end of file
diff --git a/app/DD_PM_WINDREAM/frmValidator.vb b/app/DD_PM_WINDREAM/frmValidator.vb
index 48f8bc0..1fea49c 100644
--- a/app/DD_PM_WINDREAM/frmValidator.vb
+++ b/app/DD_PM_WINDREAM/frmValidator.vb
@@ -10,6 +10,7 @@ Imports System.IO
Imports DevExpress.Pdf.pdfdo
Imports DevExpress.Pdf
Imports System.Text.RegularExpressions
+Imports System.ComponentModel
Public Class frmValidator
Dim viewerID
@@ -568,13 +569,9 @@ Public Class frmValidator
AddHandler txt.KeyUp, AddressOf OnTextBoxKeyUp
ctrl = txt
-
- 'add_textbox(dr.Item("GUID"), dr.Item("CTRL_NAME"), CInt(dr.Item("X_LOC")), CInt(dr.Item("Y_LOC")), CInt(dr.Item("WIDTH")), CInt(dr.Item("HEIGHT")), dr.Item("READ_ONLY"), dr.Item("LOAD_IDX_VALUE")) 'dr.Item("INDEX_NAME"),
Case "LBL"
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch LBL zu laden", False)
ctrl = ClassControlCreator.CreateExistingLabel(dr, False)
-
- 'add_label(dr.Item("GUID"), dr.Item("CTRL_NAME"), dr.Item("CTRL_TEXT"), CInt(dr.Item("X_LOC")), CInt(dr.Item("Y_LOC")))
Case "CMB"
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch CMB zu laden", False)
@@ -2343,7 +2340,7 @@ Public Class frmValidator
Dim input As String = ""
'Jedes Control in Konfig Tab durchlaufn
For Each dr As DataRow In dt.Rows
- If dr.Item("CTRL_TYPE") = "LBL" Then
+ If dr.Item("CTRL_TYPE") = "LBL" Or dr.Item("CTRL_TYPE") = "LINE" Then
Continue For
End If
'Den Indexnamen auslesen
@@ -3005,4 +3002,8 @@ Public Class frmValidator
load_viewer()
End Sub
+
+ Private Sub frmValidator_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
+
+ End Sub
End Class
\ No newline at end of file