MS Rename taskFlow

This commit is contained in:
2023-03-27 11:10:49 +02:00
parent 4ebb40fd9e
commit 930f4c8af8
361 changed files with 193 additions and 34 deletions

151
app/TaskFlow/App.config Normal file
View File

@@ -0,0 +1,151 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System">
<section name="DD_ProcessManager.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
<section name="DevExpress.LookAndFeel.Design.AppSettings" type="System.Configuration.ClientSettingsSection" requirePermission="false"/>
</sectionGroup>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="DD_ProcessManager.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
</sectionGroup>
</configSections>
<applicationSettings>
<DD_ProcessManager.My.MySettings>
<setting name="UseAppConfigConString" serializeAs="String">
<value>False</value>
</setting>
<setting name="UserConfig_Prefix" serializeAs="String">
<value>PROD</value>
</setting>
<setting name="SYS_Override_Language" serializeAs="String">
<value>en-US</value>
</setting>
</DD_ProcessManager.My.MySettings>
<DevExpress.LookAndFeel.Design.AppSettings>
<setting name="DefaultAppSkin" serializeAs="String">
<value>Skin/Office 2019 White</value>
</setting>
<setting name="DefaultPalette" serializeAs="String">
<value>Custom/Digital Data</value>
</setting>
<setting name="TouchUI" serializeAs="String">
<value></value>
</setting>
<setting name="TouchScaleFactor" serializeAs="String">
<value></value>
</setting>
<setting name="DirectX" serializeAs="String">
<value></value>
</setting>
<setting name="RegisterUserSkins" serializeAs="String">
<value></value>
</setting>
<setting name="FontBehavior" serializeAs="String">
<value></value>
</setting>
<setting name="DefaultAppFont" serializeAs="String">
<value></value>
</setting>
<setting name="DPIAwarenessMode" serializeAs="String">
<value></value>
</setting>
<setting name="CompactUI" serializeAs="String">
<value></value>
</setting>
<setting name="RegisterBonusSkins" serializeAs="String">
<value></value>
</setting>
<setting name="CustomPaletteCollection" serializeAs="Xml">
<value>
<CustomPaletteCollection>
<Skin Name="Office 2019 White">
<SvgPalette Name="Digital Data">
<SvgColor Name="Paint" Value="White"/>
<SvgColor Name="Paint High" Value="White"/>
<SvgColor Name="Paint Shadow" Value="240,240,240"/>
<SvgColor Name="Paint Deep Shadow" Value="230,230,230"/>
<SvgColor Name="Brush" Value="72,70,68"/>
<SvgColor Name="Brush High" Value="72,70,68"/>
<SvgColor Name="Brush Light" Value="119,119,119"/>
<SvgColor Name="Brush Major" Value="171,171,171"/>
<SvgColor Name="Brush Minor" Value="225,225,225"/>
<SvgColor Name="Accent Paint" Value="165,36,49"/>
<SvgColor Name="Accent Paint Dark" Value="133,28,38"/>
<SvgColor Name="Accent Paint Light" Value="250,220,221"/>
<SvgColor Name="Accent Paint Lighter" Value="251,233,234"/>
<SvgColor Name="Accent Brush" Value="255,255,255"/>
<SvgColor Name="Accent Brush Light" Value="218,175,176"/>
<SvgColor Name="Red" Value="237,61,59"/>
<SvgColor Name="Green" Value="48,144,72"/>
<SvgColor Name="Blue" Value="30,139,205"/>
<SvgColor Name="Yellow" Value="251,152,59"/>
<SvgColor Name="Black" Value="87,87,85"/>
<SvgColor Name="Gray" Value="169,168,168"/>
<SvgColor Name="White" Value="255,255,255"/>
</SvgPalette>
</Skin>
</CustomPaletteCollection>
</value>
</setting>
</DevExpress.LookAndFeel.Design.AppSettings>
</applicationSettings>
<connectionStrings>
<add name="DD_ProcessManager.My.MySettings.ConnectionString"
connectionString="Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2"/>
</startup>
<userSettings>
<DD_ProcessManager.My.MySettings>
<setting name="IntervallReminder" serializeAs="String">
<value>5</value>
</setting>
<setting name="frmMainSize" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmMainPosition" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValidatorSize" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValidatorPosition" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmMassValidatorSize" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmMassValidatorposition" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValidatorSearchPosition" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValSearchSplitterDistance" serializeAs="String">
<value>563</value>
</setting>
<setting name="frmMainWindowState" serializeAs="String">
<value>Normal</value>
</setting>
<setting name="frmTableColumns_Position" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValidatorSearchSize" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="frmValidatorWindowState" serializeAs="String">
<value>Normal</value>
</setting>
</DD_ProcessManager.My.MySettings>
</userSettings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -0,0 +1,40 @@
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.ZooFlow
Imports Microsoft.VisualBasic.ApplicationServices
Namespace My
' Für MyApplication sind folgende Ereignisse verfügbar:
' Startup: Wird beim Starten der Anwendung noch vor dem Erstellen des Startformulars ausgelöst.
' Shutdown: Wird nach dem Schließen aller Anwendungsformulare ausgelöst. Dieses Ereignis wird nicht ausgelöst, wenn die Anwendung mit einem Fehler beendet wird.
' UnhandledException: Wird bei einem Ausnahmefehler ausgelöst.
' StartupNextInstance: Wird beim Starten einer Einzelinstanzanwendung ausgelöst, wenn die Anwendung bereits aktiv ist.
' NetworkAvailabilityChanged: Wird beim Herstellen oder Trennen der Netzwerkverbindung ausgelöst.
Partial Friend Class MyApplication
Private Sub MyApplication_UnhandledException(sender As Object, e As UnhandledExceptionEventArgs) Handles Me.UnhandledException
Dim oMessage = "Application encountered an unhandled error!" & vbNewLine & vbNewLine &
"The errormessage was:" & vbNewLine & e.Exception.Message & vbNewLine &
"The stacktrace was:" & vbNewLine & e.Exception.StackTrace
LOGGER.Error(e.Exception)
Try
If DEBUG = True Then
Dim oLogMessage = LOGCONFIG.Logs.Last()
Dim oLogSplit As String() = oLogMessage.Split("|")
Dim oDBMessage = PrepareLogMessage(oLogMessage) & $" [Machinename: {System.Environment.MachineName}]"
Dim oSQL = $"INSERT INTO [dbo].[TBPM_LOG_DEBUG] ([USERID], [LOGMSG], [ADDED_WHEN], DATE_STR) VALUES({USER_ID},'{oDBMessage}',GETDATE(),'{Now}')"
DatabaseFallback.ExecuteNonQueryECM(oSQL)
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
MsgBox(oMessage, MsgBoxStyle.Critical, "Flow Task")
End Sub
End Class
End Namespace

View File

