Globi Integration und Suche Abhängig

This commit is contained in:
SchreiberM 2020-11-25 17:44:40 +01:00
parent 0dd9788d8f
commit 1638fdc173
24 changed files with 1545 additions and 3796 deletions

View File

@ -18,4 +18,5 @@
Public Const ATTR_TYPE_INTEGER = "BIG INTEGER" Public Const ATTR_TYPE_INTEGER = "BIG INTEGER"
Public Const ATTR_TYPE_DATE = "DATE" Public Const ATTR_TYPE_DATE = "DATE"
Public Const ATTR_TYPE_BOOLEAN = "BIT" Public Const ATTR_TYPE_BOOLEAN = "BIT"
Public Const VECTORSEPARATOR = ""
End Class End Class

View File

@ -112,7 +112,7 @@ Public Class ClassInit
Private Sub Initialize3rdParty(MyApplication As My.MyApplication) Private Sub Initialize3rdParty(MyApplication As My.MyApplication)
Try Try
Dim oSql = "SELECT * FROM TBCW_CONFIGURATION" Dim oSql = "Select LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE NAME = 'GDPICTURE'"
Dim oDatatable As DataTable = My.Database.GetDatatable(oSql) Dim oDatatable As DataTable = My.Database.GetDatatable(oSql)
If oDatatable.Rows.Count = 0 Then If oDatatable.Rows.Count = 0 Then
@ -121,10 +121,11 @@ Public Class ClassInit
Dim oRow As DataRow = oDatatable.Rows.Item(0) Dim oRow As DataRow = oDatatable.Rows.Item(0)
MyApplication.Settings.GdPictureKey = NotNull(oRow.Item("GDPICTURE_LICENSE"), String.Empty) MyApplication.Settings.GdPictureKey = NotNull(oRow.Item("LICENSE"), String.Empty)
My.Application.Settings.GdPictureKey = NotNull(oRow.Item("LICENSE"), String.Empty)
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
Throw New InitException("Fehler beim Laden der Konfiguration!") Throw New InitException("Error initializing3rdParty!")
End Try End Try
End Sub End Sub
Private Sub InitBasicData(MyApplication As My.MyApplication) Private Sub InitBasicData(MyApplication As My.MyApplication)

View File

@ -24,8 +24,9 @@
Public Property ECMDirect As Boolean = True Public Property ECMDirect As Boolean = True
Public Property CURRENT_PROFILE_LOG_INDEX As String Public Property CURRENT_PROFILE_LOG_INDEX As String
Public Property ShowIndexResult As Boolean = True Public Property ShowIndexResult As Boolean = True
Public Property CURR_MAN_INDEXE As DataTable Public Property CURR_DT_MAN_INDEXE As DataTable
Public Property CURR_AUTO_INDEXE As DataTable Public Property CURR_DT_AUTO_INDEXE As DataTable
Public Property CURR_DT_DOCTYPE As DataTable
Public Property CURR_INDEX_MAN_POSTPROCESSING As DataTable Public Property CURR_INDEX_MAN_POSTPROCESSING As DataTable
Public Property FILE_DELIMITER As String Public Property FILE_DELIMITER As String
Public Property VERSION_DELIMITER As String Public Property VERSION_DELIMITER As String

View File