@@ -0,0 +1,374 @@
Imports System.Data.SqlClient
Imports System.Data.OracleClient
Imports System.IO
Imports WINDREAMLib
Public Class ClassAllgemeineFunktionen
Public Shared Function GUI_LANGUAGE_INFO(pTITLE As String)
Try
Dim oFilteredDatatable As DataTable = BASEDATA_DT_GUI_LANGUAGE_PHRASES.Clone()
Dim oExpression = $"LANGUAGE ='{USER_LANGUAGE}' AND TITLE = '{pTITLE}'"
BASEDATA_DT_GUI_LANGUAGE_PHRASES.Select(oExpression).CopyToDataTable(oFilteredDatatable, LoadOption.PreserveChanges)
If oFilteredDatatable.Rows.Count = 1 Then
If oFilteredDatatable.Rows(0).Item("CAPT_TYPE") = "MsgBox" Or oFilteredDatatable.Rows(0).Item("CAPT_TYPE") = "MsgboxResult" Then
Return oFilteredDatatable
Else
If oFilteredDatatable.Rows(0).Item("STRING2") <> String.Empty Then
Return oFilteredDatatable
Else
Return oFilteredDatatable.Rows(0).Item("STRING1")
End If
End If
Else
If oFilteredDatatable.Rows.Count = 0 Then 'KEIN EINTRAG FÜR SPRACHE
oExpression = $"LANGUAGE ='de-DE' AND TITLE = '{pTITLE}'"
BASEDATA_DT_GUI_LANGUAGE_PHRASES.Select(oExpression).CopyToDataTable(oFilteredDatatable, LoadOption.PreserveChanges)
Try
Return oFilteredDatatable.Rows(0).Item("STRING1")
Catch ex As Exception
Return $"ERR-LANG(NoTranslationFor [{oExpression}]"
End Try
Else
Return oFilteredDatatable
End If
End If
Catch ex As Exception
LOGGER.Info($"Unexpected error in GUI_LANGUAGE_INFO FOR [{pTITLE}]...")
LOGGER.Error(ex)
End Try
End Function
Public Shared Function GUI_LANGUAGE_MSGBOX(pTITLE As String)
Try
Dim oFilteredDatatable As DataTable = BASEDATA_DT_GUI_LANGUAGE_PHRASES.Clone()
Dim oExpression = $"LANGUAGE = '{USER_LANGUAGE}' AND TITLE = '{pTITLE}'"
BASEDATA_DT_GUI_LANGUAGE_PHRASES.Select(oExpression).CopyToDataTable(oFilteredDatatable, LoadOption.PreserveChanges)
If oFilteredDatatable.Rows.Count = 1 Then
Return oFilteredDatatable.Rows(0)
Else
Return ""
End If
Catch ex As Exception
LOGGER.Info($"Unexpected error in GUI_LANGUAGE_MSGBOX FOR [{pTITLE}]...")
LOGGER.Error(ex)
End Try
End Function
Public Shared Function LoginOut(LoginorOut As String) As Boolean
Try
If USER_EXISTS = False Then
Return False
End If
Dim oSql As String
If LoginorOut = "LOGIN" Then
oSql = String.Format($"INSERT INTO TBDD_USER_MODULE_LOG_IN (USER_ID,CLIENT_ID,MODULE,VERSION_CLIENT,MACHINE_NAME,LANGUAGE_OVERRIDE) VALUES
({USER_ID},1,'{MODULE_PM}','{My.Application.Info.Version.ToString}','{Environment.MachineName}','{My.Settings.SYS_Override_Language}')")
Else
If INACTIVITYRecognized = True Then
oSql = $"UPDATE TBDD_USER_LOGIN_OUT SET COMMENT = 'Inactivity Detected',LOGOUT = GETDATE() WHERE USER_ID = {USER_ID} AND MODULE = '{MODULE_PM}' AND LOGOUT IS NULL"
If DatabaseFallback.ExecuteNonQueryECM(oSql) = True Then
End If
End If
oSql = $"DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = {USER_ID} AND MODULE = '{MODULE_PM}'"
End If
If DatabaseFallback.ExecuteNonQueryECM(oSql) = True Then
LOGGER.Debug($"{LoginorOut} of User successfully!")
Return True
Else
LOGGER.Info("User could not be logged in/out....")
Return False
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error in LoginOut: " & ex.Message)
Return False
End Try
End Function
Public Function Insert_LogEntry(ERR_MSG As String)
Try
ERR_MSG = ERR_MSG.Replace("'", "''")
Dim insert As String = $"INSERT INTO TBPM_LOG_DEBUG (USERID, LOGMSG) VALUES ({USER_ID},'{ERR_MSG}')"
If ExecuteonMSSQL(insert, CONNECTION_STRING_ECM) <> "" Then
LOGGER.Warn("...Eintrag in Log-Tabelle konnte nicht erstellt werden!!", True)
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error in Insert_LogEntry: " & ex.Message)
End Try
End Function
Public Function ExecuteonMSSQL(ByVal sqlcommand As String, ConString As String)
Try
' die nötigen Variablen definieren
Dim Connection As SqlConnection
Dim Command As SqlCommand = Nothing
Dim DataAdapter As SqlDataAdapter = Nothing
' ConnectionString aufbauen (aus Settings auslesen)
Connection = New SqlConnection(ConString)
' Verbindung zur Datenbank aufbauen
Try
Connection.Open()
Catch ex As Exception
LOGGER.Error(ex)
' DB-Connection schliessen
Me.CloseMssqlDb(Connection)
LOGGER.Debug("ExecuteonMSSQL.Connection definieren - Error: " & ex.Message, True)
Return "ExecuteonMSSQL.Connection definieren - Error: " & ex.Message
End Try
' SQL-Abfrage definieren
Try
Command = New SqlCommand(sqlcommand, Connection)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Debug("ExecuteonMSSQL.sqlcommand definieren - Error: " & ex.Message, True)
' DB-Connection schliessen
Me.CloseMssqlDb(Connection)
Return "ExecuteonMSSQL.sqlcommand definieren - Error: " & ex.Message
End Try
' *** Ausführen des Command ***
If Command IsNot Nothing Then
Try
Command.ExecuteNonQuery()
' DB-Connection schliessen
Me.CloseMssqlDb(Connection)
Return ""
Catch ex As Exception
LOGGER.Error(ex)
'bei einem Fehler einen Eintrag in der Logdatei erzeugen
LOGGER.Info("ExecuteonMSSQL.Execute Command - Error: " & ex.Message, True)
LOGGER.Info("Command-Befehl: " & Command.CommandText, True)
' DB-Connection schliessen
Me.CloseMssqlDb(Connection)
Return "ExecuteonMSSQL.Execute Command - Error: " & ex.Message
End Try
Else
' kann eintreten, wenn entweder die SQL-Anweisung falsch ist oder wenn die DataConnection nicht richtig aufgebaut werden konnte
' Eintrag in Logdatei machen
LOGGER.Info("ExecuteonMSSQL.SQL-Command ist ungültig. Command-Objekt konnte nicht erstellt werden")
Return "ExecuteonMSSQL.SQL-Command ist ungültig. Command-Objekt konnte nicht erstellt werden"
End If
Catch ex As Exception
LOGGER.Error(ex)
' an dieser Stelle sollte jeder unvorhergesehene Fehler der Funktion abgefangen werden
LOGGER.Info("ExecuteonMSSQL.Ein unbekannter Fehler in ExecuteonMSSQL - Error: " & ex.Message, True)
Return "ExecuteonMSSQL.Ein unbekannter Fehler in ExecuteonMSSQL - Error: " & ex.Message
End Try
End Function
Private Sub CloseMssqlDb(ByRef Connection As SqlConnection)
' wenn eine Datenbank-Connection aufgebaut ist
If Connection IsNot Nothing Then
' diese schliessen
Connection.Close()
Connection = Nothing
End If
End Sub
'Public Function Delete_xffres(originFile As String, clsWD As ClassWindream_allgemein)
' Try
' Dim Stammname As String = System.IO.Path.GetFileNameWithoutExtension(originFile)
' Dim Path As String = System.IO.Path.GetDirectoryName(originFile)
' Dim xffres As String = Path & "\" & Stammname & ".xffres"
' If file_exists(xffres, clsWD) = True Then
' System.IO.File.Delete(xffres)
' LOGGER.Info("Datei " & xffres & " erfolgreich gelöscht")
' Return True
' Else
' Return Nothing
' End If
' Catch ex As Exception
' LOGGER.Error(ex)
' LOGGER.Info(" Fehler bei Delete_xffres", True)
' LOGGER.Info("Fehlermeldung: " & ex.Message)
' End Try
'End Function
'Public Function Delete_File(originFile As String)
' Try
' If file_exists(originFile, False) = True Then
' System.IO.File.Delete(originFile)
' LOGGER.Info("Manuelles Löschen: Datei " & originFile & " erfolgreich gelöscht", False)
' Return True
' Else
' MsgBox("Die Datei konnte nicht gelsöcht werden. File NOT EXISTS", MsgBoxStyle.Exclamation)
' Return False
' End If
' Catch ex As Exception
' LOGGER.Info(" Fehler bei Delete_File", True)
' LOGGER.Info("Fehlermeldung: " & ex.Message)
' End Try
'End Function
Public Function Move2Folder(ByVal vMove_File As String, ByVal vZiel_Pfad As String, Profile_ID As Integer, clsWD As ClassWindream_allgemein)
Try
Dim extension As String = IO.Path.GetExtension(vMove_File)
Dim Filename As String = IO.Path.GetFileName(vMove_File)
Dim path As String = IO.Path.GetDirectoryName(vMove_File)
Dim _Ziel As String
_Ziel = vZiel_Pfad & "\" & Filename
Dim version As Integer = 1
If vZiel_Pfad <> path Then
Dim Stammname As String = IO.Path.GetFileNameWithoutExtension(vMove_File)
Do While Check_File_exists(_Ziel, clsWD) = True
Dim neuername As String = Stammname & "~" & version & extension
_Ziel = neuername
version += 1
Loop
My.Computer.FileSystem.MoveFile(vMove_File, _Ziel)
LOGGER.Info("Datei erfolgreich verschoben - Ziel: " & _Ziel)
Else
LOGGER.Info("Ziel und Quellpfad sind identisch!")
End If
Return ""
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Fehler bei Move2Folder", True)
LOGGER.Info("Fehlermeldung")
LOGGER.Info(ex.Message)
Insert_LogEntry($"ERROR {ex.Message}")
Return ex.Message
End Try
End Function
Public Function Check_File_exists(ByVal _file As String, clsWD As ClassWindream_allgemein)
Try
Return clsWD.CheckFileExists(_file)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Fehler in Funktion file_exists - Fehler: ", ex.Message)
Return False
End Try
End Function
Public Function CheckValue_Exists(sqlbefehl As String, Replace_value As String, Check_value As String, Typ As String, connString As String, profilid As Integer)
Try
Dim sql As String
Dim CONNTYPE As String
If connString <> "" Then
If connString.StartsWith("%MS") Then
CONNTYPE = "MS-SQL"
connString = connString.Replace("%MS", "")
ElseIf connString.StartsWith("%OR") Then
CONNTYPE = "ORACLE"
connString = connString.Replace("%OR", "")
End If
Dim sqlscalar = sqlbefehl
Select Case Typ
Case "INTEGER"
'@manValue
sqlscalar = sqlscalar.ToString.Replace(Replace_value, Check_value)
Case Else
sqlscalar = sqlscalar.ToString.Replace(Replace_value, "'" & Check_value & "'")
End Select
sql = sqlscalar
Dim ergebnis As Integer
If CONNTYPE = "ORACLE" Then
ergebnis = Execute_Scalar_Oracle(sql, connString, True)
Else
ergebnis = Execute_Scalar_SQLServer(sql, connString, True)
End If
Select Case ergebnis
Case 1
Return True
Case Else
Return False
End Select
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei checkValue_Exists:")
LOGGER.Info(" - Unvorhergesehener Fehler bei checkValue_Exists - Fehler: " & vbNewLine & ex.Message)
Return False
End Try
End Function
Function Execute_Scalar_SQLServer(vsql_statement As String, vconnectionString As String, check As Boolean)
Try
Dim cnn As SqlConnection
cnn = New SqlConnection(vconnectionString)
Dim cmd As SqlCommand
cnn.Open()
cmd = New SqlCommand(vsql_statement, cnn)
If check = True Then
'ERgebnis muss immer 1 oder mehr ergeben
Dim count As Int32 = Convert.ToInt32(cmd.ExecuteScalar())
If count = 1 Then
cmd.Dispose()
cnn.Close()
Return 1
Else
cmd.Dispose()
cnn.Close()
Return 2
End If
Else
'Ergebnis
Dim ergebnis As String = cmd.ExecuteScalar()
Return ergebnis
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Unvorhergesehener Fehler bei Execute_Scalar_SQLServer" & vbNewLine & "Automatischer Index (j/n): " & check.ToString & vbNewLine & "Fehler:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei Ausführen sql:")
Insert_LogEntry($"ERROR Execute_Scalar_SQLServer{ex.Message}")
LOGGER.Info(" - Unvorhergesehener Fehler bei Execute_Scalar_SQLServer" & vbNewLine & "Automatischer Index (j/n): " & check.ToString & vbNewLine & "Fehler: " & vbNewLine & ex.Message)
LOGGER.Info(" - SQL: " & vsql_statement)
LOGGER.Info(" - Connection: " & vconnectionString)
Return 99
End Try
End Function
Function Execute_Scalar_Oracle(vsql_statement As String, vconnectionString As String, check As Boolean)
Try
Dim cnn As System.Data.OleDb.OleDbConnection
cnn = New System.Data.OleDb.OleDbConnection(vconnectionString)
Dim cmd As System.Data.OleDb.OleDbCommand
cnn.Open()
cmd = New System.Data.OleDb.OleDbCommand(vsql_statement, cnn)
If check = True Then
'Ergebnis muss immer 1 oder mehr ergeben
Dim count As Int32 = Convert.ToInt32(cmd.ExecuteScalar())
If count = 1 Then
Return 1
Else
Return 2
End If
Else
'Ergebnis
Dim ergebnis As String = cmd.ExecuteScalar()
Return ergebnis
End If
cmd.Dispose()
cnn.Close()
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Unvorhergesehener Fehler bei Execute_Scalar_Oracle" & vbNewLine & "Automatischer Index (j/n): " & check.ToString & vbNewLine & "Fehler:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei Ausführen sql:")
Insert_LogEntry($"ERROR Execute_Scalar_Oracle{ex.Message}")
LOGGER.Info(" - Unvorhergesehener Fehler bei Execute_Scalar_Oracle" & vbNewLine & "Automatischer Index (j/n): " & check.ToString & vbNewLine & "Fehler: " & vbNewLine & ex.Message)
LOGGER.Info(" - SQL: " & vsql_statement)
LOGGER.Info(" - Connection: " & vconnectionString)
Return 99
End Try
End Function
End Class

View File

@@ -0,0 +1,38 @@
Imports PdfSharp.Pdf
Imports PdfSharp.Pdf.Annotations
Imports PdfSharp.Pdf.IO
Imports PdfSharp.Drawing
Public Class ClassAnnotation
Public Shared Function Annotate_PDF(title As String, content As String, page As Integer, fromGui As Boolean, Optional ycorrect As Integer = 0, Optional sizecorrect As Integer = 0)
If CURRENT_DOC_PATH.Length > 0 Then
Try
Dim doc As PdfDocument = PdfReader.Open(CURRENT_DOC_PATH, PdfDocumentOpenMode.Modify)
Dim firstPage As PdfPage = doc.Pages(page)
Dim gfx As XGraphics = XGraphics.FromPdfPage(firstPage)
Dim rect As XRect = gfx.Transformer.WorldToDefaultPage(New XRect(New XPoint(30, 60 + ycorrect), New XSize(60 + sizecorrect, 40 + sizecorrect)))
Dim annot As PdfTextAnnotation = New PdfTextAnnotation
annot.Title = title
'annot.Subject = txtsubject.Text
annot.Contents = content
annot.Rectangle = New PdfRectangle(rect)
firstPage.Annotations.Add(annot)
doc.Save(CURRENT_DOC_PATH)
Return True
Catch ex As Exception
If fromGui = True Then
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Annotate pdf:")
End If
LOGGER.Error(ex)
LOGGER.Info("Unexpected error in Annotate pdf: " & ex.Message, False)
Return False
End Try
End If
End Function
End Class

View File

@@ -0,0 +1,51 @@
Imports DigitalData.Modules.Config.ConfigAttributes
Imports DigitalData.Modules.Logging
Public Class ClassConfig
' Global Settings (from computerconfig, overridable by userconfig)
<ConnectionString>
Public Property ConnectionString As String = ""
<ConnectionStringTest>
Public Property ConnectionStringTest As String = ""
<ConnectionStringAppServer>
Public Property ConnectionStringAppServer As String = ""
<EDMIAppServer>
Public Property EDMIAppServer As String = ""
Public Property TestMode As Boolean = False
' PDF Viewer Settings
' Windream Settings
Public Property IndexDmsErstellt As String = "DMS erstellt"
Public Property IndexDmsErstelltZeit As String = "DMS erstellt (Zeit)"
' Digital Data Settings
Public Property UserManagerPath As String = ""
' File Settings
Public Property VersionDelimiter As String = "~"
Public Property FileDelimiter As String = "_"
' Misc Settings
Public Property DEBUG As Boolean = False
Public Property ReminderTimer As Integer = 5
Public Property MonitorSplitter1_Distance As Integer = 510
Public Property MonitorSplitter2_Distance As Integer = 270
Public Property MonitorSplitter3_Distance As Integer = 400
Public Property frmValidatorWindowState As String = "Normal"
Public Property LastExportPath As String = ""
Public Property ADDITIONAL_SEARCHES_LOAD_ONCLICK As Boolean = True
Public Property GridFontSizeDelta As Integer = 0
Public Property ProfileConfig As New ProfileUserConfig
Public Class ProfileUserConfig
Public Property ProfileID As Integer
Public Property ShowFile As Boolean = True
Public Property ShowSearchesDirect As Boolean = True
End Class
End Class

View File

@@ -0,0 +1,12 @@
Public Class ClassConstants
Public Const OpModeFS_PWM = "PURE_WM"
Public Const OpModeFS_IDBWM = "IDB_WM"
Public Const OpModeFS_ZF = "ZOOFLOW"
Public Const CAT_INFORMATION = "Information"
Public Const CAT_GENERAL = "Allgemein"
Public Const CAT_DISPLAY = "Anzeige"
Public Const CAT_BEHAVIOUR = "Verhalten"
Public Const CAT_DATA = "Daten"
Public Const CAT_VALIDATION = "Validierung"
End Class

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,101 @@
Imports DDUserManager.UserDataSet
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Grid
Imports DevExpress.XtraGrid.Views.Grid.ViewInfo
Public Class ClassDragDrop
Private downHitInfo As GridHitInfo = Nothing
Public Sub New()
End Sub
Public Sub AddGridView(view As GridView)
AddHandler view.MouseDown, AddressOf view_MouseDown
AddHandler view.MouseMove, AddressOf view_MouseMove
AddHandler view.GridControl.DragOver, AddressOf grid_DragOver
End Sub
Private Sub view_MouseDown(sender As Object, e As MouseEventArgs)
Dim view As GridView = sender
downHitInfo = Nothing
Dim hitInfo As GridHitInfo = view.CalcHitInfo(New Point(e.X, e.Y))
If Control.ModifierKeys <> Keys.None Then
Return
End If
If e.Button = MouseButtons.Left And hitInfo.RowHandle >= 0 Then
downHitInfo = hitInfo
End If
End Sub
Private Sub view_MouseMove(sender As Object, e As MouseEventArgs)
Try
Dim view As GridView = sender
Dim hitInfo As GridHitInfo = view.CalcHitInfo(New Point(e.X, e.Y))
If e.Button = MouseButtons.Left And Not IsNothing(downHitInfo) Then
Dim dragSize As Size = SystemInformation.DragSize
Dim dragRect As New Rectangle(New Point(downHitInfo.HitPoint.X - dragSize.Width / 2, downHitInfo.HitPoint.Y - dragSize.Height / 2), dragSize)
' DragRect ist ein kleines Rechteck, dessen Mitte der Punkt ist, wo die Maus geklickt wurde.
' Es soll verhindern, dass durch schnelles Klicken unbeabsichtigt Drag'n'Drop Operationen initiiert werden
' Siehe: https://msdn.microsoft.com/en-us/library/system.windows.forms.systeminformation.dragsize(v=vs.110).aspx
If Not dragRect.Contains(New Point(e.X, e.Y)) Then
' dragDropData enhält eine einzelne Row oder den kompletten View,
' jenachdem, wie die Drag'n'Drop Operation gestartet wurde.
Dim dragDropData As String
' Wenn keine Zeile markiert ist
If downHitInfo.RowHandle < 0 Then
Exit Sub
End If
' Wenn zwar eine Zeile markiert ist, aber keine über die Checkbox angehakt wurde,
' wird die markierte Zeile übergeben.
' Wenn 1 oder n Zeilen über die Checkbox angehakt wurde, werden diese übergeben
Dim row As DataRow = view.GetDataRow(downHitInfo.RowHandle)
Dim source As String = view.GridControl.Name
If Not IsNothing(row) Then
Try
dragDropData = row.Item("GUID") & "|" & source
Catch ex As Exception
Try
dragDropData = row.Item("USER_ID") & "|" & source
Catch ex1 As Exception
LOGGER.Warn($"Error in view_MouseMove(2nd exception): " & ex.Message)
MsgBox("Error in view_MouseMove(2nd exception): " & ex.Message, MsgBoxStyle.Critical)
End Try
End Try
view.GridControl.DoDragDrop(dragDropData, DragDropEffects.Move)
downHitInfo = Nothing
DevExpress.Utils.DXMouseEventArgs.GetMouseArgs(e).Handled = True
End If
End If
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error in view_MouseMove: " & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub grid_DragOver(sender As Object, e As DragEventArgs)
If e.Data.GetDataPresent(DataFormats.Text) Then
Dim data As String = e.Data.GetData(DataFormats.Text)
Dim source = data.Split("|")(1)
Dim grid As GridControl = sender
If grid.Name <> source Then
e.Effect = DragDropEffects.Move
End If
Else
e.Effect = DragDropEffects.None
End If
End Sub
End Class

View File

@@ -0,0 +1,67 @@
Imports System.Net.Mail
Public Class ClassEmail
Public Function Send_Log_Mail(ByVal vBody As String, ByVal vBetreff As String, ByVal emailfrom As String, ByVal emailsmtp As String, ByVal emailuser As String, ByVal emailpw As String, ByVal email_empf As String, Optional test As Boolean = False, Optional Log As Boolean = False)
'#### E-MAIL NACHRICHT VERSENDEN
Try
Dim empfaenger As String()
If email_empf.Contains(";") Then
empfaenger = email_empf.Split(";")
Else
ReDim Preserve empfaenger(0)
empfaenger(0) = email_empf
End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage(emailfrom, _mailempfaenger, vBetreff & " - Domain: " & Environment.UserDomainName,
"<font face=""Arial"">" & vBody & "<br>>> Version: " & My.Application.Info.Version.ToString & "<br>>> Maschine: " & Environment.MachineName & "<br>" & "<br>>> Domain-Name: " & Environment.UserDomainName & "<br>" &
"<br>>> Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & " " &
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
If test = False Then
If Log = True Then
' create and add the attachment(s) */
Dim logfile As String = LOGCONFIG.LogFile
If logfile.Contains("\\") Then
logfile = logfile.Replace("\\", "\")
End If
If IO.File.Exists(logfile) Then
Dim Attachment As Attachment = New Attachment(logfile)
message.Attachments.Add(Attachment)
End If
End If
End If
With message
.IsBodyHtml = True
.Priority = MailPriority.High
End With
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient(emailsmtp)
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential(emailuser, emailpw) ', My.Settings.vDomain)
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = 25
'*Send the message */
emailClient.Send(message)
If test = True Then
MsgBox("Die Test-Email wurde erfolgreich versendet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
If Log = True Then
MsgBox("Die Support-Email wurde erfolgreich versendet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
'LOGGER.Info(">> Support/Log Email erfolgreich an " & _mailempfaenger & " versendet!", False)
Next
Return True
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("### Fehler im Mailversand: " & ex.Message)
Return False
End Try
End Function
End Class

View File

@@ -0,0 +1,81 @@
Imports System.Security.Cryptography
Public Class ClassEncryption
Private TripleDes As New TripleDESCryptoServiceProvider
Sub New(ByVal key As String)
' Initialize the crypto provider.
TripleDes.Key = TruncateHash(key, TripleDes.KeySize \ 8)
TripleDes.IV = TruncateHash("", TripleDes.BlockSize \ 8)
End Sub
Private Function TruncateHash(
ByVal key As String,
ByVal length As Integer) As Byte()
Dim sha1 As New SHA1CryptoServiceProvider
' Hash the key.
Dim keyBytes() As Byte = Text.Encoding.Unicode.GetBytes(key)
Dim hash() As Byte = sha1.ComputeHash(keyBytes)
' Truncate or pad the hash.
ReDim Preserve hash(length - 1)
Return hash
End Function
Public Function EncryptData(ByVal plaintext As String) As String
' Convert the plaintext string to a byte array.
Dim plaintextBytes() As Byte =
System.Text.Encoding.Unicode.GetBytes("!Didalog35452Heuchelheim=" & plaintext)
' Create the stream.
Dim ms As New System.IO.MemoryStream
' Create the encoder to write to the stream.
Dim encStream As New CryptoStream(ms,
TripleDes.CreateEncryptor(),
System.Security.Cryptography.CryptoStreamMode.Write)
' Use the crypto stream to write the byte array to the stream.
encStream.Write(plaintextBytes, 0, plaintextBytes.Length)
encStream.FlushFinalBlock()
Dim oPrintableString = Convert.ToBase64String(ms.ToArray)
Try
ms.Dispose()
Catch ex As Exception
LOGGER.Error(ex)
End Try
' Convert the encrypted stream to a printable string.
Return oPrintableString
End Function
'Entschlüsselt die Zeichenfolge
Public Function DecryptData(ByVal encryptedtext As String) As String
' Convert the encrypted text string to a byte array.
Dim encryptedBytes() As Byte = Convert.FromBase64String(encryptedtext)
' Create the stream.
Dim ms As New System.IO.MemoryStream
' Create the decoder to write to the stream.
Dim decStream As New CryptoStream(ms,
TripleDes.CreateDecryptor(),
System.Security.Cryptography.CryptoStreamMode.Write)
' Use the crypto stream to write the byte array to the stream.
decStream.Write(encryptedBytes, 0, encryptedBytes.Length)
decStream.FlushFinalBlock()
' Convert the plaintext stream to a string.
Dim result = System.Text.Encoding.Unicode.GetString(ms.ToArray)
result = result.Replace("!Didalog35452Heuchelheim=", "")
Try
ms.Dispose()
Catch ex As Exception
LOGGER.Error(ex)
End Try
Return result
End Function
End Class

View File

@@ -0,0 +1,184 @@
Imports DigitalData.Modules.Language.Utils
Public Class ClassFinalIndex
Public INDEX_TYPE_STRING = 1
Public INDEX_TYPE_INTEGER = 2
Public INDEX_TYPE_INTEGER64 = 11
Public INDEX_TYPE_FLOAT = 3
Public INDEX_TYPE_BOOLEAN = 4
Public INDEX_TYPE_DATE = 5
Public INDEX_TYPE_VECTOR_INTEGER_64 = 4107
Public INDEX_TYPE_VECTOR_INTEGER = 4098
Public INDEX_TYPE_VECTOR_STRING = 4097
Public INDEX_TYPE_VECTOR_BOOLEAN = 4100
Public INDEX_TYPE_VECTOR_DATE = 4101
Public INDEX_TYPE_VECTOR_CURRENCY = 4104
Public INDEX_TYPE_VECTOR_FLOAT = 4099
Public INDEX_TYPE_VECTOR_DATETIME = 4103
Public Const PREFIX_VECTOR = "[%VKT"
Public LIST_VECTOR_INDICIES As New List(Of Integer) From {
INDEX_TYPE_VECTOR_INTEGER_64,
INDEX_TYPE_VECTOR_INTEGER,
INDEX_TYPE_VECTOR_STRING,
INDEX_TYPE_VECTOR_BOOLEAN,
INDEX_TYPE_VECTOR_DATE,
INDEX_TYPE_VECTOR_CURRENCY,
INDEX_TYPE_VECTOR_FLOAT,
INDEX_TYPE_VECTOR_DATETIME
}
Public Function init()
If IDB_ACTIVE = True Then
INDEX_TYPE_STRING = 1
INDEX_TYPE_INTEGER = 2
INDEX_TYPE_FLOAT = 3
INDEX_TYPE_BOOLEAN = 2
INDEX_TYPE_DATE = 5
INDEX_TYPE_VECTOR_INTEGER_64 = 9
INDEX_TYPE_VECTOR_INTEGER = 9
INDEX_TYPE_VECTOR_STRING = 8
INDEX_TYPE_VECTOR_BOOLEAN = 9
INDEX_TYPE_VECTOR_DATE = 8
INDEX_TYPE_VECTOR_CURRENCY = 8
INDEX_TYPE_VECTOR_FLOAT = 8
INDEX_TYPE_VECTOR_DATETIME = 8
LIST_VECTOR_INDICIES = New List(Of Integer) From {
INDEX_TYPE_VECTOR_INTEGER_64,
INDEX_TYPE_VECTOR_INTEGER,
INDEX_TYPE_VECTOR_STRING,
INDEX_TYPE_VECTOR_BOOLEAN,
INDEX_TYPE_VECTOR_DATE,
INDEX_TYPE_VECTOR_CURRENCY,
INDEX_TYPE_VECTOR_FLOAT,
INDEX_TYPE_VECTOR_DATETIME}
Else
INDEX_TYPE_STRING = 1
INDEX_TYPE_INTEGER = 2
INDEX_TYPE_FLOAT = 3
INDEX_TYPE_BOOLEAN = 4
INDEX_TYPE_DATE = 5
INDEX_TYPE_VECTOR_INTEGER_64 = 4107
INDEX_TYPE_VECTOR_INTEGER = 4098
INDEX_TYPE_VECTOR_STRING = 4097
INDEX_TYPE_VECTOR_BOOLEAN = 4100
INDEX_TYPE_VECTOR_DATE = 4101
INDEX_TYPE_VECTOR_CURRENCY = 4104
INDEX_TYPE_VECTOR_FLOAT = 4099
INDEX_TYPE_VECTOR_DATETIME = 4103
End If
End Function
Public Function GetValue(obj As Object, indexName As String, indcies As List(Of String), types As List(Of Integer), isVector As Boolean)
Try
Dim props As FinalIndexProperties = obj
Dim i As Integer = indcies.IndexOf(indexName)
Dim type As Integer = types.Item(i)
Dim value As String = ""
If type = INDEX_TYPE_STRING Or type = INDEX_TYPE_VECTOR_STRING Then
value = props.StringValue
ElseIf type = INDEX_TYPE_INTEGER Or type = INDEX_TYPE_VECTOR_INTEGER_64 Then
value = props.IntegerValue.ToString
ElseIf type = INDEX_TYPE_FLOAT Then
value = props.FloatValue.ToString
ElseIf type = INDEX_TYPE_BOOLEAN Or type = INDEX_TYPE_VECTOR_BOOLEAN Then
value = IIf(props.BoolValue, "1", "0")
End If
Return value
Catch ex As Exception
LOGGER.Error(ex)
MsgBox($"Error in GetValue: {ex.Message}", MsgBoxStyle.Critical)
End Try
End Function
Public Function SetValue(value As String, obj As Object, indexName As String, indcies As List(Of String), types As List(Of Integer))
Try
Dim props As FinalIndexProperties = obj
Dim i As Integer = indcies.IndexOf(indexName)
If Not indcies.Contains(indexName) Then
Return obj
End If
Dim type As Integer = types.Item(i)
Dim isVector = value.StartsWith(PREFIX_VECTOR)
If isVector Then
value = value.Replace(PREFIX_VECTOR, String.Empty)
End If
props.VectorIndex = isVector
If type = INDEX_TYPE_STRING Or type = INDEX_TYPE_VECTOR_STRING Then
value = NotNull(value, "")
props.StringValue = value
ElseIf type = INDEX_TYPE_INTEGER Or type = INDEX_TYPE_INTEGER64 Or type = INDEX_TYPE_VECTOR_INTEGER_64 Then
Try
value = NotNull(Of Integer)(value, 0)
If value = String.Empty Then
props.IntegerValue = 0
Else
props.IntegerValue = Integer.Parse(value)
End If
Catch ex As Exception
If value = "SQL-Command" Then
Return props
Else
props.IntegerValue = 99
End If
End Try
ElseIf type = INDEX_TYPE_FLOAT Then
If value = "SQL-Command" Then
props.FloatValue = 0
Else
value = NotNull(Of Double)(value, 0)
If value = String.Empty Then
props.FloatValue = 0
Else
props.FloatValue = Double.Parse(value)
End If
End If
ElseIf type = INDEX_TYPE_BOOLEAN Or type = INDEX_TYPE_VECTOR_BOOLEAN Then
value = NotNull(value, "False")
If value = "1" Or value.ToLower = "true" Then
props.BoolValue = True
Else
props.BoolValue = False
End If
End If
Return props
Catch ex As Exception
LOGGER.Error(ex)
MsgBox($"Error in ClassFinalIndexSetValue: {ex.Message}", MsgBoxStyle.Critical)
End Try
End Function
Public Function IsVectorIndex(type As Integer) As Boolean
Return LIST_VECTOR_INDICIES.Contains(type)
End Function
Public Function GetIndexType(indexName As String, indicies As List(Of String), types As List(Of Integer)) As Integer
Try
Dim position As Integer = indicies.IndexOf(indexName)
Dim type As Integer = types.Item(position)
Return type
Catch ex As Exception
MsgBox(ex.Message & vbNewLine & $"Please check whether attribute {indexName} exists in AtributesList!", MsgBoxStyle.Critical)
Return Nothing
End Try
End Function
End Class

View File

@@ -0,0 +1,234 @@
Imports DigitalData.Modules.EDMI.API.Constants
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Public Class ClassFinalizeDoc
Public Shared Function Write_Final_Metadata(WMObject As WINDREAMLib.WMObject)
Try
Dim _error As Boolean = False
If CURRENT_DT_FINAL_INDEXING Is Nothing Then
Dim oSQL = String.Format("select * from TBPM_PROFILE_FINAL_INDEXING where PROFIL_ID = {0}", CURRENT_ProfilGUID)
'CURRENT_DT_FINAL_INDEXING = DatabaseFallback.GetDatatableECM(oSQL) ', "Write_Final_Metadata")
CURRENT_DT_FINAL_INDEXING = DatabaseFallback.GetDatatable("TBPM_PROFILE_FINAL_INDEXING", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"PROFIL_ID = {CURRENT_ProfilGUID}"
})
End If
If CURRENT_DT_FINAL_INDEXING.Rows.Count > 0 Then
'Jetzt finale Indexe setzen
LOGGER.Debug("working final indices for doc: " & WMObject.aName)
For Each dr As DataRow In CURRENT_DT_FINAL_INDEXING.Rows
Dim value As String = dr.Item("VALUE").ToString
Dim INDEXNAME = dr.Item("INDEXNAME").ToString
Dim oContinueOnIndifferentState As Boolean = CBool(dr.Item("CONTINUE_INDETERMINED"))
If value.ToUpper = "SQL-Command".ToUpper Then '###### Indexierung mit variablen SQL ###
LOGGER.Debug("indexing with dynamic sql...")
'Dim SQL_COMMAND = dr.Item("SQL_COMMAND")
'' Regulären Ausdruck zum Auslesen der Indexe definieren
'Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
'' einen Regulären Ausdruck laden
'Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
'' die Vorkommen im SQL-String auslesen
'Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(SQL_COMMAND)
''####
'' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
'For Each element As System.Text.RegularExpressions.Match In elemente
' Try
' If LogErrorsOnly = False Then LOGGER.Info(" element in RegeX: " & element.Value)
' Dim WDINDEXNAME = element.Value.Substring(2, element.Value.Length - 3)
' Dim wertWD = WMObject.GetVariableValue(WDINDEXNAME)
' If Not IsNothing(wertWD) Then
' SQL_COMMAND = SQL_COMMAND.ToString.Replace(element.Value, wertWD)
' Else
' LOGGER.Info(">>Attention: indexvalue is invalid")
' End If
' Catch ex As Exception
' LOGGER.Info("Unexpected Error in Checking control values for Variable SQL Result - ERROR: " & ex.Message)
' End Try
'Next
Dim sql_Statement = clsPatterns.ReplaceUserValues(dr.Item("SQL_COMMAND"))
sql_Statement = clsPatterns.ReplaceInternalValues(sql_Statement)
sql_Statement = clsPatterns.ReplaceWindreamIndicies(sql_Statement, WMObject, True)
LOGGER.Debug("sql after ReplaceAllValues: " & sql_Statement)
Dim oDynamic_value = DatabaseFallback.GetScalarValueECM(sql_Statement) ', CONNECTION_STRING_ECM, "Write_Final_Metadata/dynamic_value")
If Not IsNothing(oDynamic_value) Then
value = oDynamic_value
Else
Continue For
End If
Else
If value.StartsWith("v") Then
Select Case dr.Item("VALUE").ToString
Case "vDate"
value = Now.ToShortDateString
Case "vUserName"
value = USER_USERNAME
Case Else
value = dr.Item("VALUE")
End Select
End If
End If
Dim result() As String
ReDim Preserve result(0)
result(0) = value
Dim oIndexType = WINDREAM.GetTypeOfIndex(INDEXNAME)
LOGGER.Debug($"oIndexType {oIndexType.ToString}")
If oIndexType > 4000 And oIndexType < 5000 Then
'Hier muss nun separat als Vektorfeld indexiert werden
If Indexiere_VektorfeldPM(value, INDEXNAME, WMObject) = True Then
LOGGER.Debug("FINALER INDEX '" & INDEXNAME.Replace("[%VKT", "") & "' WURDE ERFOLGREICH GESETZT")
Else
MsgBox("Unexpected error in finalindexing vektorvalue - check the log", MsgBoxStyle.Critical)
_error = True
End If
Else
LOGGER.Debug("now indexing..")
If Indexiere_File(INDEXNAME, result, WMObject) = True Then
LOGGER.Debug("FINALER INDEX '" & INDEXNAME & "' WURDE ERFOLGREICH GESETZT")
LOGGER.Debug("")
'Nun das Logging
If CURRENT_PROFILE_LOG_INDEX <> "" Then
Dim logstr = Return_LOGString(value, "DDFINALINDEX", INDEXNAME)
Indexiere_VektorfeldPM(logstr, CURRENT_PROFILE_LOG_INDEX, WMObject)
End If
Else
MsgBox("Unexpected error in final index - check the log", MsgBoxStyle.Critical)
_error = True
End If
End If
If _error = True Then
Exit For
End If
Next
If _error = True Then
Return False
Else
Return True
End If
Else
Return True
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("unexpected error in Write_Final_Metadata: " & ex.Message.ToString, True)
Return False
End Try
End Function
Private Shared Function Indexiere_File(idxxname As String, idxvalue As Object, WMObject As WINDREAMLib.WMObject)
Dim File_indexiert As Boolean = False
' Try
'Die Arrays vorbereiten
Dim arrIndex() As String = Nothing
Dim arrValue() As String = Nothing
arrIndex = Nothing
arrValue = Nothing
'Den Indexnamen übergeben
ReDim Preserve arrIndex(0)
arrIndex(0) = idxxname
'Das Array der Idnexwerte überprüfen
If idxvalue Is Nothing = False Then
If idxvalue.Length() > 1 Then
LOGGER.Debug("Indexing Index '" & idxxname & "' with Arrayvalue")
Dim anzahl As Integer = 0
For Each indexvalue As String In idxvalue
ReDim Preserve arrValue(anzahl)
arrValue(anzahl) = indexvalue
anzahl += 1
Next
Else
LOGGER.Debug("Indexing Index '" & idxxname & "' with value '" & idxvalue(0) & "'")
ReDim Preserve arrValue(0)
arrValue(0) = idxvalue(0).ToString
End If
'Dim _windreamPM As New ClassPMWindream
'Jetzt das eigentliche Indexieren der Datei
File_indexiert = WINDREAM.RunIndexing(WMObject, arrIndex, arrValue)
Return File_indexiert
End If
'Catch ex As Exception
' LOGGER.Info("Unvorhergesehener Fehler bei Indexiere_File: " & ex.Message.ToString, True)
' Return Err()
'End Try
End Function
Private Shared Function Indexiere_VektorfeldPM(input As String, NameVectorfield As String, WMObject As WINDREAMLib.WMObject)
Dim _success As Boolean = True
Dim Anzahl As Integer = 0
Dim myInputArr As String()
'Jeden Wert des Vektorfeldes durchlaufen
Dim wertWD = WMObject.GetVariableValue(NameVectorfield)
If wertWD Is Nothing = False Then
'Es wird gegen ein Vektorfeld nachindexiert
If wertWD.GetType.ToString.Contains("System.Object") Then
'es handelt sich um ein Vektorfeld - Zuweisen der Indexwerte des Vektorfeldes zu Array
For Each obj As Object In wertWD
If obj Is Nothing = False Then
'Das Array anpassen
ReDim Preserve myInputArr(Anzahl)
'Den Wert im Array speichern
myInputArr(Anzahl) = obj.ToString
Anzahl += 1
End If
Next
End If
'Das Array anpassen
ReDim Preserve myInputArr(Anzahl)
'und den letzten Wert übergeben
myInputArr(Anzahl) = input
Else
'Das Array anpassen
ReDim Preserve myInputArr(Anzahl)
'und den letzten Wert übergeben
myInputArr(Anzahl) = input
End If
If myInputArr.Length > 0 Then
'Jetzt die Datei indexieren
If Indexiere_File(NameVectorfield, myInputArr, WMObject) = False Then
_success = False
'errmessage = "Fehler beim Indexieren Vektorfeld '" & NameVKTIndex & "' - ERROR: " & idxerr_message
End If
End If
Return _success
End Function
Private Shared Function Return_PM_VEKTOR(input As String, VKTBezeichner As String)
Dim PM_String As String
Try
Dim Bezeichner As String = VKTBezeichner.Replace("[%VKT", "")
PM_String = "DD-PM#" & Bezeichner & "#" & input & "#" & USER_USERNAME & "#" & Now.ToString
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Fehler in Return_PM_VEKTOR: " & ex.Message, True)
PM_String = "DD-PM ERROR: " & ex.Message
End Try
Return PM_String
End Function
Private Shared Function Return_LOGString(input As String, old As String, indexname As String)
Dim PM_String As String
Try
If old = "DDFINALINDEX" Then
PM_String = "DD-PMlog-FINAL" & "#" & indexname & "#" & input & "#" & USER_USERNAME & "#" & Now.ToString
Else
PM_String = "DD-PMlog-CHG" & "#" & indexname & "#" & "NEW: '" & input & "' - OLD: '" & old & "'" & "#" & USER_USERNAME & "#" & Now.ToString
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Fehler in Return_LOGString: " & ex.Message, True)
PM_String = "DD-PM ERROR: " & ex.Message
End Try
Return PM_String
End Function
End Class

View File

@@ -0,0 +1,252 @@
Public Class ClassIDBData
Public DTVWIDB_BE_ATTRIBUTE As DataTable
''' <summary>
''' Gets all indices by BusinessEntity.
''' </summary>
''' <param name="BusinessEntity">Title of Business Entity</param>
''' <returns>Array with all Indices</returns>
''' <remarks></remarks>
'''
Public Function Init()
Dim oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE WHERE SYS_ATTRIBUTE = 0 ORDER BY ATTR_TITLE"
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
If IsNothing(DTVWIDB_BE_ATTRIBUTE) Then
oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE ORDER BY ATTR_TITLE "
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
End If
End Function
Public IDBSystemIndices As List(Of String)
Public Function GetIndicesByBE(ByVal BusinessEntity As String) As String()
Try
Dim aNames(4) As String
aNames(0) = "ObjectID"
aNames(1) = "IDBCreatedWhen"
aNames(2) = "IDBCreatedWho"
aNames(3) = "IDBChangedWhen"
aNames(4) = "IDBChangedWho"
IDBSystemIndices = aNames.ToList
' Array für Indizes vorbereiten
Dim aIndexNames(DTVWIDB_BE_ATTRIBUTE.Rows.Count + 4) As String
Dim oCount As Integer = 0
aIndexNames(oCount) = "ObjectID"
oCount += 1
aIndexNames(oCount) = "IDBCreatedWhen"
oCount += 1
aIndexNames(oCount) = "IDBCreatedWho"
oCount += 1
aIndexNames(oCount) = "IDBChangedWhen"
oCount += 1
aIndexNames(oCount) = "IDBChangedWho"
For Each oRow As DataRow In DTVWIDB_BE_ATTRIBUTE.Rows
oCount += 1
aIndexNames(oCount) = oRow.Item("ATTR_TITLE")
Next
' Indexarray sortiert zurückgeben
Array.Sort(aIndexNames)
' Indexarray zurückgeben
Return aIndexNames
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error getting the IDB Indicies")
Return Nothing
End Try
End Function
Public Function GetTypeOfIndex(ByVal indexname As String) As Integer
Try
For Each oRow As DataRow In DTVWIDB_BE_ATTRIBUTE.Rows
If oRow.Item("ATTR_TITLE") = indexname Then
Try
Dim oType = oRow.Item("TYP_ID")
Return oType
Catch ex As Exception
Try
Dim oType = oRow.Item("TYP_ID")
Return oType
Catch ex1 As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Try
End If
Next
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
Public Function GetVariableValue(oAttributeName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object
Try
Dim oSingleAttribute As Boolean = True
Select Case oIDBTyp
Case 8
oSingleAttribute = False
Case 9
oSingleAttribute = False
End Select
Dim oAttributeValue
LOGGER.Debug($"IDBData - GetVariableValue - oSingleAttribute [{oSingleAttribute.ToString}] - FromIDB [{FromIDB.ToString}]")
If oSingleAttribute = True And IDB_DT_DOC_DATA.Rows.Count = 1 And FromIDB = False Then
Try
If oAttributeName = "IDBCreatedWhen" Then
oAttributeName = "ADDED_WHEN"
ElseIf oAttributeName = "IDBCreatedWho" Then
oAttributeName = "ADDED_WHO"
ElseIf oAttributeName = "IDBChangedWhen" Then
oAttributeName = "CHANGED_WHEN"
ElseIf oAttributeName = "IDBChangedWho" Then
oAttributeName = "CHANGED_WHO"
End If
LOGGER.Debug($"IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1")
oAttributeValue = IDB_DT_DOC_DATA.Rows(0).Item(oAttributeName)
Catch ex As Exception
LOGGER.Debug($"Error getting Attribute from IDB_DT_DOC_DATA: {ex.Message}")
End Try
End If
If Not IsNothing(oAttributeValue) Then
LOGGER.Debug($"IDBData - GetVariableValue - Returning value: [{oAttributeValue}]")
Return oAttributeValue
Else
LOGGER.Debug($"oAttributeValue for Attribute [{oAttributeName}] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE ")
End If
Dim oFNSQL = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))"
LOGGER.Debug($"GetVariableValue: {oFNSQL}")
oAttributeValue = DatabaseFallback.GetDatatableIDB(oFNSQL)
Dim odt As DataTable = oAttributeValue
If odt.Rows.Count = 1 Then
oAttributeValue = odt.Rows(0).Item(0)
End If
Return oAttributeValue
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
Public Function Delete_Term_Object_From_Metadata(oAttributeName As String, oTerm2Delete As String) As Object
Try
Dim oAttributeValue
Dim oID_IS_FOREIGN As Integer
oID_IS_FOREIGN = 0
If IDB_USES_WMFILESTORE Then
oID_IS_FOREIGN = 1
End If
Dim oDELSQL = $"EXEC PRIDB_DELETE_TERM_OBJECT_METADATA {CURRENT_DOC_ID},'{oAttributeName}','{oTerm2Delete}','{USER_USERNAME}','{USER_LANGUAGE}',{oID_IS_FOREIGN}"
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
Public Function Delete_AttributeData(pIDB_OBJID As Int64, pAttributeName As String) As Object
Try
Dim oDELSQL = $"EXEC PRIDB_DELETE_ATTRIBUTE_DATA {pIDB_OBJID},'{pAttributeName}','{USER_USERNAME}'"
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
Public Function SetVariableValue(oAttributeName As String, oNewValue As Object, Optional CheckDeleted As Boolean = False, Optional oIDBTyp As Integer = 0)
Try
Dim omytype = oNewValue.GetType.ToString
If omytype = "System.Data.DataTable" Then
Dim oDTMyNewValues As DataTable = oNewValue
Dim oOldAttributeResult
Dim oTypeOldResult
If CheckDeleted = True Then
oOldAttributeResult = GetVariableValue(oAttributeName, oIDBTyp)
oTypeOldResult = oOldAttributeResult.GetType.ToString
If oTypeOldResult = "System.Data.DataTable" Then
Dim myOldValues As DataTable = oOldAttributeResult
If myOldValues.Rows.Count > 1 Then
'now Checking whether the old row still remains in Vector? If not it will be deleted as it cannot be replaced in multivalues
For Each oOldValueRow As DataRow In myOldValues.Rows
Dim oExists As Boolean = False
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
Dim oInfo1 = $"Checking oldValue[{oOldValueRow.Item(0)}] vs NewValue [{oNewValueRow.Item(1)}]"
If oNewValueRow.Item(1).ToString.ToUpper = oOldValueRow.Item(0).ToString.ToUpper Then
oExists = True
Exit For
End If
Next
If oExists = False Then
Dim oInfo = $"Value [{oOldValueRow.Item(0)}] no longer existing in Vector-Attribute [{oAttributeName}] - will be deleted!"
LOGGER.Debug(oInfo)
'SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo)
Delete_Term_Object_From_Metadata(oAttributeName, oOldValueRow.Item(0))
End If
Next
End If
Else
'### Old Value is a single value ###
If oDTMyNewValues.Rows.Count > 1 Then
'### there is more than one new value ###
Dim oExists As Boolean
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
oExists = False
Dim oInfo1 = $"Checking oldValue[{oOldAttributeResult}] vs NewValue [{oNewValueRow.Item(1)}]"
If oNewValueRow.Item(1).ToString.ToUpper = oOldAttributeResult.ToString.ToUpper Then
oExists = True
End If
Next
If oExists = False Then
Dim oInfo2 = $"Value [{oOldAttributeResult}] no longer existing in Vector-Attribute [{oAttributeName}] - will be deleted!"
LOGGER.Debug(oInfo2)
'SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo2)
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult)
End If
Else
'### there is only ONE new value ###
If oDTMyNewValues.Rows(0).Item(1) <> oOldAttributeResult Then
Dim oInfo = $"Value [{oOldAttributeResult}] of Attribute [{oAttributeName}] obviously was updated during runtime - will be deleted!"
LOGGER.Debug(oInfo)
SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo)
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult)
Else
LOGGER.Debug($"Attributvalue of [{oAttributeName}] did not change!")
End If
End If
End If
End If
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
Dim oSuccess As Boolean = False
Dim oFNSQL = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oNewValueRow.Item(1).ToString}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT"
oSuccess = DatabaseFallback.ExecuteNonQueryIDB(oFNSQL)
If oSuccess = False Then
Return False
End If
Next
Return True
Else
Dim oFNSQL = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oNewValue}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT"
Return DatabaseFallback.ExecuteNonQueryIDB(oFNSQL)
End If
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End Function
End Class

View File

@@ -0,0 +1,26 @@
Imports System.ComponentModel
Imports System.Drawing.Design
Imports DD_ProcessManager.InputProperties
Public Class ClassImageSelector
Inherits UITypeEditor
Public Overrides Function GetEditStyle(context As ITypeDescriptorContext) As UITypeEditorEditStyle
Return UITypeEditorEditStyle.Modal
End Function
Public Overrides Function EditValue(context As ITypeDescriptorContext, provider As IServiceProvider, value As Object) As Object
Dim oDialog = New OpenFileDialog
If oDialog.ShowDialog() = DialogResult.OK Then
If oDialog.FileName = "" Then
value = "NONE"
Else
value = oDialog.FileName
End If
Else
value = "No selection"
End If
Return New ImageValue(value)
End Function
End Class

View File

@@ -0,0 +1,24 @@
Imports System.ComponentModel
Imports System.Drawing.Design
''' <summary>
''' Hilfsklasse, die für das anzeigen und abspeichern von SQL-Befehlen verwendet wird
''' </summary>
<Editor(GetType(ClassImageSelector), GetType(UITypeEditor))>
<TypeConverter(GetType(ClassImageSelector))>
Public Class ImageValue
Public Property Value As String
Public Sub New()
Me.Value = ""
End Sub
Public Sub New(value As String)
Me.Value = value
End Sub
Public Overrides Function ToString() As String
If Value = String.Empty Then
Return String.Empty
Else
Return "(Image)"
End If
End Function
End Class

View File

@@ -0,0 +1,31 @@
Imports System.ComponentModel
Imports System.Globalization
Public Class IndexListConverter
Inherits TypeConverter
Public Overrides Function GetStandardValuesSupported(context As ITypeDescriptorContext) As Boolean
Return True
End Function
Public Overrides Function GetStandardValues(context As ITypeDescriptorContext) As StandardValuesCollection
Dim indexList = New List(Of String)
If TypeOf (context.Instance) Is FinalIndexProperties Then
indexList = DirectCast(context.Instance, FinalIndexProperties).Indicies
ElseIf TypeOf (context.Instance) Is InputProperties Then
indexList = DirectCast(context.Instance, InputProperties).Indicies
End If
Dim values As New StandardValuesCollection(indexList)
Return values
End Function
Public Overrides Function ConvertTo(context As ITypeDescriptorContext, culture As CultureInfo, value As Object, destinationType As Type) As Object
If IsNothing(value) Then
Return ""
Else
Return value.ToString()
End If
End Function
End Class

565
app/TaskFlow/ClassInit.vb Normal file
View File

@@ -0,0 +1,565 @@
Imports DLLLicenseManager
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.EDMI.API.Constants
Imports DigitalData.Modules.Database
Public Class ClassInit
Public _lizenzManager As ClassLicenseManager
'Private DataASorDB As ClassDataASorDB
<STAThread()>
Public Sub InitLogger()
Dim oConfigPrefix As String = My.Settings.UserConfig_Prefix
Dim oLocalUserAppDataPath As String = Application.LocalUserAppDataPath
If oConfigPrefix.Length > 0 Then
oLocalUserAppDataPath = IO.Path.Combine(oLocalUserAppDataPath, oConfigPrefix)
End If
LOGCONFIG = New LogConfig(LogConfig.PathType.CustomPath,
oLocalUserAppDataPath & "\Log",
Nothing,
My.Application.Info.CompanyName,
My.Application.Info.ProductName)
LOGGER = LOGCONFIG.GetLogger("ProcessManager")
LOGGER.Info("## ProcessManager started - {0}", Now)
Try
Dim directory As New IO.DirectoryInfo(Application.LocalUserAppDataPath & "\Log")
For Each file As IO.FileInfo In directory.GetFiles
If (Now - file.CreationTime).Days > 29 Then
file.Delete()
Else
Exit For
End If
Next
Catch ex As Exception
End Try
End Sub
<STAThread()>
Public Sub InitUserConfig()
Try
Dim oUserAppDataPath As String = Application.UserAppDataPath
Dim oLegacyAppDataPath As String = Application.UserAppDataPath
Dim oCommonAppDataPath = Application.CommonAppDataPath
Dim oStartupPath = Application.StartupPath
Dim oConfigPrefix As String = My.Settings.UserConfig_Prefix
' If prefix is configured, use it to create a subfolder in app data and migrate existing data
If oConfigPrefix.Length > 0 Then
oUserAppDataPath = IO.Path.Combine(Application.UserAppDataPath, oConfigPrefix)
Dim oConfigUtils As New ConfigUtils(LOGCONFIG)
If oConfigUtils.TestMigrationNeeded(oUserAppDataPath) Then
LOGCONFIG.Debug = True
oConfigUtils.MigrateConfig(oLegacyAppDataPath, oUserAppDataPath)
LOGCONFIG.Debug = False
End If
End If
' If AppConfig from Startup Path should be forced, rewrite the common app data path
If My.Settings.UseAppConfigConString = True Then
' UserAppDataPath = StartupPath
oCommonAppDataPath = oStartupPath
End If
CONFIG = New ConfigManager(Of ClassConfig)(LOGCONFIG, oUserAppDataPath, oCommonAppDataPath, oStartupPath)
LOGGER.Info("Config loaded")
Try
If CONFIG.Config.ConnectionStringTest <> String.Empty And CONFIG.Config.TestMode = True Then
LOGGER.Debug("Test Connection String loaded")
CONNECTION_STRING_ECM = DecryptConnectionString(CONFIG.Config.ConnectionStringTest)
Else
LOGGER.Debug("Connection String loaded")
CONNECTION_STRING_ECM = DecryptConnectionString(CONFIG.Config.ConnectionString)
End If
Catch ex As Exception
LOGGER.Error(ex, "Unexpected Error Getting CONFIG.TestMode or CONFIG.ConnectionStringTest")
End Try
Try
If CONFIG.Config.EDMIAppServer <> String.Empty Then
Try
LOGGER.Info($"Configuration EDMIAppServer [{CONFIG.Config.EDMIAppServer}] will be used...")
_Client = New Client(LOGCONFIG, CONFIG.Config.EDMIAppServer)
If Not IsNothing(_Client) Then
If _Client.Connect() Then
EDMIAppServerActive = True
EDMIService.Client = _Client
EDMIService.Address = CONFIG.Config.EDMIAppServer
LOGGER.Info($"EDMIAppServer [{CONFIG.Config.EDMIAppServer}] is active!")
Else
LOGGER.Warn($"#### !!! Could not Connect to APPServer [{CONFIG.Config.EDMIAppServer}]!!! ###")
End If
End If
Catch ex As Exception
LOGGER.Warn($"Could not initialize the AppServer: {ex.Message}")
End Try
Else
LOGGER.Debug("No EDMI Server Address. (String.empty).")
End If
Catch ex As Exception
LOGGER.Error(ex, "Unexpected Error Getting CONFIG.EDMIAppServer")
End Try
INDEX_DMS_ERSTELLT = CONFIG.Config.IndexDmsErstellt
INDEX_DMS_ERSTELLT_ZEIT = CONFIG.Config.IndexDmsErstelltZeit
USER_CONFIG_DEBUG = CONFIG.Config.DEBUG
If USER_CONFIG_DEBUG = True Then
DEBUG = True
LOGCONFIG.Debug = True
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
Private Function DecryptConnectionString(EncryptedConnectionString As String) As String
Dim oBuilder As New SqlClient.SqlConnectionStringBuilder With {
.ConnectionString = EncryptedConnectionString
}
If oBuilder.ConnectionString.Contains("Password=") Then
Dim oPlaintextPassword As String
Dim oDecryptor As New ClassEncryption("!35452didalog=")
Try
oPlaintextPassword = oDecryptor.DecryptData(oBuilder.Password)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Debug("Password {0} could not be decrypted. Assuming plaintext password.")
oPlaintextPassword = oBuilder.Password
End Try
Return EncryptedConnectionString.Replace(oBuilder.Password, oPlaintextPassword)
Else
Return EncryptedConnectionString
End If
End Function
<STAThread()>
Public Function InitDatabase(GetCSFromAppServ As Boolean)
If GetCSFromAppServ = True Then
LOGGER.Info("Getting DatabaseInfo from ApplicationServer...")
End If
Dim Database_ECM As MSSQLServer = Nothing
Dim Database_IDB As MSSQLServer = Nothing
If GetCSFromAppServ = False Then
If CONNECTION_STRING_ECM = String.Empty Then
MsgBox("No Databaseconnection configured. (First Start or Appdata not accessible)" & vbNewLine & "Basic-Config will be loaded.", MsgBoxStyle.Information)
ERROR_STATE = "NO DB-CONNECTION"
frmKonfig.ShowDialog()
End If
End If
Dim oCSECM As String
If GetCSFromAppServ = False Then
oCSECM = CONNECTION_STRING_ECM
Else
oCSECM = EDMIService.Client.ClientConfig.ConnectionStringECM
CONNECTION_STRING_ECM = oCSECM
End If
Database_ECM = New MSSQLServer(LOGCONFIG, oCSECM)
If Database_ECM.DBInitialized = True Then
dbECMInitialized = True
DatabaseECM = Database_ECM
Else
dbECMInitialized = False
End If
If dbECMInitialized = False Then
ERROR_STATE = "FAILED DBCONNECTION"
MsgBox("Error in InitDatabase. (Connection DD_ECM failed) More information in the logfile.", MsgBoxStyle.Critical)
Return False
End If
If GetCSFromAppServ = True Or (GetCSFromAppServ = False And CONNECTION_STRING_IDB <> String.Empty) Then
Dim oCSIDB As String
If GetCSFromAppServ = False Then
oCSIDB = CONNECTION_STRING_IDB
Else
oCSIDB = EDMIService.Client.ClientConfig.ConnectionStringIDB
End If
Database_IDB = New MSSQLServer(LOGCONFIG, oCSIDB)
If Database_IDB.DBInitialized = True Then
CONNECTION_STRING_IDB = oCSIDB
DatabaseIDB = Database_IDB
dbIDBInitialized = True
IDB_ACTIVE = True
LOGGER.Info("IDB is active via Config")
End If
End If
' We initialize the Class in anycase.
' If there is no client, it will fall back to the db by itself
DatabaseFallback = New DatabaseWithFallback(LOGCONFIG, _Client, Database_ECM, Database_IDB)
If dbECMInitialized = True And CONNECTION_STRING_IDB = String.Empty Then
Return True
ElseIf dbECMInitialized = True And CONNECTION_STRING_IDB <> String.Empty Then
If dbIDBInitialized = True Then
Return True
Else
MsgBox("Error in InitDatabase. (Connection IDB failed) More information in the logfile.", MsgBoxStyle.Critical)
Return False
End If
End If
End Function
<STAThread()>
Sub Refresh_Licence()
Dim oStopWatch As New RefreshHelper.SW("Refresh_Licence")
Try
Me._lizenzManager = New ClassLicenseManager("#DigitalData35452!#", "")
Dim lic As String = BASEDATA_DT_CONFIG.Rows(0).Item("LIZENZEN")
Dim licString = Me._lizenzManager.DecodeLicenseKey(lic)
Dim split() = licString.ToString.Split("#")
If lic <> "" Then
LICENSE_COUNT = split(0)
Else
LICENSE_COUNT = 0
End If
If split.Length >= 2 Then
LICENSE_VALID = True
End If
Dim oLICDATE = CDate(split(1))
If oLICDATE < CDate(Now) Then
MsgBox("Your license has expired!" & vbNewLine & "Last valid date: " & split(1) & vbNewLine & "Please contact Your sysadmin", MsgBoxStyle.Exclamation)
LICENSE_EXPIRED = True
LICENSE_COUNT = 0
ElseIf LICENSE_VALID = False Then
MsgBox("Your license is invalid!" & vbNewLine & "Please contact Your sysadmin", MsgBoxStyle.Exclamation)
LICENSE_EXPIRED = True
LICENSE_COUNT = 0
End If
LOGGER.Debug("license initialized....")
LICENSE_PROFILES = split(2)
Try
Dim oMod = split(3)
If Not IsNothing(split(3)) Then
LIC_MODULES = split(3)
End If
Catch ex As Exception
End Try
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Unexpected error in Refresh license: " & ex.Message, True)
MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Fehler bei Licensemanager:")
End Try
oStopWatch.Done()
End Sub
<STAThread()>
Public Sub InitUserLogin(Optional pUSRNAME As String = "")
Dim oStopWatch As New RefreshHelper.SW("InitUserLogin")
Dim oSQL As String
Try
If pUSRNAME <> String.Empty Then
LOGGER.Info($"InitUserLogin with GhostUSer [{pUSRNAME}]")
USER_USERNAME = pUSRNAME
Else
USER_USERNAME = Environment.UserName
End If
Try
Dim oSQLSW As New RefreshHelper.SW("VWDD_USER_CLIENT")
oSQL = $"SELECT * FROM VWDD_USER_CLIENT WHERE USERNAME = '{USER_USERNAME}'"
DT_CLIENT_USER = DatabaseFallback.GetDatatable("VWDD_USER_CLIENT", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"USERNAME = '{USER_USERNAME}'"
})
'DT_CLIENT_USER = DataASorDB.GetDatatable("DD_ECM", oSQL, "VWDD_USER_CLIENT", $"USERNAME like '{USER_USERNAME}'")
oSQLSW.Done()
If DT_CLIENT_USER.Rows.Count > 1 Then
frmClientLogin.ShowDialog()
ElseIf DT_CLIENT_USER.Rows.Count = 1 Then
CLIENT_SELECTED = DT_CLIENT_USER.Rows(0).Item("CLIENT_ID")
Else
ERROR_STATE = "NO CLIENT"
Dim oDT As DataTable = ClassAllgemeineFunktionen.GUI_LANGUAGE_INFO("No Client relation")
MsgBox(oDT.Rows(0).Item("STRING1") & vbNewLine & oDT.Rows(0).Item("STRING2") & vbNewLine & vbNewLine & oSQL, MsgBoxStyle.Exclamation)
Exit Sub
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Unexpected error in checking CLIENT: " & ex.Message)
CLIENT_SELECTED = 1
End Try
LOGGER.Debug("Username: " & USER_USERNAME)
Dim oFnct As New RefreshHelper.SW("FNDD_CHECK_USER_MODULE")
oSQL = String.Format("SELECT * FROM [dbo].[FNDD_CHECK_USER_MODULE] ('{0}','PM',{1},'{2}')", USER_USERNAME, CLIENT_SELECTED, My.Settings.SYS_Override_Language)
Dim DT_CHECKUSER_MODULE As DataTable
If My.Settings.SYS_Override_Language <> "" Then
DT_CHECKUSER_MODULE = DatabaseECM.GetDatatable(oSQL)
Else
DT_CHECKUSER_MODULE = DatabaseFallback.GetDatatable("TBDD_USER_MODULE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"USERNAME = '{USER_USERNAME.ToLower}' AND MODULE_SHORT = 'PM'"
})
End If
oFnct.Done()
If DT_CHECKUSER_MODULE.Rows.Count = 0 Then
LOGGER.Info("DT_CHECKUSER_MODULE.Rows.Count = 0", True)
ERROR_STATE = "NO USER"
MsgBox("Sorry - Something went wrong in getting Your rights." & vbNewLine & "Please contact the system administrator!", MsgBoxStyle.Exclamation)
Exit Sub
End If
If DT_CHECKUSER_MODULE.Rows.Count = 1 Then
LOGGER.Info($"Got a CheckUserDefintion for User [{USER_USERNAME}]")
If DT_CHECKUSER_MODULE.Rows(0).Item("USER_ID") <> 0 Then
USER_EXISTS = True
Else
USER_EXISTS = False
End If
USER_ID = DT_CHECKUSER_MODULE.Rows(0).Item("USER_ID")
USER_SURNAME = IIf(IsDBNull(DT_CHECKUSER_MODULE.Rows(0).Item("USER_SURNAME")), "", DT_CHECKUSER_MODULE.Rows(0).Item("USER_SURNAME"))
USER_PRENAME = IIf(IsDBNull(DT_CHECKUSER_MODULE.Rows(0).Item("USER_PRENAME")), "", DT_CHECKUSER_MODULE.Rows(0).Item("USER_PRENAME"))
USER_SHORTNAME = IIf(IsDBNull(DT_CHECKUSER_MODULE.Rows(0).Item("USER_SHORTNAME")), "", DT_CHECKUSER_MODULE.Rows(0).Item("USER_SHORTNAME"))
USER_EMAIL = IIf(IsDBNull(DT_CHECKUSER_MODULE.Rows(0).Item("USER_EMAIL")), "", DT_CHECKUSER_MODULE.Rows(0).Item("USER_EMAIL"))
If My.Settings.SYS_Override_Language <> String.Empty Then
USER_LANGUAGE = My.Settings.SYS_Override_Language
LOGGER.Info("Override Language [{0}] from Config will be used!", USER_LANGUAGE)
Else
USER_LANGUAGE = DT_CHECKUSER_MODULE.Rows(0).Item("USER_LANGUAGE")
End If
USER_IN_MODULE = DT_CHECKUSER_MODULE.Rows(0).Item("MODULE_ACCESS")
USER_IS_ADMIN = DT_CHECKUSER_MODULE.Rows(0).Item("IS_ADMIN")
User.IsAdmin = USER_IS_ADMIN
User.Surname = USER_SURNAME
User.GivenName = USER_PRENAME
User.Email = USER_EMAIL
User.UserName = USER_USERNAME
User.UserId = USER_ID
User.Language = USER_LANGUAGE
LOGGER.Debug("User Info:")
LOGGER.Debug("Language: [{0}]", USER_LANGUAGE)
LOGGER.Debug("Username: [{0}]", USER_USERNAME)
Try
USER_RIGHT_FILE_DELETE = IIf(IsDBNull(DT_CHECKUSER_MODULE.Rows(0).Item("USER_RIGHT_FILE_DEL")), False, DT_CHECKUSER_MODULE.Rows(0).Item("USER_RIGHT_FILE_DEL"))
Catch ex As Exception
LOGGER.Warn("Error in USER_RIGHT_FILE_DELETE: " & ex.Message)
USER_RIGHT_FILE_DELETE = False
End Try
USER_DATE_FORMAT = DT_CHECKUSER_MODULE.Rows(0).Item("USER_DATE_FORMAT")
ClassParamRefresh.Refresh_Params(DT_CHECKUSER_MODULE)
FINALINDICES = New ClassFinalIndex()
FINALINDICES.init()
If IDB_ACTIVE = True Then
IDBData = New ClassIDBData()
End If
Try
USER_RIGHT_VIEW_ONLY = DT_CHECKUSER_MODULE.Rows(0).Item("USER_RIGHT2")
Catch ex As Exception
USER_RIGHT_VIEW_ONLY = False
End Try
Try
USER_RIGHT3 = DT_CHECKUSER_MODULE.Rows(0).Item("USER_RIGHT3")
Catch ex As Exception
USER_RIGHT3 = False
End Try
Try
USER_RIGHT4 = DT_CHECKUSER_MODULE.Rows(0).Item("USER_RIGHT4")
Catch ex As Exception
USER_RIGHT4 = False
End Try
LOGGER.Debug("User exists....")
'Am System anmelden
Refresh_Licence()
'Check_User_Exists_in_PMGroups()
'Dim Culture = CultureInfo.CreateSpecificCulture("en-US")
'' The following line provides localization for the application's user interface.
'Thread.CurrentThread.CurrentUICulture = Culture
'' The following line provides localization for data formats.
'Thread.CurrentThread.CurrentCulture = Culture
'' Set this culture as the default culture for all threads in this application.
'' Note: The following properties are supported in the .NET Framework 4.5+
'CultureInfo.DefaultThreadCurrentCulture = Culture
'CultureInfo.DefaultThreadCurrentUICulture = Culture
If ClassAllgemeineFunktionen.LoginOut("LOGIN") = True Then
USERCOUNT_LOGGED_IN += 1
End If
LOGGER.Debug("Count Users logged in: " & USERCOUNT_LOGGED_IN.ToString)
If LICENSE_COUNT < USERCOUNT_LOGGED_IN And LICENSE_EXPIRED = False Then
MsgBox("Die Anzahl der aktuell angemeldeten User (" & USERCOUNT_LOGGED_IN.ToString & ") überschreitet die Anzahl der aktuellen Lizenzen!" & vbNewLine & "Anzahl der Lizenzen: " & LICENSE_COUNT.ToString & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:")
LOGGER.Info("Die Anzahl der aktuell angemeldeten User (" & USERCOUNT_LOGGED_IN.ToString & ") überschreitet die Anzahl der Lizenzen (" & LICENSE_COUNT & ") für Flow Task!")
If USER_IS_ADMIN = False Then
ClassAllgemeineFunktionen.LoginOut("LOGOUT")
ERROR_STATE = "START INCOMPLETE"
End If
End If
'Alles OK bis hierhin...nun die FolderwatchKonfig laden
LOGGER.Debug("Init Userlogin successfull completed....")
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Unexpected Error in InitUserLogin: " & ex.Message, True)
ERROR_STATE = "START INCOMPLETE"
End Try
oStopWatch.Done()
End Sub
<STAThread()>
Public Sub InitBasics()
Dim oStep As String
Try
'If IsNothing(DataASorDB) Then
' DataASorDB = New ClassDataASorDB
'End If
Dim oStopWatch As New RefreshHelper.SW("InitBasics")
Dim oSql = String.Format("select * from TBPM_KONFIGURATION WHERE GUID = 1")
oStep = "TBPM_KONFIGURATION"
BASEDATA_DT_CONFIG = DatabaseFallback.GetDatatable("TBPM_KONFIGURATION", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
.FilterExpression = $"GUID = 1"
})
WMSUFFIX = BASEDATA_DT_CONFIG.Rows.Item(0).Item("WM_REL_PATH")
WMDRIVE_LETTER = BASEDATA_DT_CONFIG.Rows.Item(0).Item("WM_DRIVE_LETTER")
Settings_LoadBasicConfig()
oStep = "TBDD_CONNECTION"
oSql = "select * from TBDD_CONNECTION WHERE AKTIV = 1"
'BASEDATA_DT_TBDD_CONNECTION = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_CONNECTION", "")
BASEDATA_DT_TBDD_CONNECTION = DatabaseFallback.GetDatatable("TBDD_CONNECTION", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_3RD_PARTY_MODULES"
oSql = "Select * FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1"
Dim oTBDD_3RD_PARTY_MODULES As DataTable
'oTBDD_3RD_PARTY_MODULES = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_3RD_PARTY_MODULES", "")
oTBDD_3RD_PARTY_MODULES = DatabaseFallback.GetDatatable("TBDD_3RD_PARTY_MODULES", New GetDatatableOptions(oSql, DatabaseType.ECM))
For Each oROW As DataRow In oTBDD_3RD_PARTY_MODULES.Rows
If oROW.Item("NAME") = "GDPICTURE" Then
GDPICTURE_LICENSE = oROW.Item("LICENSE")
End If
Next
oStep = "TBDD_SQL_COMMANDS"
oSql = "Select * FROM TBDD_SQL_COMMANDS"
BASEDATA_DT_TBDD_SQL_COMMANDS = DatabaseFallback.GetDatatable("TBDD_SQL_COMMANDS", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_GUI_LANGUAGE_PHRASE"
oSql = $"SELECT * FROM TBDD_GUI_LANGUAGE_PHRASE WHERE MODULE IN ('PM','All Modules')"
'BASEDATA_DT_GUI_LANGUAGE_PHRASES = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_GUI_LANGUAGE_PHRASE", "")
BASEDATA_DT_GUI_LANGUAGE_PHRASES = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE_PHRASE", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBPM_PROFILE_SEARCH"
oSql = "select * from TBPM_PROFILE_SEARCH where TYPE = 'DOC' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
'BASEDATA_DT_PROFILES_SEARCHES_DOC = DataASorDB.GetDatatable("DD_ECM", oSql, "TBPM_PROFILE_SEARCH", "TYPE = 'DOC'", "PROFILE_ID,TAB_INDEX")
BASEDATA_DT_PROFILES_SEARCHES_DOC = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
.FilterExpression = "TYPE = 'DOC'",
.SortByColumn = "PROFILE_ID,TAB_INDEX"
})
DT_FILTERED_PROFILE_SEARCHES_DOC = BASEDATA_DT_PROFILES_SEARCHES_DOC.Clone()
oStep = "TBPM_MAIN_VIEW_GROUPS"
oSql = "SELECT * FROM TBPM_MAIN_VIEW_GROUPS WHERE ACTIVE = 1"
'BASEDATA_DTGRID_GROUPS = DataASorDB.GetDatatable("DD_ECM", oSql, "TBPM_MAIN_VIEW_GROUPS", "")
BASEDATA_DTGRID_GROUPS = DatabaseFallback.GetDatatable("TBPM_MAIN_VIEW_GROUPS", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBPM_CHART"
oSql = "SELECT * FROM TBPM_CHART"
'BASEDATA_DT_CHARTS = DataASorDB.GetDatatable("DD_ECM", oSql, "TBPM_CHART", "")
BASEDATA_DT_CHARTS = DatabaseFallback.GetDatatable("TBPM_CHART", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStopWatch.Done()
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info($"Unexpected Error in InitBasics - last Step [{oStep}]: {ex.Message}", True)
ERROR_STATE = "Basics not initialized"
End Try
End Sub
<STAThread()>
Public Sub InitBasics2()
Try
Dim oStopWatch As New RefreshHelper.SW("InitBasics2")
Dim oSql = String.Format("SELECT * FROM VWPM_PROFILE_USER WHERE USER_ID = {0}", USER_ID)
BASEDATA_DT_VW_PROFILE_USER = DatabaseFallback.GetDatatable("VWPM_PROFILE_USER", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
.FilterExpression = $"USER_ID = {USER_ID}"
})
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
LOGGER.Warn($"no profiles for user: '{USER_USERNAME}' configured - Check SQL [{oSql}]!", False)
End If
oStopWatch.Done()
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Unexpected Error in InitBasics2: " & ex.Message, True)
ERROR_STATE = "Basics2 not initialized"
End Try
End Sub
<STAThread()>
Private Function Settings_LoadBasicConfig()
Try
Dim oSql As String = "select * from tbdd_Modules where SHORT_NAME = 'PM'"
Dim oDTtbdd_Modules As DataTable
'oDTtbdd_Modules = DataASorDB.GetDatatable("DD_ECM", oSql, "tbdd_Modules", $" SHORT_NAME = 'PM'")
oDTtbdd_Modules = DatabaseFallback.GetDatatable("TBDD_MODULES", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
.FilterExpression = $" SHORT_NAME = 'PM'"
})
If oDTtbdd_Modules.Rows.Count = 1 Then
Try
VERSION_DELIMITER = oDTtbdd_Modules.Rows(0).Item("VERSION_DELIMITER")
FILE_DELIMITER = oDTtbdd_Modules.Rows(0).Item("FILE_DELIMITER")
LICENSE_VALID = oDTtbdd_Modules.Rows(0).Item("LICENSE_VALID")
WMSESSION_STARTSTOP_STARTUP = oDTtbdd_Modules.Rows(0).Item("WMSESSION_STARTSTOP_STARTUP")
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Unexpected Error in Settings_LoadBasicConfig: " & ex.Message, True)
End Try
Else
Return False
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error in Settings_LoadBasicConfig" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
Return True
End Function
End Class

View File

@@ -0,0 +1,659 @@
Imports WINDREAMLib
Imports WMOSRCHLib
Public Class ClassPMWindream
Inherits ClassWindream_allgemein
Dim clsWM As ClassWindream_allgemein
'Private email As New ClassNIEmail
Private allgFunk As New ClassAllgemeineFunktionen
#Region "+++++ Konstanten +++++"
Protected Const WMObjectEditModeObject = &H1F
Protected Const WMObjectStreamOpenModeReadWrite = 2
Protected Const WMEntityObjectType = 10
Protected Const WMEntityDocument = 1
Const WMObjectVariableValueTypeUndefined = 0
Const WMObjectVariableValueTypeString = 1
Const WMObjectVariableValueTypeInteger = 2
Const WMObjectVariableValueTypeInteger64bit = 11
Const WMObjectVariableValueTypeFloat = 3
Const WMObjectVariableValueTypeBoolean = 4
Const WMObjectVariableValueTypeDate = 5
Const WMObjectVariableValueTypeFixedPoint = 6
Const WMObjectVariableValueTypeTimeStamp = 7
Const WMObjectVariableValueTypeCurrency = 8
Const WMObjectVariableValueTypeTime = 9
Const WMObjectVariableValueTypeVariant = 10
Const WMObjectVariableValueTypeMask = &HFFF
Const WMObjectVariableValueFlagMask = &HFFFFF000
Const WMObjectVariableValueTypeVector = &H1000
Const WMObjectVariableValueTypeFulltext = &H2000
Const WMObjectVariableValueTypeDefaultValue = &H4000
Const WMObjectEditModeIndexEdit = &H3DA
#End Region
#Region "+++++ Variablen +++++"
Private oController As New WMOSearchController
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
Sub New()
MyBase.New()
End Sub
Private Function IsNotEmpty(ByVal aValue As Object)
If aValue IsNot Nothing Then
Return True
'If TypeOf aValue Is String Then
' ' Änderung 28.08.2018: Auch ein leerer String gilt als Wert, damit indexfelder auch geleert werden können
' 'If Not aValue = "" Then
' ' Return True
' 'End If
' Return False
'Else
' Return True
'End If
Else
Return False
End If
End Function
Private Function return_type(ByVal _wert As Object)
Return _wert.GetType
End Function
Public Function GetValuesfromAuswahlliste(ByVal listname As String)
Try
If listname = "" Then
Return ""
End If
Dim oChoiceList = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityChoiceList, listname)
If Err.Number = 0 And TypeName(oChoiceList) <> "Nothing" Then
Dim Values = oChoiceList
Values = oChoiceList.GetVariableValue("vItems")
Dim anz As Integer = 0
For Each CLItem In Values
If oChoiceList.aName IsNot Nothing Then
anz += 1
End If
Next
Dim strListe(anz - 1)
Dim zahl As Integer = 0
For Each CLItem In Values
If oChoiceList.aName IsNot Nothing Then
strListe(zahl) = CLItem
zahl += 1
End If
Next
Return strListe
Else
MsgBox("Auswahlliste: " & listname & " nicht gefunden!", MsgBoxStyle.Critical, "Fehler:")
Return Nothing
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, $"Error in GetValuesfromAuswahlliste ({listname}):")
Return Nothing
End Try
End Function
Public Function Return_Type(Indexname As String)
Try
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indexname)
' den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
Return vType.ToString
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in Return_Type:")
Return ""
End Try
End Function
Public Function RunIndexing(ByVal oDocument As WMObject, ByVal Indizes() As String, ByVal aValues() As Object)
Dim vType
Try
If Indizes IsNot Nothing And aValues IsNot Nothing Then
If Not oDocument.aLocked Then
' 02.07. Änderung der Lock Methode, um eine Validierung auch zuzulassen, wenn das Recht "Datei ändern"
' nicht gesetzt ist
'oDocument.lock()
Try
oDocument.LockFor(WMObjectEditModeIndexEdit)
Catch ex As Exception
LOGGER.Error(ex)
frmValidator.idxerr_message = "Could not lock WMFile - Check Your rights and inform the admin!"
Return False
End Try
If oDocument.aObjectType.aName <> CURRENT_WMObjecttype Then
' ihr den entsprechenden Dokumenttyp zuweisen
oDocument.aObjectType = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, CURRENT_WMObjecttype)
' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp
LOGGER.Debug("Objekttyp '" & oDocument.aObjectType.aName & "' was changed to '" & CURRENT_WMObjecttype & "'.")
Try
oDocument.Save()
Catch ex As Exception
' wenn es einen Fehler beim speichern gab, dann konnte auch kein Dokumenttyp gesetzt werden -> es kann also auch keine
' Indexierung stattfinden und die Indexierung muss nicht fortgesetzt werden
Return False
End Try
End If
Dim i As Integer = 0
Dim indexname As String
If aValues.Length = 1 And aValues(0) = "" Then
LOGGER.Debug("Indexwert ist leer/Nothing - Keine Indexierung")
Else
'Jetzt jeden Indexwert durchlaufen
For Each aName As String In Indizes
indexname = aName
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indizes(i))
' den Variablentyp (String, Integer, ...) auslesen
vType = oAttribute.getVariableValue("dwAttrType")
' wenn in aValues an Position i ein Wert steht
If IsNotEmpty(aValues(i)) Then
Dim _int As Boolean = False
Dim _date As Boolean = False
Dim _dbl As Boolean = False
Dim _bool As Boolean = False
'If indexname = "Tournr" Then
' MsgBox("Index: " & indexname & vbNewLine & "wert: " & aValues(i), MsgBoxStyle.Information, "Index: " & aName.ToString)
'End If
LOGGER.Debug(" ### Indexierung von Index: " & indexname & " ####")
'MsgBox(oDocument.aName & vbNewLine & aValues(i) & vbNewLine & vType, MsgBoxStyle.Exclamation, "Zeile 87")
Dim value = aValues(i)
Dim convertValue
Dim vektor As Boolean = False
'Den Typ des Index-Feldes auslesen
'MsgBox(value.GetType.ToString)
Select Case vType
'Case WMObjectVariableValueTypeUndefined
Case WMObjectVariableValueTypeString
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeString")
convertValue = CStr(value)
Case WMObjectVariableValueTypeInteger
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeInteger")
If IsNumeric(value) = False Then
frmValidator.idxerr_message = "Unerlaubte Eingabe in Numerisches Feld: " & value
LOGGER.Debug("Achtung: Value " & value & " kann nicht in Zahl konvertiert werden!")
oDocument.Save()
oDocument.unlock()
Return False
End If
convertValue = CInt(value)
_int = True
Case WMObjectVariableValueTypeInteger64bit
LOGGER.Debug("Typ des windream-Indexes: Integer64bit")
If IsNumeric(value) = False Then
frmValidator.idxerr_message = "Unerlaubte Eingabe in Numerisches Feld: " & value
LOGGER.Debug("Achtung: Value " & value & " kann nicht in Zahl konvertiert werden!")
oDocument.Save()
oDocument.unlock()
Return False
End If
convertValue = CInt(value)
_int = True
Case WMObjectVariableValueTypeFloat
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeFloat")
Try
convertValue = CDbl(value)
Catch ex As Exception
LOGGER.Error(ex)
frmValidator.idxerr_message = "Could't convert value '" & value & "' to double!"
oDocument.Save()
oDocument.unlock()
Return False
End Try
Case WMObjectVariableValueTypeFixedPoint
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeFixedPoint")
Try
convertValue = CDbl(value)
Catch ex As Exception
LOGGER.Error(ex)
frmValidator.idxerr_message = "Could't convert value '" & value & "' to double!"
oDocument.Save()
oDocument.unlock()
Return False
End Try
_dbl = True
Case WMObjectVariableValueTypeBoolean
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeBoolean")
convertValue = CBool(value)
_bool = True
Case WMObjectVariableValueTypeDate
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeDate")
_date = True
'Dim _date As Date = value
convertValue = value
Case WMObjectVariableValueTypeTimeStamp
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeTimeStamp")
convertValue = CInt(value)
Case WMObjectVariableValueTypeCurrency
LOGGER.Info(" >> Typ des windream-Indexes: WMObjectVariableValueTypeCurrency")
'Wegen currency muß ein eigenes Objekt vom typ Variant erzeugt werden
Dim aValueWrapper As System.Runtime.InteropServices.CurrencyWrapper = New System.Runtime.InteropServices.CurrencyWrapper(CDec(value))
convertValue = aValueWrapper
Case WMObjectVariableValueTypeTime
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeTime", False)
'If ((value)) Then
' convertValue = CDate(value)
'Else
' convertValue = ""
'End If
'Dim _date As Date = value
convertValue = convertValue '*_date.ToShortTimeString
Case WMObjectVariableValueTypeFloat
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeFloat", False)
convertValue = CStr(value)
Case WMObjectVariableValueTypeVariant
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeVariant", False)
convertValue = CStr(value)
Case WMObjectVariableValueTypeFulltext
LOGGER.Debug("Typ des windream-Indexes: WMObjectVariableValueTypeFulltext", False)
convertValue = CStr(value)
Case 4100
LOGGER.Debug("Typ des windream-Indexes: 4100 Vektor Boolean", False)
vektor = True
Case 4101
LOGGER.Debug("Typ des windream-Indexes: 4101 Vektor Date", False)
vektor = True
Case 4104
LOGGER.Debug("Typ des windream-Indexes: 4104 Vektor Currency", False)
vektor = True
Case 4097
LOGGER.Debug("Typ des windream-Indexes: 4097 Vektor alphanumerisch", False)
vektor = True
Case 4098
LOGGER.Debug("Typ des windream-Indexes: 4098 Vektor Numerisch", False)
vektor = True
Case 4099
LOGGER.Debug("Typ des windream-Indexes: 4099 Vektor Kommazahl", False)
vektor = True
Case 36865
LOGGER.Debug("Typ des windream-Indexes: 36865 Vektor alphanumerisch", False)
vektor = True
Case Else
LOGGER.Debug("Typ des windream-Indexes konnte nicht bestimmt werden!", False)
LOGGER.Debug("Versuch des Auslesens (vType): " & vType)
'MsgBox(vType & vbNewLine & CStr(value), MsgBoxStyle.Exclamation, "Marlon-Case Else")
convertValue = ""
End Select
If vektor = False Then
If convertValue.ToString Is Nothing = False Then
LOGGER.Debug("Konvertierter Wert: '" & convertValue.ToString & "'", False)
End If
End If
'############################################################################################
'####################### Der eigentliche Indexierungsvorgang ################################
'############################################################################################
If vektor = False Then
If convertValue.ToString Is Nothing = False Then
Try
LOGGER.Debug("Jetzt indexieren: oDocument.SetVariableValue(" & aName & ", " & convertValue.ToString & ")", False)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info(" >> Unexpected Error in Logging SetVariableValue for " & aName & ": " & ex.Message, False)
End Try
'Dim ArrValues()
'ReDim ArrValues(0)
'ArrValues(0) = convertValue
'Dim ArrName()
'ReDim ArrName(0)
'ArrName(0) = "Tournr"
'oDocument.SetValues(ArrName, ArrValues)
If _int = True Then
oDocument.SetVariableValue(aName, CInt(convertValue))
ElseIf _date = True Then
oDocument.SetVariableValue(aName, CDate(convertValue))
ElseIf _bool Then
oDocument.SetVariableValue(aName, CBool(convertValue))
ElseIf _dbl Then
oDocument.SetVariableValue(aName, CDbl(convertValue))
Else
oDocument.SetVariableValue(aName, convertValue)
End If
LOGGER.Debug("Index '" & aName & "' wurde geschrieben", False)
Else
LOGGER.Info(" >> Kein Indexwert vorhanden", False)
End If
Else
'VEKTORFELDER, ALSO ÜBERPRÜFEN OB ERGEBNIS-ARRAY GEFÜLLT IST
LOGGER.Debug("VEKTORFELD: Vorbereiten des Arrays", False)
Dim myArray()
'Dim anz As Integer = 0
'For Each obj In aValues
'ReDim Preserve myArray(anz)
Select Case vType
Case 4100
'Vektortyp Boolean
'Umwandeln in Boolean
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
Select Case obj.ToString.ToLower
Case "falsch"
obj = False
Case "wahr"
obj = True
Case "nein"
obj = False
Case "ja"
obj = True
End Select
myArray(i1) = CBool(obj)
i1 = i1 + 1
Next
Case 4101
'Vektortyp Date
'Umwandeln in String
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
myArray(i1) = CDate(obj)
i1 = i1 + 1
Next
Case 4104
'Vektortyp Currency
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
Dim aValueWrapper As System.Runtime.InteropServices.CurrencyWrapper = New System.Runtime.InteropServices.CurrencyWrapper(CDec(obj))
myArray(i1) = aValueWrapper
i1 = i1 + 1
Next
Case 4097
'Vektortyp ALPHANUMERISCH
'Umwandeln in String
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
myArray(i1) = CStr(obj)
i1 = i1 + 1
Next
Case 4098
'Umwandeln in Integer
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
myArray(i1) = CInt(obj)
i1 = i1 + 1
Next
Case 4099
'Umwandeln in Double
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
Dim Str As String = obj
myArray(i1) = CDbl(Str.Replace(".", ","))
i1 = i1 + 1
Next
Case 36865
'Umwandeln in String
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
myArray(i1) = CStr(obj)
i1 = i1 + 1
Next
Case Else
'Umwandeln in String
'Die Größe des Arrays festlegen
ReDim myArray(aValues.Length - 1)
Dim i1 As Integer = 0
'Das Array durchlaufen und Werte für den Index in Array schreiben
For Each obj In aValues
myArray(i1) = CStr(obj)
i1 = i1 + 1
Next
End Select
LOGGER.Debug("Wert für Index vor Indexierung: [{0}]", myArray)
'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(aName, myArray)
LOGGER.Debug("'SetVariableValue' für VEKTOR erfolgreich", False)
End If
End If
i += 1
Next
End If
' oDocument.LockRights()
'SetRights(WMObject, User)
oDocument.Save()
oDocument.unlock()
LOGGER.Debug(" ### Indexierung erfolgreich beendet (Save und Unlock durchgeführt) ###", False)
Return True
Else
LOGGER.Info(" ### Dokument ist gesperrt, Indexierung nicht möglich! ###", False)
frmValidator.idxerr_message = "Dokument " & oDocument.aName & " ist gesperrt, Indexierung nicht möglich"
Return False
End If
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("ClassSearchResult.RunIndexing - " & ex.Message, True)
frmValidator.idxerr_message = "Unvorhergesehener Fehler in Indexing: " & ex.Message & vbNewLine & "vType: " & vType.ToString
allgFunk.Insert_LogEntry($"ERROR RunIndexing>> {ex.Message}")
oDocument.Save()
oDocument.unlock()
Return False
End Try
End Function
Public Sub SetfinalIndex(ByVal oDocument As WMObject, ByVal Indexname As String, ByVal _state As Boolean)
Try
If Indexname IsNot Nothing Then
If Not oDocument.aLocked Then
oDocument.LockFor(WMObjectEditModeIndexEdit)
Dim i As Integer = 0
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indexname)
' den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
'MsgBox("Typ: " & vType.ToString, MsgBoxStyle.Critical, "_state: " & _state.ToString)
' wenn in aValues an Position i ein Wert steht
'MsgBox(oDocument.aName & vbNewLine & aValues(i) & vbNewLine & vType, MsgBoxStyle.Exclamation, "Zeile 87")
Dim value = _state
Dim convertValue
'Den Typ des Index-Feldes auslesen
LOGGER.Debug(">> Typ des windream-Indexes: " & vType.ToString)
Select Case (vType)
Case WMObjectVariableValueTypeBoolean
convertValue = CBool(value)
Case Else
LOGGER.Info(">> Typ des windream-Indexes ist nicht BOOLEAN also Abbruch:")
End Select
'############################################################################################
'####################### Der eigentliche Indexierungsvorgang ################################
oDocument.SetVariableValue(Indexname, convertValue)
LOGGER.Debug(">> Index '" & Indexname & "' wurde gesetzt")
oDocument.Save()
oDocument.unlock()
LOGGER.Info(">> DATEI wurde erfolgreich als fertig nachindexiert gekennzeichnet")
Else
LOGGER.Info(">> Dokument ist gesperrt, Indexierung erst im nächsten Durchlauf!")
End If
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("ClassSearchResult.SetfinalIndex - " & ex.Message, True)
'If My.Settings.vNIMailsenden = True Then
' email.Send_EMail("Fehler bei SetfinalIndex - Datei: " & oDocument.aName.ToString & " - Fehler: " & ex.Message)
'End If
oDocument.Save()
oDocument.unlock()
End Try
End Sub
#End Region
#Region "+++++ Allgemeine Funktionen die Informationen zurückliefern +++++"
Public Function Get_No_Documents(Profil As String, WD_Search As String)
Try
Dim wmsearch_exists As Boolean
Try
wmsearch_exists = System.IO.File.Exists(WD_Search)
Catch ex As Exception
LOGGER.Error(ex)
wmsearch_exists = clsWM.CheckFileExists(WD_Search)
End Try
If wmsearch_exists = False Then
LOGGER.Info(">> Windream Suche für Profil: '" & Profil & "' konnte nicht ausgeführt werden! Die Datei '" & WD_Search & "' existiert nicht!", False)
MsgBox("Windream Suche für Profil: '" & Profil & "' konnte nicht ausgeführt werden!" & vbNewLine & "Die Datei '" & WD_Search & "' existiert nicht!", MsgBoxStyle.Exclamation, "Achtung:")
'wenn die gesuchte File eine Suche ist: per MAil informierne und Indexierung abbrechen
'If My.Settings.vNIMailsenden = True Then
' email.Send_EMail("Fehler bei Nachindexierung: <br> >> Profil: " & Me.aktivesProfil.Profilname & "<br> >> die windream-Suche : " & Me.aktivesProfil.WindreamSuche & " konnte nicht gefunden werden!" & _
' "<br> >> Mögliche Fehlerursache: Das W-Laufwerk ist nicht verfügbar!")
'End If
Return 0
Else
' windream-Suche für Profil starten
Dim windreamSucheErgebnisse As WMObjects = Me.GetSearchDocuments(WD_Search)
If windreamSucheErgebnisse.Count > 0 Then
' neue Anzahl von Dateien
Return windreamSucheErgebnisse.Count
Else
' keine Dateien zum Importieren
Return 0
End If
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info(ex.Message)
Return 0
End Try
End Function
Public Function GetSearchDocuments(ByVal wdfLocation As String)
If clsWM.CheckFileExists(wdfLocation) = True Then
Try
Dim ProfileName = wdfLocation.Substring(wdfLocation.LastIndexOf("\") + 1)
Dim ProfilePath = wdfLocation.Substring(0, wdfLocation.Length - ProfileName.Length)
Me.oController.CheckSearchProfile(wdfLocation.ToLower)
Dim suchTyp = Me.oController.SearchProfileTargetProgID
Dim ExSettings As Object
Dim oSearch As Object
ExSettings = Me.oController.SearchProfileExSettings
If ExSettings = 0 Then ExSettings = 7
Dim srchQuick As WMOSRCHLib.WMQuickSearch = CreateObject("WMOSrch.WMQuickSearch")
Dim srchIndex As WMOSRCHLib.WMIndexSearch = CreateObject("WMOSrch.WMIndexSearch")
Dim srchObjectType As WMOSRCHLib.WMObjectTypeSearch = CreateObject("WMOSrch.WMObjectTypeSearch")
Select Case suchTyp.ToString.ToUpper
Case "WMOSRCH.WMQUICKSEARCH"
srchQuick.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchQuick.WMSession)
srchQuick.ClearSearch()
srchQuick.SearchProfilePath = ProfilePath
srchQuick.LoadSearchProfile(ProfileName)
oSearch = srchQuick.GetSearch()
Case "WMOSRCH.WMINDEXSEARCH"
srchIndex.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchIndex.WMSession)
srchIndex.ClearSearch()
srchIndex.SearchProfilePath = ProfilePath
srchIndex.LoadSearchProfile(ProfileName)
oSearch = srchIndex.GetSearch()
Case "WMOSRCH.WMOBJECTTYPESEARCH"
srchObjectType.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchObjectType.WMSession)
srchObjectType.ClearSearch()
srchObjectType.SearchProfilePath = ProfilePath
srchObjectType.LoadSearchProfile(ProfileName)
oSearch = srchObjectType.GetSearch()
Case Else
LOGGER.Info("KEIN GÜLTIGER WINDREAM-SUCHTYP")
Return Nothing
End Select
Dim WMObjects As Object
WMObjects = oSearch.Execute
Return oSearch.execute
Catch ex As Exception
LOGGER.Error(ex)
' bei einem Fehler einen Eintrag in der Logdatei machen
LOGGER.Info("Fehler in GetSearchDocuments - " & ex.Message, True)
Return Nothing
End Try
End If
Return Nothing
End Function
''' Liefert den Wert eines Indexes als String
''' _indexname = Name des zu überprüfenden Indexfeldes
Public Function GetValueforIndex(ByVal _fullfilepath As String, _indexname As String)
Try
Const WMEntityDocument = 1
Dim IndexwertAusWindream As Object = Nothing
Dim _dok As WINDREAMLib.WMObject
_dok = Nothing
_dok = oSession.GetWMObjectByPath(WMEntityDocument, _fullfilepath) 'WINDREAMLib.WMEntity.WMEntityDocument
IndexwertAusWindream = _dok.GetVariableValue(_indexname)
Return IndexwertAusWindream.ToString
Catch ex As Exception
LOGGER.Error(ex)
'MsgBox(ex.Message)
Return Nothing
End Try
End Function
#End Region
End Class

View File

@@ -0,0 +1,244 @@
Imports DigitalData.Modules.Database
Public Class ClassParamRefresh
Public Shared Sub Refresh_Params(DT_CHECKUSER As DataTable)
Dim oStopwatch As New RefreshHelper.SW("Refresh_Params")
FORCE_LAYOUT_OVERVIEW = False
SHOW_CHARTS = True
Dim oLicenseoverSQL As Boolean = False
If Not IsNothing(BASEDATA_DT_TBDD_SQL_COMMANDS) Then
If BASEDATA_DT_TBDD_SQL_COMMANDS.Rows.Count > 0 Then
For Each oRow As DataRow In BASEDATA_DT_TBDD_SQL_COMMANDS.Rows
If oRow.Item("TITLE") = "LICENSE_COUNT_PM" Then
Dim oSQL = oRow.Item("SQL_COMMAND")
USERCOUNT_LOGGED_IN = DatabaseFallback.GetScalarValueECM(oSQL)
oLicenseoverSQL = True
ElseIf oRow.Item("TITLE") = "PM_PROFILES_USER" Then
SQL_PROFILES_USER = oRow.Item("SQL_COMMAND")
LOGGER.Debug($"SQL FROM SQLCommands DD: {SQL_PROFILES_USER}")
ElseIf oRow.Item("TITLE") = "PM_VALIDATOR_SEARCH_DEF" Then
SQL_VALIDATOR_SEARCHES = oRow.Item("SQL_COMMAND")
LOGGER.Debug($"VALIDATOR-SQL FROM SQLCommands DD: {SQL_VALIDATOR_SEARCHES}")
End If
Next
End If
End If
If DT_CHECKUSER.Rows.Count = 1 Then
If oLicenseoverSQL = False Then
USERCOUNT_LOGGED_IN = DT_CHECKUSER.Rows(0).Item("USERCOUNT_LOGGED_IN")
End If
Try
WORKING_MODE = DT_CHECKUSER.Rows(0).Item("WORKING_MODE")
Catch ex As Exception
WORKING_MODE = ""
End Try
Try
ADDITIONAL_TITLE = DT_CHECKUSER.Rows(0).Item("ADDITIONAL_TITLE")
If ADDITIONAL_TITLE = String.Empty Then
ADDITIONAL_TITLE = My.Application.Info.ProductName
End If
Catch ex As Exception
ADDITIONAL_TITLE = My.Application.Info.ProductName
End Try
TITLE_NOTIFICATIONS = ADDITIONAL_TITLE
Dim oSplitWorkMode As String() = WORKING_MODE.Split("#")
' Use For Each loop over words and display them.
Dim oMode As String
For Each oMode In oSplitWorkMode
LOGGER.Debug($"oWorkingMode Parameter: {oMode}")
If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then
FORCE_LAYOUT_OVERVIEW = True
LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]")
ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then
SHOW_MASS_VALIDATOR = False
LOGGER.Debug($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]")
ElseIf oMode = "PM.NO_CHARTS" Then
SHOW_CHARTS = False
LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]")
ElseIf oMode = "PM.DEBUG_LOG" Then
DEBUG = True
LOGCONFIG.Debug = True
ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then
OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "")
If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
IDB_USES_WMFILESTORE = True
End If
ElseIf oMode = "PM.IDBWITHWMFS" Then
IDB_USES_WMFILESTORE = True
ElseIf oMode = "PM.NO_BASICCONF" Then
BASIC_CONF_VISIBLE = False
LOGGER.Debug($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]")
ElseIf oMode.StartsWith("PM.IDB_CONID!") Then
If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then
IDB_ACTIVE = True
Continue For
Else
Dim Database_IDB As MSSQLServer = Nothing
Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
Dim oConString = DatabaseFallback.GetConnectionString(CON_ID)
CONNECTION_STRING_IDB = oConString
Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB)
If Database_IDB.DBInitialized = True Then
IDB_ACTIVE = True
LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!")
DatabaseFallback.InitializeIDB(Database_IDB)
Else
IDB_ACTIVE = False
End If
End If
'ElseIf oMode.StartsWith("PM.IDB_APP_SERV_CONID!") Then
' Dim CON_ID = oMode.Replace("PM.IDB_APP_SERV_CONID!", "")
' Dim oConString = ClassDatabase.Get_ConnectionString(CON_ID)
' CONNECTION_STRING_IDB_APP_SERVER = oConString
' If ClassDatabase.Init(CONNECTION_STRING_IDB_APP_SERVER) = True Then
' LOGGER.Info($"Got an IDB APP-Server-Connection [{CON_ID}]!")
' End If
ElseIf oMode = "PM.MONITORING" Then
MONITORING_ACTIVE = True
LOGGER.Debug($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]")
ElseIf oMode = "PM.GHOSTMODE" Then
GHOSTMODE_ACTIVE = True
LOGGER.Debug($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]")
ElseIf oMode.StartsWith("PM.COLORSCHEME") Then
Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "")
RIBBON_COLOR_SCHEME = oColorScheme.ToUpper
LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]")
ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then
NO_DETAIL_PROFILES = True
LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]")
ElseIf oMode = "PM.NO_POPUP" Then
POPUP_REMINDER_ACTIVE = False
LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]")
ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then
Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "")
CONV_IDENTIFICATION = oIdent
ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then
Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "")
Try
INACTIVITY_DURATION = CInt(oInactivityDuration)
LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]")
Catch ex As Exception
LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}")
INACTIVITY_DURATION = 0
End Try
ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "")
Try
LAST_EDITED_COLUMN = oLEDITEDCOL
LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}")
Catch ex As Exception
LAST_EDITED_COLUMN = ""
End Try
ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "")
Try
LAST_ADDED_COLUMN = oLEDITEDCOL
LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}")
Catch ex As Exception
LAST_ADDED_COLUMN = ""
End Try
ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then
Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "")
Try
USE_APPSERVER = CBool(oUSE_APPSERVER)
Catch ex As Exception
USE_APPSERVER = False
End Try
ElseIf oMode.StartsWith("PM.SEARCH1") Then
Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "")
Try
SEARCH1 = oSearch1
Catch ex As Exception
SEARCH1 = ""
End Try
ElseIf oMode.StartsWith("PM.SEARCH2") Then
Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "")
Try
SEARCH2 = oSearch2
Catch ex As Exception
SEARCH2 = ""
End Try
ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then
Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "")
Try
TL_ICON = CBool(oParam)
Catch ex As Exception
TL_ICON = False
End Try
ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then
Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "")
Try
TITLE_NOTIFICATIONS = oParam
Catch ex As Exception
TITLE_NOTIFICATIONS = ""
End Try
ElseIf oMode.StartsWith("PM.START_CW") Then
Dim oAfterReplace = oMode.Replace("PM.START_CW=", "")
Try
START_CW = True
LOGGER.Debug("PM.START_CW = True")
Dim oSplit As String() = oAfterReplace.Split("~")
START_CW_CAPTION = oSplit(0)
Try
START_CW_LOC_VARIANT = oSplit(1)
Catch ex As Exception
START_CW_LOC_VARIANT = "-1"
LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}")
End Try
Catch ex As Exception
LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
START_CW = False
End Try
ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then
Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "")
RibbonPageCustTitle = oAfterReplace
ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then
Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "")
RibbonPageCustItm1 = oAfterReplace
ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then
Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "")
ButtonExport2Folder_Caption = oAfterReplace
ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then
Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "")
ButtonExport2Folder_RootFolder = oAfterReplace
Else
LOGGER.Info($"Wrong oMode: {oMode}")
End If
Next
'If IDB_ACTIVE Then
' If CONNECTION_STRING_APP_SERVER <> String.Empty Then
' If USE_APPSERVER = True Then
' CONNECTION_STRING_IDB_READ = CONNECTION_STRING_APP_SERVER
' Else
' CONNECTION_STRING_IDB_READ = CONNECTION_STRING_IDB
' End If
' Else
' CONNECTION_STRING_IDB_READ = CONNECTION_STRING_IDB
' End If
' CONNECTION_STRING_IDB_WRITE = CONNECTION_STRING_IDB
'End If
End If
oStopwatch.Done()
End Sub
End Class