@ -48,6 +48,7 @@ Partial Class frmGlobix_Index
Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl() Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl()
Me.pnlIndex = New System.Windows.Forms.Panel() Me.pnlIndex = New System.Windows.Forms.Panel()
Me.Panel1 = New System.Windows.Forms.Panel() Me.Panel1 = New System.Windows.Forms.Panel()
Me.Label1 = New System.Windows.Forms.Label()
Me.cmbDoctype = New System.Windows.Forms.ComboBox() Me.cmbDoctype = New System.Windows.Forms.ComboBox()
Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer() Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -141,6 +142,7 @@ Partial Class frmGlobix_Index
Me.labelError.ImageOptions.SvgImage = CType(resources.GetObject("labelError.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.labelError.ImageOptions.SvgImage = CType(resources.GetObject("labelError.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.labelError.Name = "labelError" Me.labelError.Name = "labelError"
Me.labelError.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph Me.labelError.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.labelError.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
' '
'labelNotice 'labelNotice
' '
@ -149,6 +151,7 @@ Partial Class frmGlobix_Index
Me.labelNotice.ImageOptions.SvgImage = CType(resources.GetObject("labelNotice.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.labelNotice.ImageOptions.SvgImage = CType(resources.GetObject("labelNotice.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.labelNotice.Name = "labelNotice" Me.labelNotice.Name = "labelNotice"
Me.labelNotice.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph Me.labelNotice.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.labelNotice.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
' '
'chkMultiindexing 'chkMultiindexing
' '
@ -161,10 +164,11 @@ Partial Class frmGlobix_Index
' '
'BarButtonItem1 'BarButtonItem1
' '
Me.BarButtonItem1.Caption = "Starten" Me.BarButtonItem1.Caption = "Ablage-Flow"
Me.BarButtonItem1.Id = 14 Me.BarButtonItem1.Id = 14
Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.BarButtonItem1.ImageOptions.Image = CType(resources.GetObject("BarButtonItem1.ImageOptions.Image"), System.Drawing.Image)
Me.BarButtonItem1.Name = "BarButtonItem1" Me.BarButtonItem1.Name = "BarButtonItem1"
Me.BarButtonItem1.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large
' '
'RibbonPage1 'RibbonPage1
' '
@ -177,7 +181,7 @@ Partial Class frmGlobix_Index
Me.RibbonPageGroup3.AllowTextClipping = False Me.RibbonPageGroup3.AllowTextClipping = False
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1) Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3" Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "Datei verarbeiten" Me.RibbonPageGroup3.Text = "Start"
' '
'RibbonPageGroup1 'RibbonPageGroup1
' '
@ -242,27 +246,38 @@ Partial Class frmGlobix_Index
'pnlIndex 'pnlIndex
' '
Me.pnlIndex.Dock = System.Windows.Forms.DockStyle.Fill Me.pnlIndex.Dock = System.Windows.Forms.DockStyle.Fill
Me.pnlIndex.Location = New System.Drawing.Point(0, 56) Me.pnlIndex.Location = New System.Drawing.Point(0, 50)
Me.pnlIndex.Name = "pnlIndex" Me.pnlIndex.Name = "pnlIndex"
Me.pnlIndex.Size = New System.Drawing.Size(591, 359) Me.pnlIndex.Size = New System.Drawing.Size(591, 365)
Me.pnlIndex.TabIndex = 1 Me.pnlIndex.TabIndex = 1
' '
'Panel1 'Panel1
' '
Me.Panel1.Controls.Add(Me.Label1)
Me.Panel1.Controls.Add(Me.cmbDoctype) Me.Panel1.Controls.Add(Me.cmbDoctype)
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Top Me.Panel1.Dock = System.Windows.Forms.DockStyle.Top
Me.Panel1.Location = New System.Drawing.Point(0, 0) Me.Panel1.Location = New System.Drawing.Point(0, 0)
Me.Panel1.Name = "Panel1" Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(591, 56) Me.Panel1.Size = New System.Drawing.Size(591, 50)
Me.Panel1.TabIndex = 0 Me.Panel1.TabIndex = 0
' '
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.Label1.Location = New System.Drawing.Point(3, 3)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(192, 13)
Me.Label1.TabIndex = 2
Me.Label1.Text = "Bitte wählen Sie einen Ablage-Flow:"
'
'cmbDoctype 'cmbDoctype
' '
Me.cmbDoctype.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ Me.cmbDoctype.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.cmbDoctype.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.cmbDoctype.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.cmbDoctype.FormattingEnabled = True Me.cmbDoctype.FormattingEnabled = True
Me.cmbDoctype.Location = New System.Drawing.Point(12, 17) Me.cmbDoctype.Location = New System.Drawing.Point(6, 19)
Me.cmbDoctype.Name = "cmbDoctype" Me.cmbDoctype.Name = "cmbDoctype"
Me.cmbDoctype.Size = New System.Drawing.Size(555, 25) Me.cmbDoctype.Size = New System.Drawing.Size(555, 25)
Me.cmbDoctype.TabIndex = 0 Me.cmbDoctype.TabIndex = 0
@ -291,6 +306,7 @@ Partial Class frmGlobix_Index
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.ResumeLayout(False) Me.SplitContainerControl1.ResumeLayout(False)
Me.Panel1.ResumeLayout(False) Me.Panel1.ResumeLayout(False)
Me.Panel1.PerformLayout()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout() Me.PerformLayout()
@ -323,4 +339,5 @@ Partial Class frmGlobix_Index
Friend WithEvents cmbDoctype As ComboBox Friend WithEvents cmbDoctype As ComboBox
Friend WithEvents DocumentViewer1 As Controls.DocumentViewer.DocumentViewer Friend WithEvents DocumentViewer1 As Controls.DocumentViewer.DocumentViewer
Friend WithEvents pnlIndex As Panel Friend WithEvents pnlIndex As Panel
Friend WithEvents Label1 As Label
End Class End Class

View File

@ -270,19 +270,27 @@
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKMCAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKUEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw
Pg0KICA8ZyBpZD0iQ2hlY2tCb3giPg0KICAgIDxwYXRoIGQ9Ik0yNyw0SDVDNC41LDQsNCw0LjUsNCw1 MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu
djIyYzAsMC41LDAuNSwxLDEsMWgyMmMwLjUsMCwxLTAuNSwxLTFWNUMyOCw0LjUsMjcuNSw0LDI3LDR6 bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRW1wbG95ZWVQcm9maWxlIj4NCiAg
IE0xNCwyMmwtNi02bDItMmw0LDQgICBsOC04bDIsMkwxNCwyMnoiIGNsYXNzPSJHcmVlbiIgLz4NCiAg ICA8cGF0aCBkPSJNMjksMEgzQzIuNSwwLDIsMC41LDIsMXYzMGMwLDAuNSwwLjUsMSwxLDFoMjZjMC41
PC9nPg0KPC9zdmc+Cw== LDAsMS0wLjUsMS0xVjFDMzAsMC41LDI5LjUsMCwyOSwweiBNMjgsMzBINFYyaDI0VjMweiIgY2xhc3M9
IkJsYWNrIiAvPg0KICAgIDxwYXRoIGQ9Ik0xMi4zLDEzLjhjLTAuMS0wLjMtMC4zLTAuNi0wLjMtMC45
YzAuMS0wLjEsMC4zLTAuMiwwLjMtMC4yQzExLjYsMTAuNSwxMiw4LDE1LjIsOGMzLjUsMCwzLjcsMS45
LDMuNywxLjkgICBzMS45LTAuMSwwLjcsMi45YzAuMS0wLjEsMC4zLTAuMSwwLjMsMC4yYzAuMSwwLjMt
MC4xLDAuNi0wLjIsMC45Yy0wLjIsMC4zLDAuMSwxLjEtMC42LDF2MC4xQzE4LjgsMTYuNCwxNy44LDE4
LDE2LDE4ICAgcy0yLjctMS42LTMuMS0zLjFjMC0wLjEsMC0wLjEsMC0wLjFDMTIuMiwxNC45LDEyLjQs
MTQuMSwxMi4zLDEzLjh6IE0xOC43LDE4Yy0wLjUsMS0xLjQsMS45LTIuNywxLjljLTEuMywwLTIuMi0w
LjktMi43LTIgICBDMTEuNywyMC4zLDgsMTguNyw4LDIzLjdWMjRoMTZ2LTAuM0MyNCwxOC43LDIwLjMs
MjAuMiwxOC43LDE4eiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value> </value>
</data> </data>
<data name="PreviewItem.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="PreviewItem.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -403,24 +411,149 @@
cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
</value> </value>
</data> </data>
<data name="BarButtonItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BarButtonItem1.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z iVBORw0KGgoAAAANSUhEUgAAAOIAAABTCAYAAACChtsHAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl wwAADsMBx2+oZAAAIGFJREFUeF7tnfm7XVV5x/u/QEgE4e5zcxlUKmqtipZqrUNxfIQ6U62iVq22WG2d
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANoCAAAC77u/ hwfr1FZtleTe5GYOmQgQAiEhkAkQggyiiBiZFJGZuPt+1rves9fZd5999tlrn5tzH/cP3+fc4az1vusd
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi 17z+LL21k7Zo0eLYonXEFi3GAK0jtmgxBmgdsUWLMUBfR/zjT8YLRTx2cUtxmbqgvkI684w/3pz0/i58
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv /f7yTnrP9zvpLf+WpNf/Q5Je8/ZOuuPvknTHG5J051s66Z53J+mhjyfpXRcn6UPrOukz+3J1SJ2ujcHf
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh auEYy7yojiooqqsvGm4jKKQjaDPiGCJ0QJT3m+lOeuDDnXTzS5N0xUmC4zvp6kVLHVZ5zPpP+/vsosl0
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg +oROuuF5nXTX2zrpnd/opI9fE9DAMMYk4LTo44iPXysRVqLsla/vpFdKpHWfxwJCe4d87nxTkj55XW9k
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ d/CGdPNFkhneoJmhsJ6K2PHGJL36DZPpDR/M0ZknOMfwbXp6f5Le/qVOuvWlnXT2+Ml03aIp51zLxQmX
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD L0rS5eJkg7BMvrtCyq4Rx1yHg57SSa9/Tyd9+NKM5tFc1q2Co4eSdNf5koGRucisSJZVgc7Q3S2f9XxU
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh CA5P7knSq85V26hkn+478n3h9bGrlU5ZELLM9dMvCW+vnxRaBXUOAeheJZ9Xvy1Jn76hWN69juiZe/QK
Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw jbprUZ5X5LGAo33C0nSlfD6yfa6iLHOglK1LTnPfK6qnKlZJ+U2LT003npXRmC+E3Za7v5Wkm1+o8qdN
MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu ywLHW3Z8MhR6nNbrdOViccj3dtLHrvFGWdJlysMMeJNkZ2RFkCiSZVVQfrPUs+Xs6g5y/+okXXfClGT+
bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iR2V0dGluZ1N0YXJ0ZWQiPg0KICAg yUr2iV7BxhNOTe9bNrjN9r8rXpukWxafFt1Go73+zP50CzPio1eKI56YuK7N9AnVou8oYLTh4+FNKsCj
IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy QUOsUbveIYpZMpXOPKe4nqqYWZKkqxcvTbeendGYD1hAwTF2yTgP5ZHJlkn7ccJli/IOqNluMLIyy30d
My43LDIsMTYsMnogTTEyLDIyVjEwbDEwLDZMMTIsMjJ6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4N tJNPMuSG0ybTn383c4AyJzBYBt17QZKu9zJHP3lZVsX04iSdXTyZbvjzJD16k9bdD0b7ZxKo1i5Zmk6L
Cjwvc3ZnPgs= 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
</value> </value>
</data> </data>
<data name="BarCheckItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="BarCheckItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">

View File

@ -1,4 +1,8 @@
Imports DigitalData.Modules.Logging Imports System.IO
Imports System.Security.AccessControl
Imports System.Security.Principal
Imports System.Text.RegularExpressions
Imports DigitalData.Modules.Logging
Public Class frmGlobix_Index Public Class frmGlobix_Index
@ -10,7 +14,6 @@ Public Class frmGlobix_Index
Dim DT_DOKART As DataTable Dim DT_DOKART As DataTable
Public FormLoaded As Boolean = False Public FormLoaded As Boolean = False
Dim DropType As String Dim DropType As String
Private Shared WDDirect As Boolean = False
Dim sql_history_INSERT_INTO As String Dim sql_history_INSERT_INTO As String
Dim sql_history_Index_Values As String Dim sql_history_Index_Values As String
@ -26,8 +29,8 @@ Public Class frmGlobix_Index
Private _Logger As Logger Private _Logger As Logger
Private clswindowLocation As ClassWindowLocation Private clswindowLocation As ClassWindowLocation
Private clsPatterns As GlobixPatterns
Private clsPostProcessing As GlobixPostprocessing
#End Region #End Region
Public Sub New(LogConfig As LogConfig) Public Sub New(LogConfig As LogConfig)
@ -38,6 +41,8 @@ Public Class frmGlobix_Index
_Logger = LogConfig.GetLogger() _Logger = LogConfig.GetLogger()
_LogConfig = LogConfig _LogConfig = LogConfig
clswindowLocation = New ClassWindowLocation(_LogConfig) clswindowLocation = New ClassWindowLocation(_LogConfig)
clsPatterns = New GlobixPatterns(LogConfig)
clsPostProcessing = New GlobixPostprocessing(LogConfig)
End Sub End Sub
Private Sub frmGlobix_Index_Load(sender As Object, e As EventArgs) Handles MyBase.Load Private Sub frmGlobix_Index_Load(sender As Object, e As EventArgs) Handles MyBase.Load
@ -54,7 +59,7 @@ Public Class frmGlobix_Index
SourceDeleteItem.Enabled = True SourceDeleteItem.Enabled = True
SourceDeleteItem.Checked = My.UIConfig.Globix.DeleteOriginalFile SourceDeleteItem.Checked = My.UIConfig.Globix.DeleteOriginalFile
My.Application.GDPictureLicense = My.Database.GetScalarValue("SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE NAME = 'GDPICTURE'")
DocumentViewer1.Init(_LogConfig, My.Application.GDPictureLicense) DocumentViewer1.Init(_LogConfig, My.Application.GDPictureLicense)
@ -79,48 +84,48 @@ Public Class frmGlobix_Index
If DropType = "|DROPFROMFSYSTEM|" Then If DropType = "|DROPFROMFSYSTEM|" Then
If My.Application.User.Language <> "de-DE" Then If My.Application.User.Language <> "de-DE" Then
Me.Text = "Indexing of dropped file" Me.Text = "Storage-Flow of dropped file"
Else Else
Me.Text = "Indexierung der gedroppten Datei" Me.Text = "Ablage-Flow - Dropped File"
End If End If
ElseIf DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Then ElseIf DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Then
Select Case DropType Select Case DropType
Case "|FW_MSGONLY|" Case "|FW_MSGONLY|"
_Logger.Info(".msg-file from folderwatch") _Logger.Info(".msg-file from folderwatch")
If My.Application.User.Language <> "de-DE" Then If My.Application.User.Language <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments) - from Folderwatch" Me.Text = "Storage-Flow - msg-File (without Attachments) - from Folderwatch"
Else Else
Me.Text = "Indexierung der msg-Datei (ohne Anhang) - aus Folderwatch" Me.Text = "Ablage-Flow - msg-Datei (ohne Anhang) - aus Folderwatch"
End If End If
Case "|OUTLOOK_MESSAGE|" Case "|OUTLOOK_MESSAGE|"
_Logger.Info(".msg-file through dragdrop") _Logger.Info(".msg-file through dragdrop")
If My.Application.User.Language <> "de-DE" Then If My.Application.User.Language <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments)" Me.Text = "Storage-Flow - msg-File (without Attachments)"
Else Else
Me.Text = "Indexierung der msg-Datei (ohne Anhang)" Me.Text = "Ablage-Flow - msg-Datei (ohne Anhang)"
End If End If
End Select End Select
ElseIf DropType = "|MSGONLY|" Then ElseIf DropType = "|MSGONLY|" Then
If My.Application.User.Language = "de-DE" Then If My.Application.User.Language = "de-DE" Then
Me.Text = "Indexierung der msg-Datei (ohne Anhang)" Me.Text = "Ablage-Flow der msg-Datei (ohne Anhang)"
Else Else
Me.Text = "Indexing of msg-File (without Attachments)" Me.Text = "Storage-Flow of msg-File (without Attachments)"
End If End If
ElseIf DropType = "|ATTMNTEXTRACTED|" Or DropType = "|OUTLOOK_ATTACHMENT|" Then ElseIf DropType = "|ATTMNTEXTRACTED|" Or DropType = "|OUTLOOK_ATTACHMENT|" Then
My.Application.Globix.CURRENT_ISATTACHMENT = True My.Application.Globix.CURRENT_ISATTACHMENT = True
If My.Application.User.Language = "de-DE" Then If My.Application.User.Language = "de-DE" Then
Me.Text = "Indexierung eines Email-Attachments" Me.Text = "Ablage-Flow eines Email-Attachments"
Else Else
Me.Text = "Indexing of email-Attachment" Me.Text = "Storage-Flow of email-Attachment"
End If End If
ElseIf DropType = "|FW_SIMPLEINDEXER|" Then ElseIf DropType = "|FW_SIMPLEINDEXER|" Then
If My.Application.User.Language = "de-DE" Then If My.Application.User.Language = "de-DE" Then
Me.Text = "Indexierung einer Folderwatch-Datei" Me.Text = "Ablage-Flow einer Folderwatch-Datei"
Else Else
Me.Text = "Indexing of Folderwatch-File" Me.Text = "Storage-Flow of Folderwatch-File"
End If End If
End If End If
@ -135,6 +140,7 @@ Public Class frmGlobix_Index
My.Application.Globix.DTTBGI_REGEX_DOCTYPE = My.Database.GetDatatable("SELECT DISTINCT T1.DOCTYPE as DocType, T.* FROM TBGI_REGEX_DOCTYPE T, VWGI_DOCTYPE T1 WHERE T.DOCTYPE_ID = T1.DOCTYPE_ID") My.Application.Globix.DTTBGI_REGEX_DOCTYPE = My.Database.GetDatatable("SELECT DISTINCT T1.DOCTYPE as DocType, T.* FROM TBGI_REGEX_DOCTYPE T, VWGI_DOCTYPE T1 WHERE T.DOCTYPE_ID = T1.DOCTYPE_ID")
My.Application.Globix.CURR_INDEX_MAN_POSTPROCESSING = My.Database.GetDatatable("SELECT * FROM TBDD_INDEX_MAN_POSTPROCESSING")
MULTIFILES = My.Database.GetScalarValue("SELECT COUNT(*) FROM TBGI_FILES_USER WHERE WORKED = 0 AND GUID <> " & My.Application.Globix.CURRENT_WORKFILE_GUID & " AND UPPER(USER@WORK) = UPPER('" & Environment.UserName & "')") MULTIFILES = My.Database.GetScalarValue("SELECT COUNT(*) FROM TBGI_FILES_USER WHERE WORKED = 0 AND GUID <> " & My.Application.Globix.CURRENT_WORKFILE_GUID & " AND UPPER(USER@WORK) = UPPER('" & Environment.UserName & "')")
My.Application.Globix.MULTIINDEXING_ACTIVE = False My.Application.Globix.MULTIINDEXING_ACTIVE = False
If MULTIFILES > 0 Then If MULTIFILES > 0 Then
@ -214,4 +220,865 @@ Public Class frmGlobix_Index
chkMultiindexing.Caption = "Inactive" chkMultiindexing.Caption = "Inactive"
End If End If
End Sub End Sub
End Class
Private Sub frmGlobix_Index_Shown(sender As Object, e As EventArgs) Handles Me.Shown
BringToFront()
Focus()
Cursor = Cursors.Default
Refresh_Dokart()
pnlIndex.Controls.Clear()
checkItemTopMost.Checked = My.UIConfig.Globix.TopMost
TopMost = My.UIConfig.Globix.TopMost
BringToFront()
FormLoaded = True
Try
' Letzte Auswahl merken überschreibt die automatische selektion
If My.UIConfig.Globix.ProfilePreselection Then
checkItemPreselection.Checked = True
If My.Application.Globix.CURRENT_LASTDOCTYPE <> "" Then
cmbDoctype.SelectedIndex = cmbDoctype.FindStringExact(My.Application.Globix.CURRENT_LASTDOCTYPE)
End If
Else
If My.Application.Globix.DTTBGI_REGEX_DOCTYPE.Rows.Count > 0 Then
For Each oRoW As DataRow In My.Application.Globix.DTTBGI_REGEX_DOCTYPE.Rows
Dim oOnlyFilename = Path.GetFileName(My.Application.Globix.CURRENT_WORKFILE)
If Regex.IsMatch(oOnlyFilename, oRoW.Item("Regex")) Then
_Logger.Debug("There is a match on REGEX_DOCTYPE: [{0}]", oRoW.Item("DOCTYPE"))
_Logger.Debug("Regex: [{0}], FileName: [{1}]", oRoW.Item("Regex"), oOnlyFilename)
cmbDoctype.SelectedIndex = cmbDoctype.FindStringExact(oRoW.Item("DOCTYPE"))
Exit For
End If
Next
End If
End If
Catch ex As Exception
_Logger.Warn("Unexpected error DTTBGI_REGEX_DOCTYPE - ErrorMessage: " & vbNewLine & ex.Message)
End Try
End Sub
Sub Refresh_Dokart()
Try
Dim sql = String.Format("select * from VWGI_DOCTYPE where UPPER(USERNAME) = UPPER('{0}') ORDER BY SEQUENCE", Environment.UserName)
_Logger.Debug("SQL DoctypeList: " & sql)
DT_DOKART = My.Database.GetDatatable(sql)
cmbDoctype.DataSource = DT_DOKART
cmbDoctype.ValueMember = DT_DOKART.Columns("DOCTYPE_ID").ColumnName
cmbDoctype.DisplayMember = DT_DOKART.Columns("DOCTYPE").ColumnName
cmbDoctype.AutoCompleteMode = AutoCompleteMode.Suggest
cmbDoctype.AutoCompleteSource = AutoCompleteSource.ListItems
cmbDoctype.SelectedIndex = -1
Catch ex As Exception
_Logger.Warn("Unexpected error in Refresh_Dokart: " & vbNewLine & ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Laden der Dokumentarten:")
End Try
End Sub
Private Sub cmbDoctype_SelectedValueChanged(sender As Object, e As EventArgs) Handles cmbDoctype.SelectedValueChanged
End Sub
Private Sub cmbDoctype_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbDoctype.SelectedIndexChanged
If cmbDoctype.SelectedIndex <> -1 And FormLoaded = True Then
If cmbDoctype.SelectedValue.GetType.ToString = "System.Int32" Then
My.Application.Globix.CURRENT_DOCTYPE_ID = cmbDoctype.SelectedValue
'lblhinweis.Visible = False
ClearNotice()
'lblerror.Visible = False
ClearError()
Me.pnlIndex.Controls.Clear()
Dim sql As String = "Select * from TBDD_DOKUMENTART WHERE GUID = " & cmbDoctype.SelectedValue.ToString
My.Application.Globix.CURR_DT_DOCTYPE = My.Database.GetDatatable(sql)
My.Application.Globix.CURRENT_DOCTYPE_DuplicateHandling = My.Application.Globix.CURR_DT_DOCTYPE.Rows(0).Item("DUPLICATE_HANDLING").ToString
Refresh_IndexeMan(cmbDoctype.SelectedValue)
End If
End If
End Sub
Private Sub Refresh_IndexeMan(dokartid As Integer)
Dim oSql
Try
oSql = "select T1.BEZEICHNUNG AS DOKUMENTART,T.* from TBDD_INDEX_MAN T, TBDD_DOKUMENTART T1 where T.ACTIVE = 1 AND T.DOK_ID = T1.GUID AND T.DOK_ID = " & dokartid & " ORDER BY T.SEQUENCE"
DT_INDEXEMAN = My.Database.GetDatatable(oSql)
pnlIndex.Visible = True
LoadIndexe_Man()
Catch ex As System.Exception
_Logger.Error(ex)
_Logger.Warn("Fehler Refresh_IndexeMan: DOKART-ID: " & dokartid & " - Fehler: " & vbNewLine & ex.Message & vbNewLine & oSql)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Refresh_IndexeMan:")
End Try
End Sub
Sub addLabel(indexname As String, hinweis As String, ylbl As Integer, anz As String)
Dim lbl As New Label With {
.Name = "lbl" & indexname,
.AutoSize = True,
.Text = hinweis,
.Location = New Point(11, ylbl)
}
pnlIndex.Controls.Add(lbl)
End Sub
Sub ShowError(text As String)
'lblerror.Visible = True
'lblerror.Text = text
'lblerror.ForeColor = Color.Red
labelError.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
labelError.Caption = text
End Sub
Private Sub LoadIndexe_Man()
Try
Dim oControlCount As Integer = 1
Dim oLabelPosition As Integer = 11
Dim oControlPosition As Integer = 33
Dim oControls As New GlobixControls(_LogConfig, pnlIndex, Me)
If DT_INDEXEMAN.Rows.Count = 0 Then
ShowError("Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDoctype.Text & " definiert")
_Logger.Info(" - Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDoctype.Text & " definiert")
End If
For Each oRow As DataRow In DT_INDEXEMAN.Rows
Dim oDataType = oRow.Item("DATATYPE")
Dim MultiSelect As Boolean = oRow.Item("MULTISELECT")
Dim AddNewItems As Boolean = oRow.Item("VKT_ADD_ITEM")
Dim PreventDuplicates As Boolean = oRow.Item("VKT_PREVENT_MULTIPLE_VALUES")
Dim oControlName As String = oRow.Item("NAME")
Dim oConnectionId = NotNull(oRow.Item("CONNECTION_ID"), 0)
Dim oSQLSuggestion = oRow.Item("SUGGESTION")
If oDataType <> "BOOLEAN" Then
addLabel(oControlName, oRow.Item("COMMENT").ToString, oLabelPosition, oControlCount)
End If
'Dim DefaultValue = Check_HistoryValues(oControlName, oRow.Item("DOKUMENTART"))
' If DefaultValue Is Nothing Then
Dim DefaultValue = GetPlaceholderValue(oRow.Item("DEFAULT_VALUE"), My.Application.Globix.CURRENT_WORKFILE, My.Application.User.ShortName)
' End If
Select Case oDataType
Case "BOOLEAN"
Dim chk As CheckBox = oControls.AddCheckBox(oControlName, oControlPosition, DefaultValue, oRow.Item("COMMENT").ToString)
If Not IsNothing(chk) Then
pnlIndex.Controls.Add(chk)
End If
Case "INTEGER"
If (oSQLSuggestion = True And oRow.Item("SQL_RESULT").ToString.Length > 0) Or MultiSelect = True Then
Dim oControl = oControls.AddVorschlag_ComboBox(oControlName, oControlPosition, oConnectionId, oRow.Item("SQL_RESULT"), MultiSelect, oDataType, DefaultValue, AddNewItems, PreventDuplicates, oSQLSuggestion)
If Not IsNothing(oControl) Then
pnlIndex.Controls.Add(oControl)
End If
Else
'nur eine Textbox
Dim oControl = oControls.AddTextBox(oControlName, oControlPosition, DefaultValue, oDataType)
If Not IsNothing(oControl) Then
pnlIndex.Controls.Add(oControl)
End If
End If
Case "VARCHAR"
If (oSQLSuggestion = True And oRow.Item("SQL_RESULT").ToString.Length > 0) Or MultiSelect = True Then
Dim oControl = oControls.AddVorschlag_ComboBox(oControlName, oControlPosition, oConnectionId, oRow.Item("SQL_RESULT"), MultiSelect, oDataType, DefaultValue, AddNewItems, PreventDuplicates, oSQLSuggestion)
If Not IsNothing(oControl) Then
pnlIndex.Controls.Add(oControl)
End If
Else
If oControlName.ToString.ToLower = "dateiname" Then
Dim oControl = oControls.AddTextBox(oControlName, oControlPosition, System.IO.Path.GetFileNameWithoutExtension(My.Application.Globix.CURRENT_WORKFILE), oDataType)
If Not IsNothing(oControl) Then
pnlIndex.Controls.Add(oControl)
End If
Else
Dim VORBELGUNG As String = DefaultValue
Dim oControl = oControls.AddTextBox(oControlName, oControlPosition, VORBELGUNG, oDataType)
If Not IsNothing(oControl) Then
pnlIndex.Controls.Add(oControl)
End If
End If
End If
Case "DATE"
Dim oPicker = oControls.AddDateTimePicker(oControlName, oControlPosition, oDataType, DefaultValue)
pnlIndex.Controls.Add(oPicker)
Case Else
If My.Application.User.Language = "de-DE" Then
MsgBox("Bitte überprüfen Sie den Datentyp des hinterlegten Indexwertes!", MsgBoxStyle.Critical, "Achtung:")
Else
MsgBox("Please check Datatype of Indexvalue!", MsgBoxStyle.Critical, "Warning:")
End If
_Logger.Warn(" - Datentyp nicht hinterlegt - LoadIndexe_Man")
End Select
oControlCount += 1
oLabelPosition += 50
oControlPosition += 50
'make y as height in fom
Next
Dim oPanelHeight = oControlPosition - 30
If pnlIndex.Height < oPanelHeight Then
If (Me.Height - 315) < oPanelHeight Then
Me.Height = (Me.Height - 315) + oPanelHeight
End If
pnlIndex.Height = oPanelHeight
End If
SendKeys.Send("{TAB}")
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in LoadIndexe_Man:")
End Try
End Sub
Function GetPlaceholderValue(InputValue As String, FileName As String, UserShortName As String) As String
Dim oResult As String
Try
Select Case InputValue.ToString.ToUpper
Case "$filename_ext".ToUpper
oResult = Path.GetFileName(FileName)
Case "$filename".ToUpper
oResult = Path.GetFileNameWithoutExtension(FileName)
Case "$extension".ToUpper
oResult = Path.GetExtension(FileName).Replace(".", "")
Case "$FileCreateDate".ToUpper
Dim oFileInfo As New FileInfo(FileName)
Dim oCreationDate As Date = oFileInfo.CreationTime
oResult = oCreationDate.ToShortDateString
Case "$FileCreatedWho".ToUpper
Dim oFileSecurity As FileSecurity = File.GetAccessControl(FileName)
Dim oSecurityId As IdentityReference = oFileSecurity.GetOwner(GetType(SecurityIdentifier))
Dim oNTAccount As IdentityReference = oSecurityId.Translate(GetType(NTAccount))
Dim oOwner As String = oNTAccount.ToString()
oResult = oOwner
Case "$DateDDMMYYY".ToUpper
oResult = System.DateTime.Now.ToShortDateString
Case "$Username".ToUpper
oResult = Environment.UserName
Case "$Usercode".ToUpper
oResult = UserShortName
Case Else
oResult = InputValue
End Select
Catch ex As Exception
_Logger.Warn("Error in ReplacePlaceholders: " & ex.Message)
_Logger.Error(ex.Message)
oResult = Nothing
End Try
Return oResult
End Function
'Function Check_HistoryValues(Indexname As String, Dokart As String) As String
' Try
' Dim result = Nothing
' Dim DT As DataTable = MyDataset.TBTEMP_INDEXRESULTS
' If DT.Rows.Count > 0 Then
' For Each row As DataRow In DT.Rows
' If row.Item("Indexname") = Indexname And row.Item("Dokumentart") = Dokart Then
' result = row.Item("Value")
' Return result
' End If
' Next
' Else
' Return Nothing
' End If
' Catch ex As Exception
' _Logger.Error(ex)
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Check_HistoryValues:")
' Return Nothing
' End Try
'End Function
Sub ClearError()
labelError.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
labelError.Caption = String.Empty
End Sub
Sub ShowNotice(text As String)
'lblhinweis.Visible = True
'lblhinweis.Text = text
labelNotice.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
labelNotice.Caption = text
End Sub
Sub ClearNotice()
labelNotice.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
labelNotice.Caption = String.Empty
End Sub
Private Sub frmGlobix_Index_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
If File.Exists(My.Application.Globix.CURRENT_FILENAME) Then
Select Case CancelAttempts
Case 0
If My.Application.User.Language = "de-DE" Then
MsgBox("Bitte indexieren Sie die Datei vollständig!" & vbNewLine & "(Abbruch 1 des Indexierungsvorgangs)", MsgBoxStyle.Information)
Else
MsgBox("Please Index file completely" & vbNewLine & "(Abort 1 of Indexdialog)", MsgBoxStyle.Information)
End If
CancelAttempts = CancelAttempts + 1
e.Cancel = True
Case 1
Dim result As MsgBoxResult
If My.Application.User.Language = "de-DE" Then
result = MessageBox.Show("Sie brechen nun zum zweiten Mal den Indexierungsvorgang ab!" & vbNewLine & "Wollen Sie die Indexierung aller Dateien abbrechen?", "Bestätigung erforderlich:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
Else
result = MessageBox.Show("You abort the indexdialog for the 2nd time!" & vbNewLine & "Do You want to abort indexing?", "Confirmation needed:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End If
If result = MsgBoxResult.Yes Then
Dim containsfw_file As Boolean = False
Try
My.Application.Globix.ABORT_INDEXING = True
Dim sql As String = $"SELECT * FROM TBGI_FILES_USER WHERE WORKED = 0 AND UPPER(USER@WORK) = UPPER('{My.Application.User.UserName}')"
Dim DT As DataTable = My.Database.GetDatatable(sql)
Dim anz = DT.Rows.Count
For Each Filerow As DataRow In DT.Rows
Dim filestring As String = Filerow.Item("FILENAME2WORK")
Dim handletype As String = Filerow.Item("HANDLE_TYPE")
If handletype = "|MSGONLY|" Or handletype = "|ATTMNTEXTRACTED|" Then
Try
System.IO.File.Delete(filestring)
Catch ex As Exception
End Try
ElseIf handletype.StartsWith("|FW") Then
containsfw_file = True
End If
Next
'Zuerst die Daten des Ablaufs löschen
If My.Database.ExecuteNonQuery($"DELETE FROM TBGI_FILES_USER WHERE UPPER(USER@WORK) = UPPER('{My.Application.User.UserName}')") = True Then
If containsfw_file = True Then
If My.Application.User.Language = "de-DE" Then
MsgBox("Der Indexierungsprozess beinhaltete (auch) Dateien per Folderwatch!" & vbNewLine & "Diese Dateien wurden nicht gelöscht und verbleiben im Folderwatch-Verzeichnis!" & vbNewLine & "Bitte verschieben Sie die Dateien ggfls.", MsgBoxStyle.Information, "Achtung - Hinweis:")
Else
MsgBox("The Indexingprocess contained (also) files from folderwatch!" & vbNewLine & "These files weren't deleted and will stay in the folderwatch-folder!" & vbNewLine & "Please move these files manually.", MsgBoxStyle.Information, "Achtung - Hinweis:")
End If
End If
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
Try
My.Application.Globix.INDEXING_ACTIVE = False
DocumentViewer1.CloseDocument()
DocumentViewer1.Done()
clswindowLocation.SaveFormLocationSize(Me)
My.Settings.Save()
Catch ex As Exception
_Logger.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try
e.Cancel = False
Else
e.Cancel = True
End If
Case Else
Try
My.Application.Globix.INDEXING_ACTIVE = False
DocumentViewer1.CloseDocument()
DocumentViewer1.Done()
clswindowLocation.SaveFormLocationSize(Me)
My.Settings.Save()
Catch ex As Exception
_Logger.Warn(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try
End Select
Else
My.Application.Globix.INDEXING_ACTIVE = False
End If
End Sub
Private Sub BarButtonItem1_ItemClick_1(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
'ClearError()
'ClearNotice()
'Me.Cursor = Cursors.WaitCursor
'Refresh_RegexTable()
'For Each rowregex As DataRow In My.Application.BASE_DATA_DT_REGEX.Rows
' If rowregex.Item("FUNCTION_NAME") = "CLEAN_FILENAME" Then
' My.Application.Globix.REGEX_CLEAN_FILENAME = rowregex.Item("REGEX")
' End If
'Next
'If chkMultiindexing.Visibility = DevExpress.XtraBars.BarItemVisibility.Always And chkMultiindexing.Checked = True Then
' 'Die erste Datei indexieren
' If WORK_FILE() = True Then
' 'Und nun die folgenden
' Dim DTFiles2Work As DataTable = My.Database.GetDatatable("SELECT * FROM TBGI_FILES_USER WHERE WORKED = 0 AND GUID <> " & My.Application.Globix.CURRENT_WORKFILE_GUID & " AND UPPER(USER@WORK) = UPPER('" & My.Application.User.UserName & "')")
' If Not DTFiles2Work Is Nothing Then
' Dim err = False
' For Each filerow As DataRow In DTFiles2Work.Rows
' My.Application.Globix.CURRENT_WORKFILE_GUID = filerow.Item("GUID")
' My.Application.Globix.CURRENT_WORKFILE = filerow.Item("FILENAME2WORK")
' DropType = filerow.Item("HANDLE_TYPE")
' If WORK_FILE() = False Then
' err = True
' Exit For
' End If
' Next
' Me.Cursor = Cursors.Default
' If err = False Then
' If My.Application.User.Language = "de-DE" Then
' MsgBox("Alle Dateien wurden mit Multiindexing erfolgreich verarbeitet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
' Else
' MsgBox("All files were successfully processed through Multiindexing", MsgBoxStyle.Information, "Success")
' End If
' 'DTACTUAL_FILES.Clear()
' DocumentViewer1.CloseDocument()
' DocumentViewer1.Done()
' CancelAttempts = 2
' Me.Close()
' End If
' End If
' End If
'Else
' If WORK_FILE() = True Then
' Me.Cursor = Cursors.Default
' If My.UIConfig.Globix.ShowIndexResult = True Then
' If My.Application.User.Language = "de-DE" Then
' MsgBox("Die Datei wurde erfolgreich verarbeitet!" & vbNewLine & "Ablagepfad:" & vbNewLine & My.Application.Globix.CURRENT_NEWFILENAME, MsgBoxStyle.Information, "Erfolgsmeldung")
' Else
' MsgBox("File sucessfully processed!" & vbNewLine & "Path:" & vbNewLine & My.Application.Globix.CURRENT_NEWFILENAME, MsgBoxStyle.Information, "Success")
' End If
' End If
' DocumentViewer1.CloseDocument()
' DocumentViewer1.Done()
' CancelAttempts = 2
' Me.Close()
' End If
'End If
'Me.Cursor = Cursors.Default
End Sub
'Private Function WORK_FILE()
' Try
' Dim oSQL = $"SELECT * FROM VWDDINDEX_MAN WHERE DOK_ID = {My.Application.Globix.CURRENT_DOCTYPE_ID}"
' My.Application.Globix.CURR_DT_MAN_INDEXE = My.Database.GetDatatable(oSQL)
' _Logger.Debug("Manuelle Indexe geladen")
' If My.Application.Globix.CURR_DT_MAN_INDEXE.Rows.Count > 0 Then
' My.Application.Globix.CURRENT_DOCTYPE_ID = Me.cmbDoctype.SelectedValue
' If CheckWrite_IndexeMan(Me.cmbDoctype.SelectedValue) = True Then
' '##### Manuelle Indexe indexiert #####
' _Logger.Info("Datei [" & My.Application.Globix.CURRENT_WORKFILE & "] wird nun indexiert...")
' If FillIndexe_Autom(Me.cmbDoctype.SelectedValue) = True Then
' _Logger.Debug(" ...FillIndexe_Autom durchlaufen")
' 'Den Zielnamen zusammenbauen
' If Name_Generieren() = True Then
' 'Dokumentenviewer ausblenden um keinen Zugriffsfehler zu produzieren
' DocumentViewer1.Done()
' DocumentViewer1.CloseDocument()
' _Logger.Debug(" ...Viewer geschlossen")
' 'Die Datei verschieben
' If Move_File2_Target() = True Then
' _Logger.Debug(" ...Move_File2_Target durchlaufen")
' My.Application.Globix.CURRENT_LASTDOCTYPE = cmbDoctype.Text
' _Logger.Info("Datei '" & My.Application.Globix.CURRENT_NEWFILENAME & "' erfolgreich erzeugt.")
' Dim oDEL As String = "DELETE FROM TBGI_FILES_USER WHERE GUID = " & My.Application.Globix.CURRENT_WORKFILE_GUID
' My.Database.ExecuteNonQuery(oDEL)
' Return True
' End If
' Else
' If My.Application.User.Language = "de-DE" Then
' MsgBox("Unerwarteter Fehler in Name_Generieren - Bitte überprüfen sie die Logdatei", MsgBoxStyle.Critical)
' Else
' MsgBox("Unexpected error in Name_Generieren - Please check the Logfile", MsgBoxStyle.Critical)
' End If
' Return False
' End If
' Else
' If My.Application.User.Language = "de-DE" Then
' MsgBox("Unerwarteter Fehler in FillIndexe_Autom - Bitte überprüfen sie die Logdatei", MsgBoxStyle.Critical)
' Else
' MsgBox("Unexpected error in FillIndexe_Autom - Please check the Logfile", MsgBoxStyle.Critical)
' End If
' Return False
' End If
' '#### Automatische Werte indexieren ####
' End If
' Else
' If My.Application.User.Language = "de-DE" Then
' MsgBox("Bitte überprüfen Sie die Konfiguration dieser Dokumentart." & vbNewLine & "Es sind KEINE manuellen Indizes konfiguriert oder aktiv geschaltet!", MsgBoxStyle.Exclamation)
' Else
' MsgBox("Please check the configuration for this document-type." & vbNewLine & "There are NO manual indicies that are either configured or set to active!", MsgBoxStyle.Exclamation)
' End If
' Return False
' End If
' Catch ex As Exception
' _Logger.Error(ex)
' MsgBox("Unexpected Error in WORK_FILE:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
' Return False
' End Try
'End Function
'Function CheckWrite_IndexeMan(dokartid As Integer)
' '#### Zuerst manuelle Werte indexieren ####
' Try
' _Logger.Info("In CheckWrite_IndexeMan")
' Dim result As Boolean = False
' For Each oControl As Control In Me.pnlIndex.Controls
' ' MsgBox(ctrl.Name)
' If oControl.Name.StartsWith("txt") Then
' Dim box As DevExpress.XtraEditors.TextEdit = oControl
' If box.Text = "" Then
' Dim oIndexName = Replace(box.Name, "txt", "")
' Dim optional_index As Boolean = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = dokartid AND INDEXNAME = '{oIndexName}'", "OPTIONAL", "", False)
' 'My.Database.ExecuteNonQuery("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & dokartid & " AND NAME = '" & Replace(box.Name, "txt", "") & "'", MyConnectionString, True)
' If optional_index = False Then
' MsgBox(TEXT_MISSING_INPUT, MsgBoxStyle.Exclamation, "Fehlende Eingabe:")
' box.Focus()
' Return False
' Else
' Indexwert_Postprocessing(Replace(box.Name, "txt", ""), "")
' result = True
' End If
' Else
' If Indexwert_checkValueDB(Replace(box.Name, "txt", ""), box.Text) = False Then
' _Logger.Info(" - Der eingegebene Wert wurde nicht in der Datenbank gefunden")
' MsgBox("Der eingegebene Wert wurde nicht in der Datenbank gefunden!", MsgBoxStyle.Exclamation, "Fehlerhafte Indexierung:")
' box.Focus()
' Return False
' Else
' Indexwert_Postprocessing(Replace(box.Name, "txt", ""), box.Text)
' result = True
' End If
' End If
' End If
' If oControl.Name.StartsWith("cmbMulti") Then
' Dim oLookup = DirectCast(oControl, DigitalData.Controls.LookupGrid.LookupControl2)
' Dim values As List(Of String) = oLookup.SelectedValues
' If values.Count = 0 Then
' Dim oIndexName = Replace(oLookup.Name, "cmbMulti", "")
' Dim optional_index As Boolean = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = dokartid AND INDEXNAME = '{oIndexName}'", "OPTIONAL", "", False)
' 'ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & dokartid & " AND NAME = '" & Replace(oLookup.Name, "cmbMulti", "") & "'", MyConnectionString, True)
' If optional_index = False Then
' MsgBox(TEXT_MISSING_INPUT, MsgBoxStyle.Exclamation, Text)
' oLookup.Focus()
' Return False
' Else
' Indexwert_Postprocessing(Replace(oLookup.Name, "cmbMulti", ""), "")
' result = True
' End If
' Else
' Dim vectorValue = String.Join(ClassConstants.VECTORSEPARATOR, values)
' Indexwert_Postprocessing(Replace(oLookup.Name, "cmbMulti", ""), vectorValue)
' result = True
' End If
' ElseIf oControl.Name.StartsWith("cmbSingle") Then
' Dim cmbSingle As TextBox = oControl
' If cmbSingle.Text = "" Then
' Dim oIndexName = Replace(cmbSingle.Name, "cmbSingle", "")
' Dim optional_index As Boolean = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = dokartid AND INDEXNAME = '{oIndexName}'", "OPTIONAL", "", False)
' 'ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & dokartid & " AND NAME = '" & Replace(cmbSingle.Name, "cmbSingle", "") & "'", MyConnectionString, True)
' If optional_index = False Then
' MsgBox(TEXT_MISSING_INPUT, MsgBoxStyle.Exclamation, Text)
' cmbSingle.Focus()
' Return False
' Else
' Indexwert_Postprocessing(Replace(cmbSingle.Name, "cmbSingle", ""), "")
' result = True
' End If
' Else
' Indexwert_Postprocessing(Replace(cmbSingle.Name, "cmbSingle", ""), cmbSingle.Text)
' result = True
' End If
' ElseIf oControl.Name.StartsWith("cmb") Then
' Dim cmb As ComboBox = oControl
' If cmb.Text = "" Then
' Dim oIndexName = Replace(cmb.Name, "cmb", "")
' Dim optional_index As Boolean = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = dokartid AND INDEXNAME = '{oIndexName}'", "OPTIONAL", "", False)
' 'Dim optional_index As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & dokartid & " AND NAME = '" & Replace(cmb.Name, "cmb", "") & "'", MyConnectionString, True)
' If optional_index = False Then
' MsgBox(TEXT_MISSING_INPUT, MsgBoxStyle.Exclamation, Text)
' cmb.Focus()
' Return False
' Else
' Indexwert_Postprocessing(Replace(cmb.Name, "cmb", ""), "")
' result = True
' End If
' Else
' Indexwert_Postprocessing(Replace(cmb.Name, "cmb", ""), cmb.Text)
' result = True
' End If
' End If
' If oControl.Name.StartsWith("dtp") Then
' Dim dtp As DevExpress.XtraEditors.DateEdit = oControl
' Dim oIndexName As String = Replace(dtp.Name, "dtp", "")
' If dtp.Text = String.Empty Then
' Dim optional_index As Boolean = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = dokartid AND INDEXNAME = '{oIndexName}'", "OPTIONAL", "", False)
' 'ClassDatabase.Execute_Scalar($"SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = {dokartid} AND NAME = '{oIndexName}'", MyConnectionString, True)
' If optional_index = False Then
' MsgBox(TEXT_MISSING_INPUT, MsgBoxStyle.Exclamation, Text)
' dtp.Focus()
' Return False
' Else
' Indexwert_Postprocessing(oIndexName, "")
' result = True
' End If
' Else
' Indexwert_Postprocessing(Replace(dtp.Name, "dtp", ""), dtp.Text)
' result = True
' End If
' End If
' If oControl.Name.StartsWith("chk") Then
' Dim chk As CheckBox = oControl
' Indexwert_Postprocessing(Replace(chk.Name, "chk", ""), chk.Checked)
' result = True
' End If
' If TypeOf (oControl) Is Button Then
' Continue For
' End If
' If oControl.Name.StartsWith("lbl") = False And result = False Then
' _Logger.Info("Die Überprüfung der manuellen Indices ist fehlerhaft. Bitte informieren Sie den Systembetreuer")
' Return False
' End If
' Next
' Return True
' Catch ex As Exception
' _Logger.Warn(" - Unvorhergesehener Fehler in CheckWrite_IndexeMan - Fehler: " & vbNewLine & ex.Message)
' _Logger.Error(ex.Message)
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Unerwarteter Unexpected error in CheckWrite_IndexeMan:")
' Return False
' End Try
'End Function
'Function FillIndexe_Autom(dokart_id As Integer)
' Try
' Dim oSQL = $"SELECT * FROM VWDDINDEX_AUTOM WHERE DOK_ID = {My.Application.Globix.CURRENT_DOCTYPE_ID}"
' My.Application.Globix.CURR_DT_AUTO_INDEXE = My.Database.GetDatatable(oSQL)
' Dim oRegex As New Regex("\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}")
' If My.Application.Globix.CURR_DT_AUTO_INDEXE.Rows.Count = 0 Then
' Return True
' End If
' ' 1. Schritt: Einfach-Indexe und Platzhalter ersetzen
' For Each oAutoIndexRow As DataRow In My.Application.Globix.CURR_DT_AUTO_INDEXE.Rows
' _Logger.Info("Working on AutomaticIndex: " & oAutoIndexRow.Item("INDEXNAME") & "...")
' Dim oSqlResult As String = NotNull(oAutoIndexRow.Item("SQL_RESULT"), "")
' Dim oSqlActive As Boolean = NotNull(oAutoIndexRow.Item("SQL_ACTIVE"), False)
' Dim oSqlConnectionId As Integer = NotNull(oAutoIndexRow.Item("CONNECTION_ID"), -1)
' Dim oSqlProvider As String = NotNull(oAutoIndexRow.Item("SQL_PROVIDER"), "")
' Dim oEndResult As New List(Of String)
' ' Wenn kein SQL Befehl vorhanden oder aktiv ist,
' ' versuchen wir, die Spalte VALUE zu ersetzen
' If oSqlResult = String.Empty Or oSqlActive = 0 Then
' Dim oPlaceholderResult As String
' Dim oValue As String = NotNull(oAutoIndexRow.Item("VALUE"), "")
' oPlaceholderResult = GetPlaceholderValue(oValue, My.Application.Globix.CURRENT_WORKFILE, My.Application.User.ShortName)
' If Not IsNothing(oPlaceholderResult) Then
' oValue = oPlaceholderResult
' End If
' oAutoIndexRow.Item("Indexiert") = True
' oAutoIndexRow.Item("Indexwert") = oValue
' Continue For
' End If
' ' Wenn ein SQL Befehl vorhanden und aktiv ist
' ' Alle Platzhalter finden
' Dim oMatches As MatchCollection = oRegex.Matches(oSqlResult)
' For Each oMatch As Match In oMatches
' Dim oIndexValue As String = StripPlaceholder(oMatch.Value)
' Dim oOptionalIndex = False
' Dim oPlaceholderResult As String = Nothing
' Dim oManualIndexResult As String = Nothing
' ' Einfachen Platzhalter Wert erzeugen
' oPlaceholderResult = GetPlaceholderValue(oIndexValue, My.Application.Globix.CURRENT_WORKFILE, My.Application.User.ShortName)
' ' Einfachen Platzhalter ersetzen
' If Not IsNothing(oPlaceholderResult) Then
' oSqlResult = oSqlResult.Replace(oMatch.Value, oPlaceholderResult)
' End If
' oOptionalIndex = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = {My.Application.Globix.CURRENT_DOCTYPE_ID} AND INDEXNAME = '{oIndexValue}'", "OPTIONAL", "", False)
' 'ClassDatabase.Execute_Scalar($"SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = {CURRENT_DOKART_ID} AND UPPER(NAME) = UPPER('{oIndexValue}')", MyConnectionString, True)
' oManualIndexResult = GetManIndex_Value(oIndexValue, "IDX_AUTO", oOptionalIndex)
' ' Wenn Ergebnis den VektorPlatzhalter enthält, soll nichts ersetzt werden.
' ' Werden im nächsten Schritt ersetzt.
' If oManualIndexResult.Contains(ClassConstants.VECTORSEPARATOR) Then
' oManualIndexResult = Nothing
' End If
' If Not IsNothing(oManualIndexResult) Then
' oSqlResult = oSqlResult.Replace(oMatch.Value, oManualIndexResult)
' End If
' Next
' 'TODO: Replace Windream Patterns?
' oSqlResult = clsPatterns.ReplaceControlValues(oSqlResult, pnlIndex)
' oSqlResult = clsPatterns.ReplaceInternalValues(oSqlResult)
' If oSqlResult <> String.Empty Then
' _Logger.Debug("oSqlResult after Replace [" & oSqlResult & "]")
' End If
' ' Ergebnis: Es wurden alle einfachen Platzhalter ersetzt, jetzt haben wir einen SQL Befehl,
' ' der nur noch vektorfelder-platzhalter enthält
' ' 2. Schritt: Vektorfelder ersetzen
' Dim oVectorMatches As MatchCollection = oRegex.Matches(oSqlResult)
' If oVectorMatches.Count > 0 Then
' _Logger.Info(" There are " & oVectorMatches.Count & " matches for vectors!")
' Dim oIsFirstMatch = True
' For Each oVectorMatch As Match In oVectorMatches
' Dim oIndexValue As String = StripPlaceholder(oVectorMatch.Value)
' Dim oOptionalIndex = False
' Dim oManualIndexResult As String = Nothing
' oOptionalIndex = FilterDatatable(My.Application.Globix.CURR_DT_MAN_INDEXE, $"DOK_ID = {My.Application.Globix.CURRENT_DOCTYPE_ID} AND INDEXNAME = '{oIndexValue}'", "OPTIONAL", "", False)
' ' ClassDatabase.Execute_Scalar($"SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = {CURRENT_DOKART_ID} AND UPPER(NAME) = UPPER('{oIndexValue}')", MyConnectionString, True)
' oManualIndexResult = GetManIndex_Value(oIndexValue, "IDX_AUTO", oOptionalIndex)
' Dim oVectorIndexValues = oManualIndexResult.Split(ClassConstants.VECTORSEPARATOR).ToList()
' For Each oVectorIndexValue In oVectorIndexValues
' Dim oTempSql = oSqlResult.Replace(oVectorMatch.Value, oVectorIndexValue)
' Dim oResult = GetAutomaticIndexSQLValue(oTempSql, oSqlConnectionId, oSqlProvider)
' oEndResult.Add(oResult)
' Next
' ' Verhindert, dass die Schleife mehrmals durchlaufen wird
' If oIsFirstMatch Then
' Exit For
' End If
' oAutoIndexRow.Item("Indexiert") = True
' oAutoIndexRow.Item("Indexwert") = String.Join(ClassConstants.VECTORSEPARATOR, oEndResult.ToArray)
' Next
' Else
' Dim oResult = GetAutomaticIndexSQLValue(oSqlResult, oSqlConnectionId, oSqlProvider)
' _Logger.Info("Got a simple SQLResult: " & oResult.ToString)
' oAutoIndexRow.Item("Indexiert") = True
' oAutoIndexRow.Item("Indexwert") = oResult
' End If
' Next
' Return True
' Catch ex As Exception
' _Logger.Error(ex)
' MsgBox(ex.Message)
' Return False
' End Try
'End Function
'Function GetAutomaticIndexSQLValue(SQLCommand As String, vconnectionID As Integer, vProvider As String) As String
' Try
' Dim oConnectionString As String
' oConnectionString = My.Database.Get_ConnectionStringforID(vconnectionID)
' If oConnectionString <> "" Then
' 'NEU
' Dim oErgebnis
' 'Welcher Provider?
' 'If vProvider.ToLower = "oracle" Then
' 'oErgebnis = My.Database.leExecute_Scalar(SQLCommand, oConnectionString)
' 'Else 'im Moment nur SQL-Server
' oErgebnis = My.Database.GetScalarValueConStr(SQLCommand, oConnectionString)
' 'End If
' _Logger.Debug("SQL-ConnectionString: " & oConnectionString.Substring(0, oConnectionString.LastIndexOf("=")))
' If oErgebnis Is Nothing Then
' 'showlblhinweis("Kein Ergebnis für automatisches SQL: " & vsqlstatement)
' Return ""
' Else
' Return oErgebnis
' End If
' End If
' Catch ex As Exception
' _Logger.Warn(" - Unexpected error in Get_AutomatischerIndex_SQL - Fehler: " & vbNewLine & ex.Message)
' _Logger.Error(ex.Message)
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Get_AutomatischerIndex_SQL:")
' Return ""
' End Try
'End Function
'Sub Indexwert_Postprocessing(indexname As String, wert_in As String)
' Try
' Dim value_post As String = ""
' For Each oDataRow As DataRow In My.Application.Globix.CURR_DT_MAN_INDEXE.Rows
' If oDataRow.Item("INDEXNAME") = indexname Then
' Dim idxid As Integer = oDataRow.Item("GUID")
' If idxid > 0 Then
' ' In jedem Fall schon mal den Wert einfügen
' oDataRow.Item("Indexwert") = wert_in
' 'Die Nachbearbeitungsschritte laden
' 'FILE AND INDEX
' 'Zuerst nur die Fälle für die Variante ONLY FILE/FOLDER
' Dim DTNB As DataTable = FilterDatatable(My.Application.Globix.CURR_INDEX_MAN_POSTPROCESSING, "IDXMAN_ID = " & idxid & " AND VARIANT = 'ONLY FILE/FOLDER'", "", "SEQUENCE", True)
' 'ClassDatabase.Return_Datatable("SELECT * FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE IDXMAN_ID = " & idxid & " AND VARIANT = 'ONLY FILE/FOLDER' ORDER BY SEQUENCE")
' If DTNB Is Nothing = False Then
' If DTNB.Rows.Count > 0 Then
' value_post = clsPostProcessing.Get_Nachbearbeitung_Wert(wert_in, DTNB)
' oDataRow.Item("Indexwert") = wert_in
' oDataRow.Item("Indexwert_File") = value_post
' End If
' End If
' 'Jetzt die Fälle für die Variante FILE AND INDEX
' DTNB = Nothing
' DTNB = FilterDatatable(My.Application.Globix.CURR_INDEX_MAN_POSTPROCESSING, "IDXMAN_ID = " & idxid & " AND VARIANT = 'FILE AND INDEX'", "", "SEQUENCE", True)
' 'ClassDatabase.Return_Datatable("SELECT * FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE IDXMAN_ID = " & idxid & " AND VARIANT = 'FILE AND INDEX' ORDER BY SEQUENCE")
' If DTNB Is Nothing = False Then
' If DTNB.Rows.Count > 0 Then
' value_post = clsPostProcessing.Get_Nachbearbeitung_Wert(wert_in, DTNB)
' oDataRow.Item("Indexwert") = value_post
' End If
' End If
' End If
' oDataRow.Item("Indexiert") = True
' End If
' Next
' Catch ex As Exception
' _Logger.Warn(" - Unvorhergesehener Unexpected error in Indexwert_Postprocessing - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
' _Logger.Error(ex.Message)
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_Postprocessing:")
' End Try
'End Sub
End Class

View File

@ -56,5 +56,26 @@ Module ModuleHelpers
Public Sub Refresh_RegexTable() Public Sub Refresh_RegexTable()
My.Application.BASE_DATA_DT_REGEX = My.Database.GetDatatable("SELECT * FROM TBGI_FUNCTION_REGEX") My.Application.BASE_DATA_DT_REGEX = My.Database.GetDatatable("SELECT * FROM TBGI_FUNCTION_REGEX")
End Sub End Sub
Public Function FilterDatatable(myDatatable As DataTable, myFilter As String, mycheckColumn As String, pSortString As String, returnDT As Boolean) As Object
Try
Dim dv As DataView = myDatatable.DefaultView
dv.RowFilter = myFilter
If dv.Count = 1 And returnDT = False Then
For Each rowView As DataRowView In dv
Dim row As DataRow = rowView.Row
Return row.Item(mycheckColumn)
Next
Else
Dim dt_copy As DataTable = New DataTable()
dt_copy = myDatatable.Select(myFilter, pSortString).CopyToDataTable()
Return dt_copy
End If
Catch ex As Exception
MsgBox("Unexpected error in FilterDatatable: " + ex.Message, MsgBoxStyle.Critical)
Return Nothing
End Try
End Function
End Module End Module

View File

@ -126,7 +126,8 @@ Partial Class frmSearchStart
' '
Me.BarButtonNewSearch.Caption = "Neue Suche" Me.BarButtonNewSearch.Caption = "Neue Suche"
Me.BarButtonNewSearch.Id = 1 Me.BarButtonNewSearch.Id = 1
Me.BarButtonNewSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonNewSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.BarButtonNewSearch.ImageOptions.Image = CType(resources.GetObject("BarButtonNewSearch.ImageOptions.Image"), System.Drawing.Image)
Me.BarButtonNewSearch.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonNewSearch.ImageOptions.LargeImage"), System.Drawing.Image)
Me.BarButtonNewSearch.Name = "BarButtonNewSearch" Me.BarButtonNewSearch.Name = "BarButtonNewSearch"
' '
'BarButtonSaveSearch 'BarButtonSaveSearch
@ -186,7 +187,7 @@ Partial Class frmSearchStart
' '
'BarButtonStartSearch 'BarButtonStartSearch
' '
Me.BarButtonStartSearch.Caption = "Suche starten (F2)" Me.BarButtonStartSearch.Caption = "Finden (F2)"
Me.BarButtonStartSearch.Id = 9 Me.BarButtonStartSearch.Id = 9
Me.BarButtonStartSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonStartSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.BarButtonStartSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonStartSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonStartSearch.Name = "BarButtonStartSearch" Me.BarButtonStartSearch.Name = "BarButtonStartSearch"

View File

@ -135,22 +135,24 @@
Zz4L Zz4L
</value> </value>
</data> </data>
<data name="BarButtonNewSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BarButtonNewSearch.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAAG3RFWHRUaXRsZQBBZGQ7UGx1
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGICAAAC77u/ cztCYXJzO1JpYmJvbjuVBjMvAAAAYElEQVQ4T92MUQqAMAxDd0Ev5am8XbTSlEwyRBwIfrzRpelrAF5h
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi Q7KsG5KYbceG5EeCnG3HhkQFI86HxadMFRTxJ1q85NXtAiXzEuiOzBOMOEqdQHfEhoSCOP5GcA/aDplf
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv q/kc1pC+AAAAAElFTkSuQmCC
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh </value>
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg </data>
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z <data name="BarButtonNewSearch.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz <value>
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkFkZENpcmNsZWQiPg0KICAgIDxwYXRoIGQ9Ik0xNiw0 YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAAG3RFWHRUaXRsZQBBZGQ7UGx1
QzkuNCw0LDQsOS40LDQsMTZzNS40LDEyLDEyLDEyczEyLTUuNCwxMi0xMlMyMi42LDQsMTYsNHogTTI0 cztCYXJzO1JpYmJvbjuVBjMvAAAAj0lEQVRYR+3OUQqEMAxFUTfoplyVu4vNhyDpRR4Sokg+DsKdafsW
LDE4aC02djZoLTR2LTZIOHYtNGg2VjhoNHY2aDZWMTh6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4N M3sVxkoYK2GshLESRsW67XYVf1dhVPSAHtAD/j0gXp4lvuOm4OhwhviOm4KjwxniO24Kjg5niO+4KaiU
Cjwvc3ZnPgs= yxUYFTRgfG9dz58wKsaF3xvwBEZFD6AB44v/vYNR0QOyYKyEsRLGShjr2HIAeeWOhN7Trl4AAAAASUVO
RK5CYII=
</value> </value>
</data> </data>
<data name="BarButtonSaveSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="BarButtonSaveSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -190,20 +192,15 @@
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANoCAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALcBAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg Y2U9InByZXNlcnZlIiBpZD0iTmV4dCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KPC9zdHls
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD ZT4NCiAgPHBhdGggZD0iTTguOSw0LjFDOC40LDMuOCw4LDQuMSw4LDQuNnYyMC43YzAsMC42LDAuNCww
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh LjgsMC45LDAuNWwxNi44LTEwLjNjMC41LTAuMywwLjUtMC44LDAtMS4xTDguOSw0LjF6IiBjbGFzcz0i
Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw Qmx1ZSIgLz4NCjwvc3ZnPgs=
MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu
bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iR2V0dGluZ1N0YXJ0ZWQiPg0KICAg
IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy
My43LDIsMTYsMnogTTEyLDIyVjEwbDEwLDZMMTIsMjJ6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4N
Cjwvc3ZnPgs=
</value> </value>
</data> </data>
<data name="BarStaticItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="BarStaticItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -275,7 +272,6 @@
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>73</value> <value>73</value>
</metadata> </metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="frmSearchStart.IconOptions.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="frmSearchStart.IconOptions.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAABAAYAAAAAAAEAIABNFwAAZgAAAICAAAABACAAKAgBALMXAABAQAAAAQAgAChCAADbHwEAMDAAAAEA AAABAAYAAAAAAAEAIABNFwAAZgAAAICAAAABACAAKAgBALMXAABAQAAAAQAgAChCAADbHwEAMDAAAAEA

View File

@ -33,6 +33,7 @@ Public Class frmSearchStart
Public DataLoaded As Boolean = False Public DataLoaded As Boolean = False
Private DatatableAttributes As DataTable Private DatatableAttributes As DataTable
Private DatatableAttributeLinks As DataTable
Private DatatableSearchProfiles As DataTable Private DatatableSearchProfiles As DataTable
Private LastSearchForm As frmDocumentResultList Private LastSearchForm As frmDocumentResultList
@ -139,12 +140,17 @@ Public Class frmSearchStart
Dim oWatch1 As New Watch("Getting data from Database") Dim oWatch1 As New Watch("Getting data from Database")
Dim oSQL = $"SELECT * FROM VWIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = {SEARCH_ID} ORDER BY [SEQUENCE]" Dim oSQL = $"SELECT * FROM VWIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = {SEARCH_ID} ORDER BY [SEQUENCE]"
Dim oDT As DataTable = Await My.DatabaseIDB.GetDatatableAsync(oSQL) Dim oDT As DataTable = Await My.DatabaseIDB.GetDatatableAsync(oSQL)
oSQL = $"SELECT * FROM VWIDB_SEARCH_ATTRIBUTES_LINKS WHERE SEARCH_PROFIL_ID = {SEARCH_ID} ORDER BY DEP_ATTR_ID"
Dim oDT1 As DataTable = Await My.DatabaseIDB.GetDatatableAsync(oSQL)
oWatch1.Stop() oWatch1.Stop()
Dim oWatch2 As New Watch("Procesing Dataset") Dim oWatch2 As New Watch("Procesing Dataset")
DatatableAttributes = Nothing DatatableAttributes = Nothing
DatatableAttributes = oDT.Clone() DatatableAttributes = oDT.Clone()
oDT.Select("", "SEQUENCE").CopyToDataTable(DatatableAttributes, LoadOption.PreserveChanges) oDT.Select("", "SEQUENCE").CopyToDataTable(DatatableAttributes, LoadOption.PreserveChanges)
DatatableAttributeLinks = Nothing
DatatableAttributeLinks = oDT1.Clone()
oDT1.Select("", "DEP_ATTR_ID").CopyToDataTable(DatatableAttributeLinks, LoadOption.PreserveChanges)
oWatch2.Stop() oWatch2.Stop()
Dim oControlCount As Integer = 1 Dim oControlCount As Integer = 1
@ -154,7 +160,7 @@ Public Class frmSearchStart
Dim YActControlHeight As Integer = 0 Dim YActControlHeight As Integer = 0
Dim XActControlWidth As Integer = 0 Dim XActControlWidth As Integer = 0
For Each oAttributeRow As DataRow In oDT.Rows For Each oAttributeRow As DataRow In DatatableAttributes.Rows
Dim oXPosition As Integer Dim oXPosition As Integer
Dim oYPositionControl As Integer Dim oYPositionControl As Integer
Dim oYPositionLabel As Integer Dim oYPositionLabel As Integer
@ -236,6 +242,12 @@ Public Class frmSearchStart
oMyLastGridView = oView oMyLastGridView = oView
oView.FocusInvalidRow() oView.FocusInvalidRow()
'Prüfen ob für dieses Grid eine Abhängigkeit definiert ist?
For Each oROW As DataRow In DatatableAttributeLinks.Rows
If CInt(oROW.Item("LINKED_ATTR_ID")) = oAttriID Then
AddHandler oView.FocusedRowChanged, AddressOf FocusedRowChanged
End If
Next
ElseIf oAttributeType = ATTR_TYPE_DATE Then ElseIf oAttributeType = ATTR_TYPE_DATE Then
oMyControl = oControls.CreateExistingDatepicker(oAttributeRow, oXPosition, oYPositionControl) oMyControl = oControls.CreateExistingDatepicker(oAttributeRow, oXPosition, oYPositionControl)
@ -373,21 +385,66 @@ Public Class frmSearchStart
End Select End Select
Next Next
End Sub End Sub
Private Sub Link2ControlActivated(pAttributeID)
For Each oControl As Control In SelectedTab.Controls
Dim octrlType = oControl.GetType.ToString
Dim oAttrID As Integer
Dim oAttrTitle As String
Select Case oControl.GetType.FullName
Case GetType(GridControl).FullName
Dim oMyGridControl As GridControl = CType(oControl, GridControl)
Dim oMyGridView As GridView = CType(oMyGridControl.MainView, GridView)
oAttrID = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeID
oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeTitle
If pAttributeID = oAttrID Then
MsgBox("Attribute" & oAttrTitle & " is linked")
Continue For
End If
Case GetType(DateEdit).FullName
' MsgBox("Date")
Dim oDateEdit As DateEdit = CType(oControl, DateEdit)
oAttrID = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeID
oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeTitle
If pAttributeID = oAttrID Then
Continue For
End If
Case GetType(CheckBox).FullName
Dim myCheckBox As CheckBox = CType(oControl, CheckBox)
oAttrID = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeID
oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttributeTitle
Case Else
'MsgBox(oControl.GetType.ToString)
End Select
Next
End Sub
Private Sub FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Private Sub FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs)
If DataLoaded = False Then Exit Sub If DataLoaded = False Then Exit Sub
Dim oCurrentView As GridView = DirectCast(sender, GridView)
Dim oCurrentControl As GridControl = oCurrentView.GridControl
Dim oRowView As DataRowView = CType(oCurrentView.GetFocusedRow(), DataRowView)
If IsNothing(oRowView) = False Then Dim oMyGridView As GridView = DirectCast(sender, GridView)
Dim oResult As String = CType(oRowView.Item(0), String) Dim oMyGridControl As GridControl = oMyGridView.GridControl
Dim oAttrID = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttributeID
Dim oAttrTitle = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttributeTitle
' RenewSearchAttributes()
' AddSearchAttribute(oAttrID, oAttrTitle, oResult)
Dim oSelectedRows As Integer() = oMyGridView.GetSelectedRows()
If oSelectedRows.Count = 0 Then
Exit Sub
End If End If
Dim oAttrID As Integer
Dim oAttrTitle As String
oAttrID = DirectCast(oMyGridControl.Tag, ClassControlCreator.ControlMetadata).AttributeID
oAttrTitle = DirectCast(oMyGridControl.Tag, ClassControlCreator.ControlMetadata).AttributeTitle
For Each orow As DataRow In DatatableAttributeLinks.Rows
If CInt(orow.Item("LINKED_ATTR_ID")) = oAttrID Then
' Nun die Controls durchlaufen
Link2ControlActivated(CInt(orow.Item("DEP_ATTR_ID")))
End If
Next
End Sub End Sub
Private Sub CheckBox_CheckedChanged(sender As Object, e As EventArgs) Private Sub CheckBox_CheckedChanged(sender As Object, e As EventArgs)

View File

@ -114,9 +114,9 @@
<Compile Include="Base\BaseClass.vb" /> <Compile Include="Base\BaseClass.vb" />
<Compile Include="ClassClipboardWatcher.vb" /> <Compile Include="ClassClipboardWatcher.vb" />
<Compile Include="ClassCommandlineArgs.vb" /> <Compile Include="ClassCommandlineArgs.vb" />
<Compile Include="ClassControlCreator.vb" /> <Compile Include="Search\ClassControlCreator.vb" />
<Compile Include="ClassFileDrop.vb" /> <Compile Include="Globix\ClassFileDrop.vb" />
<Compile Include="ClassFilehandle.vb" /> <Compile Include="Globix\ClassFilehandle.vb" />
<Compile Include="ClassInit.vb" /> <Compile Include="ClassInit.vb" />
<Compile Include="ClassLayout.vb" /> <Compile Include="ClassLayout.vb" />
<Compile Include="ClassWin32.vb" /> <Compile Include="ClassWin32.vb" />
@ -153,16 +153,16 @@
<Compile Include="Globix\frmGlobix_Index.vb"> <Compile Include="Globix\frmGlobix_Index.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="frmSearchPredefined.Designer.vb"> <Compile Include="Search\frmSearchPredefined.Designer.vb">
<DependentUpon>frmSearchPredefined.vb</DependentUpon> <DependentUpon>frmSearchPredefined.vb</DependentUpon>
</Compile> </Compile>
<Compile Include="frmSearchPredefined.vb"> <Compile Include="Search\frmSearchPredefined.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="frmSearchStart.Designer.vb"> <Compile Include="Search\frmSearchStart.Designer.vb">
<DependentUpon>frmSearchStart.vb</DependentUpon> <DependentUpon>frmSearchStart.vb</DependentUpon>
</Compile> </Compile>
<Compile Include="frmSearchStart.vb"> <Compile Include="Search\frmSearchStart.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="Globix\GlobixControls.vb" /> <Compile Include="Globix\GlobixControls.vb" />
@ -223,10 +223,10 @@
<EmbeddedResource Include="Globix\frmGlobix_Index.resx"> <EmbeddedResource Include="Globix\frmGlobix_Index.resx">
<DependentUpon>frmGlobix_Index.vb</DependentUpon> <DependentUpon>frmGlobix_Index.vb</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmSearchPredefined.resx"> <EmbeddedResource Include="Search\frmSearchPredefined.resx">
<DependentUpon>frmSearchPredefined.vb</DependentUpon> <DependentUpon>frmSearchPredefined.vb</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmSearchStart.resx"> <EmbeddedResource Include="Search\frmSearchStart.resx">
<DependentUpon>frmSearchStart.vb</DependentUpon> <DependentUpon>frmSearchStart.vb</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmSettings.resx"> <EmbeddedResource Include="frmSettings.resx">
@ -368,7 +368,9 @@
<ItemGroup> <ItemGroup>
<None Include="Resources\2_ZOO_FLOW_Abo_MouseOver.png" /> <None Include="Resources\2_ZOO_FLOW_Abo_MouseOver.png" />
</ItemGroup> </ItemGroup>
<ItemGroup /> <ItemGroup>
<Folder Include="Finden\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.

View File

@ -187,7 +187,7 @@ Partial Class frmFlowForm
' '
'TimerCheckDroppedFiles 'TimerCheckDroppedFiles
' '
Me.TimerCheckDroppedFiles.Interval = 600 Me.TimerCheckDroppedFiles.Interval = 400
' '
'frmFlowForm 'frmFlowForm
' '

View File

@ -2044,6 +2044,6 @@
<value>863, 17</value> <value>863, 17</value>
</metadata> </metadata>
<metadata name="TimerCheckDroppedFiles.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TimerCheckDroppedFiles.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>1045, 17</value> <value>17, 56</value>
</metadata> </metadata>
</root> </root>

View File

@ -299,6 +299,7 @@ Public Class frmFlowForm
If FileDrop.Drop_File(e) = True Then If FileDrop.Drop_File(e) = True Then
TimerCheckDroppedFiles.Start() TimerCheckDroppedFiles.Start()
Me.Cursor = Cursors.WaitCursor
End If End If
PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW1 PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW1
@ -315,6 +316,7 @@ Public Class frmFlowForm
TimerCheckDroppedFiles.Stop() TimerCheckDroppedFiles.Stop()
Check_Dropped_Files() Check_Dropped_Files()
Me.Cursor = Cursors.Default
End Sub End Sub
Sub Check_Dropped_Files() Sub Check_Dropped_Files()
Try Try

View File

@ -998,146 +998,146 @@ Public Class frmGlobix_Index
End Try End Try
End Function End Function
Private Function Write_Indizes() Private Function Write_Indizes()
'Try Try
Dim indexierung_erfolgreich As Boolean = False Dim indexierung_erfolgreich As Boolean = False
'Manuelle Indexe Indexieren 'Manuelle Indexe Indexieren
' If My.Application.Globix.CURR_MAN_INDEXE.Rows.Count > 0 Then If My.Application.Globix.CURR_MAN_INDEXE.Rows.Count > 0 Then
' Dim Count As Integer = 0 Dim Count As Integer = 0
' For Each row As DataRow In DTMan.Rows For Each row As DataRow In DTMan.Rows
' Dim idxvalue = row.Item("Indexwert") Dim idxvalue = row.Item("Indexwert")
' Dim indexname = row.Item("WD_INDEX").ToString Dim indexname = row.Item("WD_INDEX").ToString
' _Logger.Debug($"Write_Indizes - Index [{indexname}]...") _Logger.Debug($"Write_Indizes - Index [{indexname}]...")
' Dim optional_Index = CBool(row.Item("OPTIONAL")) Dim optional_Index = CBool(row.Item("OPTIONAL"))
' Dim indexiert = CBool(row.Item("Indexiert")) Dim indexiert = CBool(row.Item("Indexiert"))
' If indexiert And idxvalue.ToString <> "" And idxvalue <> "EMPTY_OI" Then If indexiert And idxvalue.ToString <> "" And idxvalue <> "EMPTY_OI" Then
' If indexname <> String.Empty Then If indexname <> String.Empty Then
' If row.Item("SAVE_VALUE") = True Then If row.Item("SAVE_VALUE") = True Then
' 'Den Indexwert zwischenspeichern 'Den Indexwert zwischenspeichern
' Dim DTTemp As DataTable = MyDataset.TBTEMP_INDEXRESULTS Dim DTTemp As DataTable = MyDataset.TBTEMP_INDEXRESULTS
' Dim rowexists As Boolean = False Dim rowexists As Boolean = False
' For Each rowTemp As DataRow In DTTemp.Rows For Each rowTemp As DataRow In DTTemp.Rows
' 'Wenn bereits ein Eintrag existiert..... 'Wenn bereits ein Eintrag existiert.....
' If rowTemp.Item("Dokumentart") = row.Item("DOKUMENTART") And rowTemp.Item("Indexname") = row.Item("INDEXNAME") Then If rowTemp.Item("Dokumentart") = row.Item("DOKUMENTART") And rowTemp.Item("Indexname") = row.Item("INDEXNAME") Then
' rowexists = True rowexists = True
' '......überschreiben '......überschreiben
' rowTemp.Item("Value") = row.Item("Indexwert") rowTemp.Item("Value") = row.Item("Indexwert")
' End If End If
' Next Next
' '.....ansonsten neu anlegen '.....ansonsten neu anlegen
' If rowexists = False Then If rowexists = False Then
' Dim newRow As DataRow = DTTemp.NewRow() Dim newRow As DataRow = DTTemp.NewRow()
' newRow("Dokumentart") = row.Item("DOKUMENTART").ToString newRow("Dokumentart") = row.Item("DOKUMENTART").ToString
' newRow("Indexname") = row.Item("INDEXNAME").ToString newRow("Indexname") = row.Item("INDEXNAME").ToString
' newRow("Value") = row.Item("Indexwert") newRow("Value") = row.Item("Indexwert")
' DTTemp.Rows.Add(newRow) DTTemp.Rows.Add(newRow)
' End If End If
' End If End If
' _Logger.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...") _Logger.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...")
' Count += 1 Count += 1
' ' den Typ des Zielindexes auslesen ' den Typ des Zielindexes auslesen
' Dim oIndexType As Integer = WINDREAM.GetIndexType(indexname) Dim oIndexType As Integer = WINDREAM.GetIndexType(indexname)
' _Logger.Debug($"oIndexType [{oIndexType.ToString}]...") _Logger.Debug($"oIndexType [{oIndexType.ToString}]...")
' If oIndexType < WINDREAM.WMObjectVariableValueTypeVector Then If oIndexType < WINDREAM.WMObjectVariableValueTypeVector Then
' _Logger.Debug($"Indexing oIndexType < WINDREAM.WMObjectVariableValueTypeVector...") _Logger.Debug($"Indexing oIndexType < WINDREAM.WMObjectVariableValueTypeVector...")
' indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, idxvalue, CURR_DOKART_OBJECTTYPE) indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, idxvalue, CURR_DOKART_OBJECTTYPE)
' Else Else
' Dim oSplitArray = Split(idxvalue, ClassConstants.VECTORSEPARATOR) Dim oSplitArray = Split(idxvalue, ClassConstants.VECTORSEPARATOR)
' Dim oListofString As New List(Of String) Dim oListofString As New List(Of String)
' If oSplitArray.Count = 0 Then If oSplitArray.Count = 0 Then
' oListofString.Add(idxvalue) oListofString.Add(idxvalue)
' Else Else
' For Each oStr In oSplitArray For Each oStr In oSplitArray
' oListofString.Add(oStr) oListofString.Add(oStr)
' Next Next
' End If End If
' indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, oListofString, CURR_DOKART_OBJECTTYPE) indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, oListofString, CURR_DOKART_OBJECTTYPE)
' End If End If
' 'indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_NEWFILENAME, indexname, idxvalue) 'indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_NEWFILENAME, indexname, idxvalue)
' If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
' MsgBox("Error in Indexing file - See log", MsgBoxStyle.Critical) MsgBox("Error in Indexing file - See log", MsgBoxStyle.Critical)
' Return False Return False
' Exit For Exit For
' End If End If
' Else Else
' _Logger.Debug("No Indexing: indexname: " & indexname) _Logger.Debug("No Indexing: indexname: " & indexname)
' _Logger.Debug("No Indexing: is optional? " & optional_Index.ToString) _Logger.Debug("No Indexing: is optional? " & optional_Index.ToString)
' End If End If
' Else Else
' _Logger.Debug("Indexvalue is empty or field is not indexed - Indexname: " & indexname) _Logger.Debug("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
' _Logger.Info("Indexvalue is empty or field is not indexed - Indexname: " & indexname) _Logger.Info("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
' End If End If
' Next Next
' End If End If
' 'Automatische Indexe Indexieren 'Automatische Indexe Indexieren
' If My.Application.Globix.CURR_AUTO_INDEXE.Rows.Count > 0 Then If My.Application.Globix.CURR_AUTO_INDEXE.Rows.Count > 0 Then
' Dim Count As Integer = 0 Dim Count As Integer = 0
' For Each row As DataRow In My.Application.Globix.CURR_AUTO_INDEXE.Rows For Each row As DataRow In My.Application.Globix.CURR_AUTO_INDEXE.Rows
' Dim indexiert = CBool(row.Item("Indexiert")) Dim indexiert = CBool(row.Item("Indexiert"))
' Dim Indexvalue = row.Item("Indexwert").ToString Dim Indexvalue = row.Item("Indexwert").ToString
' Dim indexname = row.Item("INDEXNAME").ToString Dim indexname = row.Item("INDEXNAME").ToString
' If indexiert = True And Indexvalue <> "" Then If indexiert = True And Indexvalue <> "" Then
' If Indexvalue <> "EMPTY_OI" Then If Indexvalue <> "EMPTY_OI" Then
' _Logger.Info("Auto Indexname: " & indexname.ToString) _Logger.Info("Auto Indexname: " & indexname.ToString)
' _Logger.Info("Indexvalue: " & Indexvalue.ToString) _Logger.Info("Indexvalue: " & Indexvalue.ToString)
' Count += 1 Count += 1
' ' den Typ des Zielindexes auslesen ' den Typ des Zielindexes auslesen
' Dim indexType As Integer = WINDREAM.GetIndexType(indexname) Dim indexType As Integer = WINDREAM.GetIndexType(indexname)
' If indexType < WINDREAM.WMObjectVariableValueTypeVector Then If indexType < WINDREAM.WMObjectVariableValueTypeVector Then
' indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, Indexvalue, CURR_DOKART_OBJECTTYPE) indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, Indexvalue, CURR_DOKART_OBJECTTYPE)
' Else Else
' Dim oSplitArray = Split(Indexvalue, ClassConstants.VECTORSEPARATOR) Dim oSplitArray = Split(Indexvalue, ClassConstants.VECTORSEPARATOR)
' Dim oListofString As New List(Of String) Dim oListofString As New List(Of String)
' If oSplitArray.Count = 0 Then If oSplitArray.Count = 0 Then
' oListofString.Add(Indexvalue) oListofString.Add(Indexvalue)
' Else Else
' For Each oStr In oSplitArray For Each oStr In oSplitArray
' oListofString.Add(oStr) oListofString.Add(oStr)
' Next Next
' End If End If
' indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, oListofString, CURR_DOKART_OBJECTTYPE) indexierung_erfolgreich = WINDREAM.SetFileIndex(My.Application.Globix.CURRENT_NEWFILENAME, indexname, oListofString, CURR_DOKART_OBJECTTYPE)
' End If End If
' 'indexierung_erfolgreich = WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, Indexvalue, CURR_DOKART_OBJECTTYPE) 'indexierung_erfolgreich = WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, Indexvalue, CURR_DOKART_OBJECTTYPE)
' If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
' MsgBox("Error in indexing file - See log", MsgBoxStyle.Critical) MsgBox("Error in indexing file - See log", MsgBoxStyle.Critical)
' Return False Return False
' Exit For Exit For
' End If End If
' End If End If
' End If End If
' Next Next
' End If End If
' If DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Or DropType = "|MSGONLY|" Or My.Application.Globix.CURRENT_NEWFILENAME.EndsWith(".msg") Then If DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Or DropType = "|MSGONLY|" Or My.Application.Globix.CURRENT_NEWFILENAME.EndsWith(".msg") Then
' indexierung_erfolgreich = SetEmailIndices() indexierung_erfolgreich = SetEmailIndices()
' If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
' MsgBox("Error in SetEmailIndices - See log", MsgBoxStyle.Critical) MsgBox("Error in SetEmailIndices - See log", MsgBoxStyle.Critical)
' Return False Return False
' End If End If
' ElseIf DropType = "|ATTMNTEXTRACTED|" Or DropType = "|OUTLOOK_ATTACHMENT|" Then ElseIf DropType = "|ATTMNTEXTRACTED|" Or DropType = "|OUTLOOK_ATTACHMENT|" Then
' indexierung_erfolgreich = SetAttachmentIndices() indexierung_erfolgreich = SetAttachmentIndices()
' If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
' MsgBox("Error in SetEmailIndices - See log", MsgBoxStyle.Critical) MsgBox("Error in SetEmailIndices - See log", MsgBoxStyle.Critical)
' Return False Return False
' End If End If
' End If End If
'Catch ex As Exception Catch ex As Exception
' _Logger.Warn("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message) _Logger.Warn("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message)
' _Logger.Error(ex.Message) _Logger.Error(ex.Message)
' MsgBox("Error in Write_Indizes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Error in Write_Indizes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
' Return False Return False
'End Try End Try
Return True Return True
End Function End Function
Private Function SINGLEFILE_2_IDB(pBusinessEntity As String) As Boolean Private Function SINGLEFILE_2_IDB(pBusinessEntity As String) As Boolean

View File

@ -23,53 +23,37 @@ Partial Class frmSplash
<System.Diagnostics.DebuggerStepThrough()> _ <System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent() Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSplash)) Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSplash))
Me.pictureEdit2 = New DevExpress.XtraEditors.PictureEdit()
Me.pictureEdit1 = New DevExpress.XtraEditors.PictureEdit() Me.pictureEdit1 = New DevExpress.XtraEditors.PictureEdit()
Me.labelControl2 = New DevExpress.XtraEditors.LabelControl() Me.labelControl2 = New DevExpress.XtraEditors.LabelControl()
Me.txtActionName = New DevExpress.XtraEditors.LabelControl() Me.txtActionName = New DevExpress.XtraEditors.LabelControl()
Me.Version = New DevExpress.XtraEditors.LabelControl() Me.Version = New DevExpress.XtraEditors.LabelControl()
Me.ProgressBarControl1 = New DevExpress.XtraEditors.ProgressBarControl() Me.ProgressBarControl1 = New DevExpress.XtraEditors.ProgressBarControl()
CType(Me.pictureEdit2.Properties,System.ComponentModel.ISupportInitialize).BeginInit Me.pictureEdit2 = New DevExpress.XtraEditors.PictureEdit()
CType(Me.pictureEdit1.Properties,System.ComponentModel.ISupportInitialize).BeginInit Me.Button1 = New System.Windows.Forms.Button()
CType(Me.ProgressBarControl1.Properties,System.ComponentModel.ISupportInitialize).BeginInit CType(Me.pictureEdit1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout CType(Me.ProgressBarControl1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
' CType(Me.pictureEdit2.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
'pictureEdit2 Me.SuspendLayout()
'
Me.pictureEdit2.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.pictureEdit2.Cursor = System.Windows.Forms.Cursors.Default
Me.pictureEdit2.EditValue = CType(resources.GetObject("pictureEdit2.EditValue"),Object)
Me.pictureEdit2.Location = New System.Drawing.Point(12, 12)
Me.pictureEdit2.Name = "pictureEdit2"
Me.pictureEdit2.Properties.AllowFocused = false
Me.pictureEdit2.Properties.Appearance.BackColor = System.Drawing.Color.Transparent
Me.pictureEdit2.Properties.Appearance.Options.UseBackColor = true
Me.pictureEdit2.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder
Me.pictureEdit2.Properties.ShowMenu = false
Me.pictureEdit2.Size = New System.Drawing.Size(525, 260)
Me.pictureEdit2.TabIndex = 14
' '
'pictureEdit1 'pictureEdit1
' '
Me.pictureEdit1.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right),System.Windows.Forms.AnchorStyles) Me.pictureEdit1.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.pictureEdit1.Cursor = System.Windows.Forms.Cursors.Default Me.pictureEdit1.Cursor = System.Windows.Forms.Cursors.Default
Me.pictureEdit1.EditValue = CType(resources.GetObject("pictureEdit1.EditValue"),Object) Me.pictureEdit1.EditValue = CType(resources.GetObject("pictureEdit1.EditValue"), Object)
Me.pictureEdit1.Location = New System.Drawing.Point(335, 346) Me.pictureEdit1.Location = New System.Drawing.Point(319, 280)
Me.pictureEdit1.Name = "pictureEdit1" Me.pictureEdit1.Name = "pictureEdit1"
Me.pictureEdit1.Properties.AllowFocused = false Me.pictureEdit1.Properties.AllowFocused = False
Me.pictureEdit1.Properties.Appearance.BackColor = System.Drawing.Color.Transparent Me.pictureEdit1.Properties.Appearance.BackColor = System.Drawing.Color.Transparent
Me.pictureEdit1.Properties.Appearance.Options.UseBackColor = true Me.pictureEdit1.Properties.Appearance.Options.UseBackColor = True
Me.pictureEdit1.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder Me.pictureEdit1.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder
Me.pictureEdit1.Properties.ShowMenu = false Me.pictureEdit1.Properties.ShowMenu = False
Me.pictureEdit1.Size = New System.Drawing.Size(202, 28) Me.pictureEdit1.Size = New System.Drawing.Size(202, 28)
Me.pictureEdit1.TabIndex = 13 Me.pictureEdit1.TabIndex = 13
' '
'labelControl2 'labelControl2
' '
Me.labelControl2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left),System.Windows.Forms.AnchorStyles) Me.labelControl2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.labelControl2.Location = New System.Drawing.Point(12, 278) Me.labelControl2.Location = New System.Drawing.Point(12, 212)
Me.labelControl2.Name = "labelControl2" Me.labelControl2.Name = "labelControl2"
Me.labelControl2.Size = New System.Drawing.Size(50, 13) Me.labelControl2.Size = New System.Drawing.Size(50, 13)
Me.labelControl2.TabIndex = 12 Me.labelControl2.TabIndex = 12
@ -77,8 +61,8 @@ Partial Class frmSplash
' '
'txtActionName 'txtActionName
' '
Me.txtActionName.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left),System.Windows.Forms.AnchorStyles) Me.txtActionName.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.txtActionName.Location = New System.Drawing.Point(12, 321) Me.txtActionName.Location = New System.Drawing.Point(12, 255)
Me.txtActionName.Name = "txtActionName" Me.txtActionName.Name = "txtActionName"
Me.txtActionName.Size = New System.Drawing.Size(48, 13) Me.txtActionName.Size = New System.Drawing.Size(48, 13)
Me.txtActionName.TabIndex = 12 Me.txtActionName.TabIndex = 12
@ -86,8 +70,8 @@ Partial Class frmSplash
' '
'Version 'Version
' '
Me.Version.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left),System.Windows.Forms.AnchorStyles) Me.Version.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.Version.Location = New System.Drawing.Point(12, 361) Me.Version.Location = New System.Drawing.Point(12, 295)
Me.Version.Name = "Version" Me.Version.Name = "Version"
Me.Version.Size = New System.Drawing.Size(54, 13) Me.Version.Size = New System.Drawing.Size(54, 13)
Me.Version.TabIndex = 12 Me.Version.TabIndex = 12
@ -95,20 +79,47 @@ Partial Class frmSplash
' '
'ProgressBarControl1 'ProgressBarControl1
' '
Me.ProgressBarControl1.Location = New System.Drawing.Point(12, 297) Me.ProgressBarControl1.Location = New System.Drawing.Point(12, 231)
Me.ProgressBarControl1.Name = "ProgressBarControl1" Me.ProgressBarControl1.Name = "ProgressBarControl1"
Me.ProgressBarControl1.Properties.EndColor = System.Drawing.Color.Empty Me.ProgressBarControl1.Properties.EndColor = System.Drawing.Color.Empty
Me.ProgressBarControl1.Properties.LookAndFeel.SkinName = "Office 2019 Colorful" Me.ProgressBarControl1.Properties.LookAndFeel.SkinName = "Office 2019 Colorful"
Me.ProgressBarControl1.Properties.LookAndFeel.UseDefaultLookAndFeel = false Me.ProgressBarControl1.Properties.LookAndFeel.UseDefaultLookAndFeel = False
Me.ProgressBarControl1.Properties.StartColor = System.Drawing.Color.Empty Me.ProgressBarControl1.Properties.StartColor = System.Drawing.Color.Empty
Me.ProgressBarControl1.Size = New System.Drawing.Size(525, 18) Me.ProgressBarControl1.Size = New System.Drawing.Size(509, 18)
Me.ProgressBarControl1.TabIndex = 15 Me.ProgressBarControl1.TabIndex = 15
' '
'pictureEdit2
'
Me.pictureEdit2.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.pictureEdit2.Cursor = System.Windows.Forms.Cursors.Default
Me.pictureEdit2.EditValue = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources._1_LOGO_ZOO_FLOW
Me.pictureEdit2.Location = New System.Drawing.Point(12, 12)
Me.pictureEdit2.Name = "pictureEdit2"
Me.pictureEdit2.Properties.AllowFocused = False
Me.pictureEdit2.Properties.Appearance.BackColor = System.Drawing.Color.Transparent
Me.pictureEdit2.Properties.Appearance.Options.UseBackColor = True
Me.pictureEdit2.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder
Me.pictureEdit2.Properties.ShowMenu = False
Me.pictureEdit2.Size = New System.Drawing.Size(509, 194)
Me.pictureEdit2.TabIndex = 14
'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(446, 141)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(75, 23)
Me.Button1.TabIndex = 16
Me.Button1.Text = "Stop"
Me.Button1.UseVisualStyleBackColor = True
'
'frmSplash 'frmSplash
' '
Me.AutoScaleDimensions = New System.Drawing.SizeF(6!, 13!) Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(549, 386) Me.ClientSize = New System.Drawing.Size(533, 320)
Me.Controls.Add(Me.Button1)
Me.Controls.Add(Me.ProgressBarControl1) Me.Controls.Add(Me.ProgressBarControl1)
Me.Controls.Add(Me.pictureEdit2) Me.Controls.Add(Me.pictureEdit2)
Me.Controls.Add(Me.pictureEdit1) Me.Controls.Add(Me.pictureEdit1)
@ -117,17 +128,18 @@ Partial Class frmSplash
Me.Controls.Add(Me.labelControl2) Me.Controls.Add(Me.labelControl2)
Me.Name = "frmSplash" Me.Name = "frmSplash"
Me.Text = "Form1" Me.Text = "Form1"
CType(Me.pictureEdit2.Properties,System.ComponentModel.ISupportInitialize).EndInit CType(Me.pictureEdit1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.pictureEdit1.Properties,System.ComponentModel.ISupportInitialize).EndInit CType(Me.ProgressBarControl1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ProgressBarControl1.Properties,System.ComponentModel.ISupportInitialize).EndInit CType(Me.pictureEdit2.Properties, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(false) Me.ResumeLayout(False)
Me.PerformLayout Me.PerformLayout
End Sub End Sub
Private WithEvents pictureEdit2 As DevExpress.XtraEditors.PictureEdit
Private WithEvents pictureEdit1 As DevExpress.XtraEditors.PictureEdit Private WithEvents pictureEdit1 As DevExpress.XtraEditors.PictureEdit
Private WithEvents labelControl2 As DevExpress.XtraEditors.LabelControl Private WithEvents labelControl2 As DevExpress.XtraEditors.LabelControl
Private WithEvents txtActionName As DevExpress.XtraEditors.LabelControl Private WithEvents txtActionName As DevExpress.XtraEditors.LabelControl
Private WithEvents Version As DevExpress.XtraEditors.LabelControl Private WithEvents Version As DevExpress.XtraEditors.LabelControl
Friend WithEvents ProgressBarControl1 As DevExpress.XtraEditors.ProgressBarControl Friend WithEvents ProgressBarControl1 As DevExpress.XtraEditors.ProgressBarControl
Private WithEvents pictureEdit2 As DevExpress.XtraEditors.PictureEdit
Friend WithEvents Button1 As Button
End Class End Class

File diff suppressed because it is too large Load Diff

View File

@ -26,4 +26,8 @@ Public Class frmSplash
SetProgress SetProgress
SetActionName SetActionName
End Enum End Enum
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
MsgBox("Stop")
End Sub
End Class End Class