View File

@@ -0,0 +1,287 @@
Imports System
Imports System.Collections
Imports DevExpress.XtraGrid
Imports DevExpress.Utils
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.Modules.Logging
Public Class RefreshHelper
'<Serializable>
'Public Structure RowInfo
' Public Id As Object
' Public Level As Integer
'End Structure
''' <summary>
''' Saves information about the current row, like the level and row handle
''' </summary>
<Serializable>
Public Class RowInfo
Public Property Id As Object
Public Property Level As Integer
Public Property Handle As Integer
End Class
Private Property _View As GridView
Private Property _KeyFieldName As String
Private Property _Logger As Logger
Private Property _VisibleRowIndex As Integer = -1
Private ReadOnly Property ExpansionViewInfoList() As New List(Of RowInfo)
Private ReadOnly Property SelectionViewInfoList() As New List(Of RowInfo)
Private ReadOnly Property ExpandedMasterRowList() As New List(Of Object)
Public Sub New(pLogConfig As LogConfig, pView As GridView, pKeyFieldName As String)
_View = pView
_KeyFieldName = pKeyFieldName
_Logger = pLogConfig.GetLogger()
End Sub
Public Sub SaveViewInfo()
Try
SaveExpandedMasterRows()
SaveExpansionViewInfo()
SaveSelectionViewInfo()
SaveVisibleIndex()
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Public Sub LoadViewInfo()
Try
LoadExpandedMasterRows()
LoadExpansionViewInfo()
LoadSelectionViewInfo()
LoadVisibleIndex()
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Function FindParentRowHandle(pRowInfo As RowInfo, oRowHandle As Integer) As Integer
Dim oParentRowHandle As Integer = _View.GetParentRowHandle(oRowHandle)
' Fixes endless loop when parent row handle is below zero
If oParentRowHandle < 0 Then
Return oParentRowHandle
End If
Do While _View.GetRowLevel(oParentRowHandle) <> pRowInfo.Level
oParentRowHandle = _View.GetParentRowHandle(oParentRowHandle)
Loop
Return oParentRowHandle
End Function
Private Function GetKeyColumn() As GridColumn
Return _View.Columns(_KeyFieldName)
End Function
Private Function GetKeyColumnValue(pRowHandle As Integer) As Object
Return _View.GetRowCellValue(pRowHandle, GetKeyColumn())
End Function
Private Sub ExpandRowByRowInfo(pRowInfo As RowInfo)
'Dim oDataRowHandle As Integer = _View.LocateByValue(0, GetKeyColumn(), rowInfo.Id)
Dim oDataRowHandle As Integer = pRowInfo.Handle
If oDataRowHandle <> GridControl.InvalidRowHandle Then
Dim parentRowHandle As Integer = FindParentRowHandle(pRowInfo, oDataRowHandle)
_View.SetRowExpanded(parentRowHandle, True, False)
End If
End Sub
Private Function GetRowHandleToSelect(pRowInfo As RowInfo) As Integer
'Dim oDataRowHandle As Integer = _View.LocateByValue(0, GetKeyColumn(), rowInfo.Id)
Dim oDataRowHandle As Integer = pRowInfo.Handle
If oDataRowHandle <> GridControl.InvalidRowHandle Then
If _View.GetRowLevel(oDataRowHandle) <> pRowInfo.Level Then
Return FindParentRowHandle(pRowInfo, oDataRowHandle)
End If
End If
Return oDataRowHandle
End Function
Private Sub SelectRowByRowInfo(pRowInfo As RowInfo, pIsFocused As Boolean)
If pIsFocused Then
_View.FocusedRowHandle = GetRowHandleToSelect(pRowInfo)
Else
_View.SelectRow(GetRowHandleToSelect(pRowInfo))
End If
End Sub
Private Sub SaveSelectionViewInfo()
SelectionViewInfoList.Clear()
Dim oSelectionArray() As Integer = _View.GetSelectedRows()
If oSelectionArray IsNot Nothing Then ' otherwise we have a single focused but not selected row
Dim oRowInfo As New RowInfo
For oIndex As Integer = 0 To oSelectionArray.Length - 1
Dim oDataRowHandle As Integer = oSelectionArray(oIndex)
oRowInfo.Level = _View.GetRowLevel(oDataRowHandle)
If oDataRowHandle < 0 Then ' group row
oDataRowHandle = _View.GetDataRowHandleByGroupRowHandle(oDataRowHandle)
End If
oRowInfo.Id = GetKeyColumnValue(oDataRowHandle)
oRowInfo.Handle = oDataRowHandle
SelectionViewInfoList.Add(oRowInfo)
Next
Else
SelectionViewInfoList.Add(New RowInfo With {
.Id = GetKeyColumnValue(_View.FocusedRowHandle),
.Level = _View.GetRowLevel(_View.FocusedRowHandle),
.Handle = _View.FocusedRowHandle
})
End If
End Sub
Private Sub SaveExpansionViewInfo()
' Dont do anything if the current view does not have any grouped columns
If _View.GroupedColumns.Count = 0 Then
Return
End If
' Clear the list first
ExpansionViewInfoList.Clear()
For oIndex As Integer = -1 To Integer.MinValue + 1 Step -1
If Not _View.IsValidRowHandle(oIndex) Then
Exit For
End If
If _View.GetRowExpanded(oIndex) Then
Dim oDataRowHandle As Integer = _View.GetDataRowHandleByGroupRowHandle(oIndex)
ExpansionViewInfoList.Add(New RowInfo With {
.Id = GetKeyColumnValue(oDataRowHandle),
.Level = _View.GetRowLevel(oIndex),
.Handle = oDataRowHandle
})
End If
Next
End Sub
Private Sub SaveExpandedMasterRows()
If _View.GridControl.Views.Count = 1 Then
Return
End If
ExpandedMasterRowList.Clear()
For oIndex As Integer = 0 To _View.DataRowCount - 1
If _View.GetMasterRowExpanded(oIndex) Then
ExpandedMasterRowList.Add(GetKeyColumnValue(oIndex))
End If
Next
End Sub
Private Sub SaveVisibleIndex()
_VisibleRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _View.TopRowIndex
End Sub
Private Sub LoadVisibleIndex()
Try
_View.MakeRowVisible(_View.FocusedRowHandle, True)
_View.TopRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _VisibleRowIndex
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub LoadSelectionViewInfo()
_View.BeginSelection()
Try
_View.ClearSelection()
For i As Integer = 0 To SelectionViewInfoList.Count - 1
SelectRowByRowInfo(DirectCast(SelectionViewInfoList(i), RowInfo), i = SelectionViewInfoList.Count - 1)
Next i
Catch ex As Exception
_Logger.Error(ex)
Finally
_View.EndSelection()
End Try
End Sub
Private Sub LoadExpansionViewInfo()
If _View.GroupedColumns.Count = 0 Then
Return
End If
_View.BeginUpdate()
Try
_View.CollapseAllGroups()
For Each info As RowInfo In ExpansionViewInfoList
ExpandRowByRowInfo(info)
Next info
Catch ex As Exception
_Logger.Error(ex)
Finally
_View.EndUpdate()
End Try
End Sub
Private Sub LoadExpandedMasterRows()
_View.BeginUpdate()
Try
_View.CollapseAllDetails()
Dim oColumn As GridColumn = GetKeyColumn()
For oIndex As Integer = 0 To ExpandedMasterRowList.Count - 1
Dim oRowHandle As Integer = _View.LocateByValue(0, oColumn, ExpandedMasterRowList(oIndex))
_View.SetMasterRowExpanded(oRowHandle, True)
Next oIndex
Catch ex As Exception
_Logger.Error(ex)
Finally
_View.EndUpdate()
End Try
End Sub
Public Class SW
Public label As String
Public stopwatch As Stopwatch
Public Sub New(label As String)
Me.label = label
stopwatch = New Stopwatch()
stopwatch.Start()
End Sub
Public Function Done() As Long
If LOGCONFIG.Debug = False Then
Return 0
End If
stopwatch.Stop()
Dim ts As TimeSpan = stopwatch.Elapsed
Dim timespan_ = String.Format("{0:00}:{1:00}.{2:00}", ts.Minutes, ts.Seconds, ts.Milliseconds / 10)
If ts.Minutes > 0 Then
timespan_ = String.Format("{0:00}:{1:00}.{2:00}", ts.Minutes, ts.Seconds, ts.Milliseconds / 10)
ElseIf ts.Seconds > 0 And (ts.Minutes > 0) = False Then
timespan_ = String.Format("{0:00}.{1:00} seconds", ts.Seconds, ts.Milliseconds / 10)
ElseIf (ts.Seconds > 0) = False And ts.Milliseconds > 0 Then
timespan_ = String.Format("{0:00}.{1:00} seconds", ts.Seconds, ts.Milliseconds / 10)
End If
If timespan_ <> "00:00.00" Then
Dim message = String.Format("PerformanceWatch {0} || {1}", timespan_, label)
If LOGCONFIG.Debug = True Then
LOGGER.Debug(message)
End If
End If
Return stopwatch.ElapsedMilliseconds
End Function
End Class
End Class

View File

@@ -0,0 +1,28 @@
Imports System.ComponentModel
Imports System.Drawing.Design
Imports System.Windows.Forms.Design
Imports DigitalData.Modules.Language.Utils
Public Class ClassRegexEditor
Inherits UITypeEditor
Public Overrides Function GetEditStyle(context As ITypeDescriptorContext) As UITypeEditorEditStyle
Return UITypeEditorEditStyle.Modal
End Function
Public Overrides Function EditValue(context As ITypeDescriptorContext, provider As IServiceProvider, value As Object) As Object
Dim oService As IWindowsFormsEditorService = TryCast(provider.GetService(GetType(IWindowsFormsEditorService)), IWindowsFormsEditorService)
Dim oRegexString As String = NotNull(value, String.Empty)
If oService IsNot Nothing Then
Using oform As New frmRegexEditor()
oform.RegexString = oRegexString
If oService.ShowDialog(oform) = DialogResult.OK Then
value = oform.RegexString
End If
End Using
End If
Return value
End Function
End Class

View File

@@ -0,0 +1,43 @@
Imports System.ComponentModel
Imports System.Drawing.Design
Imports System.Windows.Forms.Design
Imports DD_ProcessManager.InputProperties
Imports DigitalData.GUIs.Common
Public Class ClassSQLEditor
Inherits UITypeEditor
Public Overrides Function GetEditStyle(context As ITypeDescriptorContext) As UITypeEditorEditStyle
Return UITypeEditorEditStyle.Modal
End Function
Public Overrides Function EditValue(context As ITypeDescriptorContext, provider As IServiceProvider, value As Object) As Object
Dim oService As IWindowsFormsEditorService = TryCast(provider.GetService(GetType(IWindowsFormsEditorService)), IWindowsFormsEditorService)
Dim oValueObject = DirectCast(value, SQLValue)
Dim oSQLString As String = oValueObject.Value
Dim oSQLConnection As Integer = oValueObject.ConnectionId
If oService IsNot Nothing AndAlso oSQLString IsNot Nothing Then
'CURRENT_DESIGN_TYPE = "INPUT_INDEX"
Using oForm As New frmSQLEditor(LOGCONFIG, DatabaseECM)
oForm.SQLCommand = oSQLString
oForm.SQLConnection = oSQLConnection
oForm.PlaceholdersManualPrefix = "CTRL"
oForm.PlaceholdersManualTitle = "Controls"
oForm.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.
ToDictionary(Function(name) name, Function(name) name)
If oService.ShowDialog(oForm) = DialogResult.OK Then
Dim sql As New SQLValue(oForm.SQLCommand, oForm.SQLConnection)
' CURRENT_CONN_ID_FINAL_INDEX = oForm.SQLConnection
' CURRENT_CONN_ID = oForm.SQLConnection
value = sql
End If
End Using
End If
Return value
End Function
End Class

View File

@@ -0,0 +1,11 @@
Imports System.ComponentModel
Public Class SQLTypeConverter
Inherits TypeConverter
Public Overrides Function ConvertTo(context As ITypeDescriptorContext, culture As Globalization.CultureInfo, value As Object, destinationType As Type) As Object
'Return MyBase.ConvertTo(context, culture, value, destinationType)
Dim sqlvalue As SQLValue = DirectCast(value, SQLValue)
Return sqlvalue.Value
End Function
End Class

View File

@@ -0,0 +1,24 @@
Imports System.ComponentModel
Imports System.Drawing.Design
''' <summary>
''' Hilfsklasse, die für das anzeigen und abspeichern von SQL-Befehlen verwendet wird
''' </summary>
<Editor(GetType(ClassSQLEditor), GetType(UITypeEditor))>
<TypeConverter(GetType(SQLTypeConverter))>
Public Class SQLValue
Public Property Value As String
Public Property ConnectionId As Integer
Public Sub New()
Value = ""
End Sub
Public Sub New(value As String)
Me.Value = value
End Sub
Public Sub New(pValue As String, pConnectionId As Integer)
Value = pValue
ConnectionId = pConnectionId
End Sub
End Class

View File

@@ -0,0 +1,23 @@
Imports System.ComponentModel
Imports System.Globalization
Public Class ClassVectorBehaviourListConverter
Inherits TypeConverter
Public Overrides Function GetStandardValuesSupported(context As ITypeDescriptorContext) As Boolean
Return True
End Function
Public Overrides Function GetStandardValues(context As ITypeDescriptorContext) As StandardValuesCollection
Dim oBehaviourList = DirectCast(context.Instance, FinalIndexProperties).VectorBehaviourType
Return New StandardValuesCollection(oBehaviourList)
End Function
Public Overrides Function ConvertTo(context As ITypeDescriptorContext, culture As CultureInfo, value As Object, destinationType As Type) As Object
If IsNothing(value) Then
Return ""
Else
Return value.ToString()
End If
End Function
End Class

View File

@@ -0,0 +1,505 @@
Imports WINDREAMLib
Imports WINDREAMLib.WMCOMEvent
Imports WINDREAMLib.WMEntity
Imports WINDREAMLib.WMObjectEditMode
Imports WINDREAMLib.WMSearchOperator
Imports WINDREAMLib.WMSearchRelation
Imports WMOBRWSLib
Public Class ClassWindream_allgemein
#Region "+++++ Konstanten +++++"
Const DEBUG = AUS
Const AUS = 0
Const WINDREAM = 1
Const VARIABLEN = 2
#End Region
#Region "+++++ Variablen +++++"
Public oConnect ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public oSession 'As WINDREAMLib.WMSession ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public oBrowser As New WMOBRWSLib.ServerBrowser
Public oDokumentTypen As WINDREAMLib.WMObjects
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
''' <summary>
''' Konstruktor für die windream-Klasse
''' </summary>
''' <remarks></remarks>
Sub New()
' wenn ein Fehler bei der Initialisierung auftrat
'If Not Me.Init() Then
' ' Nachricht ausgeben
' MsgBox("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind.", MsgBoxStyle.Exclamation, "Fehler bei Initialisierung")
' ' das Programm "abschießen"
' Process.GetCurrentProcess.Kill()
'End If
End Sub
''' <summary>
''' Initialisiert die statische Klasse (Login, Session starten, usw.)
''' </summary>
''' <returns>Liefert True wenn das Anmelden erfolgreich war, sonst False</returns>
''' <remarks></remarks>
Public Function Create_Session() As Boolean
Try
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
Me.oSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
LOGGER.Debug("windream-Server: '" & Me.GetCurrentServer & "'")
' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect")
'MsgBox("windrem init 'ed")
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Debug($"Error while creating WMConnect Object: {vbCrLf}{ex.Message}")
Return False
End Try
' wenn windream nicht angemeldet ist
If Not Me.IsLoggedIn Then
' Art der Anmeldung an windream festlegen
' 0x0L (also 0) = Standard windream Benutzer
' WM_MODULE_ID_DOCTYPEEDITOR_LIC = ermöglicht Zugriff auf die windream Management Funktionen (Z.B. zur Verwaltung der windream Dokumententypen, Auswahllisten, etc.)
' WM_MODULE_ID_INDEXSERVICE = ermöglicht der Session die Indexierungs-Events vom windream DMS-Service zu empfangen
Me.oConnect.ModuleID = 0
' setzt die minimal erwartete windream-Version
Me.oConnect.MinReqVersion = "3"
' -- Impersonifizierung nur möglich mit registry-eintrag --
' oConnect.UserName "\schulung\windream"
' oConnect.Password "windream"
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
Me.oConnect.LoginSession(Me.oSession)
If Me.oSession.aLoggedin = False Then
MsgBox("Es konnte keine Verbindung mit dem windream-Server hergestellt werden", MsgBoxStyle.Exclamation, "Verbindung konnte nicht hergestellt werden")
Return False
End If
If ModuleMySettings.DEBUG = False Then
LOGGER.Info(" >> windream-Version: '" & oSession.GetSystemInfo("WindreamVersion") & "'")
End If
' AUSGABE VON SYSTEMINFORMATIONEN
' Gibt die Versionsart (Lizenztyp) also Small-Business-Edition (SBE), Small-Business-Extension (SBX)
' oder Business-Edition (BE) aus
'MsgBox("WindreamVersion: " & oSession.GetSystemInfo("WindreamVersion") & vbNewLine & "LicenceKey: " & oSession.GetSystemInfo("LicenceKey") & vbNewLine & _
' vbNewLine & "LicenceName: " & oSession.GetSystemInfo("LicenceName"))
'Dim WMCtrl As AISCONTROLDATACOMLib.AISControlData
'WMCtrl = New AISCONTROLDATACOMLib.AISControlData
'' liefert die Versionsnummer des Clients
'MsgBox(WMCtrl.WMWorkstationBuildNo)
'MsgBox(WMCtrl.W
'' liefert den Servernamen des angemeldeten windreams
'MsgBox(WMCtrl.WMServerName)
Try
Me.oSession.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
' der Parameter WMEntityDocument definiert, dass nur Dokumenttypen und keine
' Ordnertypen ausgelesen werden
Me.oDokumentTypen = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End If
LOGGER.Debug($"windream login successful")
Return True
Catch ex As Exception
LOGGER.Error(ex)
If Err.Number = -2147220985 Then
MsgBox("Die installierte windream-Version ist nicht ausreichend für den Betrieb der Tool Collection für windream." & vbNewLine &
"Bitte kontaktieren Sie Digital Data." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & Err.Description, MsgBoxStyle.Exclamation, "Unzureichende windream-Version")
Else
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Login an windream")
End If
Return False
End Try
End Function
Public Function Start_WMCC_andCo()
Try
' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist
Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T INNER JOIN TBDD_GROUPS T1 on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID
Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StartWMCC-userExistsInServerUserGroup")
If WMSESSION_STARTSTOP_STARTUP = True Then
'And userExistsInServerUserGroup Is Nothing
LOGGER.Info(">> WINDREAM-Start on ApplicationStart is active!")
Dim owindreamControlCenter = CreateObject("Wmcc.ControlCenter")
Dim owindreamIndexService = CreateObject("WMIndexServer.WMIdxSvControl")
owindreamControlCenter.StartVFSService(1)
System.Threading.Thread.Sleep(1000)
owindreamIndexService.Start()
System.Threading.Thread.Sleep(1500)
End If
Create_Session()
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while starting up WMCC and IndexService: " & ex.Message, True)
End Try
End Function
Public Function Stop_WMCC_andCo()
Try
' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist
Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T INNER JOIN TBDD_GROUPS T1 on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID
Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StopWMCC-userExistsInServerUserGroup")
If WMSESSION_STARTSTOP_STARTUP = True Then 'And userExistsInServerUserGroup Is Nothing
Dim owindreamControlCenter = CreateObject("Wmcc.ControlCenter")
Dim owindreamIndexService = CreateObject("WMIndexServer.WMIdxSvControl")
owindreamControlCenter.StartVFSService(0)
owindreamIndexService.Shutdown()
owindreamControlCenter.ExitCC(0)
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while Stopping WMCC and IndexService: " & ex.Message, True)
End Try
End Function
#End Region
#Region "+++++ Funktionen die für den Objekttyp relevate Informationen zurückliefern +++++"
''' <summary>
''' Liefert alle Objekttypen des aktuellen Servers als windream-Objekte.
''' </summary>
''' <returns>Alle Objekttypen als WMObjects-Objekt</returns>
''' <remarks></remarks>
Public Function GetObjecttypesAsObjects() As WMObjects
Try
Return Me.oDokumentTypen
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Objekttypen")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Objekttypen des aktuellen Servers als Array aus Strings.
''' </summary>
''' <returns>Array mit allen Objekttypen als Strings</returns>
''' <remarks></remarks>
Public Function GetObjecttypesAsStrings() As String()
Try
Dim objektTypenStr(Me.oDokumentTypen.Count) As String
For i As Integer = 0 To Me.oDokumentTypen.Count
objektTypenStr(i) = Me.oDokumentTypen.Item(i).aName
Next
Return objektTypenStr
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Objekttypen als String")
Return Nothing
End Try
End Function
Public Function GetTypeOfIndex(ByVal indexname As String) As Integer
Try
If IsNothing(Me.oSession) Then
LOGGER.Warn("GetTypeOfIndex: WMSession is nothing")
Return Nothing
End If
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, indexname)
Dim vType = oAttribute.getVariableValue("dwAttrType")
Return vType
Catch ex As Exception
Dim omsg = $"Unexpected error in GetTypeOfIndex [{indexname}]: {ex.Message}"
LOGGER.Warn(omsg)
Return Nothing
End Try
End Function
Public Function NormalizePath(pPath As String)
Dim oNormalizedPath As String
If pPath.StartsWith(WMSUFFIX) Then
oNormalizedPath = pPath.Replace(WMSUFFIX, "")
ElseIf pPath.StartsWith("\\") Then
oNormalizedPath = pPath.Substring(1)
ElseIf pPath.StartsWith("\") Then
Return pPath
ElseIf pPath.StartsWith(WMDRIVE_LETTER) Then
oNormalizedPath = pPath.Replace(WMDRIVE_LETTER & ":", "")
ElseIf pPath.StartsWith("\") = False Then
oNormalizedPath = "\" & pPath
Else
oNormalizedPath = pPath
End If
Return oNormalizedPath
End Function
Public Function CheckFileExists(Path As String)
Dim oNormalizedPath = NormalizePath(Path)
Try
Dim oObjectId = 0
Dim oObjectDbId = 0
Dim WMObject As WINDREAMLib.WMObject '= CreateObject("WINDREAMLib.WMObject") 'New WINDREAMLib.WMObject
If IsNothing(oSession) Then
If Create_Session() = False Then
Return False
End If
End If
WMObject = oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, oNormalizedPath)
Return True
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End Function
''' <summary>
''' Liefert alle Indexe eines Objekttypen.
''' </summary>
''' <param name="name">Name des Objekttyps</param>
''' <returns>Array mit allen Objekttyp zugeordneten Indexen als String</returns>
''' <remarks></remarks>
Public Function GetIndicesByObjecttype(ByVal Objecttype_name As String) As String()
Try
If IsNothing(Me.oSession) Then
LOGGER.Warn("GetIndicesByObjecttype: WMSession is nothing")
Return Nothing
End If
Dim oObjectType As WMObject
Dim oIndexAttributes As WMObjectRelation
Dim oIndexAttribute As WMObject
Dim oIndex As WMObject
Dim oRelProperties As WMObjectRelationClass
' den Objekttyp laden
oObjectType = Me.oSession.GetWMObjectByName(WMEntityObjectType, Objecttype_name)
' Beziehung zu Indizes des Objekttyp auslesen
oIndexAttributes = oObjectType.GetWMObjectRelationByName("TypeAttributes")
' Array für Indizes vorbereiten
Dim aIndexNames(oIndexAttributes.Count - 1) As String
' alle Indizes durchlaufen
For j As Integer = 0 To oIndexAttributes.Count - 1
' aktuellen Index auslesen
oIndexAttribute = oIndexAttributes.Item(j)
' Eigenschaften des Index auslesen
oRelProperties = oIndexAttribute.GetWMObjectRelationByName("Attribute")
' Index aus den Eigenschaften auslesen
oIndex = oRelProperties.Item(0)
' Indexname speichern
aIndexNames(j) = oIndex.aName
Next
' Indexarray sortiert zurückgeben
Array.Sort(aIndexNames)
' Indexarray zurückgeben
Return aIndexNames
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der windream-Indexe")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert einen Objekttyp als WMObject an Hand dessen Name.
''' </summary>
''' <param name="objekttypName">Name des Objekttyps</param>
''' <returns>Objekttyp als WMObject</returns>
''' <remarks></remarks>
Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject
Try
If IsNothing(Me.oSession) Then
LOGGER.Warn("GetObjecttypeByName: WMSession is nothing")
Return Nothing
End If
' alle Objekttypen auslesen
Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen
For Each oObjectType As WMObject In oObjectTypes
If oObjectType.aName = objekttypName Then
Return oObjectType
End If
Next
Return Nothing
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Es konnte ein Objekttyp nicht erstellt werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Objekttyp konnte nicht erstellt werden")
Return Nothing
End Try
End Function
''' <summary>
''' Überprüft ob der angegebene Index im Objekttyp existiert
''' </summary>
''' <param name="objekttyp">Name des zu durchsuchenden Objekttyps</param>
''' <param name="indexname">Name des zu suchenden Indexes</param>
''' <returns>Liefert True wenn der Index im Objekttyp existiert, sonst False</returns>
''' <remarks></remarks>
Public Function ExistIndexInObjekttyp(ByVal objekttyp As String, ByVal indexname As String) As Boolean
Try
Dim indexnamen() As String = Me.GetIndicesByObjecttype(objekttyp)
If indexnamen Is Nothing Then Return False
For Each index As String In indexnamen
If index = indexname Then Return True
Next
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Beim Prüfen ob ein Index für einen Objekttypen existiert, ist ein Fehler aufgetreten." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Prüfen auf Existenz eines Index in einem Objekttyp")
End Try
Return False
End Function
#End Region
#Region "+++++ Allgemeine Funktionen die Informationen zurückliefern +++++"
''' <summary>
''' Liefert True wenn die windream-Session angemeldet ist und False für den Fall, dass die Session nicht eingeloggt ist.
''' </summary>
''' <returns>Anmeldestatus als Boolean</returns>
''' <remarks></remarks>
Public Function IsLoggedIn() As Boolean
Try
Return Me.oSession.aLoggedin
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Es konnte nicht erfolgreich geprüft werden, ob das Programm am windream-Server angemeldted ist." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei Loggedin-Prüfung")
End Try
Return False
End Function
''' <summary>
''' Liefert den Servernamen an dem windream aktuell angemeldet ist.
''' </summary>
''' <returns>Servername als String</returns>
''' <remarks></remarks>
Public Function GetCurrentServer() As String
Try
Return Me.oBrowser.GetCurrentServer 'ClassWindream.oBrowser.GetCurrentServer
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
End Try
Return ""
End Function
'Public Function GetSharedCurrentServer() As String
' Try
' Return ClassWindream.oBrowser.GetCurrentServer
' Catch ex As Exception
' MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
' End Try
' Return ""
'End Function
''' <summary>
''' Liefert das Windream-Laufwerk des windream-Servers, in Form '[Laufwerksbuchstabe]:'. (z.B. 'W:')
''' </summary>
''' <returns>Laufwerksbuchstabe mit Doppelpunkt als String</returns>
''' <remarks></remarks>
'Public Function GetWindreamDriveLetter() As String
' Try
' Dim oControl As AISCONTROLDATACOMLib.AISControlData
' Dim sDrive As String = ""
' oControl = New AISCONTROLDATACOMLib.AISControlData
' sDrive = oControl.GetStringValue(&H10040003)
' Return sDrive & ":"
' Catch ex As Exception
' MsgBox("Fehlernachricht: " & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Laufwerks")
' End Try
' Return ""
'End Function
''' <summary>
''' Liefert den Typen eines Indexes als Integer.
''' </summary>
''' <param name="indexname">Name des zu überprüfenden Indexfeldes</param>
''' <returns>Liefert eine Zahl, die einen Typen beschreibt</returns>
''' <remarks></remarks>
Public Function GetValuesfromAuswahlliste(ByVal _auswahlliste As String) As Object
Try
'Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, indexname)
'Dim vType = oAttribute.getVariableValue("vItems")
'Return vType
Dim oChoiceList = oSession.GetWMObjectByName(WMEntityChoiceList, _auswahlliste)
If Err.Number = 0 And TypeName(oChoiceList) <> "Nothing" Then
Dim Values = oChoiceList
Values = oChoiceList.GetVariableValue("vItems")
Dim anz As Integer = 0
'If LogErrorsOnly = False Then MsgBox("Try getting values for resullist: " & _auswahlliste)
For Each CLItem In Values
If oChoiceList.aName IsNot Nothing Then
anz += 1
End If
Next
Dim strListe(anz - 1)
Dim zahl As Integer = 0
For Each CLItem In Values
'If LogErrorsOnly = False Then MsgBox("Item: " & CLItem)
If oChoiceList.aName IsNot Nothing Then
strListe(zahl) = CLItem
zahl += 1
End If
Next
Return strListe
Else
MsgBox("Auswahlliste: " & _auswahlliste & " nicht gefunden!", MsgBoxStyle.Critical, "Fehler:")
Return Nothing
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in GetValuesfromAuswahlliste:")
Return Nothing
End Try
End Function
#End Region
End Class

View File

@@ -0,0 +1,5 @@
Public Class ClassWorkDoc
Public Shared Function WORK_HISTORY(DT_PROFIL As DataTable, single_doc As Boolean)
End Function
End Class

25896
app/TaskFlow/DD_DMSLiteDataSet.Designer.vb generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,43 @@
Partial Public Class DD_DMSLiteDataSet
Partial Public Class TBPM_PROFILEDataTable
Private Sub TBPM_PROFILEDataTable_ColumnChanging(sender As Object, e As DataColumnChangeEventArgs) Handles Me.ColumnChanging
If (e.Column.ColumnName = Me.ACTIVEColumn.ColumnName) Then
'Benutzercode hier einfügen
End If
End Sub
Private Sub TBPM_PROFILEDataTable_TBPM_PROFILERowChanging(sender As Object, e As TBPM_PROFILERowChangeEvent) Handles Me.TBPM_PROFILERowChanging
End Sub
End Class
Partial Class TBPM_PROFILE_CONTROLSDataTable
Private Sub TBPM_PROFILE_CONTROLSDataTable_ColumnChanging(sender As Object, e As DataColumnChangeEventArgs) Handles Me.ColumnChanging
If (e.Column.ColumnName = Me.ADDED_WHENColumn.ColumnName) Then
'Benutzercode hier einfügen
End If
End Sub
End Class
End Class
Namespace DD_DMSLiteDataSetTableAdapters
Partial Public Class TBPM_PROFILETableAdapter
Private Sub TBPM_PROFILETableAdapter_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed
End Sub
End Class
Partial Public Class TBDD_USERTableAdapter
End Class
Partial Public Class TBPM_PROFILE_INDEXETableAdapter
End Class
End Namespace

View File

@@ -0,0 +1,135 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings>
<TableUISetting Name="TBPM_KONFIGURATION">
<ColumnUISettings>
<ColumnUISetting Name="INTERVALL_CKECK_NO_OF_FILES">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="NumericUpDown" Type="System.Windows.Forms.NumericUpDown" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="GEAENDERTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBDD_USER">
<ColumnUISettings>
<ColumnUISetting Name="ADDED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="CHANGED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBDD_CONNECTION">
<ColumnUISettings>
<ColumnUISetting Name="DATENBANK">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="ERSTELLTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="GEAENDERTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBPM_CONTROL_TABLE">
<ColumnUISettings>
<ColumnUISetting Name="ADDED_WHO">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="ADDED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="CHANGED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="TYPE_COLUMN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBDD_EMAIL_TEMPLATE">
<ColumnUISettings>
<ColumnUISetting Name="ADDED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="CHANGED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBDD_GUI_LANGUAGE_PHRASE">
<ColumnUISettings>
<ColumnUISetting Name="MODULE">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="LANGUAGE">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="CAPT_TYPE">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="ADDED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="CHANGED_WHEN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBPM_PROFILE">
<ColumnUISettings>
<ColumnUISetting Name="TYPE">
<ControlSettings>
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting>
</ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
</TableUISettings>
</DataSetUISetting>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="801" ViewPortY="-84" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBPM_PROFILE_FINAL_INDEXING" ZOrder="14" X="1688" Y="-74" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="2" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
<Shape ID="DesignTable:TBDD_USER" ZOrder="18" X="608" Y="444" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPM_TYPE" ZOrder="19" X="17" Y="113" Height="203" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:TBPM_ERROR_LOG" ZOrder="21" X="443" Y="-87" Height="111" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="21" />
<Shape ID="DesignTable:TBDD_CONNECTION" ZOrder="4" X="408" Y="-78" Height="379" Width="178" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="273" />
<Shape ID="DesignTable:TBPROFILE_USER" ZOrder="15" X="509" Y="-80" Height="267" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TBPM_PROFILE_FILES" ZOrder="3" X="1391" Y="-70" Height="229" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TBWH_CHECK_PROFILE_CONTROLS" ZOrder="23" X="0" Y="-72" Height="168" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="78" />
<Shape ID="DesignTable:TBPM_PROFILE_CONTROLS" ZOrder="12" X="947" Y="400" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBPM_CONTROL_TABLE" ZOrder="1" X="1299" Y="326" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBDD_GROUPS" ZOrder="17" X="19" Y="320" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPROFILE_GROUP" ZOrder="13" X="1054" Y="47" Height="286" Width="277" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:FNPM_GET_FREE_USER_FOR_PROFILE" ZOrder="16" X="807" Y="155" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:TBDD_EMAIL_TEMPLATE" ZOrder="7" X="1645" Y="598" Height="267" Width="287" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:TBDD_GUI_LANGUAGE_PHRASE" ZOrder="11" X="1427" Y="251" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR" ZOrder="10" X="1828" Y="457" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR_SERIES" ZOrder="9" X="1903" Y="311" Height="153" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:VWPM_CHART_TOP5" ZOrder="8" X="1302" Y="15" Height="153" Width="267" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:TBPM_PROFILE" ZOrder="6" X="858" Y="-71" Height="305" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBWH_CONNECTION" ZOrder="24" X="625" Y="114" Height="276" Width="189" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
</Shapes>
<Connectors>
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL1" ZOrder="22" LineWidth="11">
<RoutePoints>
<Point>
<X>1247</X>
<Y>542</Y>
</Point>
<Point>
<X>1299</X>
<Y>542</Y>
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL" ZOrder="20" LineWidth="11">
<RoutePoints>
<Point>
<X>141</X>
<Y>96</Y>
</Point>
<Point>
<X>141</X>
<Y>343</Y>
</Point>
<Point>
<X>1299</X>
<Y>343</Y>
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBPM_PROFILE_CONTROLS_PROFILE" ZOrder="5" LineWidth="11">
<RoutePoints>
<Point>
<X>961</X>
<Y>234</Y>
</Point>
<Point>
<X>961</X>
<Y>400</Y>
</Point>
</RoutePoints>
</Connector>
</Connectors>
</DiagramLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@@ -0,0 +1,996 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>
</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{6ACA1432-09A2-47EF-A704-C0AA73905756}</ProjectGuid>
<OutputType>WinExe</OutputType>
<StartupObject>DD_ProcessManager.My.MyApplication</StartupObject>
<RootNamespace>DD_ProcessManager</RootNamespace>
<AssemblyName>DD_ProcessManager</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>WindowsForms</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>DD_ProcessManager.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<Prefer32Bit>false</Prefer32Bit>
<CodeAnalysisRuleSet>UnusedCode.ruleset</CodeAnalysisRuleSet>
<Optimize>false</Optimize>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>DD_ProcessManager.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>DD_Icons_ICO_PMANAGER_48px.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<ApplicationManifest>My Project\app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="DD_LIB_Standards, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DD_LIB_Standards.dll</HintPath>
</Reference>
<Reference Include="DevExpress.Charts.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.CodeParser.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.DataAccess.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.DataAccess.v19.2.UI, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Diagram.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Dialogs.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Images.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.Pdf.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Pdf.v19.2.Drawing, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.PivotGrid.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Printing.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Office.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.RichEdit.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.RichEdit.v19.2.Export, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Sparkline.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v19.2.UI, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Xpf.PdfViewer.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.Xpo.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraCharts.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraCharts.v19.2.Extensions, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraCharts.v19.2.UI, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraCharts.v19.2.Wizard, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraDiagram.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraDialogs.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraGauges.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraNavBar.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraPdfViewer.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraPrinting.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraReports.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraReports.v19.2.Extensions, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraRichEdit.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraTreeList.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DevExpress.XtraVerticalGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Controls.ChatControl">
<HintPath>..\..\..\DDMonorepo\Controls.ChatControl\bin\Debug\DigitalData.Controls.ChatControl.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.ChatNewConv">
<HintPath>..\..\..\DDMonorepo\Controls.ChatNewConv\bin\Debug\DigitalData.Controls.ChatNewConv.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.DocumentViewer, Version=1.0.3.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDMonorepo\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.LookupGrid, Version=0.0.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.SnapPanel">
<HintPath>..\..\..\DDMonorepo\Controls.SnapPanel\bin\Debug\DigitalData.Controls.SnapPanel.dll</HintPath>
</Reference>
<Reference Include="DigitalData.GUIs.Common">
<HintPath>..\..\..\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\..\DDMonorepo\Modules.Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.1.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDMonorepo\Modules.Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.EDMI.API">
<HintPath>..\..\..\DDMonorepo\Modules.EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Language">
<HintPath>..\..\..\DDMonorepo\Modules.Language\bin\Debug\DigitalData.Modules.Language.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.4.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDMonorepo\Modules.Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="DLLLicenseManager">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll</HintPath>
</Reference>
<Reference Include="FormsUtils">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll</HintPath>
</Reference>
<Reference Include="Independentsoft.Msg, Version=2.0.140.29929, Culture=neutral, PublicKeyToken=76be97fe952f1ec7, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDMonorepo\Controls.DocumentViewer\bin\Debug\Independentsoft.Msg.dll</HintPath>
</Reference>
<Reference Include="Interop.WINDREAMLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll</HintPath>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="Interop.WMOBRWSLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Interop.WMOSRCHLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Interop.WMOTOOLLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Mail, Version=3.0.21189.1553, Culture=neutral, PublicKeyToken=6dc438ab78a525b3, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>P:\Visual Studio Projekte\Bibliotheken\Limilabs\Mail.dll\Mail.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.10\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Oracle.ManagedDataAccess">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath>
</Reference>
<Reference Include="PdfSharp-gdi">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\PdfSharp-gdi.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Data.Linq" />
<Reference Include="System.Data.OracleClient" />
<Reference Include="System.Deployment" />
<Reference Include="System.Design" />
<Reference Include="System.DirectoryServices" />
<Reference Include="System.DirectoryServices.AccountManagement" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Management" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Web.Services" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Drawing" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Compile Include="ApplicationEvents.vb" />
<Compile Include="ClassAnnotation.vb" />
<Compile Include="ClassConfig.vb" />
<Compile Include="ClassControlCreator.vb" />
<Compile Include="ClassDataASorDB.vb" />
<Compile Include="ClassDragDrop.vb" />
<Compile Include="ClassFinalIndex.vb" />
<Compile Include="ClassFinalizeDoc.vb" />
<Compile Include="ClassIDBData.vb" />
<Compile Include="ClassImageSelector.vb" />
<Compile Include="ClassImageValue.vb" />
<Compile Include="ClassIndexListConverter.vb" />
<Compile Include="ClassInit.vb" />
<Compile Include="ClassParamRefresh.vb" />
<Compile Include="ClassRefreshHelper.vb" />
<Compile Include="ClassRegexEditor.vb" />
<Compile Include="ClassSQLEditor.vb" />
<Compile Include="ClassSQLTypeConverter.vb" />
<Compile Include="ClassSQLValue.vb" />
<Compile Include="ClassVectorBehaviourListConverter.vb" />
<Compile Include="ClassWorkDoc.vb" />
<Compile Include="clsPatterns.vb" />
<Compile Include="clsWMDocGrid.vb" />
<Compile Include="FinalIndexDataSet.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>FinalIndexDataSet.xsd</DependentUpon>
</Compile>
<Compile Include="frmAbout.designer.vb">
<DependentUpon>frmAbout.vb</DependentUpon>
</Compile>
<Compile Include="frmAbout.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="ClassAllgemeineFunktionen.vb" />
<Compile Include="ClassDatabase.vb" />
<Compile Include="ClassEmail.vb" />
<Compile Include="ClassEncryption.vb" />
<Compile Include="ClassPMWindream.vb" />
<Compile Include="ClassWindream_allgemein.vb" />
<Compile Include="clsDragInfo.vb" />
<Compile Include="DD_DMSLiteDataSet.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>DD_DMSLiteDataSet.xsd</DependentUpon>
</Compile>
<Compile Include="DD_DMSLiteDataSet.vb">
<DependentUpon>DD_DMSLiteDataSet.xsd</DependentUpon>
</Compile>
<Compile Include="frmAdmin2.Designer.vb">
<DependentUpon>frmAdmin2.vb</DependentUpon>
</Compile>
<Compile Include="frmAdmin2.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmAdminPasswort.Designer.vb">
<DependentUpon>frmAdminPasswort.vb</DependentUpon>
</Compile>
<Compile Include="frmAdminPasswort.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmAnnotations.Designer.vb">
<DependentUpon>frmAnnotations.vb</DependentUpon>
</Compile>
<Compile Include="frmAnnotations.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmChat_NewConversation.Designer.vb">
<DependentUpon>frmChat_NewConversation.vb</DependentUpon>
</Compile>
<Compile Include="frmChat_NewConversation.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmClientLogin.designer.vb">
<DependentUpon>frmClientLogin.vb</DependentUpon>
</Compile>
<Compile Include="frmClientLogin.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmConnection.Designer.vb">
<DependentUpon>frmConnection.vb</DependentUpon>
</Compile>
<Compile Include="frmConnection.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmColumn_Detail.Designer.vb">
<DependentUpon>frmColumn_Detail.vb</DependentUpon>
</Compile>
<Compile Include="frmColumn_Detail.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout.Designer.vb">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
</Compile>
<Compile Include="frmDesignerLayout.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout\Editors\DatasourceEditor.vb" />
<Compile Include="frmDesignerLayout\Editors\DatasourceType.vb" />
<Compile Include="frmDesignerLayout\Editors\frmDatasourceEditor.Designer.vb">
<DependentUpon>frmDatasourceEditor.vb</DependentUpon>
</Compile>
<Compile Include="frmDesignerLayout\Editors\frmDatasourceEditor.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout\Editors\frmStaticListEditor.Designer.vb">
<DependentUpon>frmStaticListEditor.vb</DependentUpon>
</Compile>
<Compile Include="frmDesignerLayout\Editors\frmStaticListEditor.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout\Editors\StaticListEditor.vb" />
<Compile Include="frmDesignerLayout\Loader.vb" />
<Compile Include="frmDesignerLayout\Localization.vb" />
<Compile Include="frmDesignerLayout\Metadata.vb" />
<Compile Include="frmDesignerLayout\Properties\BaseProperties.vb" />
<Compile Include="frmDesignerLayout\Properties\CheckboxProperties.vb" />
<Compile Include="frmDesignerLayout\Properties\ComboboxProperties.vb" />
<Compile Include="frmDesignerLayout\Properties\DatepickerProperties.vb" />
<Compile Include="frmDesignerLayout\Properties\MemoeditProperties.vb" />
<Compile Include="frmDesignerLayout\Properties\TextboxProperties.vb" />
<Compile Include="frmDesignerLayout\Serializer.vb" />
<Compile Include="frmDocView.Designer.vb">
<DependentUpon>frmDocView.vb</DependentUpon>
</Compile>
<Compile Include="frmDocView.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmError.Designer.vb">
<DependentUpon>frmError.vb</DependentUpon>
</Compile>
<Compile Include="frmError.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmFileInfo.Designer.vb">
<DependentUpon>frmFileInfo.vb</DependentUpon>
</Compile>
<Compile Include="frmFileInfo.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmFormDesigner.Designer.vb">
<DependentUpon>frmFormDesigner.vb</DependentUpon>
</Compile>
<Compile Include="frmFormDesigner.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmGhostMode.Designer.vb">
<DependentUpon>frmGhostMode.vb</DependentUpon>
</Compile>
<Compile Include="frmGhostMode.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmInvDashboard.Designer.vb">
<DependentUpon>frmInvDashboard.vb</DependentUpon>
</Compile>
<Compile Include="frmInvDashboard.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmLicense.Designer.vb">
<DependentUpon>frmLicense.vb</DependentUpon>
</Compile>
<Compile Include="frmLicense.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmLoginAdmin.Designer.vb">
<DependentUpon>frmLoginAdmin.vb</DependentUpon>
</Compile>
<Compile Include="frmLoginAdmin.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmMassValidator.Designer.vb">
<DependentUpon>frmMassValidator.vb</DependentUpon>
</Compile>
<Compile Include="frmMassValidator.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmAdministration.Designer.vb">
<DependentUpon>frmAdministration.vb</DependentUpon>
</Compile>
<Compile Include="frmAdministration.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmKonfig.Designer.vb">
<DependentUpon>frmKonfig.vb</DependentUpon>
</Compile>
<Compile Include="frmKonfig.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmMetadataFile.Designer.vb">
<DependentUpon>frmMetadataFile.vb</DependentUpon>
</Compile>
<Compile Include="frmMetadataFile.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmMonitor.Designer.vb">
<DependentUpon>frmMonitor.vb</DependentUpon>
</Compile>
<Compile Include="frmMonitor.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmPreviewHtml.Designer.vb">
<DependentUpon>frmPreviewHtml.vb</DependentUpon>
</Compile>
<Compile Include="frmPreviewHtml.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmRegexEditor.Designer.vb">
<DependentUpon>frmRegexEditor.vb</DependentUpon>
</Compile>
<Compile Include="frmRegexEditor.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmSplash.designer.vb">
<DependentUpon>frmSplash.vb</DependentUpon>
</Compile>
<Compile Include="frmSplash.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmSQL_Admin.Designer.vb">
<DependentUpon>frmSQL_Admin.vb</DependentUpon>
</Compile>
<Compile Include="frmSQL_Admin.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmMain.Designer.vb">
<DependentUpon>frmMain.vb</DependentUpon>
</Compile>
<Compile Include="frmMain.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmSQL_DESIGNER.Designer.vb">
<DependentUpon>frmSQL_DESIGNER.vb</DependentUpon>
</Compile>
<Compile Include="frmSQL_DESIGNER.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmUserKonfig_AddUsers.designer.vb">
<DependentUpon>frmUserKonfig_AddUsers.vb</DependentUpon>
</Compile>
<Compile Include="frmUserKonfig_AddUsers.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmValidator.Designer.vb">
<DependentUpon>frmValidator.vb</DependentUpon>
</Compile>
<Compile Include="frmValidator.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmValidatorSearch.Designer.vb">
<DependentUpon>frmValidatorSearch.vb</DependentUpon>
</Compile>
<Compile Include="frmValidatorSearch.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="ModuleControlProperties.vb" />
<Compile Include="ModuleFinalIndexProperties.vb" />
<Compile Include="ModuleHelper.vb" />
<Compile Include="ModuleMySettings.vb" />
<Compile Include="ModuleRuntimeVariables.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
<Compile Include="XtraReport1.Designer.vb">
<DependentUpon>XtraReport1.vb</DependentUpon>
</Compile>
<Compile Include="XtraReport1.vb">
<SubType>Component</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="frmAbout.resx">
<DependentUpon>frmAbout.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmAdmin2.resx">
<DependentUpon>frmAdmin2.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmAdministration.en-US.resx">
<DependentUpon>frmAdministration.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmAdminPasswort.resx">
<DependentUpon>frmAdminPasswort.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmAnnotations.resx">
<DependentUpon>frmAnnotations.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmChat_NewConversation.resx">
<DependentUpon>frmChat_NewConversation.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmClientLogin.en.resx">
<DependentUpon>frmClientLogin.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmClientLogin.resx">
<DependentUpon>frmClientLogin.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmConnection.resx">
<DependentUpon>frmConnection.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmColumn_Detail.resx">
<DependentUpon>frmColumn_Detail.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout.resx">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout\Editors\frmDatasourceEditor.resx">
<DependentUpon>frmDatasourceEditor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout\Editors\frmStaticListEditor.en-US.resx">
<DependentUpon>frmStaticListEditor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout\Editors\frmStaticListEditor.resx">
<DependentUpon>frmStaticListEditor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDocView.resx">
<DependentUpon>frmDocView.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmError.resx">
<DependentUpon>frmError.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFileInfo.resx">
<DependentUpon>frmFileInfo.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFormDesigner.en-US.resx">
<DependentUpon>frmFormDesigner.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFormDesigner.resx">
<DependentUpon>frmFormDesigner.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmGhostMode.en-US.resx">
<DependentUpon>frmGhostMode.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmGhostMode.fr-FR.resx">
<DependentUpon>frmGhostMode.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmGhostMode.resx">
<DependentUpon>frmGhostMode.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmInvDashboard.resx">
<DependentUpon>frmInvDashboard.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmLicense.resx">
<DependentUpon>frmLicense.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmLoginAdmin.resx">
<DependentUpon>frmLoginAdmin.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.en-US.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.fr-FR.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.fr.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.zh-Hans.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMassValidator.resx">
<DependentUpon>frmMassValidator.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmAdministration.resx">
<DependentUpon>frmAdministration.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmKonfig.resx">
<DependentUpon>frmKonfig.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMetadataFile.resx">
<DependentUpon>frmMetadataFile.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMonitor.resx">
<DependentUpon>frmMonitor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmPreviewHtml.resx">
<DependentUpon>frmPreviewHtml.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmRegexEditor.resx">
<DependentUpon>frmRegexEditor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmSplash.resx">
<DependentUpon>frmSplash.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmSQL_Admin.resx">
<DependentUpon>frmSQL_Admin.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmSQL_DESIGNER.resx">
<DependentUpon>frmSQL_DESIGNER.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmUserKonfig_AddUsers.resx">
<DependentUpon>frmUserKonfig_AddUsers.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmValidator.en-US.resx">
<DependentUpon>frmValidator.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmValidator.fr-FR.resx">
<DependentUpon>frmValidator.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmValidator.resx">
<DependentUpon>frmValidator.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmValidatorSearch.en-US.resx">
<DependentUpon>frmValidatorSearch.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmValidatorSearch.fr-FR.resx">
<DependentUpon>frmValidatorSearch.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmValidatorSearch.resx">
<DependentUpon>frmValidatorSearch.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="My Project\licenses.licx" />
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
</EmbeddedResource>
<EmbeddedResource Include="XtraReport1.resx">
<DependentUpon>XtraReport1.vb</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="DD_DMSLiteDataSet.xsc">
<DependentUpon>DD_DMSLiteDataSet.xsd</DependentUpon>
</None>
<None Include="DD_DMSLiteDataSet.xsd">
<Generator>MSDataSetGenerator</Generator>
<SubType>Designer</SubType>
<LastGenOutput>DD_DMSLiteDataSet.Designer.vb</LastGenOutput>
</None>
<None Include="DD_DMSLiteDataSet.xss">
<DependentUpon>DD_DMSLiteDataSet.xsd</DependentUpon>
</None>
<None Include="FinalIndexDataSet.xsc">
<DependentUpon>FinalIndexDataSet.xsd</DependentUpon>
</None>
<None Include="FinalIndexDataSet.xsd">
<SubType>Designer</SubType>
<Generator>MSDataSetGenerator</Generator>
<LastGenOutput>FinalIndexDataSet.Designer.vb</LastGenOutput>
</None>
<None Include="FinalIndexDataSet.xss">
<DependentUpon>FinalIndexDataSet.xsd</DependentUpon>
</None>
<None Include="My Project\app.manifest" />
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<None Include="Resources\syncreon.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\flag_green.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\flag_orange.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\flag_pink.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\flag_purple.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\flag_red.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\user.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\resultset_first.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\resultset_last.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\resultset_next.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\resultset_previous.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Einstellungen6.ico" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\computer_edit.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\add.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\asterisk_yellow.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\application_form_edit.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\cmb.PNG" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\dtp.PNG" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\lbl.PNG" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\key_go.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\A_1.ico" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\save.bmp" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\logo_bilder.jpg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\puzzle2.ico" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\world_link.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\key.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\key1.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\group_key.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\arrow_refresh.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\page_copy.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\zoom_in.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\zoom_out.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\table_add.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\database_link.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\database_refresh.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\database_save.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\database_go.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\email_go.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\database_go1.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Checkbox.PNG" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\book_open.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\information.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\page_red.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\magifier_zoom_out.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\magifier_zoom_out1.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\zoom_out1.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\user_red.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\checkbox_16xLG.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\TextBox_708.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Label_684.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\DateOrTimePicker_675.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\ComboBox_16xLG.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\refresh_16xLG.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\refresh_16xMD.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Files_7954.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\GoToDeclaration_5576.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Nextrequest_10302.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\delete_12x12.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\PM_mit_slogan.PNG" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\PM_mit_slogan.JPG" />
</ItemGroup>
<ItemGroup>
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
<Content Include="MailLicense.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="PM_ohne_slogan_128px.ico" />
<None Include="Resources\enablesearch.svg" />
<None Include="Resources\bo_unknown.svg" />
<None Include="Resources\delete.svg" />
<None Include="Resources\markcomplete.svg" />
<None Include="Resources\Security_Unlock.svg" />
<None Include="Resources\Security_Lock.svg" />
<None Include="Resources\DD_Icons_ICO_CBWATCHER_48px.png" />
<None Include="Resources\bullet_orange1.png" />
<None Include="Resources\bullet_green1.png" />
<None Include="Resources\bullet_red1.png" />
<None Include="Resources\ExcelWorksheetView_11748.png" />
<None Include="Resources\conversation_color.png" />
<None Include="Resources\conversation.jpg" />
<None Include="Resources\DeleteFilter_5563.png" />
<None Include="Resources\SQL_Letters.png" />
<None Include="Resources\Link_5762.png" />
<None Include="Resources\SendReply.png" />
<None Include="Resources\image.png" />
<None Include="Resources\Image_File.png" />
<None Include="Resources\TextBox.png" />
<None Include="Resources\Monitor_Screen_16xLG.png" />
<None Include="Resources\hide_16x16.png" />
<None Include="Resources\hide_32x32.png" />
<None Include="Resources\show_16x16.png" />
<None Include="Resources\show_32x32.png" />
<None Include="Resources\Hammer_Builder_16xLG.png" />
<None Include="Resources\Search%28Go%29_5718.png" />
<None Include="Resources\properties_16xLG.png" />
<None Include="Resources\Open_6296.png" />
<None Include="Resources\search_glyph.png" />
<None Include="Resources\ID_FILE_PAGE_SETUP.png" />
<None Include="Resources\Properties.png" />
<None Include="Resources\OpenFileDialog_692.png" />
<None Include="Resources\txt.png" />
<None Include="Resources\_blank.png" />
<None Include="Resources\pdf.png" />
<None Include="Resources\dxf.png" />
<None Include="Resources\dwg.png" />
<None Include="Resources\ppt.png" />
<None Include="Resources\xls.png" />
<None Include="Resources\doc.png" />
<None Include="Resources\doc_pdf.png" />
<None Include="Resources\doc_text_image.png" />
<None Include="Resources\doc_excel_csv.png" />
<None Include="Resources\Symbols_Information_16xLG.png" />
<None Include="Resources\action_add_16xLG.png" />
<None Include="Resources\cancel.png" />
<None Include="Resources\shape_square_go.png" />
<None Include="Resources\Checked-outforEdit_Color_13297.png" />
<None Include="Resources\Settings.png" />
<None Include="Resources\WorkItem_16xMD.png" />
<None Include="Resources\ampel-rot.png" />
<None Include="Resources\ampel-gruen.png" />
<None Include="Resources\ampel-gelb.png" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.6.1">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4.6.1 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- 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.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

1675
app/TaskFlow/FinalIndexDataSet.Designer.vb generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings />
</DataSetUISetting>

View File

@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="FinalIndexDataSet" targetNamespace="http://tempuri.org/FinalIndexDataSet.xsd" xmlns:mstns="http://tempuri.org/FinalIndexDataSet.xsd" xmlns="http://tempuri.org/FinalIndexDataSet.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:annotation>
<xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
<DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<Connections>
<Connection AppSettingsObjectName="MySettings" AppSettingsPropertyName="ConnectionString" ConnectionStringObject="" IsAppSettingsProperty="true" Modifier="Assembly" Name="ConnectionString (MySettings)" ParameterPrefix="@" PropertyReference="ApplicationSettings.DD_ProcessManager.My.MySettings.GlobalReference.Default.ConnectionString" Provider="System.Data.SqlClient" />
</Connections>
<Tables>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBPM_PROFILE_FINAL_INDEXINGTableAdapter" GeneratorDataComponentClassName="TBPM_PROFILE_FINAL_INDEXINGTableAdapter" Name="TBPM_PROFILE_FINAL_INDEXING" UserDataComponentName="TBPM_PROFILE_FINAL_INDEXINGTableAdapter">
<MainSource>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.TBPM_PROFILE_FINAL_INDEXING" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>SELECT TBPM_PROFILE_FINAL_INDEXING.GUID, TBPM_PROFILE_FINAL_INDEXING.PROFIL_ID, TBPM_PROFILE_FINAL_INDEXING.CONNECTION_ID, TBPM_PROFILE_FINAL_INDEXING.SQL_COMMAND,
TBPM_PROFILE_FINAL_INDEXING.INDEXNAME, TBPM_PROFILE_FINAL_INDEXING.VALUE, TBPM_PROFILE_FINAL_INDEXING.ADDED_WHO, TBPM_PROFILE_FINAL_INDEXING.ADDED_WHEN,
TBPM_PROFILE_FINAL_INDEXING.CHANGED_WHO, TBPM_PROFILE_FINAL_INDEXING.CHANGED_WHEN, TBPM_PROFILE_FINAL_INDEXING.DESCRIPTION, TBPM_PROFILE_FINAL_INDEXING.ACTIVE,
TBPM_PROFILE_FINAL_INDEXING.PREVENT_DUPLICATES, TBPM_PROFILE_FINAL_INDEXING.ALLOW_NEW_VALUES, TBPM_PROFILE_FINAL_INDEXING.IF_VEKTOR_BEHAVIOUR,
TBPM_PROFILE_FINAL_INDEXING.SEQUENCE, TBPM_PROFILE_FINAL_INDEXING.CONTINUE_INDETERMINED
FROM TBPM_PROFILE_FINAL_INDEXING INNER JOIN
TBPM_PROFILE ON TBPM_PROFILE_FINAL_INDEXING.PROFIL_ID = TBPM_PROFILE.GUID
WHERE (TBPM_PROFILE.NAME = @NAME)
ORDER BY TBPM_PROFILE_FINAL_INDEXING.SEQUENCE</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="DD_ECM_TEST.dbo.TBPM_PROFILE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="PROFIL_ID" DataSetColumn="PROFIL_ID" />
<Mapping SourceColumn="CONNECTION_ID" DataSetColumn="CONNECTION_ID" />
<Mapping SourceColumn="SQL_COMMAND" DataSetColumn="SQL_COMMAND" />
<Mapping SourceColumn="INDEXNAME" DataSetColumn="INDEXNAME" />
<Mapping SourceColumn="VALUE" DataSetColumn="VALUE" />
<Mapping SourceColumn="ADDED_WHO" DataSetColumn="ADDED_WHO" />
<Mapping SourceColumn="ADDED_WHEN" DataSetColumn="ADDED_WHEN" />
<Mapping SourceColumn="CHANGED_WHO" DataSetColumn="CHANGED_WHO" />
<Mapping SourceColumn="CHANGED_WHEN" DataSetColumn="CHANGED_WHEN" />
<Mapping SourceColumn="DESCRIPTION" DataSetColumn="DESCRIPTION" />
<Mapping SourceColumn="ACTIVE" DataSetColumn="ACTIVE" />
<Mapping SourceColumn="PREVENT_DUPLICATES" DataSetColumn="PREVENT_DUPLICATES" />
<Mapping SourceColumn="ALLOW_NEW_VALUES" DataSetColumn="ALLOW_NEW_VALUES" />
<Mapping SourceColumn="IF_VEKTOR_BEHAVIOUR" DataSetColumn="IF_VEKTOR_BEHAVIOUR" />
<Mapping SourceColumn="SEQUENCE" DataSetColumn="SEQUENCE" />
<Mapping SourceColumn="CONTINUE_INDETERMINED" DataSetColumn="CONTINUE_INDETERMINED" />
</Mappings>
<Sources>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="" DbObjectType="Unknown" GenerateShortCommands="true" GeneratorSourceName="DeleteFinalIndex" Modifier="Public" Name="DeleteFinalIndex" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="DeleteFinalIndex">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>DELETE FROM TBPM_PROFILE_FINAL_INDEXING
WHERE (GUID = @guid)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="guid" ColumnName="GUID" DataSourceName="DD_ECM_TEST.dbo.TBPM_PROFILE_FINAL_INDEXING" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@guid" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
</DbSource>
</Sources>
</TableAdapter>
</Tables>
<Sources />
</DataSource>
</xs:appinfo>
</xs:annotation>
<xs:element name="FinalIndexDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="FinalIndexDataSet" msprop:Generator_UserDSName="FinalIndexDataSet">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="TBPM_PROFILE_FINAL_INDEXING" msprop:Generator_TableClassName="TBPM_PROFILE_FINAL_INDEXINGDataTable" msprop:Generator_TableVarName="tableTBPM_PROFILE_FINAL_INDEXING" msprop:Generator_RowChangedName="TBPM_PROFILE_FINAL_INDEXINGRowChanged" msprop:Generator_TablePropName="TBPM_PROFILE_FINAL_INDEXING" msprop:Generator_RowDeletingName="TBPM_PROFILE_FINAL_INDEXINGRowDeleting" msprop:Generator_RowChangingName="TBPM_PROFILE_FINAL_INDEXINGRowChanging" msprop:Generator_RowEvHandlerName="TBPM_PROFILE_FINAL_INDEXINGRowChangeEventHandler" msprop:Generator_RowDeletedName="TBPM_PROFILE_FINAL_INDEXINGRowDeleted" msprop:Generator_RowClassName="TBPM_PROFILE_FINAL_INDEXINGRow" msprop:Generator_UserTableName="TBPM_PROFILE_FINAL_INDEXING" msprop:Generator_RowEvArgName="TBPM_PROFILE_FINAL_INDEXINGRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="PROFIL_ID" msprop:Generator_ColumnVarNameInTable="columnPROFIL_ID" msprop:Generator_ColumnPropNameInRow="PROFIL_ID" msprop:Generator_ColumnPropNameInTable="PROFIL_IDColumn" msprop:Generator_UserColumnName="PROFIL_ID" type="xs:int" />
<xs:element name="CONNECTION_ID" msprop:Generator_ColumnVarNameInTable="columnCONNECTION_ID" msprop:Generator_ColumnPropNameInRow="CONNECTION_ID" msprop:Generator_ColumnPropNameInTable="CONNECTION_IDColumn" msprop:Generator_UserColumnName="CONNECTION_ID" type="xs:short" />
<xs:element name="SQL_COMMAND" msprop:Generator_ColumnVarNameInTable="columnSQL_COMMAND" msprop:Generator_ColumnPropNameInRow="SQL_COMMAND" msprop:Generator_ColumnPropNameInTable="SQL_COMMANDColumn" msprop:Generator_UserColumnName="SQL_COMMAND">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2147483647" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="INDEXNAME" msprop:Generator_ColumnVarNameInTable="columnINDEXNAME" msprop:Generator_ColumnPropNameInRow="INDEXNAME" msprop:Generator_ColumnPropNameInTable="INDEXNAMEColumn" msprop:Generator_UserColumnName="INDEXNAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VALUE" msprop:Generator_ColumnVarNameInTable="columnVALUE" msprop:Generator_ColumnPropNameInRow="VALUE" msprop:Generator_ColumnPropNameInTable="VALUEColumn" msprop:Generator_UserColumnName="VALUE">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ADDED_WHO" msprop:Generator_ColumnVarNameInTable="columnADDED_WHO" msprop:Generator_ColumnPropNameInRow="ADDED_WHO" msprop:Generator_ColumnPropNameInTable="ADDED_WHOColumn" msprop:Generator_UserColumnName="ADDED_WHO">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="30" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ADDED_WHEN" msprop:Generator_ColumnVarNameInTable="columnADDED_WHEN" msprop:Generator_ColumnPropNameInRow="ADDED_WHEN" msprop:Generator_ColumnPropNameInTable="ADDED_WHENColumn" msprop:Generator_UserColumnName="ADDED_WHEN" type="xs:dateTime" />
<xs:element name="CHANGED_WHO" msprop:Generator_ColumnVarNameInTable="columnCHANGED_WHO" msprop:Generator_ColumnPropNameInRow="CHANGED_WHO" msprop:Generator_ColumnPropNameInTable="CHANGED_WHOColumn" msprop:Generator_UserColumnName="CHANGED_WHO" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="30" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CHANGED_WHEN" msprop:Generator_ColumnVarNameInTable="columnCHANGED_WHEN" msprop:Generator_ColumnPropNameInRow="CHANGED_WHEN" msprop:Generator_ColumnPropNameInTable="CHANGED_WHENColumn" msprop:Generator_UserColumnName="CHANGED_WHEN" type="xs:dateTime" minOccurs="0" />
<xs:element name="DESCRIPTION" msprop:Generator_ColumnVarNameInTable="columnDESCRIPTION" msprop:Generator_ColumnPropNameInRow="DESCRIPTION" msprop:Generator_ColumnPropNameInTable="DESCRIPTIONColumn" msprop:Generator_UserColumnName="DESCRIPTION">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2147483647" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ACTIVE" msprop:Generator_ColumnVarNameInTable="columnACTIVE" msprop:Generator_ColumnPropNameInRow="ACTIVE" msprop:Generator_ColumnPropNameInTable="ACTIVEColumn" msprop:Generator_UserColumnName="ACTIVE" type="xs:boolean" />
<xs:element name="PREVENT_DUPLICATES" msprop:Generator_ColumnVarNameInTable="columnPREVENT_DUPLICATES" msprop:Generator_ColumnPropNameInRow="PREVENT_DUPLICATES" msprop:Generator_ColumnPropNameInTable="PREVENT_DUPLICATESColumn" msprop:Generator_UserColumnName="PREVENT_DUPLICATES" type="xs:boolean" />
<xs:element name="ALLOW_NEW_VALUES" msprop:Generator_ColumnVarNameInTable="columnALLOW_NEW_VALUES" msprop:Generator_ColumnPropNameInRow="ALLOW_NEW_VALUES" msprop:Generator_ColumnPropNameInTable="ALLOW_NEW_VALUESColumn" msprop:Generator_UserColumnName="ALLOW_NEW_VALUES" type="xs:boolean" />
<xs:element name="IF_VEKTOR_BEHAVIOUR" msprop:Generator_ColumnVarNameInTable="columnIF_VEKTOR_BEHAVIOUR" msprop:Generator_ColumnPropNameInRow="IF_VEKTOR_BEHAVIOUR" msprop:Generator_ColumnPropNameInTable="IF_VEKTOR_BEHAVIOURColumn" msprop:Generator_UserColumnName="IF_VEKTOR_BEHAVIOUR">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="25" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SEQUENCE" msprop:Generator_ColumnVarNameInTable="columnSEQUENCE" msprop:Generator_ColumnPropNameInRow="SEQUENCE" msprop:Generator_ColumnPropNameInTable="SEQUENCEColumn" msprop:Generator_UserColumnName="SEQUENCE" type="xs:unsignedByte" default="0" />
<xs:element name="CONTINUE_INDETERMINED" msprop:Generator_ColumnVarNameInTable="columnCONTINUE_INDETERMINED" msprop:Generator_ColumnPropNameInRow="CONTINUE_INDETERMINED" msprop:Generator_ColumnPropNameInTable="CONTINUE_INDETERMINEDColumn" msprop:Generator_UserColumnName="CONTINUE_INDETERMINED" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBPM_PROFILE_FINAL_INDEXING" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
</xs:element>
</xs:schema>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="0" ViewPortY="0" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBPM_PROFILE_FINAL_INDEXING" ZOrder="1" X="93" Y="35" Height="362" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="292" />
</Shapes>
<Connectors />
</DiagramLayout>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<License>
<Id>4dc5ef40-f1a9-468b-994c-b7ed600ad878</Id>
<ProductName>Mail.dll</ProductName>
<SubscriptionUntil>2022-07-29</SubscriptionUntil>
<RegisteredTo>Digital Data GmbH</RegisteredTo>
<LicenseType>single developer</LicenseType>
<BuyerName>Digital Data GmbH</BuyerName>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<Reference URI="">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>75MRtl4ipYelIZYlpT8O7QDX9Zc=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>Raxfkz6DfQVs/sMvH+F2nH0eHXD8FoUFSdP3t7AgBUdpABJQx86srlyuMSEhXPlc1THCqPouEVob4RsWnd9OXvTiPPSOUSK9zuNG6uz93KLAhpSD5PraAgBCF4jwZArlAp7aCNfZpHqQ3w6TRHS+CfravUU0AHHG3MZ1ZcRkGuo=</SignatureValue>
</Signature>
</License>

View File

@@ -0,0 +1,356 @@
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing.Design
Imports System.Globalization
Imports DigitalData.Modules.Language.Utils
Public Module ModuleControlProperties
Public Enum IndexTypes
SimpleIndex = 0
VectorIndex = 1
End Enum
Public Class BaseProperties
Private _size As Size
Private _font As Font
<DisplayName("Changed At")>
<Category(ClassConstants.CAT_INFORMATION)>
<[ReadOnly](True)>
Public Property ChangedAt As Date
<DisplayName("Changed Who")>
<Category(ClassConstants.CAT_INFORMATION)>
<[ReadOnly](True)>
Public Property ChangedWho As String
<Category(ClassConstants.CAT_GENERAL)>
<[ReadOnly](True)>
Public Property ID() As Integer
<Category(ClassConstants.CAT_GENERAL)>
Public Property Name() As String
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Location() As Point
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Size() As Size
Get
Return _size
End Get
Set(value As Size)
If (value.Height <= 0) Then
value.Height = 1
End If
If (value.Width <= 20) Then
value.Width = 20
End If
_size = value
End Set
End Property
<Category(ClassConstants.CAT_DISPLAY)>
<TypeConverter(GetType(FontConverter))>
Public Overridable Property Font As Font
Get
Return _font
End Get
Set(value As Font)
_font = value
End Set
End Property
<DisplayName("Font Color")>
<Category(ClassConstants.CAT_DISPLAY)>
Public Property TextColor As Color
Class FontConverter
Inherits TypeConverter
Public Overrides Function ConvertTo(context As ITypeDescriptorContext, culture As CultureInfo, value As Object, destinationType As Type) As Object
Dim font = DirectCast(value, Font)
Return $"{font.Name}, {font.Size}"
End Function
End Class
End Class
Public Class InputProperties
Inherits BaseProperties
Private _index_type As String
Private _sql_command As String
Friend _sql_connection As Integer = 0
Private _Enable_SQL As String
Private _Enable_SQL_ONLOAD As String
Private _default_value
Friend _set_control_data As String
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property Active() As Boolean
<Category(ClassConstants.CAT_VALIDATION)>
Public Property Required() As Boolean
<DisplayName("Read Only")>
<Category(ClassConstants.CAT_VALIDATION)>
Public Property [ReadOnly]() As Boolean
<DisplayName("Save Changes On Read Only")>
<Description("Stores data of Read Only fields when document is saved. Default behaviour is NOT to save Read Only fields.")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property [SaveChangeOnReadOnly]() As Boolean
<Browsable(False)>
<Category(ClassConstants.CAT_GENERAL)>
Public Property IndexType() As IndexTypes
''' <summary>
''' Diese Eigenschaft enthält die auswählbaren Indicies, die für das Control verfügbar sind. Wird nicht direkt angezeigt.
''' </summary>
<Browsable(False)>
Public Property Indicies() As List(Of String)
''' <summary>
''' Diese Eigenschaft enthält des ausgewählten Index
''' </summary>
<Category(ClassConstants.CAT_GENERAL)>
<TypeConverter(GetType(IndexListConverter))>
Public Property Index() As String
<DisplayName("SQL Command")>
<Category(ClassConstants.CAT_DATA)>
Public Property SQLCommand() As SQLValue
Get
Return New SQLValue(NotNull(_sql_command, ""), _sql_connection)
End Get
Set(ByVal value As SQLValue)
_sql_command = value.Value
SQLConnection = value.ConnectionId
End Set
End Property
<DisplayName("SQL Connection")>
<Category(ClassConstants.CAT_INFORMATION)>
<[ReadOnly](True)>
Public Property SQLConnection() As Integer
Get
Return _sql_connection
End Get
Set(value As Integer)
_sql_connection = value
End Set
End Property
<DisplayName("Enable On Change SQL")>
<Description("SQL Command that determines if a control should be enabled/disabled when another, referenced control changes. Should return 0 or 1. Can include a Control-Placeholder.")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property Enable_SQL() As SQLValue
Get
Return New SQLValue(NotNull(_Enable_SQL, ""), _sql_connection)
End Get
Set(ByVal value As SQLValue)
_Enable_SQL = value.Value
SQLConnection = value.ConnectionId
End Set
End Property
<DisplayName("Enable On Load SQL")>
<Description("SQL Command that determines if a control should be enabled/disabled when the form loads. Should return 0 or 1. Can include a Control-Placeholder.")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property Enable_SQL_OnLoad() As SQLValue
Get
Return New SQLValue(NotNull(_Enable_SQL_ONLOAD, ""), _sql_connection)
End Get
Set(ByVal value As SQLValue)
_Enable_SQL_ONLOAD = value.Value
SQLConnection = value.ConnectionId
End Set
End Property
<DisplayName("Default Value")>
<Category(ClassConstants.CAT_DATA)>
Public Property DefaultValue() As String
Get
Return _default_value
End Get
Set(value As String)
_default_value = value
End Set
End Property
End Class
Public Class InputPropertiesWithControlData
Inherits InputProperties
<DisplayName("Set Control Data SQL")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property SetControlData As SQLValue
Get
Return New SQLValue(_set_control_data, _sql_connection)
End Get
Set(value As SQLValue)
_set_control_data = value.Value
SQLConnection = value.ConnectionId
End Set
End Property
End Class
Public Class TextboxProperties
Inherits InputPropertiesWithControlData
<DisplayName("Regex Pattern")>
<Category(ClassConstants.CAT_VALIDATION)>
<Editor(GetType(ClassRegexEditor), GetType(UITypeEditor))>
Public Property Regex As String
<DisplayName("Regex Failure Message")>
<Category(ClassConstants.CAT_VALIDATION)>
<Editor(GetType(MultilineStringEditor), GetType(UITypeEditor))>
Public Property RegexMessage As String
End Class
Public Class LabelProperties
Inherits BaseProperties
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Text() As String
End Class
Public Class CheckboxProperties
Inherits InputPropertiesWithControlData
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Text() As String
End Class
Public Class ComboboxProperties
Inherits InputPropertiesWithControlData
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Text() As String
<Browsable(False)>
Public Property ChoiceLists() As List(Of String)
<DisplayName("Static Choice List")>
<Category(ClassConstants.CAT_DATA)>
<TypeConverter(GetType(ChoiceListConverter))>
Public Property ChoiceList() As String
<DisplayName("Display As Lookup Control")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property DisplayAsLookUpControl As Boolean
Public Class ChoiceListConverter
Inherits TypeConverter
Public Overrides Function GetStandardValuesSupported(context As ITypeDescriptorContext) As Boolean
Return True
End Function
Public Overrides Function GetStandardValues(context As ITypeDescriptorContext) As StandardValuesCollection
Dim choiceListList = DirectCast(context.Instance, ComboboxProperties).ChoiceLists
Dim values As New StandardValuesCollection(choiceListList)
Return values
End Function
Public Overrides Function ConvertTo(context As ITypeDescriptorContext, culture As CultureInfo, value As Object, destinationType As Type) As Object
If IsNothing(value) Then
Return ""
Else
Return value.ToString()
End If
End Function
End Class
End Class
Public Class DatepickerProperties
Inherits InputProperties
End Class
Public Class GridViewProperties
Inherits InputProperties
End Class
Public Class GridControlProperties
Inherits InputProperties
<DisplayName("Allow Adding New Values")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property AllowAddNewValues As Boolean
End Class
Public Class ButtonProperties
Inherits InputProperties
Private _image_Value As String
Private _Override_SQL As String
<Category(ClassConstants.CAT_DISPLAY)>
Public Property Text() As String
<DisplayName("Image")>
<Category(ClassConstants.CAT_DISPLAY)>
Public Property CtrlImage() As ImageValue
Get
Return New ImageValue(NotNull(_image_Value, ""))
End Get
Set(ByVal value As ImageValue)
_image_Value = value.Value
End Set
End Property
<DisplayName("Completion Override SQL")>
<Category(ClassConstants.CAT_VALIDATION)>
Public Property Override_SQL() As SQLValue
Get
Return New SQLValue(NotNull(_Override_SQL, ""), _sql_connection)
End Get
Set(ByVal value As SQLValue)
_Override_SQL = value.Value
SQLConnection = value.ConnectionId
End Set
End Property
End Class
Public Class LookupControlProperties
Inherits InputPropertiesWithControlData
<DisplayName("Multi Select")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property MultiSelect As Boolean
<DisplayName("Allow Adding New Values")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property AllowAddNewValues As Boolean
<DisplayName("Prevent Duplicates")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property PreventDuplicates As Boolean
<DisplayName("Static Choice List")>
<Category(ClassConstants.CAT_DATA)>
Public Property ChoiceList() As String
<DisplayName("Display As Combobox Control")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property DisplayAsComboBox As Boolean
End Class
Public Class LineLabelProperties
Inherits BaseProperties
<Browsable(False)>
Public Overrides Property Font As Font
Get
Return Nothing
End Get
Set(value As Font)
End Set
End Property
End Class
End Module

View File

@@ -0,0 +1,191 @@
Imports System.ComponentModel
Imports System.Drawing.Design
Imports System.Globalization
Imports FormsUtils
Module ModuleFinalIndexProperties
<TypeConverter(GetType(PropertiesDeluxeTypeConverter))>
Public Class FinalIndexProperties
<DisplayName("ID")>
<Category(ClassConstants.CAT_GENERAL)>
<[ReadOnly](True)>
Public Property GUID As Integer
<DisplayName("Connection ID")>
<Category(ClassConstants.CAT_INFORMATION)>
<[ReadOnly](True)>
Public Property ConnectionId As Integer
<Category(ClassConstants.CAT_GENERAL)>
Public Property Description As String
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property Active As Boolean
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property Sequence As Integer = 0
<DisplayName("Continue On Indifferent State")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property ContinueOnIndifferentState As Boolean
''' <summary>
''' Eigenschaft, die den SQL Editor anzeigt
''' </summary>
<DisplayName("SQL Command")>
<Category(ClassConstants.CAT_DATA)>
Public Property SQLCommand As SQLValue
' Eigenschaften für die verschiedenen Index-Typen
<DisplayName("Value")>
<Category(ClassConstants.CAT_DATA)>
<PropertyAttributesProvider("IndexTypeStringProvider")>
Public Property StringValue As String
<DisplayName("Value")>
<Category(ClassConstants.CAT_DATA)>
<PropertyAttributesProvider("IndexTypeBooleanProvider")>
Public Property BoolValue As Boolean
<DisplayName("Value")>
<Category(ClassConstants.CAT_DATA)>
<PropertyAttributesProvider("IndexTypeFloatProvider")>
Public Property FloatValue As Double
<DisplayName("Value")>
<Category(ClassConstants.CAT_DATA)>
<PropertyAttributesProvider("IndexTypeDateProvider")>
Public Property DateValue As Date
<DisplayName("Value")>
<Category(ClassConstants.CAT_DATA)>
<PropertyAttributesProvider("IndexTypeIntegerProvider")>
Public Property IntegerValue As Integer
<DisplayName("Index")>
<Category(ClassConstants.CAT_GENERAL)>
<TypeConverter(GetType(IndexListConverter))>
Public Property IndexName As String
<DisplayName("Vector Index")>
<Category(ClassConstants.CAT_INFORMATION)>
<[ReadOnly](True)>
Public Property VectorIndex As Boolean
<Category(ClassConstants.CAT_BEHAVIOUR)>
<DisplayName("Allow Multivalues")>
<PropertyAttributesProvider("VectorIndexBooleanProvider")>
Public Property AllowAddNewValues As Boolean
<Category(ClassConstants.CAT_BEHAVIOUR)>
<DisplayName("Index Behaviour")>
<TypeConverter(GetType(ClassVectorBehaviourListConverter))>
<PropertyAttributesProvider("VectorIndexOnlyProvider")>
Public Property VectorBehaviour As String
<DisplayName("Prevent Duplicates")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
<PropertyAttributesProvider("VectorIndexBooleanProvider")>
Public Property PreventDuplicates As Boolean
' Eigenschaften für die Liste der Indicies
<Browsable(False)>
Public Property Indicies As List(Of String)
<Browsable(False)>
Public Property IndiciesType As List(Of Integer)
<Browsable(False)>
Public Property VectorBehaviourType As List(Of String)
Public Sub VectorIndexBooleanProvider(attrs As PropertyAttributes)
MaybeSetReadOnlyIfNotVectorIndex(attrs)
End Sub
Public Sub IndexTypeBooleanProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_BOOLEAN, FINALINDICES.INDEX_TYPE_VECTOR_BOOLEAN})
MaybeSetReadOnlyIfSQLHasNoValue(attrs)
End Sub
Public Sub IndexTypeStringProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_STRING, FINALINDICES.INDEX_TYPE_VECTOR_STRING})
MaybeSetReadOnlyIfSQLHasNoValue(attrs)
End Sub
Public Sub IndexTypeFloatProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_FLOAT})
MaybeSetReadOnlyIfSQLHasNoValue(attrs)
End Sub
Public Sub IndexTypeIntegerProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_INTEGER, FINALINDICES.INDEX_TYPE_VECTOR_INTEGER_64})
MaybeSetReadOnlyIfSQLHasNoValue(attrs)
End Sub
Public Sub IndexTypeDateProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_DATE, FINALINDICES.INDEX_TYPE_VECTOR_DATE})
MaybeSetReadOnlyIfSQLHasNoValue(attrs)
End Sub
Public Sub VectorIndexOnlyProvider(attrs As PropertyAttributes)
MaybeSetBrowsable(attrs, {FINALINDICES.INDEX_TYPE_VECTOR_STRING})
End Sub
Public Sub MaybeSetReadOnlyIfSQLHasNoValue(attrs As PropertyAttributes)
Dim hasSQLValue As Boolean = (SQLCommand.Value <> String.Empty)
If hasSQLValue Then
attrs.IsReadOnly = True
Else
attrs.IsReadOnly = False
End If
End Sub
Public Sub MaybeSetReadOnlyIfNotVectorIndex(attrs As PropertyAttributes)
' Get index (position in array) for selected index (windream)
Dim oIndex As Integer = Indicies.IndexOf(IndexName)
If oIndex < 0 Then
attrs.IsReadOnly = True
Exit Sub
End If
' get type of windream index
Dim oType As Integer = IndiciesType.Item(oIndex)
Dim oVectoryTypes = {
FINALINDICES.INDEX_TYPE_VECTOR_DATE,
FINALINDICES.INDEX_TYPE_VECTOR_BOOLEAN,
FINALINDICES.INDEX_TYPE_VECTOR_INTEGER_64,
FINALINDICES.INDEX_TYPE_VECTOR_INTEGER,
FINALINDICES.INDEX_TYPE_VECTOR_STRING,
FINALINDICES.INDEX_TYPE_VECTOR_CURRENCY,
FINALINDICES.INDEX_TYPE_VECTOR_FLOAT,
FINALINDICES.INDEX_TYPE_VECTOR_DATETIME
}
' if type of index is not a vector, set attribute to read only
If oVectoryTypes.Contains(oType) Then
attrs.IsReadOnly = False
Else
attrs.IsReadOnly = True
End If
End Sub
Public Sub MaybeSetBrowsable(attrs As PropertyAttributes, indexType As Integer())
Dim i As Integer = Indicies.IndexOf(IndexName)
' IndexName wurde nicth gefunden oder ist leerer/ungültiger String
If i < 0 Then
attrs.IsBrowsable = False
Exit Sub
End If
Dim type As Integer = IndiciesType.Item(i)
If indexType.Contains(type) Then
attrs.IsBrowsable = True
Else
attrs.IsBrowsable = False
End If
End Sub
End Class
End Module

View File

@@ -0,0 +1,80 @@
Module ModuleHelper
Public Function ByteArrayToBitmap(bytearray() As Byte) As Bitmap
Try
Dim oBitmap As Bitmap
Using oStream As New IO.MemoryStream(bytearray)
oBitmap = New Bitmap(oStream)
End Using
Return oBitmap
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
Public Function StringToByteArray(ByVal hex As String) As Byte()
Dim NumberChars As Integer = hex.Length
Dim bytes(NumberChars / 2) As Byte
For i As Integer = 0 To NumberChars - 1 Step 2
bytes(i / 2) = Convert.ToByte(hex.Substring(i, 2), 16)
Next
Return bytes
End Function
Public Function BitmapToByteArray(bitmap As Bitmap) As Byte()
Dim bytearray As Byte()
Using stream As New System.IO.MemoryStream
bitmap.Save(stream, bitmap.RawFormat)
bytearray = stream.ToArray()
End Using
Return bytearray
End Function
''' <summary>
''' Versucht einen String in einen Boolean zu konvertieren
''' </summary>
''' <param name="str">Der zu konvertierende String</param>
''' <returns>Den umgewandelten Wert oder False</returns>
Public Function StrToBool(str As String) As Boolean
Dim result As Boolean = False
Try
result = Convert.ToBoolean(str)
Catch ex As Exception
LOGGER.Error(ex)
result = False
End Try
Return result
End Function
''' <summary>
''' Konvertiert eine Zahl in die entsprechende Farbe
''' </summary>
Public Function IntToColor(int As Integer) As Color
Return ColorTranslator.FromWin32(int)
End Function
Public Function PrepareLogMessage(LogMessage As String) As String
Dim oLogSplit As String()
oLogSplit = LogMessage.Split("|")
If oLogSplit.Count < 3 Then
Return LogMessage
Else
Dim omsg = oLogSplit(2).
Replace("'", "''").
Replace("\\n", "").
Replace(Chr(13), "").
Replace(Chr(10), "")
Return omsg
End If
End Function
End Module

View File

@@ -0,0 +1,26 @@
Module ModuleMySettings
Public Property MODULE_PM As String = "Process-Manager"
Public Property SOURCE_INIT As Boolean = False
Public Property CONNECTION_STRING_ECM As String = ""
Public Property CONNECTION_STRING_IDB As String = ""
Public Property IDB_ACTIVE As Boolean = False
Public Property EDMIAppServerActive As Boolean = False
Public Property OPERATION_MODE_FS As String = "PURE_WM"
Public Property IDB_USES_WMFILESTORE As Boolean = False
Public Property BASIC_CONF_VISIBLE As Boolean = True
Public Property IDB_DOC_DATA_SQL As String
Public Property IDB_DT_DOC_DATA As DataTable
Public Property NO_DETAIL_PROFILES As Boolean = False
' Debug Settings
Public Property DEBUG As Boolean = False
Public Property INDEX_DMS_ERSTELLT = "DMS erstellt"
Public Property INDEX_DMS_ERSTELLT_ZEIT = "DMS erstellt (Zeit)"
' These settings are loaded from the database
Public Property VERSION_DELIMITER As String = "~"
Public Property FILE_DELIMITER As String = "_"
Public Property WMSESSION_STARTSTOP_STARTUP As Boolean = False
End Module

View File

@@ -0,0 +1,176 @@
Imports WINDREAMLib
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.Windream
Module ModuleRuntimeVariables
Public Const ConstAHWorkflow_BlindFile = 2
Public Const ConstAHWorkflow_IDB = 22
Public Const ConstWorkflowTypeRegular = 99
Public Property DatabaseECM As MSSQLServer
Public Property DatabaseIDB As MSSQLServer
Public Property EDMIService As New State.ServiceState
Public Property User As New State.UserState
' Diese Werte müssen später zur Laufzeit geladen werden
Public Property ActiveWorkflowType As Integer
Public Property BASEDATA_DT_TBDD_CONNECTION As DataTable
Public Property BASEDATA_DT_TBDD_SQL_COMMANDS As DataTable
Public Property BASEDATA_DT_CONFIG As DataTable
Public Property BASEDATA_DTGRID_GROUPS As DataTable
Public Property BASEDATA_DT_CHARTS As DataTable
Public Property BASEDATA_DT_GUI_LANGUAGE_PHRASES As DataTable
Public Property BASEDATA_DT_PROFILES_SEARCHES_DOC As DataTable
Public Property DT_FILTERED_PROFILE_SEARCHES_DOC As DataTable
Public Property BASEDATA_DT_PROFILES_SEARCHES_SQL As DataTable
Public Property BASEDATA_DT_PROFILE_SEARCHES_SQL As DataTable
Public Property BASEDATA_DT_VW_PROFILE_USER As DataTable
Public Property CURRENT_ProfilGUID As Integer
Public Property CURRENT_ProfilName As String
Public Property CURRENT_PROFILE_LOG_INDEX As String
Public Property PROFILE_SHOW_DOCUMENT As Boolean = True
Public Property CURRENT_DOC_GUID As Int64
Public Property CURRENT_DOC_ID As Int64
Public Property CURRENT_DOC_CREATION_DATE As String
Public Property CURRENT_DOC_CREATION_TIME As String
Public Property CURRENT_CONVERSATION_NEW As Long
Public Property CURRENT_JUMP_DOC_GUID As Int64
Public Property CURRENT_WMFILE As WMObject
Public Property CURRENT_DOC_PATH As String
Public Property ERROR_STATE = ""
Public Property USER_USERNAME As String
Public Property CHANGES_FORM_DESIGN As Boolean = False
Public Property USER_IS_ADMIN As Boolean = False
Public Property USER_ID = 0
Public Property USER_PRENAME = ""
Public Property USER_SURNAME = ""
Public Property USER_SHORTNAME = ""
Public Property USER_EMAIL = ""
Public Property USER_LANGUAGE As String = "de-DE"
Public Property USER_DATE_FORMAT As String
Public Property USER_EXISTS = False
Public Property USER_IN_MODULE = False
Public Property USER_RIGHT_FILE_DELETE As Boolean = False
Public Property USER_RIGHT_VIEW_ONLY As Boolean = False
Public Property USER_RIGHT2 As Boolean = False
Public Property USER_RIGHT3 As Boolean = False
Public Property USER_RIGHT4 As Boolean = False
Public Property USER_CONFIG_DEBUG As Boolean = False
Public Property USER_GHOST_MODE_ACTIVE As Boolean = False
Public Property USER_GHOST_MODE_USRNAME As String = ""
Public Property FORCE_LAYOUT_OVERVIEW As Boolean = False
Public Property SHOW_CHARTS As Boolean = True
Public Property SHOW_MASS_VALIDATOR As Boolean = True
Public Property WORKING_MODE As String = ""
Public Property MONITORING_ACTIVE As Boolean = False
Public Property GHOSTMODE_ACTIVE As Boolean = False
Public Property RIBBON_COLOR_SCHEME As String = ""
Public Property ADDITIONAL_TITLE As String = ""
Public Property CONV_IDENTIFICATION As String = "Username"
Public Property POPUP_REMINDER_ACTIVE As Boolean = True
Public Property INACTIVITY_DURATION As Integer = 0
Public Property INACTIVITYRecognized As Boolean = False
Public Property LAST_EDITED_COLUMN As String = "NONE"
Public Property LAST_ADDED_COLUMN As String = "NONE"
Public Property USE_APPSERVER As Boolean = False
Public Property SEARCH1 As String = ""
Public Property SEARCH2 As String = ""
Public Property TL_ICON As Boolean = True
Public Property TITLE_NOTIFICATIONS As String = ""
Public Property START_CW As Boolean = False
Public Property START_CW_CAPTION As String
Public Property START_CW_LOC_VARIANT As String = 0
Public Property RibbonPageCustTitle As String = ""
Public Property RibbonPageCustItm1 As String = ""
Public Property ButtonExport2Folder_Caption As String = ""
Public Property ButtonExport2Folder_RootFolder As String = ""
Public Property LICENSE_COUNT As Integer = 0
Public Property LICENSE_EXPIRED As Boolean = False
Public Property LICENSE_PROFILES As Integer = 0
Public Property LICENSE_VALID As Boolean = False
Public Property USERCOUNT_LOGGED_IN As Integer = 0
Public Property CURRENT_INDEX_ID As Integer
Public Property CURRENT_OBJECTTYPE As String
Public Property CURRENT_DESIGN_TYPE As String = "FINAL_INDEX"
Public Property CURRENT_CLICKED_PROFILE_ID As Integer = 0
Public Property CURRENT_CLICKED_PROFILE_TITLE As String
Public Property CURRENT_WMObjecttype As String
Public Property DT_CLIENT_USER As DataTable
Public Property CLIENT_SELECTED As Integer = 0
Public Property CURR_CON_ID As Integer
Public Property CURR_SELECT_CONTROL As String
Public Property CURR_CHOICE_LIST As String
Public Property CURR_DT_DEPENDING_CONTROLS As DataTable 'enthält zur Laufzeit die abhängigen Controls
Public Property CURRENT_DT_MASS_CHANGE_DOCS As DataTable
Public Property CURRENT_DT_FINAL_INDEXING As DataTable
Public Property CURRENT_DT_PROFILES As DataTable
Public Property CURRENT_DT_PROFILE_LANGUAGE As DataTable
Public Property CURRENT_DT_PROFILE As DataTable
Public Property CURRENT_CONTROL_NAME_LIST As New List(Of String)
Public Property DTVWCONTROLS_INDEX As DataTable
Public Property DTVWCONTROL_INDEX As DataTable
Public Property DTCONTROLS_WITH_SQL As DataTable
Public Property CURRENT_CONTROL_ID As Integer
Public Property errormessage As String
Public Property WINDREAM As ClassPMWindream
Public Property WINDREAM_MOD As Windream
Public Property WINDREAM_ALLG As ClassWindream_allgemein
Public Property FINALINDICES As ClassFinalIndex
Public Property IDBData As ClassIDBData
Public Property LOGCONFIG As LogConfig
Public Property LOGGER As Logger
Public Property CONFIG As ConfigManager(Of ClassConfig)
Public Property GDPICTURE_LICENSE As String
Public Property MyIndicies As List(Of String)
Public Property MyIndicies_Types As List(Of Integer)
Public Property _Client As Client
Public Property WMSUFFIX As String
Public Property WMDRIVE_LETTER As String
Public Property DatabaseFallback As DatabaseWithFallback
Public Property dbECMInitialized As Boolean = False
Public Property dbIDBInitialized As Boolean = False
Public Property Timer5Mins_running As Boolean = False
Public Property TimerRefresh_running As Boolean = False
Public Property SQL_PROFILES_USER As String = ""
Public Property SQL_VALIDATOR_SEARCHES As String = ""
Public WM_AHWF_docPath As String
Public LIC_MODULES As String = "NONE"
End Module

View File

@@ -0,0 +1,38 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
'HINWEIS: Diese Datei wird automatisch generiert und darf nicht direkt bearbeitet werden. Wenn Sie Änderungen vornehmen möchten
' oder in dieser Datei Buildfehler auftreten, wechseln Sie zum Projekt-Designer.
' (Wechseln Sie dazu zu den Projekteigenschaften, oder doppelklicken Sie auf den Knoten "Mein Projekt" im
' Projektmappen-Explorer). Nehmen Sie auf der Registerkarte "Anwendung" entsprechende Änderungen vor.
'
Partial Friend Class MyApplication
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = true
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.DD_ProcessManager.frmMain
End Sub
End Class
End Namespace

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<MySubMain>true</MySubMain>
<MainForm>frmMain</MainForm>
<SingleInstance>true</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die mit einer Assembly verknüpft sind.
' Die Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("TaskFlow")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("TaskFlow")>
<Assembly: AssemblyCopyright("Copyright © Digital Data 2022")>
<Assembly: AssemblyTrademark("2.3.9.0")>
<Assembly: ComVisible(False)>
'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
<Assembly: Guid("158d9c39-8ba7-48ec-b2e8-39bc1031be67")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.4.1.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,529 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="refresh_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\refresh_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Hammer_Builder_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Hammer_Builder_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asterisk_yellow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asterisk_yellow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="taskFlow_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\taskFlow_icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\delete.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="hide_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\hide_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="GoToDeclaration_5576" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GoToDeclaration_5576.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_go1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_go1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="key" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\key.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Image_File" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Image_File.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\save.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SQL_Letters" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SQL_Letters.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="seach_typo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\seach_typo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="group_key" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\group_key.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flag_purple" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flag_purple.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Checked-outforEdit_Color_13297" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Checked-outforEdit_Color_13297.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Symbols_Information_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Symbols_Information_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="computer_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\computer_edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="_blank" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\_blank.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="chartdesigner" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\chartdesigner.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="zoom_in" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zoom_in.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ampel-rot" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ampel-rot.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SendReply" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SendReply.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Settings" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Settings.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Search(Go)_5718" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Search(Go)_5718.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bo_unknown" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bo_unknown.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="Security_Lock" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Security_Lock.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="application_form_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\application_form_edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Label_684" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Label_684.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="delete_12x12" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\delete_12x12.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table_add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="searchFlow_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\searchFlow_icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="txt" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\txt.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="properties_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\properties_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="checkbox_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\checkbox_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="doc_excel_csv" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\doc_excel_csv.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_go" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="pencolor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pencolor.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="markcomplete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\markcomplete.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="adateoccuring" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\adateoccuring.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="actions_user" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\actions_user.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="information" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\information.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle2.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_orange1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_orange1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="magifier_zoom_out1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\magifier_zoom_out1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TextBox_708" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TextBox_708.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="xls" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\xls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="save1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\save.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="Open_6296" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Open_6296.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dxf" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dxf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="conversation" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\conversation.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ppt" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ppt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="image" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="enablesearch" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\enablesearch.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="Properties" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Properties.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="insertcombobox" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\insertcombobox.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="cancel1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cancel.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="flag_pink" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flag_pink.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="DD_Icons_ICO_CBWATCHER_48px" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\DD_Icons_ICO_CBWATCHER_48px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="magifier_zoom_out" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\magifier_zoom_out.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="page_copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\page_copy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="publicfix_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\publicfix_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="resultset_next" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\resultset_next.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="world_link" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\world_link.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="actions_table" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\actions_table.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="search_glyph" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\search_glyph.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="itemtypechecked" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\itemtypechecked.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="DeleteFilter_5563" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\DeleteFilter_5563.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Security_Unlock" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Security_Unlock.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="resultset_last" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\resultset_last.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="color" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\color.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="refresh_16xMD" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\refresh_16xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ampel-gruen" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ampel-gruen.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="A_1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\A_1.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="doc_pdf" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\doc_pdf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_open" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_open.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Checkboxbmp" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Checkbox.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cancel" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cancel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="DateOrTimePicker_675" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\DateOrTimePicker_675.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dtp" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dtp.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="key_go" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\key_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Nextrequest_10302" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Nextrequest_10302.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TextBox" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TextBox.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="doc" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\doc.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_green1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_green1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="groupby" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\groupby.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="dwg" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dwg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="page_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\page_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="hide_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\hide_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="chartdesigner1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\chartdesigner1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="database_link" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_link.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="show_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\show_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="lbl" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lbl.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ComboBox_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ComboBox_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="show_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\show_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cmb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cmb.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ID_FILE_PAGE_SETUP" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ID_FILE_PAGE_SETUP.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flag_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flag_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flag_orange" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flag_orange.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="resultset_previous" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\resultset_previous.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="email_go" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\email_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="textthatcontains" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\textthatcontains.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="Files_7954" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Files_7954.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="conversation_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\conversation_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flag_green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flag_green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ExcelWorksheetView_11748" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ExcelWorksheetView_11748.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Monitor_Screen_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Monitor_Screen_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_save.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="OpenFileDialog_692" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\OpenFileDialog_692.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="doc_text_image" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\doc_text_image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="shape_square_go" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\shape_square_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="task" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\task.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="pdf" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pdf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="taskflow_boot" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\taskflow_boot.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Link_5762" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Link_5762.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ampel-gelb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ampel-gelb.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="WorkItem_16xMD" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\WorkItem_16xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="action_add_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\action_add_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="resultset_first" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\resultset_first.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="zoom_out1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zoom_out1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="chartdesigner2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\chartdesigner2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="formatastable" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\formatastable.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="zoom_out" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zoom_out.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="search" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\search.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_orange" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_orange.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Einstellungen6" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Einstellungen6.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_red1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_red1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="key1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\key1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="security_key" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\security_key.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
</root>

View File

@@ -0,0 +1,272 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.3.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "Automatische My.Settings-Speicherfunktion"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("5")> _
Public Property IntervallReminder() As String
Get
Return CType(Me("IntervallReminder"),String)
End Get
Set
Me("IntervallReminder") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmMainSize() As Global.System.Drawing.Size
Get
Return CType(Me("frmMainSize"),Global.System.Drawing.Size)
End Get
Set
Me("frmMainSize") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmMainPosition() As Global.System.Drawing.Point
Get
Return CType(Me("frmMainPosition"),Global.System.Drawing.Point)
End Get
Set
Me("frmMainPosition") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmValidatorSize() As Global.System.Drawing.Size
Get
Return CType(Me("frmValidatorSize"),Global.System.Drawing.Size)
End Get
Set
Me("frmValidatorSize") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmValidatorPosition() As Global.System.Drawing.Point
Get
Return CType(Me("frmValidatorPosition"),Global.System.Drawing.Point)
End Get
Set
Me("frmValidatorPosition") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0")> _
Public Property frmMassValidatorSize() As Global.System.Drawing.Size
Get
Return CType(Me("frmMassValidatorSize"),Global.System.Drawing.Size)
End Get
Set
Me("frmMassValidatorSize") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0")> _
Public Property frmMassValidatorposition() As Global.System.Drawing.Point
Get
Return CType(Me("frmMassValidatorposition"),Global.System.Drawing.Point)
End Get
Set
Me("frmMassValidatorposition") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0")> _
Public Property frmValidatorSearchPosition() As Global.System.Drawing.Point
Get
Return CType(Me("frmValidatorSearchPosition"),Global.System.Drawing.Point)
End Get
Set
Me("frmValidatorSearchPosition") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("563")> _
Public Property frmValSearchSplitterDistance() As Integer
Get
Return CType(Me("frmValSearchSplitterDistance"),Integer)
End Get
Set
Me("frmValSearchSplitterDistance") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Normal")> _
Public Property frmMainWindowState() As String
Get
Return CType(Me("frmMainWindowState"),String)
End Get
Set
Me("frmMainWindowState") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False")> _
Public ReadOnly Property UseAppConfigConString() As Boolean
Get
Return CType(Me("UseAppConfigConString"),Boolean)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("PROD")> _
Public ReadOnly Property UserConfig_Prefix() As String
Get
Return CType(Me("UserConfig_Prefix"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security "& _
"Info=True;User ID=sa;Password=dd")> _
Public ReadOnly Property ConnectionString() As String
Get
Return CType(Me("ConnectionString"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmTableColumns_Position() As Global.System.Drawing.Point
Get
Return CType(Me("frmTableColumns_Position"),Global.System.Drawing.Point)
End Get
Set
Me("frmTableColumns_Position") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0")> _
Public Property frmValidatorSearchSize() As Global.System.Drawing.Size
Get
Return CType(Me("frmValidatorSearchSize"),Global.System.Drawing.Size)
End Get
Set
Me("frmValidatorSearchSize") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("en-US")> _
Public ReadOnly Property SYS_Override_Language() As String
Get
Return CType(Me("SYS_Override_Language"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Normal")> _
Public Property frmValidatorWindowState() As String
Get
Return CType(Me("frmValidatorWindowState"),String)
End Get
Set
Me("frmValidatorWindowState") = value
End Set
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.DD_ProcessManager.My.MySettings
Get
Return Global.DD_ProcessManager.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,62 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true">
<Profiles />
<Settings>
<Setting Name="IntervallReminder" Type="System.String" Scope="User">
<Value Profile="(Default)">5</Value>
</Setting>
<Setting Name="frmMainSize" Roaming="true" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmMainPosition" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmValidatorSize" Roaming="true" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmValidatorPosition" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmMassValidatorSize" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmMassValidatorposition" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmValidatorSearchPosition" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmValSearchSplitterDistance" Type="System.Int32" Scope="User">
<Value Profile="(Default)">563</Value>
</Setting>
<Setting Name="frmMainWindowState" Type="System.String" Scope="User">
<Value Profile="(Default)">Normal</Value>
</Setting>
<Setting Name="UseAppConfigConString" Type="System.Boolean" Scope="Application">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UserConfig_Prefix" Type="System.String" Scope="Application">
<Value Profile="(Default)">PROD</Value>
</Setting>
<Setting Name="ConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;
&lt;ConnectionString&gt;Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</Value>
</Setting>
<Setting Name="frmTableColumns_Position" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmValidatorSearchSize" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="SYS_Override_Language" Type="System.String" Scope="Application">
<Value Profile="(Default)">en-US</Value>
</Setting>
<Setting Name="frmValidatorWindowState" Type="System.String" Scope="User">
<Value Profile="(Default)">Normal</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC-Manifestoptionen
Wenn Sie die Ebene der Benutzerkontensteuerung für Windows ändern möchten, ersetzen Sie den
Knoten "requestedExecutionLevel" wie folgt.
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Durch Angabe des Elements "requestedExecutionLevel" wird die Datei- und Registrierungsvirtualisierung deaktiviert.
Entfernen Sie dieses Element, wenn diese Virtualisierung aus Gründen der Abwärtskompatibilität
für die Anwendung erforderlich ist.
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- Eine Liste der Windows-Versionen, unter denen diese Anwendung getestet
und für die sie entwickelt wurde. Wenn Sie die Auskommentierung der entsprechenden Elemente aufheben,
wird von Windows automatisch die kompatibelste Umgebung ausgewählt. -->
<!-- Windows Vista -->
<!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
<!-- Windows 7 -->
<!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />-->
<!-- Windows 8 -->
<!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
<!-- Windows 8.1 -->
<!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
<!-- Windows 10 -->
<!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />-->
</application>
</compatibility>
<!-- Gibt an, dass die Anwendung mit DPI-Werten kompatibel ist und von Windows nicht automatisch auf höhere
DPI-Werte skaliert wird. WPF-Anwendungen (Windows Presentation Foundation) sind automatisch mit DPI-Werten kompatibel und müssen sich nicht
anmelden. Für Windows Forms-Anwendungen für .NET Framework 4.6, die sich für diese Einstellung anmelden, muss
auch die Einstellung "'EnableWindowsFormsHighDpiAutoResizing" in der "app.config" auf "true" festgelegt werden. -->
<!--
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>
-->
<!-- Designs für allgemeine Windows-Steuerelemente und -Dialogfelder (Windows XP und höher) aktivieren -->
<!--
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
-->
</assembly>

View File

@@ -0,0 +1,13 @@
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

View File

@@ -0,0 +1,12 @@
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 584 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 B

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
<style type="text/css">
.Black{fill:#727272;}
.Red{fill:#D11C1C;}
.Yellow{fill:#FFB115;}
.Green{fill:#039C23;}
</style>
<g id="Lock">
<path class="Yellow" d="M25,12h-3v-2c0-3.3-2.7-6-6-6s-6,2.7-6,6v2H7c-0.6,0-1,0.5-1,1v14c0,0.5,0.4,1,1,1h18c0.6,0,1-0.5,1-1V13
C26,12.5,25.6,12,25,12z M18,24h-4l1.4-4.1c-0.8-0.3-1.4-1-1.4-1.9c0-1.1,0.9-2,2-2s2,0.9,2,2c0,0.9-0.6,1.6-1.4,1.9L18,24z M12,12
v-2c0-2.2,1.8-4,4-4s4,1.8,4,4v2H12z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 792 B

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
<style type="text/css">
.Black{fill:#727272;}
.Red{fill:#D11C1C;}
.Yellow{fill:#FFB115;}
.Green{fill:#039C23;}
</style>
<g id="Unlock">
<path class="Yellow" d="M22,4c-3.3,0-6,2.7-6,6v2H5c-0.6,0-1,0.5-1,1v14c0,0.5,0.4,1,1,1h18c0.6,0,1-0.5,1-1V13c0-0.5-0.4-1-1-1h-5
v-2c0-2.2,1.8-4,4-4s4,1.8,4,4v2h2v-2C28,6.7,25.3,4,22,4z M16,24h-4l1.4-4.1c-0.8-0.3-1.4-1-1.4-1.9c0-1.1,0.9-2,2-2s2,0.9,2,2
c0,0.9-0.6,1.6-1.4,1.9L16,24z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 787 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

View File

@@ -0,0 +1,23 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Blue{fill:#1177D7;}
.Yellow{fill:#FFB115;}
.Black{fill:#727272;}
.Green{fill:#039C23;}
.Red{fill:#D11C1C;}
.st0{opacity:0.75;}
.st1{opacity:0.5;}
</style>
<g id="Table_2_">
<g class="st1">
<rect x="12" y="22" width="8" height="6" rx="0" ry="0" class="Black" />
<rect x="2" y="14" width="8" height="6" rx="0" ry="0" class="Black" />
<rect x="2" y="22" width="8" height="6" rx="0" ry="0" class="Black" />
<rect x="22" y="22" width="8" height="6" rx="0" ry="0" class="Black" />
<rect x="22" y="14" width="8" height="6" rx="0" ry="0" class="Black" />
<rect x="12" y="14" width="8" height="6" rx="0" ry="0" class="Black" />
</g>
<rect x="2" y="4" width="28" height="8" rx="0" ry="0" class="Blue" />
</g>
</svg>

View File

@@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Blue{fill:#1177D7;}
.Yellow{fill:#FFB115;}
.Black{fill:#727272;}
.Green{fill:#039C23;}
.Red{fill:#D11C1C;}
.st0{opacity:0.75;}
.st1{opacity:0.5;}
</style>
<g id="User">
<path d="M10,9.9c-0.1,0.5,0.2,0.9,0.4,1.4c0.2,0.5-0.1,1.7,0.9,1.6c0,0,0,0.1,0,0.2c0.6,2.3,2,4.9,4.7,4.9 c2.7,0,4.2-2.6,4.7-4.9c0,0,0-0.1,0-0.1c1,0.1,0.6-1.1,0.9-1.6c0.2-0.5,0.4-0.9,0.3-1.4c-0.1-0.4-0.4-0.4-0.5-0.3 c1.8-4.9-1.1-4.7-1.1-4.7S20,2,14.8,2C10,2,9.4,6,10.5,9.6C10.4,9.6,10.1,9.7,10,9.9z" class="Black" />
<path d="M20,18c-0.8,1.5-2.1,4-4,4c-1.9,0-3.2-2.5-4-4c-2.3,3.5-8,1-8,8.5V30h24v-3.5C28,19.1,22.3,21.4,20,18z" class="Black" />
</g>
</svg>

View File

@@ -0,0 +1,18 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="A_Date_Occuring" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Black{fill:#727272;}
.Blue{fill:#1177D7;}
.Red{fill:#D11C1C;}
.st0{opacity:0.5;}
</style>
<path d="M28,8v18H4V8H2v19c0,0.6,0.4,1,1,1h26c0.6,0,1-0.4,1-1V8H28z" class="Black" />
<path d="M30,3v5H2V3c0-0.6,0.4-1,1-1h26C29.6,2,30,2.4,30,3z M12,18H8v4h4V18z" class="Red" />
<g class="st0">
<rect x="8" y="12" width="4" height="4" rx="0" ry="0" class="Black" />
<rect x="14" y="12" width="4" height="4" rx="0" ry="0" class="Black" />
<rect x="20" y="12" width="4" height="4" rx="0" ry="0" class="Black" />
<rect x="14" y="18" width="4" height="4" rx="0" ry="0" class="Black" />
<rect x="20" y="18" width="4" height="4" rx="0" ry="0" class="Black" />
</g>
</svg>

Binary file not shown.

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 714 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 685 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 743 B

Some files were not shown because too many files have changed in this diff Show More