This commit is contained in:
SchreiberM
2016-07-01 09:00:01 +02:00
parent b8f390b15b
commit fa66fe01eb
20 changed files with 1526 additions and 725 deletions

View File

@@ -357,9 +357,11 @@ Public Class ClassImport_Windream
'Dim MoveFilename As String = DATEINAME.Replace(element.Value, "")
'Überprüfen ob File existiert
If File.Exists(_neuername & extension) = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> File is not existing", False)
_NewFileString = _neuername
Else
Do While File.Exists(_neuername & extension)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Attention File '" & _neuername & extension & "' is existing!", False)
version = version + 1
_neuername = Stammname & VERSION_DELIMITER & version
_NewFileString = _neuername

View File

@@ -540,239 +540,250 @@ Public Class ClassWindream
End Function
#End Region
Public Shared Function Stream_File(ByVal filenameQuelle As String, ByVal zielpfad As String, Optional ImportAll As Boolean = False)
aktWMObject = Nothing
If My.Computer.FileSystem.DirectoryExists(zielpfad) = False Then
My.Computer.FileSystem.CreateDirectory(zielpfad)
ClassLogger.Add(">> Zielverzeichnis neu erzeugt!", False)
End If
Const STREAM_BinaryObject = "BinaryObject"
If LogErrorsOnly = False Then ClassLogger.Add(" >> Stream_File wurde gestartet", False)
Dim endgültigerDateiname As String = ""
' Objekt für Datei und Zielverzeichnis anlegen
' Dim Quelldatei_Name As String = Path.GetFileName(filenameQuelle)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Quelldatei gelesen", False)
'########
Dim Zielverzeichnis As String = zielpfad
endgültigerDateiname = CURRENT_NEWFILENAME.Substring(2)
If My.Computer.FileSystem.DirectoryExists(Zielverzeichnis) Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert", False)
' Überprüfen ob der zu Kopieren notwendige Speicherplatz auf Ziellaufwerk vorhanden ist
Dim dvr As New DriveInfo(vWLaufwerk & ":")
Dim freeSpace = dvr.TotalFreeSpace
Dim info As New FileInfo(filenameQuelle)
' Get length of the file.
Dim length As Long = info.Length
If freeSpace < length Then
MsgBox(" Auf dem Zielverzeichnis ist nicht genug Speicherplatz zum Übertragen frei.", MsgBoxStyle.Exclamation, "Nicht genug Speicherplatz")
Return -10
Try
aktWMObject = Nothing
If My.Computer.FileSystem.DirectoryExists(zielpfad) = False Then
My.Computer.FileSystem.CreateDirectory(zielpfad)
ClassLogger.Add(">> Zielverzeichnis neu erzeugt!", False)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei kopieren von " & filenameQuelle & " nach " & endgültigerDateiname & ".", False)
Dim Connect
Dim Session
Dim WMObject
Dim aFileIO
Dim aWMStream
Dim wmbrwsr
Dim dmsServer As String
If LogErrorsOnly = False Then ClassLogger.Add(" >> Connect definieren: CreateObject('Windream.WMConnect')", False)
Connect = CreateObject("Windream.WMConnect")
aFileIO = New WMOTOOLLib.WMFileIO
'If My.Settings.DLL_WMOTOOL = "" Then
' aFileIO = New WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Direkter Verweis auf New WMOTOOLLib.WMFileIO", False)
'Else
' aFileIO = CreateObject(My.Settings.DLL_WMOTOOL) 'WMOTool.WMFileIO oder WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Verwendeter Verweis aus Anwendungsstring: '" & My.Settings.DLL_WMOTOOL & "'", False)
'End If
Const STREAM_BinaryObject = "BinaryObject"
wmbrwsr = CreateObject("WMOBrws.ServerBrowser")
'==================================================================
' get the current DMS-server to log in
'==================================================================
dmsServer = wmbrwsr.GetCurrentServer
'==================================================================
' create a session
'==================================================================
Session = CreateObject("Windream.WMSession", dmsServer)
'==================================================================
' login session
'==================================================================
Connect.LoginSession(Session)
Dim LoggedIn = Session.aLoggedin
If LoggedIn Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Login ok. You are logged in as '" & Connect.UserName & "' on Server '" & dmsServer, False)
'MsgBox("Login ok. You are logged in as '" + Connect.UserName + "' on Server '" + dmsServer + "'")
Else
ClassLogger.Add(">> Login on dms-Server failed", False)
' MsgBox("Login failed. ")
End If
Const WMCOMEventWMSessionNeedIndex = 1
If LogErrorsOnly = False Then ClassLogger.Add(" >> Stream_File wurde gestartet", False)
Dim endgültigerDateiname As String = ""
' Objekt für Datei und Zielverzeichnis anlegen
' Dim Quelldatei_Name As String = Path.GetFileName(filenameQuelle)
'windream Objekte erstellen ohne Indexierungs-Event
Session.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
'==================================================================
' check if files exist
'==================================================================
If LogErrorsOnly = False Then ClassLogger.Add(" >> ÜBERPRÜFTER DATEINAME => " & endgültigerDateiname, False)
Dim wdFilexists As Boolean
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch auf die Datei in W: zuzugreifen und zu sperren...", False)
wdFilexists = Session.WMObjectExists(WMEntityDocument, endgültigerDateiname, 0, 0)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Quelldatei gelesen", False)
If wdFilexists = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei ist NICHT vorhanden, kann also einfach neu angelegt werden", False)
Err.Clear()
'########
Dim Zielverzeichnis As String = zielpfad
endgültigerDateiname = CURRENT_NEWFILENAME.Substring(2)
If My.Computer.FileSystem.DirectoryExists(Zielverzeichnis) Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert", False)
' Überprüfen ob der zu Kopieren notwendige Speicherplatz auf Ziellaufwerk vorhanden ist
Dim dvr As New DriveInfo(vWLaufwerk & ":")
Dim freeSpace = dvr.TotalFreeSpace
Dim info As New FileInfo(filenameQuelle)
' Get length of the file.
Dim length As Long = info.Length
If freeSpace < length Then
MsgBox(" Auf dem Zielverzeichnis ist nicht genug Speicherplatz zum Übertragen frei.", MsgBoxStyle.Exclamation, "Nicht genug Speicherplatz")
Return -10
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei kopieren von " & filenameQuelle & " nach " & endgültigerDateiname & ".", False)
Dim Connect
Dim Session
Dim WMObject
Dim aFileIO
Dim aWMStream
Dim wmbrwsr
Dim dmsServer As String
If LogErrorsOnly = False Then ClassLogger.Add(" >> Connect definieren: CreateObject('Windream.WMConnect')", False)
Connect = CreateObject("Windream.WMConnect")
aFileIO = New WMOTOOLLib.WMFileIO
'If My.Settings.DLL_WMOTOOL = "" Then
' aFileIO = New WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Direkter Verweis auf New WMOTOOLLib.WMFileIO", False)
'Else
' aFileIO = CreateObject(My.Settings.DLL_WMOTOOL) 'WMOTool.WMFileIO oder WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Verwendeter Verweis aus Anwendungsstring: '" & My.Settings.DLL_WMOTOOL & "'", False)
'End If
wmbrwsr = CreateObject("WMOBrws.ServerBrowser")
'==================================================================
' create an object
' get the current DMS-server to log in
'==================================================================
WMObject = Session.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER: WMObject konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
'MsgBox(Err.Description)
End If
' MsgBox("Created file: " + endgültigerDateiname)
Else
' wenn auf die Datei zugeriffen werden konnte ist sie bereits vorhanden -> Datum anhängen
If LogErrorsOnly = False Then ClassLogger.Add(" >> Es konnte zugegriffen werden -> DATEI IST BEREITS VORHANDEN", False)
Err.Clear()
WMObject = Session.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER: Neues WMObject (Kopie) konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> WMObject zugewiesen", False)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> ENDGÜLTIGER DATEINAME => " & endgültigerDateiname, False)
If WMObject IsNot Nothing Then
' lock object for file system access (to change the file itself)
WMObject.lock()
' set fileIO the local source file
aFileIO.bstrOriginalFileName = filenameQuelle
If Err.Number > 0 Then
'MsgBox(Err.Number.ToString)
ClassLogger.Add(" FEHLER: fileIO konnte nicht gesetzt werden - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
ClassLogger.Add(" HINWEIS: Überprüfen Sie den Verweis auf die Bibliotheken 'WMOTool.WMFileIO' UND 'WMOTOOLLib.WMFileIO' und ändern diese in den Anwendungseinstellungen (DLL_WMOTOOL)'", False)
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
' MsgBox(Err.Description)
End If
' open the windream object's file stream for writing
aWMStream = WMObject.OpenStream(STREAM_BinaryObject, WMObjectStreamOpenModeReadWrite)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei OpenStream - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> oWMStream erzeugt", False)
' give fileIO helper object the windream stream
aFileIO.aWMStream = aWMStream
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei Zuweisen aWMStream zu aFileIO - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
' let fileIO object import the original file into windream
aFileIO.ImportOriginal(True)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei FileIO.ImportOriginal(True) - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
' MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Inhalt der Datei konnte übertragen werden", False)
' close the windream file stream
aWMStream.Close()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei aWMStream.Close() - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
' save new windream object
WMObject.save()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei WMObject.save - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return Err.Number
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei konnte gespeichert werden", False)
' unlock the windream object
WMObject.unlock()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei WMObject.unlock - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
'DATEI GRÖSSE ERMITTELN - MANCHMAL KOMMT ES VOR DAS DATEIGRÖße 0 ist
Dim info2 As New FileInfo(vWLaufwerk & ":\" & endgültigerDateiname)
Dim length1 As Long = info2.Length
If length1 > 0 And Err.Number = 0 Then
If endgültigerDateiname.StartsWith("\") Then
If endgültigerDateiname.StartsWith("\\") Then
endgültigerDateiname = endgültigerDateiname.Replace("\\", "\")
Else
endgültigerDateiname = endgültigerDateiname
End If
Else
endgültigerDateiname = "\" & endgültigerDateiname
End If
CURRENT_FILEIN_WD = vWLaufwerk & ":" & endgültigerDateiname
ClassLogger.Add(">> File '" & CURRENT_FILEIN_WD & "' was imported.", False)
aktWMObject = WMObject
Return True
dmsServer = wmbrwsr.GetCurrentServer
'==================================================================
' create a session
'==================================================================
Session = CreateObject("Windream.WMSession", dmsServer)
'==================================================================
' login session
'==================================================================
Connect.LoginSession(Session)
Dim LoggedIn = Session.aLoggedin
If LoggedIn Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Login ok. You are logged in as '" & Connect.UserName & "' on Server '" & dmsServer, False)
'MsgBox("Login ok. You are logged in as '" + Connect.UserName + "' on Server '" + dmsServer + "'")
Else
If length = 0 Then
If ImportAll = False Then
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
ClassLogger.Add(" Error in Stream File - FileLength = 0, File " & CURRENT_FILEIN_WD & " was deleted")
Return False
Else
If endgültigerDateiname.StartsWith("\") Then
If endgültigerDateiname.StartsWith("\\") Then
endgültigerDateiname = endgültigerDateiname.Replace("\\", "\")
Else
endgültigerDateiname = endgültigerDateiname
End If
Else
endgültigerDateiname = "\" & endgültigerDateiname
End If
ClassLogger.Add(">> ATTENTION in Stream File - FileLength = 0, File " & CURRENT_FILEIN_WD & " will be imported")
CURRENT_FILEIN_WD = vWLaufwerk & ":" & endgültigerDateiname
ClassLogger.Add(">> File '" & CURRENT_FILEIN_WD & "' was imported.", False)
aktWMObject = WMObject
Return True
End If
Else
ClassLogger.Add("Error in Stream File - Error <> 0")
Return False
End If
ClassLogger.Add(">> Login on dms-Server failed", False)
' MsgBox("Login failed. ")
End If
Const WMCOMEventWMSessionNeedIndex = 1
'windream Objekte erstellen ohne Indexierungs-Event
Session.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
'==================================================================
' check if files exist
'==================================================================
If LogErrorsOnly = False Then ClassLogger.Add(" >> ÜBERPRÜFTER DATEINAME => " & endgültigerDateiname, False)
Dim wdFilexists As Boolean
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch auf die Datei in W: zuzugreifen und zu sperren...", False)
wdFilexists = Session.WMObjectExists(WMEntityDocument, endgültigerDateiname, 0, 0)
If wdFilexists = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei ist NICHT vorhanden, kann also einfach neu angelegt werden", False)
Err.Clear()
'==================================================================
' create an object
'==================================================================
WMObject = Session.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER: WMObject konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
'MsgBox(Err.Description)
End If
' MsgBox("Created file: " + endgültigerDateiname)
Else
' wenn auf die Datei zugeriffen werden konnte ist sie bereits vorhanden -> Datum anhängen
If LogErrorsOnly = False Then ClassLogger.Add(" >> Es konnte zugegriffen werden -> DATEI IST BEREITS VORHANDEN", False)
Err.Clear()
WMObject = Session.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER: Neues WMObject (Kopie) konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> WMObject zugewiesen", False)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> ENDGÜLTIGER DATEINAME => " & endgültigerDateiname, False)
If WMObject IsNot Nothing Then
' lock object for file system access (to change the file itself)
WMObject.lock()
' set fileIO the local source file
aFileIO.bstrOriginalFileName = filenameQuelle
If Err.Number > 0 Then
'MsgBox(Err.Number.ToString)
ClassLogger.Add(" FEHLER: fileIO konnte nicht gesetzt werden - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
ClassLogger.Add(" HINWEIS: Überprüfen Sie den Verweis auf die Bibliotheken 'WMOTool.WMFileIO' UND 'WMOTOOLLib.WMFileIO' und ändern diese in den Anwendungseinstellungen (DLL_WMOTOOL)'", False)
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
' MsgBox(Err.Description)
End If
' open the windream object's file stream for writing
aWMStream = WMObject.OpenStream(STREAM_BinaryObject, WMObjectStreamOpenModeReadWrite)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei OpenStream - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> oWMStream erzeugt", False)
' give fileIO helper object the windream stream
aFileIO.aWMStream = aWMStream
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei Zuweisen aWMStream zu aFileIO - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
' let fileIO object import the original file into windream
aFileIO.ImportOriginal(True)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei FileIO.ImportOriginal(True) - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
' MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Inhalt der Datei konnte übertragen werden", False)
' close the windream file stream
aWMStream.Close()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei aWMStream.Close() - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
' save new windream object
WMObject.save()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei WMObject.save - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return Err.Number
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei konnte gespeichert werden", False)
' unlock the windream object
WMObject.unlock()
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER bei WMObject.unlock - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
WMObject.Unlock()
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
Return False
'MsgBox(Err.Description)
End If
'DATEI GRÖSSE ERMITTELN - MANCHMAL KOMMT ES VOR DAS DATEIGRÖße 0 ist
Dim info2 As New FileInfo(vWLaufwerk & ":\" & endgültigerDateiname)
Dim length1 As Long = info2.Length
If length1 > 0 And Err.Number = 0 Then
If endgültigerDateiname.StartsWith("\") Then
If endgültigerDateiname.StartsWith("\\") Then
endgültigerDateiname = endgültigerDateiname.Replace("\\", "\")
Else
endgültigerDateiname = endgültigerDateiname
End If
Else
endgültigerDateiname = "\" & endgültigerDateiname
End If
CURRENT_FILEIN_WD = vWLaufwerk & ":" & endgültigerDateiname
ClassLogger.Add(">> File '" & CURRENT_FILEIN_WD & "' was imported.", False)
aktWMObject = WMObject
Return True
Else
If length = 0 Then
If ImportAll = False Then
System.IO.File.Delete(vWLaufwerk & ":\" & endgültigerDateiname)
ClassLogger.Add(" Error in Stream File - FileLength = 0, File " & CURRENT_FILEIN_WD & " was deleted")
Return False
Else
If endgültigerDateiname.StartsWith("\") Then
If endgültigerDateiname.StartsWith("\\") Then
endgültigerDateiname = endgültigerDateiname.Replace("\\", "\")
Else
endgültigerDateiname = endgültigerDateiname
End If
Else
endgültigerDateiname = "\" & endgültigerDateiname
End If
ClassLogger.Add(">> ATTENTION in Stream File - FileLength = 0, File " & CURRENT_FILEIN_WD & " will be imported")
CURRENT_FILEIN_WD = vWLaufwerk & ":" & endgültigerDateiname
'###
If CURRENT_FILEIN_WD.Contains("\\") Then
CURRENT_FILEIN_WD = CURRENT_FILEIN_WD.Replace("\\", "\")
End If
'###
ClassLogger.Add(">> File '" & CURRENT_FILEIN_WD & "' was imported.", False)
aktWMObject = WMObject
Return True
End If
Else
ClassLogger.Add("Error in Stream File - Error <> 0")
Return False
End If
End If
Else
Return False
End If
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert NICHT", False)
Return False
End If
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert NICHT", False)
Catch ex As Exception
MsgBox("Unexpected Error in Stream File: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End If
End Try
End Function
''' <summary>
@@ -782,7 +793,7 @@ Public Class ClassWindream
''' <param name="filenameZiel">neuer Name der zu indexierenden Datei</param>
''' <returns>Liefert True wenn das Indexieren erfolgreich war, sonst False</returns>
''' <remarks></remarks>
Public Shared Function IndexFile(ByVal WD_File As String, ByVal _Indexname As String, ByVal _Value As String)
Public Shared Function IndexFile(ByVal WD_File As String, ByVal _Indexname As String, ByVal _Value As String, Optional outside As Boolean = False, Optional _objecttype As String = "")
Try
If LogErrorsOnly = False Then ClassLogger.Add(" >> IndexFile ('" & WD_File & "','" & _Indexname & "','" & _Value & "') was called!", False)
@@ -796,6 +807,11 @@ Public Class ClassWindream
'MsgBox("IndexFile:" & vbNewLine & ClassDateiimportWindream.GetWindreamDriveLetter & filenameZiel & vbNewLine & Me.selectedProfile.DokumenttypString)
' den Dokumenttyp schreiben
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexing will be started", False)
If outside = True Then
_WDObjekttyp = _objecttype
aktWMObject = Nothing
aktWMObject = oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File) 'WINDREAMLib.WMEntity.WMEntityDocument
End If
' ein windream-Objekt der Datei anlegen
WMObject = aktWMObject 'oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File)
Try
@@ -1122,42 +1138,14 @@ Public Class ClassWindream
If Anzahl = 1 Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Vectorfield will be filled with ONE VALUE", False)
ReDim myArray(0)
Select Case vType
Case 36865
'Umwandeln in String
myArray(0) = CStr(value)
Case 4097
'Umwandeln in String
myArray(0) = CStr(value)
Case 4098
'Umwandeln in Integer
value = value.ToString.Replace(" ", "")
myArray(0) = CInt(value)
Case 4099
Dim Str As String = value
Str = Str.ToString.Replace(" ", "")
'Umwandeln in Double
myArray(0) = CDbl(Str.Replace(".", ","))
Case 4101
'Umwandeln in Date
myArray(0) = CDate(value)
Case 4107
myArray(0) = Convert.ToInt64(value)
Case 4103
'Umwandeln in Datum Uhrzeit
myArray(0) = value
Case Else
'Umwandeln in String
myArray(0) = CStr(value)
End Select
myArray(0) = Convert_VectorType(vType, value)
'Jetzt überprüfen ob Werte in Vektorfeld angefügt oder überschrieben werden sollen
If LogErrorsOnly = False Then ClassLogger.Add(" >> Converted Value: " & myArray(0).ToString, False)
Dim VektorArray()
VektorArray = Return_VektorArray(oDocument, aName, myArray)
VektorArray = Return_VektorArray(oDocument, aName, myArray, vType)
If VektorArray Is Nothing = False Then
'ReDim myArray(VektorArray.Length - 1)
' Array.Copy(VektorArray, myArray, VektorArray.Length)
ReDim myArray(VektorArray.Length - 1)
Array.Copy(VektorArray, myArray, VektorArray.Length)
'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(aName, myArray) '
If LogErrorsOnly = False Then
@@ -1307,7 +1295,7 @@ Public Class ClassWindream
Return False
End Try
End Function
Private Shared Function Return_VektorArray(ByVal oDocument As WMObject, vktIndexName As String, arr_Indexwerte As Object)
Private Shared Function Return_VektorArray(ByVal oDocument As WMObject, vktIndexName As String, arr_Indexwerte As Object, vType As Object)
Try
Dim missing As Boolean = False
Dim Anzahl As Integer = 0
@@ -1323,7 +1311,7 @@ Public Class ClassWindream
'Erst die ALten Werte schreiben
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = WDValue.ToString
ValueArray(Anzahl) = Convert_VectorType(vType, WDValue)
Anzahl += 1
End If
Next
@@ -1334,7 +1322,7 @@ Public Class ClassWindream
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = NewValue.ToString
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
Else
ClassLogger.Add(" >> Value '" & NewValue.ToString & "' already existing in vectorfield", False)
@@ -1353,7 +1341,7 @@ Public Class ClassWindream
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = NewValue.ToString
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
Else
ClassLogger.Add(" >> Value '" & NewValue.ToString & "' already existing in Array", False)
@@ -1362,7 +1350,7 @@ Public Class ClassWindream
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = NewValue.ToString
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
End If
@@ -1380,7 +1368,36 @@ Public Class ClassWindream
End Function
Private Shared Function Convert_VectorType(vType As Object, value As String)
Select Case vType
Case 36865
'Umwandeln in String
Return CStr(value)
Case 4097
'Umwandeln in String
Return CStr(value)
Case 4098
'Umwandeln in Integer
value = value.ToString.Replace(" ", "")
Return CInt(value)
Case 4099
Dim Str As String = value
Str = Str.ToString.Replace(" ", "")
'Umwandeln in Double
Return CDbl(Str.Replace(".", ","))
Case 4101
'Umwandeln in Date
Return CDate(value)
Case 4107
Return Convert.ToInt64(value)
Case 4103
'Umwandeln in Datum Uhrzeit
Return value
Case Else
'Umwandeln in String
Return CStr(value)
End Select
End Function
Private Shared Function IsNotEmpty(ByVal aValue As Object)
If aValue IsNot Nothing Then

View File

@@ -589,10 +589,10 @@
<Compile Include="frmWD_EntityImport.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmWD_Index_Dokart.Designer.vb">
<DependentUpon>frmWD_Index_Dokart.vb</DependentUpon>
<Compile Include="frmWD_IndexFile.Designer.vb">
<DependentUpon>frmWD_IndexFile.vb</DependentUpon>
</Compile>
<Compile Include="frmWD_Index_Dokart.vb">
<Compile Include="frmWD_IndexFile.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmTask_Editor.Designer.vb">
@@ -672,6 +672,9 @@
<EmbeddedResource Include="frmRecordView.resx">
<DependentUpon>frmRecordView.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmWD_Link_to_Record.en-US.resx">
<DependentUpon>frmWD_Link_to_Record.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmWD_Link_to_Record.resx">
<DependentUpon>frmWD_Link_to_Record.vb</DependentUpon>
</EmbeddedResource>
@@ -907,11 +910,11 @@
<EmbeddedResource Include="frmWD_EntityImport.resx">
<DependentUpon>frmWD_EntityImport.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmWD_Index_Dokart.en-US.resx">
<DependentUpon>frmWD_Index_Dokart.vb</DependentUpon>
<EmbeddedResource Include="frmWD_IndexFile.en-US.resx">
<DependentUpon>frmWD_IndexFile.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmWD_Index_Dokart.resx">
<DependentUpon>frmWD_Index_Dokart.vb</DependentUpon>
<EmbeddedResource Include="frmWD_IndexFile.resx">
<DependentUpon>frmWD_IndexFile.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmTask_Editor.resx">
<DependentUpon>frmTask_Editor.vb</DependentUpon>

View File

@@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.4.6.3")>
<Assembly: AssemblyVersion("2.4.6.4")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguageAttribute("")>

View File

@@ -132,6 +132,7 @@ Partial Class frmConstructor_Main
Me.tsButtonCancel = New System.Windows.Forms.ToolStripButton()
Me.tslblLocked = New System.Windows.Forms.ToolStripLabel()
Me.tslblFileslocked = New System.Windows.Forms.ToolStripLabel()
Me.SplitContainer1 = New DevExpress.XtraEditors.SplitContainerControl()
Me.BindingSource_Entity = New System.Windows.Forms.BindingSource(Me.components)
Me.NavPane = New DevExpress.XtraBars.Navigation.TileNavPane()
Me.NavButtonHome = New DevExpress.XtraBars.Navigation.NavButton()
@@ -181,6 +182,8 @@ Partial Class frmConstructor_Main
CType(Me.BindingNavigatorPOS, System.ComponentModel.ISupportInitialize).BeginInit()
Me.BindingNavigatorPOS.SuspendLayout()
Me.ToolStripEdit.SuspendLayout()
CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainer1.SuspendLayout()
CType(Me.BindingSource_Entity, System.ComponentModel.ISupportInitialize).BeginInit()
Me.StatusStrip_Main.SuspendLayout()
CType(Me.DD_ECMAdmin, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -505,6 +508,7 @@ Partial Class frmConstructor_Main
'
'DateiMitDatensatzVerknüpfenToolStripMenuItem
'
Me.DateiMitDatensatzVerknüpfenToolStripMenuItem.Image = Global.DD_Record_Organiser.My.Resources.Resources.Link
Me.DateiMitDatensatzVerknüpfenToolStripMenuItem.Name = "DateiMitDatensatzVerknüpfenToolStripMenuItem"
resources.ApplyResources(Me.DateiMitDatensatzVerknüpfenToolStripMenuItem, "DateiMitDatensatzVerknüpfenToolStripMenuItem")
'
@@ -897,6 +901,18 @@ Partial Class frmConstructor_Main
Me.tslblFileslocked.Name = "tslblFileslocked"
resources.ApplyResources(Me.tslblFileslocked, "tslblFileslocked")
'
'SplitContainer1
'
Me.SplitContainer1.Collapsed = True
Me.SplitContainer1.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel1
resources.ApplyResources(Me.SplitContainer1, "SplitContainer1")
Me.SplitContainer1.Name = "SplitContainer1"
resources.ApplyResources(Me.SplitContainer1.Panel1, "SplitContainer1.Panel1")
Me.SplitContainer1.Panel2.Controls.Add(Me.SplitContainerMain)
resources.ApplyResources(Me.SplitContainer1.Panel2, "SplitContainer1.Panel2")
Me.SplitContainer1.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel2
Me.SplitContainer1.SplitterPosition = 302
'
'NavPane
'
Me.NavPane.ButtonPadding = New System.Windows.Forms.Padding(12)
@@ -1039,7 +1055,7 @@ Partial Class frmConstructor_Main
'
resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.SplitContainerMain)
Me.Controls.Add(Me.SplitContainer1)
Me.Controls.Add(Me.StatusStrip_Main)
Me.Controls.Add(Me.NavPane)
Me.Name = "frmConstructor_Main"
@@ -1079,6 +1095,8 @@ Partial Class frmConstructor_Main
Me.BindingNavigatorPOS.PerformLayout()
Me.ToolStripEdit.ResumeLayout(False)
Me.ToolStripEdit.PerformLayout()
CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainer1.ResumeLayout(False)
CType(Me.BindingSource_Entity, System.ComponentModel.ISupportInitialize).EndInit()
Me.StatusStrip_Main.ResumeLayout(False)
Me.StatusStrip_Main.PerformLayout()
@@ -1218,4 +1236,5 @@ Partial Class frmConstructor_Main
Friend WithEvents UmbenennenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ToolStripTextBox2 As System.Windows.Forms.ToolStripTextBox
Friend WithEvents DateiMitDatensatzVerknüpfenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents SplitContainer1 As DevExpress.XtraEditors.SplitContainerControl
End Class

View File

@@ -358,49 +358,55 @@
<value>Default</value>
</data>
<data name="DateiÖffnenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 22</value>
<value>209, 22</value>
</data>
<data name="DateiÖffnenToolStripMenuItem.Text" xml:space="preserve">
<value>Open file</value>
</data>
<data name="ToolStripSeparator7.Size" type="System.Drawing.Size, System.Drawing">
<value>124, 6</value>
<value>206, 6</value>
</data>
<data name="CopyToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 22</value>
<value>209, 22</value>
</data>
<data name="CopyToolStripMenuItem.Text" xml:space="preserve">
<value>Copy file</value>
</data>
<data name="ToolStripSeparator10.Size" type="System.Drawing.Size, System.Drawing">
<value>124, 6</value>
<value>206, 6</value>
</data>
<data name="UmbenennenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 22</value>
<value>209, 22</value>
</data>
<data name="UmbenennenToolStripMenuItem.Text" xml:space="preserve">
<value>Rename</value>
</data>
<data name="ToolStripSeparator8.Size" type="System.Drawing.Size, System.Drawing">
<value>124, 6</value>
<value>206, 6</value>
</data>
<data name="DeleteToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 22</value>
<value>209, 22</value>
</data>
<data name="DeleteToolStripMenuItem.Text" xml:space="preserve">
<value>Delete file</value>
</data>
<data name="ToolStripSeparator9.Size" type="System.Drawing.Size, System.Drawing">
<value>124, 6</value>
<value>206, 6</value>
</data>
<data name="PropertiesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 22</value>
<value>209, 22</value>
</data>
<data name="PropertiesToolStripMenuItem.Text" xml:space="preserve">
<value>Properties</value>
</data>
<data name="DateiMitDatensatzVerknüpfenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>209, 22</value>
</data>
<data name="DateiMitDatensatzVerknüpfenToolStripMenuItem.Text" xml:space="preserve">
<value>Link file with other record</value>
</data>
<data name="ContextMenuStripResultFiles.Size" type="System.Drawing.Size, System.Drawing">
<value>128, 138</value>
<value>210, 160</value>
</data>
<data name="ContextMenuStripResultFiles.Title" xml:space="preserve">
<value />

View File

@@ -123,7 +123,7 @@
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="SplitContainerMain.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 40</value>
<value>0, 0</value>
</data>
<data name="SplitContainerTop.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@@ -310,7 +310,7 @@
<value>0, 0</value>
</data>
<data name="GridControlMain.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 237</value>
<value>795, 237</value>
</data>
<data name="GridControlMain.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -379,7 +379,7 @@
<value>0, 0</value>
</data>
<data name="pnlDetails.Size" type="System.Drawing.Size, System.Drawing">
<value>1081, 345</value>
<value>1077, 349</value>
</data>
<data name="pnlDetails.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -397,7 +397,7 @@
<value>0</value>
</data>
<data name="TabDetails.Size" type="System.Drawing.Size, System.Drawing">
<value>1081, 345</value>
<value>1077, 349</value>
</data>
<data name="TabDetails.Text" xml:space="preserve">
<value>Detailansicht</value>
@@ -415,7 +415,7 @@
<value>0</value>
</data>
<data name="TCDetails.Size" type="System.Drawing.Size, System.Drawing">
<value>1083, 373</value>
<value>1083, 380</value>
</data>
<data name="TCDetails.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -444,6 +444,9 @@
<data name="ToolStripTextBox2.Size" type="System.Drawing.Size, System.Drawing">
<value>350, 23</value>
</data>
<data name="ToolStripTextBox2.ToolTipText" xml:space="preserve">
<value>HIt Return to change name</value>
</data>
<data name="UmbenennenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>239, 22</value>
</data>
@@ -493,7 +496,7 @@
<value>192, 255, 192</value>
</data>
<data name="GridControlDocSearch.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 324</value>
<value>1072, 324</value>
</data>
<data name="GridControlDocSearch.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
@@ -554,7 +557,7 @@
<value>0, 0</value>
</data>
<data name="ToolStripDokumente.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 25</value>
<value>1072, 25</value>
</data>
<data name="ToolStripDokumente.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -575,7 +578,7 @@
<value>1</value>
</data>
<data name="TabWindream.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 349</value>
<value>1072, 349</value>
</data>
<data name="TabWindream.Text" xml:space="preserve">
<value>windream-Dateien</value>
@@ -1006,7 +1009,7 @@
<value>2</value>
</data>
<data name="TabFollowUp.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 349</value>
<value>1072, 349</value>
</data>
<data name="TabFollowUp.Text" xml:space="preserve">
<value>Wiedervorlage</value>
@@ -1033,7 +1036,7 @@
<value>Cyan</value>
</data>
<data name="GridControlPos.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 324</value>
<value>1072, 324</value>
</data>
<data name="GridControlPos.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -1057,7 +1060,7 @@
<value>0, 25</value>
</data>
<data name="Panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 324</value>
<value>1072, 324</value>
</data>
<data name="Panel1.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -1232,7 +1235,7 @@
<value>0, 0</value>
</data>
<data name="BindingNavigatorPOS.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 25</value>
<value>1072, 25</value>
</data>
<data name="BindingNavigatorPOS.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -1261,7 +1264,7 @@
</value>
</data>
<data name="TabPos.Size" type="System.Drawing.Size, System.Drawing">
<value>1077, 349</value>
<value>1072, 349</value>
</data>
<data name="TabPos.Text" xml:space="preserve">
<value>Positionen</value>
@@ -1524,9 +1527,42 @@
<value>DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerMain.Parent" xml:space="preserve">
<value>$this</value>
<value>SplitContainer1.Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerMain.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="SplitContainer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="SplitContainer1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 40</value>
</data>
<data name="SplitContainer1.Panel1.Text" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="SplitContainer1.Panel2.Text" xml:space="preserve">
<value>Panel2</value>
</data>
<data name="SplitContainer1.Size" type="System.Drawing.Size, System.Drawing">
<value>1083, 647</value>
</data>
<data name="SplitContainer1.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="SplitContainer1.Text" xml:space="preserve">
<value>SplitContainerControl1</value>
</data>
<data name="&gt;&gt;SplitContainer1.Name" xml:space="preserve">
<value>SplitContainer1</value>
</data>
<data name="&gt;&gt;SplitContainer1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainer1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;SplitContainer1.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<metadata name="BindingSource_Entity.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">

View File

@@ -13,9 +13,8 @@ Imports WINDREAMLib
Imports System.Runtime.InteropServices
Public Class frmConstructor_Main
Private DT_VWPMO_CONSTRUCTOR_FORMS As DataTable
Private DT_ENTITY_DATA As DataTable
Private DT_FORM As DataTable
Private Const SEE_MASK_INVOKEIDLIST = &HC
Private Const SEE_MASK_NOCLOSEPROCESS = &H40
Private Const SEE_MASK_FLAG_NO_UI = &H400
@@ -46,6 +45,13 @@ Public Class frmConstructor_Main
Private CONSTRUCTORID As Integer
Private CONSTRUCTOR_DETAIL_ID As Integer
Private DT_CONSTRUCT_VIEW As DataTable
Private DT_VWPMO_CONSTRUCTOR_FORMS As DataTable
Private DT_ENTITY_DATA As DataTable
Private DT_FORM As DataTable
Private DT_TREEVIEW_PER_CONTROLS As DataTable
Private CONTROL_NAVIGATION As Boolean = False
Private EBENE2_PARENT_ID As Integer
Private EBENE3_PARENT_ID As Integer
Private ACT_EBENE As Integer
@@ -56,6 +62,8 @@ Public Class frmConstructor_Main
Private POS_SQL As String = ""
Private POS_RECORD_ID
Private TreeView_perControl As Boolean = False
Dim IsTopFirstRow As Boolean = True
Private RightMouse_Clicked = False
@@ -119,10 +127,12 @@ Public Class frmConstructor_Main
Private FOLLOW_UPisActive As Boolean = False
Private DT_FU_Record As DataTable
Private DT_FU_ENTITY As DataTable
Private gridGUID = 2
' Private gridGUID = 2
Private COL_ARRAY_RESULTLIST As List(Of String)
Private DT_WINDREAM_RESULTLIST_DEF As DataTable
Private DT_WINDREAM_RESULTLIST As DataTable
Private DT_RESULTLIST_OPTIONS As DataTable
Private USER_RESULTLIST_CONFIG_GUID As Integer = 0
Private DT_TBPMO_FORM_VIEW As DataTable
@@ -148,6 +158,7 @@ Public Class frmConstructor_Main
Private _ENTITYSTRING As String
Private RESULT_DOC_PATH
Private RESULT_OBJECTTYPE
Private BACKGROUND_HELPER As ClassBackgroundHelper
@@ -224,41 +235,51 @@ Public Class frmConstructor_Main
FormDesignerToolStripMenuItem.Visible = False
End If
Try
'SplitCont_Details.Collapsed = True
CONSTRUCTORID = CURRENT_CONSTRUCTOR_ID
ClassWindowLocation.LoadFormLocationSize(Me, CONSTRUCTORID, CURRENT_SCREEN_ID, "CONSTRUCTOR_MAIN")
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Me.TBPMO_FILES_USERTableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Dim SQL = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"FROM VWPMO_CONSTRUCTOR_FORMS WHERE SCREEN_ID = {2} AND CONSTRUCT_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, CURRENT_SCREEN_ID, CONSTRUCTORID)
'Try
''SplitCont_Details.Collapsed = True
'CONSTRUCTORID = CURRENT_CONSTRUCTOR_ID
ClassWindowLocation.LoadFormLocationSize(Me, CONSTRUCTORID, CURRENT_SCREEN_ID, "CONSTRUCTOR_MAIN")
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Me.TBPMO_FILES_USERTableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Dim SQL = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"FROM VWPMO_CONSTRUCTOR_FORMS WHERE SCREEN_ID = {2} AND CONSTRUCT_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, CURRENT_SCREEN_ID, CONSTRUCTORID)
DT_VWPMO_CONSTRUCTOR_FORMS = ClassDatabase.Return_Datatable(SQL)
DT_CONSTRUCT_VIEW = ClassDatabase.Return_Datatable("SELECT * FROM TBPMO_FORM_CONSTRUCTOR WHERE GUID = " & CONSTRUCTORID)
Dim SEL1 = String.Format("SELECT * FROM TBPMO_FORM WHERE GUID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE SCREEN_ID = {0} AND CONSTRUCT_ID = {1})", CURRENT_SCREEN_ID, CONSTRUCTORID)
DT_ENTITY_DATA = ClassDatabase.Return_Datatable(SEL1)
DT_VWPMO_CONSTRUCTOR_FORMS = ClassDatabase.Return_Datatable(SQL)
SQL = String.Format("select * from TBPMO_STRUCTURE_NODES where ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", CONSTRUCTORID)
Dim DT As DataTable = ClassDatabase.Return_Datatable(SQL)
If DT.Rows.Count > 1 Then
TreeView_perControl = True
DT_TREEVIEW_PER_CONTROLS = DT
Me.SplitContainerTop.Panel1.Controls.Remove(Me.TreeViewMain)
Me.SplitContainer1.Panel1.Controls.Add(Me.TreeViewMain)
SplitContainer1.Collapsed = False
SplitContainer1.PanelVisibility = SplitPanelVisibility.Both
SplitContainerTop.Collapsed = True
SplitContainerTop.PanelVisibility = SplitPanelVisibility.Panel2
CONTROL_NAVIGATION = True
End If
DT_CONSTRUCT_VIEW = ClassDatabase.Return_Datatable("SELECT * FROM TBPMO_FORM_CONSTRUCTOR WHERE GUID = " & CONSTRUCTORID)
Dim SEL1 = String.Format("SELECT * FROM TBPMO_FORM WHERE GUID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE SCREEN_ID = {0} AND CONSTRUCT_ID = {1})", CURRENT_SCREEN_ID, CONSTRUCTORID)
DT_ENTITY_DATA = ClassDatabase.Return_Datatable(SEL1)
If DT_CONSTRUCT_VIEW.Rows.Count = 1 Then
'Load Input Grid
Me.Text = DT_CONSTRUCT_VIEW.Rows(0).Item("FORM_TITLE")
'Die Standards ein/ausblenden
End If
Load_Tree_View(CONSTRUCTORID)
If DT_CONSTRUCT_VIEW.Rows.Count = 1 Then
'Load Input Grid
Me.Text = DT_CONSTRUCT_VIEW.Rows(0).Item("FORM_TITLE")
'Die Standards ein/ausblenden
End If
Load_Tree_View(CONSTRUCTORID)
Dim sql_ResultList = "select * from TBPMO_WINDREAM_RESULTLIST_CONFIG"
DT_WINDREAM_RESULTLIST_DEF = ClassDatabase.Return_Datatable(sql_ResultList, "GETRESULTLIST KONFIG")
FORM_LOADED = True
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
If LogErrorsOnly = False Then ClassLogger.Add(" >> Form Load took " & Format(elapsed, "0.000000000") & " seconds", False)
Catch ex As System.Exception
MsgBox("Error while Loading Form part 2" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
'System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
FORM_LOADED = True
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
If LogErrorsOnly = False Then ClassLogger.Add(" >> Form Load took " & Format(elapsed, "0.000000000") & " seconds", False)
'Catch ex As System.Exception
' MsgBox("Error while Loading Form part 2" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
' 'System.Windows.Forms.MessageBox.Show(ex.Message)
'End Try
Me.Cursor = Cursors.Default
End Sub
@@ -368,7 +389,12 @@ Public Class frmConstructor_Main
Case "SplitViewTopSplitterPosition"
SplitContainerTop.SplitterPosition = Integer.Parse(setting._value)
Case "SplitViewMainSplitterPosition"
SplitContainerMain.SplitterPosition = Integer.Parse(setting._value)
If CONTROL_NAVIGATION = False Then
SplitContainerMain.SplitterPosition = Integer.Parse(setting._value)
Else
SplitContainer1.SplitterPosition = Integer.Parse(setting._value)
End If
End Select
Next
Catch ex As Exception
@@ -381,8 +407,14 @@ Public Class frmConstructor_Main
Dim XMLPath = Get_Splitter_Layout_Filename()
Dim layout As New ClassLayout(XMLPath)
Dim settings As New System.Collections.Generic.List(Of ClassSetting)
settings.Add(New ClassSetting("SplitViewTopSplitterPosition", SplitContainerTop.SplitterPosition))
settings.Add(New ClassSetting("SplitViewMainSplitterPosition", SplitContainerMain.SplitterPosition))
If CONTROL_NAVIGATION = False Then
settings.Add(New ClassSetting("SplitViewTopSplitterPosition", SplitContainerTop.SplitterPosition))
settings.Add(New ClassSetting("SplitViewMainSplitterPosition", SplitContainerMain.SplitterPosition))
Else
settings.Add(New ClassSetting("SplitViewTopSplitterPosition", SplitContainerTop.SplitterPosition))
settings.Add(New ClassSetting("SplitViewMainSplitterPosition", SplitContainer1.SplitterPosition))
End If
layout.Save(settings)
Catch ex As Exception
MsgBox("Error in Save_Splitter_Layout:" & vbNewLine & ex.Message)
@@ -1014,81 +1046,163 @@ Public Class frmConstructor_Main
Dim sw As New SW("Load_Tree_View")
TreeViewMain.Nodes.Clear()
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query1 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = 0
Dim Rows1 = query1.ToList()
For Each Row1 In Rows1
Dim LEVEL1_NODE As TreeNode
Dim LEVEL2_NODE As TreeNode
Dim LEVEL3_NODE As TreeNode
Dim LEVEL1_TITLE = Row1.Item("CAPTION").ToString
Dim LEVEL1_ID = Row1.Item("FORM_ID").ToString
If CONTROL_NAVIGATION = True Then
' Rootnode erstellen und taggen
LEVEL1_NODE = New TreeNode(LEVEL1_TITLE)
LEVEL1_NODE.Tag = LEVEL1_ID
' TreeView Rootnode einfügen
TreeViewMain.Nodes.Add(LEVEL1_NODE)
If DT_TREEVIEW_PER_CONTROLS.Rows.Count > 1 Then
' Presuming the DataTable has a column named ENTITY_ID and TYPE_NODE.
Dim expression As String
expression = "TYPE_NODE = 1"
Dim foundRowsLevel1() As DataRow
' Use the Select method to find all rows matching the filter.
foundRowsLevel1 = DT_TREEVIEW_PER_CONTROLS.Select(expression)
Dim i As Integer
' For each row create a Node
For i = 0 To foundRowsLevel1.GetUpperBound(0)
Dim ID = foundRowsLevel1(i)("GUID")
Dim LevelEntity = foundRowsLevel1(i)("ENTITY_ID")
Dim controlID = foundRowsLevel1(i)("CONTROL_ID")
Dim nodetext = foundRowsLevel1(i)("ID2")
Dim LEVEL1_NODE As TreeNode
LEVEL1_NODE = New TreeNode(nodetext)
LEVEL1_NODE.Tag = LevelEntity & "CONTROL-ID" & controlID.ToString
TreeViewMain.Nodes.Add(LEVEL1_NODE)
'### LEVEL 2 laden #######
Dim expressionLevel2 As String
expressionLevel2 = "TYPE_NODE = 2 AND PARENT_GUID = " & ID 'Einschränkung auf Type 2 und Parent_Guid
Dim foundRowsLevel2() As DataRow
foundRowsLevel2 = DT_TREEVIEW_PER_CONTROLS.Select(expressionLevel2)
Dim j As Integer
For j = 0 To foundRowsLevel2.GetUpperBound(0)
Dim ID2 = foundRowsLevel2(j)("GUID")
Dim LevelEntity2 = foundRowsLevel2(j)("ENTITY_ID")
Dim controlID2 = foundRowsLevel2(j)("CONTROL_ID")
Dim nodetext2 = foundRowsLevel2(j)("ID2")
' Node erstellen..
Dim LEVEL2_NODE As TreeNode
LEVEL2_NODE = New TreeNode(nodetext2)
LEVEL2_NODE.Tag = LevelEntity2 & "CONTROL-ID" & controlID2.ToString
' ..und einfügen
LEVEL1_NODE.Nodes.Add(LEVEL2_NODE)
'### LEVEL 3 laden #######
Dim expressionLevel3 As String
expressionLevel3 = "TYPE_NODE = 3 AND PARENT_GUID = " & ID2 'Einschränkung auf Type und Parent_Guid
Dim foundRowsLevel3() As DataRow
foundRowsLevel3 = DT_TREEVIEW_PER_CONTROLS.Select(expressionLevel3)
Dim k As Integer
For k = 0 To foundRowsLevel3.GetUpperBound(0)
Dim ID3 = foundRowsLevel3(k)("GUID")
Dim LevelEntity3 = foundRowsLevel3(k)("ENTITY_ID")
Dim controlID3 = foundRowsLevel3(k)("CONTROL_ID")
Dim nodetext3 = foundRowsLevel3(k)("ID2")
' Node erstellen..
Dim LEVEL3_NODE As TreeNode
LEVEL3_NODE = New TreeNode(nodetext3)
LEVEL3_NODE.Tag = LevelEntity3 & "CONTROL-ID" & controlID3.ToString
' ..und einfügen
LEVEL2_NODE.Nodes.Add(LEVEL3_NODE)
Next k
Next j
'### Level 2 Ende ########
Next i
Else
MsgBox("Check the Control Navigation Option or inform Digital Data!", MsgBoxStyle.Critical)
Me.Close()
End If
Else
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query2 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Dim query1 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = LEVEL1_ID
Where form.Item("PARENT_ID") = 0
Dim Rows2 = query2.ToList()
Dim Rows1 = query1.ToList()
For Each Row2 In Rows2
For Each LEVEL1ROW In Rows1
Dim LEVEL1_NODE As TreeNode
Dim LEVEL2_TITLE As String = Row2.Item("CAPTION").ToString
Dim LEVEL2_ID As Integer = Row2.Item("FORM_ID")
Dim LEVEL2_PARENT_ID As Integer = Row2.Item("PARENT_ID")
Dim LEVEL3_NODE As TreeNode
' Node erstellen..
LEVEL2_NODE = New TreeNode(LEVEL2_TITLE)
LEVEL2_NODE.Tag = LEVEL2_ID
' ..und einfügen
LEVEL1_NODE.Nodes.Add(LEVEL2_NODE)
'################## LEVEL 1 wird geladen ###########################
Dim LEVEL1_TITLE = LEVEL1ROW.Item("CAPTION").ToString
Dim NODE1_ENTITY_ID = LEVEL1ROW.Item("FORM_ID").ToString
Dim ENTITY_ID = LEVEL1ROW.Item("FORM_ID")
' Rootnode erstellen und taggen
LEVEL1_NODE = New TreeNode(LEVEL1_TITLE)
LEVEL1_NODE.Tag = NODE1_ENTITY_ID
' TreeView Rootnode einfügen
TreeViewMain.Nodes.Add(LEVEL1_NODE)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query3 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = LEVEL2_ID
'################## LEVEL 2 wird geladen #########
Dim LEVEL2_NODE As TreeNode
Dim Rows3 = query3.ToList()
Dim query2 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = NODE1_ENTITY_ID
For Each Row3 In Rows3
Dim Rows2 = query2.ToList()
For Each Row2 In Rows2
Dim LEVEL3_TITLE As String = Row3.Item("CAPTION")
Dim LEVEL3_ID As Integer = Row3.Item("FORM_ID")
Dim LEVEL2_TITLE As String = Row2.Item("CAPTION").ToString
Dim LEVEL2_ID As Integer = Row2.Item("FORM_ID")
Dim LEVEL2_PARENT_ID As Integer = Row2.Item("PARENT_ID")
' Node erstellen..
LEVEL3_NODE = New TreeNode(LEVEL3_TITLE)
LEVEL3_NODE.Tag = LEVEL3_ID
LEVEL2_NODE = New TreeNode(LEVEL2_TITLE)
LEVEL2_NODE.Tag = LEVEL2_ID
' ..und einfügen
LEVEL2_NODE.Nodes.Add(LEVEL3_NODE)
LEVEL1_NODE.Nodes.Add(LEVEL2_NODE)
'##### LEVEL 3 wird geladen #########
Dim query3 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = LEVEL2_ID
Dim Rows3 = query3.ToList()
For Each Row3 In Rows3
Dim LEVEL3_TITLE As String = Row3.Item("CAPTION")
Dim LEVEL3_ID As Integer = Row3.Item("FORM_ID")
' Node erstellen..
LEVEL3_NODE = New TreeNode(LEVEL3_TITLE)
LEVEL3_NODE.Tag = LEVEL3_ID
' ..und einfügen
LEVEL2_NODE.Nodes.Add(LEVEL3_NODE)
Next
Next
Next
End If
Next
TreeViewMain.ExpandAll()
TreeViewMain.Nodes(0).EnsureVisible()
sw.Done()
End Sub
Sub Create_variable_node()
End Sub
Private Function Return_ENTITY_FOR_TAG(NodeString As String)
If IsNumeric(NodeString) Then
Return NodeString
Else
If NodeString.Contains("CONTROL-ID") Then
Try
Dim _index = NodeString.IndexOf("C")
Dim Entity = NodeString.Substring(0, _index)
Return Entity
Catch ex As Exception
ClassLogger.Add("Unexpected Error in Return_ENTITY_FOR_TAG ('" & NodeString & "'): " & ex.Message, True)
Return 0
End Try
End If
End If
End Function
Sub Load_Tree_View_Data()
Try
Dim sw As New Stopwatch
@@ -1097,7 +1211,7 @@ Public Class frmConstructor_Main
If SelectedNode IsNot Nothing Then
ENTITY_LOADED = False
ENTITY_ID = SelectedNode.Tag
ENTITY_ID = Return_ENTITY_FOR_TAG(SelectedNode.Tag)
CURRENT_FORM_ID = ENTITY_ID
Dim parentNode As TreeNode = TryCast(SelectedNode.Parent, TreeNode)
@@ -1119,32 +1233,32 @@ Public Class frmConstructor_Main
Where form.Item("FORM_ID") = ENTITY_ID).Single()
CONSTRUCTOR_DETAIL_ID = result.Item("GUID")
'Dim Sql = "SELECT GUID from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
'CONSTRUCTOR_DETAIL_ID = ClassDatabase.Execute_Scalar(Sql, True)
Dim sql_ResultList = "select * from TBPMO_USER_WINDREAM_RESULTLIST_CONFIG where USER_ID = " & USER_GUID & " AND CONSTRUCTOR_DETAIL_ID = " & CONSTRUCTOR_DETAIL_ID
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GET USER_RESULTLIST KONFIG")
If DT.Rows.Count = 1 Then
USER_RESULTLIST_CONFIG_GUID = DT.Rows(0).Item(0)
DT_WINDREAM_RESULTLIST = Nothing
DT_WINDREAM_RESULTLIST = DT
Else
USER_RESULTLIST_CONFIG_GUID = 0
If USER_LANGUAGE <> "de-DE" Then
'Grid wird in englisch dargestellt!
gridGUID = 3
End If
Dim filteredDatatable = DT_WINDREAM_RESULTLIST_DEF.Copy()
For Each row As DataRow In filteredDatatable.Rows
If row.Item(0) <> gridGUID Then
row.Delete()
End If
Next
filteredDatatable.AcceptChanges()
If filteredDatatable.Rows.Count = 1 Then
DT_WINDREAM_RESULTLIST = Nothing
DT_WINDREAM_RESULTLIST = filteredDatatable
End If
End If
'DT_WINDREAM_RESULTLIST = DT_WINDREAM_RESULTLIST_DEF
'Dim sql_ResultList = "select * from TBPMO_USER_WINDREAM_RESULTLIST_CONFIG where USER_ID = " & USER_GUID & " AND CONSTRUCTOR_DETAIL_ID = " & CONSTRUCTOR_DETAIL_ID
'Dim DT As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GET USER_RESULTLIST KONFIG")
'If DT.Rows.Count = 1 Then
' USER_RESULTLIST_CONFIG_GUID = DT.Rows(0).Item(0)
' DT_WINDREAM_RESULTLIST = Nothing
' DT_WINDREAM_RESULTLIST = DT
'Else
' USER_RESULTLIST_CONFIG_GUID = 0
'If USER_LANGUAGE <> "de-DE" Then
' 'Grid wird in englisch dargestellt!
' gridGUID = 3
'End If
'Dim filteredDatatable = DT_WINDREAM_RESULTLIST_DEF.Copy()
'For Each row As DataRow In filteredDatatable.Rows
' If row.Item(0) <> gridGUID Then
' row.Delete()
' End If
'Next
'filteredDatatable.AcceptChanges()
'If filteredDatatable.Rows.Count = 1 Then
'DT_WINDREAM_RESULTLIST = Nothing
'DT_WINDREAM_RESULTLIST = filteredDatatable
'End If
'End If
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
If LogErrorsOnly = False Then ClassLogger.Add(" >> Load_Tree_View_Data1 took " & Format(elapsed, "0.000000000") & " seconds", False)
@@ -1171,7 +1285,7 @@ Public Class frmConstructor_Main
Dim PARENT_ID1 As Integer
Dim TYPE_ID1 As Integer
If a = 0 Then
Dim sql As String = "SELECT PARENT_ID, FORM_TYPE_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & childNodeLevel1.Tag & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
Dim sql As String = "SELECT PARENT_ID, FORM_TYPE_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & Return_ENTITY_FOR_TAG(childNodeLevel1.Tag) & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql, "ShowNodeAmounts")
PARENT_ID1 = DT.Rows(0).Item(0)
TYPE_ID1 = DT.Rows(0).Item(1)
@@ -1180,7 +1294,7 @@ Public Class frmConstructor_Main
If childNodeLevel1.Text = "Allgemein" Then
Console.WriteLine("Allgemein-Reiter")
End If
Dim result As Integer = ReturnAmountofRecords(childNodeLevel1.Tag)
Dim result As Integer = ReturnAmountofRecords(Return_ENTITY_FOR_TAG(childNodeLevel1.Tag))
If result <> 99999999 Then
Dim origtext As String = childNodeLevel1.Text
If origtext.Contains(" (") Then
@@ -1661,7 +1775,12 @@ Public Class frmConstructor_Main
DisableEditMode()
Load_Entity_Data(ACT_EBENE)
RECORD_CHANGED = False
Else
msg = "Der Datensatz '" & SELECTED_RECORD_ID & "' konnte nicht gelöscht werden. Überprüfen Sie das log"
If USER_LANGUAGE <> "de-DE" Then
msg = "The record '" & SELECTED_RECORD_ID & "' could not be deleted. Check the log"
End If
MsgBox(msg, MsgBoxStyle.Exclamation)
End If
End If
End Sub
@@ -1904,6 +2023,11 @@ Public Class frmConstructor_Main
SQL_RIGHT_READ_AND_VIEW_ONLY = result.Item("SQL_RIGHT_READ_AND_VIEW_ONLY")
SQL_RIGHT_WINDREAM_FORBIDDEN = result.Item("SQL_RIGHT_WINDREAM_VIEW")
Dim sql_ResultList = String.Format("select * from TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE ENTITY_ID = {0} AND LANGUAGE = '{1}'", ENTITY_ID, USER_LANGUAGE) 'TBPMO_WINDREAM_RESULTLIST_CONFIG"
DT_WINDREAM_RESULTLIST = ClassDatabase.Return_Datatable(sql_ResultList, "GETRESULTLIST KONFIG")
sql_ResultList = String.Format("select * from TBPMO_DOCSEARCH_VARIABLE_CONTROLS WHERE ENTITY_ID = {0}", ENTITY_ID) 'TBPMO_WINDREAM_RESULTLIST_CONFIG"
DT_RESULTLIST_OPTIONS = ClassDatabase.Return_Datatable(sql_ResultList, "GETVARIABLE CONTROLS")
Dim ENTITY_ROW = (From form In DT_ENTITY_DATA.AsEnumerable()
Select form
Where form.Item("GUID") = ENTITY_ID).Single()
@@ -3671,7 +3795,36 @@ Public Class frmConstructor_Main
If Type = "ENTITY" Then
SQL_DOC_SEARCH = String.Format("SELECT * FROM VWPMO_WD_DOC_SEARCH WHERE [ENTITY_ID] = {0}", ENTITY_ID)
Else
SQL_DOC_SEARCH = String.Format("SELECT * FROM VWPMO_WD_DOC_SEARCH WHERE [RECORD_ID] = {0}", RECORD_ID)
Dim OPTION1 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION1_CTRL")
Dim OPTION2 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION2_CTRL")
Dim OPTION3 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION3_CTRL")
Dim OPTION4 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION4_CTRL")
Dim OPTION5 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION5_CTRL")
If DT_RESULTLIST_OPTIONS.Rows.Count = 0 Then
OPTION1 = 0
OPTION2 = 0
OPTION3 = 0
OPTION4 = 0
OPTION5 = 0
End If
SQL_DOC_SEARCH = String.Format("SELECT * ," & _
"(CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {2} AND RECORD_ID = {0}) " & _
"ELSE '' END) AS OPTION1," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {3} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION2," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {4} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION3," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {5} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION4 " & _
"FROM VWPMO_WD_DOC_SEARCH WHERE RECORD_ID LIKE '%#{0}%'", RECORD_ID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4)
End If
Return ClassDatabase.Return_Datatable_Connection(SQL_DOC_SEARCH, 1)
Catch ex As Exception
@@ -3730,39 +3883,28 @@ Public Class frmConstructor_Main
colPath.Caption = "Fullpath"
DTGrid.Columns.Add(colPath)
Dim colOtype As New System.Data.DataColumn()
colOtype.DataType = GetType(String)
colOtype.ColumnName = "OBJECTTYPE"
colOtype.Caption = "Objecttype"
DTGrid.Columns.Add(colOtype)
If Not DT_WINDREAM_RESULTLIST Is Nothing And DT_WINDREAM_RESULTLIST.Rows.Count = 1 Then
If Not DT_WINDREAM_RESULTLIST Is Nothing And DT_WINDREAM_RESULTLIST.Rows.Count >= 1 Then
Dim ColCount As Integer = 1
For Each Column As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If Column.ColumnName.StartsWith("COLUMN") And Column.ColumnName.EndsWith("WIDTH") = False Then
Dim ColumnName = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column.ColumnName)
If Not IsDBNull(ColumnName) Then
If Not IsDBNull(ColumnName) Or IsNothing(ColumnName) Or ColumnName <> "" Or ColumnName <> "{}" Then
'Jetzt die Spalten aus Array hinzufügen und Breite konfigurieren
Dim Width = DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("COLUMN{0}_WIDTH", ColCount))
If IsNothing(Width) Or IsDBNull(Width) Then
Width = 200
End If
'Die Spalte definieren
DTGrid.Columns.Add(ColumnName)
ColCount += 1
End If
End If
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
Dim ColumnName = rw.Item("HEADER_CAPTION")
Dim Width = rw.Item("WIDTH")
If IsNothing(Width) Or IsDBNull(Width) Then
Width = 200
End If
'Die Spalte definieren
DTGrid.Columns.Add(ColumnName)
ColCount += 1
Next
'Jetzt das Array zusammenbauen um die Spaltenwerte zu erhalten
ColCount = 1
For Each Column As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If Column.ColumnName = String.Format("COLUMN{0}", ColCount) Then
Dim ColumnName = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column.ColumnName)
If Not IsDBNull(ColumnName) Then
If Not IsDBNull(ColumnName) Or IsNothing(ColumnName) Or ColumnName <> "" Or ColumnName <> "{}" Then
'Jetzt die Spalten aus Array hinzufügen und Breite konfigurieren
ColArrayDEFINITION.Add(Column.ColumnName)
End If
End If
ColCount += 1
End If
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
ColArrayDEFINITION.Add(rw.Item("COLUMN_VIEW"))
Next
End If
Catch ex As Exception
@@ -3770,9 +3912,10 @@ Public Class frmConstructor_Main
End Try
COL_ARRAY_RESULTLIST = ColArrayDEFINITION
For Each row As DataRow In DT_FILE_RESULT.Rows
For Each FILE_ROW As DataRow In DT_FILE_RESULT.Rows
Dim fullpath = row.Item("FULL_FILENAME")
Dim fullpath = FILE_ROW.Item("FULL_FILENAME")
Dim objecttype = FILE_ROW.Item("OBJECTTYPE")
'Dim Folderpath = Path.GetDirectoryName(fullpath)
Dim filename = Path.GetFileName(fullpath)
Dim extension = Path.GetExtension(fullpath)
@@ -3807,23 +3950,13 @@ Public Class frmConstructor_Main
End Select
'Den Filepath mitgeben
NewRow.Item(1) = fullpath
Dim i = 2 'Fängt bei 2 an, um die ICON Column zu überspringen
For Each Column As String In ColArrayDEFINITION
Dim Colname = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column)
NewRow.Item(2) = objecttype
Dim i = 3 'Fängt bei 2 an, um die ICON Column zu überspringen
For Each Colname As String In ColArrayDEFINITION
Dim rowvalue
Try
If LogErrorsOnly = False Then ClassLogger.Add(" >> now rowvalue for Colname '" & Colname & "'", False)
If Colname = "Dateiname" Or Colname = "filename" Then
rowvalue = filename
ElseIf Colname = "Dokumentart" Or Colname = "doctype" Then
rowvalue = row.Item("Doctype")
ElseIf Colname = "Erstellt" Or Colname = "created" Then
rowvalue = row.Item("Creation_DateTime")
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> else: row.Item(" & Colname & ")", False)
rowvalue = row.Item(Colname)
End If
rowvalue = FILE_ROW.Item(Colname)
If LogErrorsOnly = False Then ClassLogger.Add(" >> rowvalue : '" & rowvalue.ToString & "'", False)
Catch ex As Exception
ClassLogger.Add("Unexpected Error in GetVariableValue for Column '" & Colname & "- Error: " & ex.Message)
@@ -3847,18 +3980,11 @@ Public Class frmConstructor_Main
GridViewDoc_Search.Columns.Item("ICON").MaxWidth = 24
GridViewDoc_Search.Columns.Item("ICON").MinWidth = 24
GridViewDoc_Search.Columns.Item("FULLPATH").Visible = False
For Each col As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If col.ColumnName.EndsWith("WIDTH") Or col.ColumnName.StartsWith("ADDED") Or col.ColumnName.StartsWith("CHANGED") Then
Continue For
End If
Dim rowvalue = DT_WINDREAM_RESULTLIST.Rows(0).Item(col.ColumnName)
If IsDBNull(rowvalue) Or IsNumeric(rowvalue) Then
Continue For
End If
Dim Width = DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("{0}_WIDTH", col.ColumnName))
GridViewDoc_Search.Columns.Item("OBJECTTYPE").Visible = False
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
Dim Width = rw.Item("WIDTH") 'DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("{0}_WIDTH", col.ColumnName))
If Not IsNothing(Width) And Not IsDBNull(Width) Then
Dim column = DirectCast(GridViewDoc_Search.Columns.Item(rowvalue), DevExpress.XtraGrid.Columns.GridColumn)
Dim column = DirectCast(GridViewDoc_Search.Columns.Item(rw.Item("HEADER_CAPTION")), DevExpress.XtraGrid.Columns.GridColumn)
column.Width = Width
Console.WriteLine("ColumnWidth {0} set to {1}", column.FieldName, Width)
Console.WriteLine("ColumnWidth {0} really set to {1}", column.FieldName, column.VisibleWidth)
@@ -4138,7 +4264,7 @@ Public Class frmConstructor_Main
CURRENT_PARENT_ENTITY_ID = PARENT_ENTITYID
CURRENT_RECORD_ID = RECORD_ID
CURRENT_FORMVIEW_ID = FORMVIEW_ID
frmWD_Index_Dokart.ShowDialog()
frmWD_IndexFile.ShowDialog()
RUN_WDSEARCH_GRID("RECORD")
'RUN_WD_SEARCH(WD_Suche, "RECORD")
End If
@@ -4206,7 +4332,7 @@ Public Class frmConstructor_Main
CURRENT_FORM_ID = ENTITY_ID
CURRENT_FORMVIEW_ID = FORMVIEW_ID
If ClassDatabase.Execute_Scalar("SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE GUID = " & CURRENT_FILEID & " AND WORKED = 0") = 1 Then
frmWD_Index_Dokart.ShowDialog()
frmWD_IndexFile.ShowDialog()
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> File was deleted or worked meanwhile!")
End If
@@ -4239,6 +4365,9 @@ Public Class frmConstructor_Main
Private Sub TCDetails_DragEnter(sender As Object, e As DragEventArgs) Handles TCDetails.DragEnter
Drag_Enter(e)
End Sub
Private Sub GridControlDocSearch_DragEnter(sender As Object, e As DragEventArgs) Handles GridControlDocSearch.DragEnter
Drag_Enter(e)
End Sub
#End Region
#Region "Follow Up"
@@ -4511,7 +4640,7 @@ Public Class frmConstructor_Main
Try
Dim SelectedNode As TreeNode = TryCast(TreeViewMain.SelectedNode, TreeNode)
If SelectedNode IsNot Nothing Then
Dim FormId As Integer = SelectedNode.Tag
Dim FormId As Integer = Return_ENTITY_FOR_TAG(SelectedNode.Tag)
If FormId > 0 Then
CURRENT_FORM_ID = FormId
OpenFormLevelDesigner()
@@ -4588,7 +4717,7 @@ Public Class frmConstructor_Main
Private Sub CheckNode(ByVal n As TreeNode, FormID As Integer)
Dim aNode As TreeNode
If CInt(n.Tag) = FormID Then
If CInt(Return_ENTITY_FOR_TAG(n.Tag)) = FormID Then
'Gefunden also selektieren
TreeViewMain.SelectedNode = n
TreeViewMain.SelectedNode.EnsureVisible()
@@ -4604,7 +4733,7 @@ Public Class frmConstructor_Main
End If
For Each aNode In n.Nodes
If CInt(aNode.Tag) = FormID Then
If CInt(Return_ENTITY_FOR_TAG(aNode.Tag)) = FormID Then
'Gefunden also selektieren
TreeViewMain.SelectedNode = aNode
TreeViewMain.SelectedNode.EnsureVisible()
@@ -5015,7 +5144,9 @@ Public Class frmConstructor_Main
Private Sub GridViewDoc_Search_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDoc_Search.FocusedRowChanged
Try
RESULT_DOC_PATH = GridViewDoc_Search.GetFocusedRowCellValue(GridViewDoc_Search.Columns("FULLPATH"))
RESULT_OBJECTTYPE = GridViewDoc_Search.GetFocusedRowCellValue(GridViewDoc_Search.Columns("OBJECTTYPE"))
Catch ex As Exception
ClassLogger.Add(">> Attention: Could not set DocVariables Path or Objecttype: " & ex.Message, False)
RESULT_DOC_PATH = Nothing
End Try
@@ -5069,6 +5200,7 @@ Public Class frmConstructor_Main
Private Sub GridControlDocSearch_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch.DoubleClick
Try
RESULT_DOC_PATH = GridViewDoc_Search.GetFocusedRowCellValue(GridViewDoc_Search.Columns("FULLPATH"))
RESULT_OBJECTTYPE = GridViewDoc_Search.GetFocusedRowCellValue(GridViewDoc_Search.Columns("OBJECTTYPE"))
Catch ex As Exception
RESULT_DOC_PATH = Nothing
End Try
@@ -5286,36 +5418,36 @@ Public Class frmConstructor_Main
End Sub
Private Sub GridViewDoc_Search_ColumnWidthChanged(sender As Object, e As ColumnEventArgs) Handles GridViewDoc_Search.ColumnWidthChanged
Try
If USER_RESULTLIST_CONFIG_GUID = 0 Then
Dim insert = String.Format("INSERT INTO TBPMO_USER_WINDREAM_RESULTLIST_CONFIG (USER_ID,CONSTRUCTOR_DETAIL_ID,COLUMN1,COLUMN1_WIDTH,COLUMN2,COLUMN2_WIDTH,COLUMN3,COLUMN3_WIDTH,COLUMN4,COLUMN4_WIDTH,COLUMN5,COLUMN5_WIDTH,COLUMN6,COLUMN6_WIDTH,COLUMN7,COLUMN7_WIDTH,ADDED_WHO)" & _
" SELECT {0},{1},COLUMN1,COLUMN1_WIDTH,COLUMN2,COLUMN2_WIDTH,COLUMN3,COLUMN3_WIDTH,COLUMN4,COLUMN4_WIDTH,COLUMN5,COLUMN5_WIDTH,COLUMN6,COLUMN6_WIDTH,COLUMN7,COLUMN7_WIDTH,'{2}' FROM TBPMO_WINDREAM_RESULTLIST_CONFIG WHERE GUID = {3}", USER_GUID, CONSTRUCTOR_DETAIL_ID, Environment.UserName, gridGUID)
If ClassDatabase.Execute_non_Query(insert) = True Then
USER_RESULTLIST_CONFIG_GUID = ClassDatabase.Execute_Scalar("SELECT MAX GUID FROM TBPMO_USER_WINDREAM_RESULTLIST_CONFIG WHERE USER_ID = " & USER_GUID)
Else
Exit Sub
End If
End If
Console.WriteLine("Column changed - Column name: " & e.Column.Name)
Dim colNameGrid = e.Column.Name.Replace("col", "")
'Jetzt über die Column der Configtabelle auf den Inhalt schliessen
For Each col As DataColumn In DT_WINDREAM_RESULTLIST.Columns
Dim rowvalue = DT_WINDREAM_RESULTLIST.Rows(0).Item(col.ColumnName)
If IsDBNull(rowvalue) Or IsNumeric(rowvalue) Then
Continue For
End If
If rowvalue = colNameGrid Then
Dim update = String.Format("UPDATE TBPMO_USER_WINDREAM_RESULTLIST_CONFIG SET {0}_WIDTH = {1} WHERE GUID = {2}", col.ColumnName, e.Column.VisibleWidth, USER_RESULTLIST_CONFIG_GUID)
ClassDatabase.Execute_non_Query(update)
Exit For
End If
Next
If USER_RESULTLIST_CONFIG_GUID > 0 Then
'DT_WINDREAM_RESULTLIST zu USER NEU LADEN
'If USER_RESULTLIST_CONFIG_GUID = 0 Then
' Dim insert = String.Format("INSERT INTO TBPMO_USER_WINDREAM_RESULTLIST_CONFIG (USER_ID,CONSTRUCTOR_DETAIL_ID,COLUMN1,COLUMN1_WIDTH,COLUMN2,COLUMN2_WIDTH,COLUMN3,COLUMN3_WIDTH,COLUMN4,COLUMN4_WIDTH,COLUMN5,COLUMN5_WIDTH,COLUMN6,COLUMN6_WIDTH,COLUMN7,COLUMN7_WIDTH,ADDED_WHO)" & _
' " SELECT {0},{1},COLUMN1,COLUMN1_WIDTH,COLUMN2,COLUMN2_WIDTH,COLUMN3,COLUMN3_WIDTH,COLUMN4,COLUMN4_WIDTH,COLUMN5,COLUMN5_WIDTH,COLUMN6,COLUMN6_WIDTH,COLUMN7,COLUMN7_WIDTH,'{2}' FROM TBPMO_WINDREAM_RESULTLIST_CONFIG WHERE GUID = {3}", USER_GUID, CONSTRUCTOR_DETAIL_ID, Environment.UserName, gridGUID)
' If ClassDatabase.Execute_non_Query(insert) = True Then
' USER_RESULTLIST_CONFIG_GUID = ClassDatabase.Execute_Scalar("SELECT MAX GUID FROM TBPMO_USER_WINDREAM_RESULTLIST_CONFIG WHERE USER_ID = " & USER_GUID)
' Else
' Exit Sub
' End If
'End If
'Console.WriteLine("Column changed - Column name: " & e.Column.Name)
'Dim colNameGrid = e.Column.Name.Replace("col", "")
''Jetzt über die Column der Configtabelle auf den Inhalt schliessen
'For Each col As DataColumn In DT_WINDREAM_RESULTLIST.Columns
' Dim rowvalue = DT_WINDREAM_RESULTLIST.Rows(0).Item(col.ColumnName)
' If IsDBNull(rowvalue) Or IsNumeric(rowvalue) Then
' Continue For
' End If
' If rowvalue = colNameGrid Then
' Dim update = String.Format("UPDATE TBPMO_USER_WINDREAM_RESULTLIST_CONFIG SET {0}_WIDTH = {1} WHERE GUID = {2}", col.ColumnName, e.Column.VisibleWidth, USER_RESULTLIST_CONFIG_GUID)
' ClassDatabase.Execute_non_Query(update)
' Exit For
' End If
'Next
'If USER_RESULTLIST_CONFIG_GUID > 0 Then
' 'DT_WINDREAM_RESULTLIST zu USER NEU LADEN
Dim sql_ResultList = "select * from TBPMO_USER_WINDREAM_RESULTLIST_CONFIG where USER_ID = " & USER_GUID & " AND CONSTRUCTOR_DETAIL_ID = " & CONSTRUCTOR_DETAIL_ID
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GET USER_RESULTLIST KONFIG")
DT_WINDREAM_RESULTLIST = DT
End If
' Dim sql_ResultList = "select * from TBPMO_USER_WINDREAM_RESULTLIST_CONFIG where USER_ID = " & USER_GUID & " AND CONSTRUCTOR_DETAIL_ID = " & CONSTRUCTOR_DETAIL_ID
' Dim DT As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GET USER_RESULTLIST KONFIG")
' DT_WINDREAM_RESULTLIST = DT
'End If
Catch ex As Exception
ClassLogger.Add(">> Unexpected Error in ColumnWidth-Change DocResult: " & ex.Message, False)
End Try
@@ -5366,7 +5498,8 @@ Public Class frmConstructor_Main
Private Sub DateiMitDatensatzVerknüpfenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiMitDatensatzVerknüpfenToolStripMenuItem.Click
Dim fileName As String = RESULT_DOC_PATH
Dim frm As New frmWD_Link_to_Record(fileName)
Dim frm As New frmWD_Link_to_Record(fileName, RESULT_OBJECTTYPE)
frm.Show()
End Sub
End Class

View File

@@ -33,8 +33,6 @@ Public Class frmEntities
Load_TreeView()
Me.TBPMO_FORM_TYPETableAdapter.Fill(Me.DD_DMSDataSet.TBPMO_FORM_TYPE)
ClassWindowLocation.LoadFormLocationSize(Me, 1, CURRENT_SCREEN_ID, "frmForm_Overview")
LoadLayout()
@@ -104,6 +102,8 @@ Public Class frmEntities
End If
TreeViewEntity.ExpandAll()
TreeViewEntity.Nodes(0).EnsureVisible()
Else
MsgBox("No entity configuration found for Your user." & vbNewLine & "please check the logfile.", MsgBoxStyle.Exclamation)
End If
Catch ex As Exception
MsgBox("Error in Load_TreeView:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)

View File

@@ -265,7 +265,7 @@ Partial Class frmRecordView
Me.TabDetails.Controls.Add(Me.pnlDetails)
Me.TabDetails.Image = Global.DD_Record_Organiser.My.Resources.Resources.grid_Data_16xMD
Me.TabDetails.Name = "TabDetails"
Me.TabDetails.Size = New System.Drawing.Size(799, 358)
Me.TabDetails.Size = New System.Drawing.Size(795, 355)
Me.TabDetails.Text = "Detailansicht"
'
'pnlDetails
@@ -275,7 +275,7 @@ Partial Class frmRecordView
Me.pnlDetails.Dock = System.Windows.Forms.DockStyle.Fill
Me.pnlDetails.Location = New System.Drawing.Point(0, 0)
Me.pnlDetails.Name = "pnlDetails"
Me.pnlDetails.Size = New System.Drawing.Size(799, 358)
Me.pnlDetails.Size = New System.Drawing.Size(795, 355)
Me.pnlDetails.TabIndex = 0
'
'TabFollowUp
@@ -285,7 +285,7 @@ Partial Class frmRecordView
Me.TabFollowUp.Controls.Add(Me.Label5)
Me.TabFollowUp.Image = Global.DD_Record_Organiser.My.Resources.Resources.Task_16xMD
Me.TabFollowUp.Name = "TabFollowUp"
Me.TabFollowUp.Size = New System.Drawing.Size(799, 358)
Me.TabFollowUp.Size = New System.Drawing.Size(795, 355)
Me.TabFollowUp.Text = "Wiedervorlage"
'
'ListViewFollowUps
@@ -297,7 +297,7 @@ Partial Class frmRecordView
Me.ListViewFollowUps.HideSelection = False
Me.ListViewFollowUps.Location = New System.Drawing.Point(14, 36)
Me.ListViewFollowUps.Name = "ListViewFollowUps"
Me.ListViewFollowUps.Size = New System.Drawing.Size(263, 183)
Me.ListViewFollowUps.Size = New System.Drawing.Size(263, 180)
Me.ListViewFollowUps.TabIndex = 5
Me.ListViewFollowUps.UseCompatibleStateImageBehavior = False
Me.ListViewFollowUps.View = System.Windows.Forms.View.Details
@@ -323,7 +323,7 @@ Partial Class frmRecordView
Me.grpbxFU_Profile.Controls.Add(Me.lblWiedervorlage_Control)
Me.grpbxFU_Profile.Location = New System.Drawing.Point(283, 28)
Me.grpbxFU_Profile.Name = "grpbxFU_Profile"
Me.grpbxFU_Profile.Size = New System.Drawing.Size(774, 191)
Me.grpbxFU_Profile.Size = New System.Drawing.Size(774, 188)
Me.grpbxFU_Profile.TabIndex = 4
Me.grpbxFU_Profile.TabStop = False
'
@@ -340,7 +340,7 @@ Partial Class frmRecordView
Me.GroupBox4.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Bold)
Me.GroupBox4.Location = New System.Drawing.Point(177, 20)
Me.GroupBox4.Name = "GroupBox4"
Me.GroupBox4.Size = New System.Drawing.Size(594, 165)
Me.GroupBox4.Size = New System.Drawing.Size(594, 162)
Me.GroupBox4.TabIndex = 4
Me.GroupBox4.TabStop = False
Me.GroupBox4.Text = "Individuelle Empfänger für diesen Datensatz:"
@@ -399,7 +399,7 @@ Partial Class frmRecordView
Me.ListBoxUser2Profile.FormattingEnabled = True
Me.ListBoxUser2Profile.Location = New System.Drawing.Point(9, 50)
Me.ListBoxUser2Profile.Name = "ListBoxUser2Profile"
Me.ListBoxUser2Profile.Size = New System.Drawing.Size(230, 82)
Me.ListBoxUser2Profile.Size = New System.Drawing.Size(230, 69)
Me.ListBoxUser2Profile.TabIndex = 1
'
'Label7
@@ -472,7 +472,7 @@ Partial Class frmRecordView
Me.TabPos.Image = CType(resources.GetObject("TabPos.Image"), System.Drawing.Image)
Me.TabPos.Name = "TabPos"
Me.TabPos.PageVisible = False
Me.TabPos.Size = New System.Drawing.Size(799, 358)
Me.TabPos.Size = New System.Drawing.Size(795, 355)
Me.TabPos.Text = "Positionen"
'
'Panel1
@@ -481,7 +481,7 @@ Partial Class frmRecordView
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill
Me.Panel1.Location = New System.Drawing.Point(0, 25)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(799, 333)
Me.Panel1.Size = New System.Drawing.Size(795, 330)
Me.Panel1.TabIndex = 2
'
'GridControlPos
@@ -490,7 +490,7 @@ Partial Class frmRecordView
Me.GridControlPos.Location = New System.Drawing.Point(0, 0)
Me.GridControlPos.MainView = Me.grvwGridPos
Me.GridControlPos.Name = "GridControlPos"
Me.GridControlPos.Size = New System.Drawing.Size(799, 333)
Me.GridControlPos.Size = New System.Drawing.Size(795, 330)
Me.GridControlPos.TabIndex = 0
Me.GridControlPos.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.grvwGridPos})
'
@@ -517,7 +517,7 @@ Partial Class frmRecordView
Me.BindingNavigatorPOS.MovePreviousItem = Me.BindingNavigatorMovePreviousItem
Me.BindingNavigatorPOS.Name = "BindingNavigatorPOS"
Me.BindingNavigatorPOS.PositionItem = Me.BindingNavigatorPositionItem
Me.BindingNavigatorPOS.Size = New System.Drawing.Size(799, 25)
Me.BindingNavigatorPOS.Size = New System.Drawing.Size(795, 25)
Me.BindingNavigatorPOS.TabIndex = 1
Me.BindingNavigatorPOS.Text = "BindingNavigator1"
'
@@ -628,7 +628,7 @@ Partial Class frmRecordView
Me.XtraTabPage2.Controls.Add(Me.ToolStrip2)
Me.XtraTabPage2.Image = Global.DD_Record_Organiser.My.Resources.Resources.Files_7954
Me.XtraTabPage2.Name = "XtraTabPage2"
Me.XtraTabPage2.Size = New System.Drawing.Size(799, 318)
Me.XtraTabPage2.Size = New System.Drawing.Size(795, 315)
Me.XtraTabPage2.Text = "windream-Dateien"
'
'GridControlDocSearch
@@ -639,7 +639,7 @@ Partial Class frmRecordView
Me.GridControlDocSearch.Location = New System.Drawing.Point(0, 25)
Me.GridControlDocSearch.MainView = Me.GridViewDoc_Search
Me.GridControlDocSearch.Name = "GridControlDocSearch"
Me.GridControlDocSearch.Size = New System.Drawing.Size(799, 293)
Me.GridControlDocSearch.Size = New System.Drawing.Size(795, 290)
Me.GridControlDocSearch.TabIndex = 7
Me.GridControlDocSearch.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewDoc_Search})
'
@@ -711,7 +711,7 @@ Partial Class frmRecordView
Me.ToolStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tslblWindreamView, Me.ToolStripDropDownButton1})
Me.ToolStrip2.Location = New System.Drawing.Point(0, 0)
Me.ToolStrip2.Name = "ToolStrip2"
Me.ToolStrip2.Size = New System.Drawing.Size(799, 25)
Me.ToolStrip2.Size = New System.Drawing.Size(795, 25)
Me.ToolStrip2.TabIndex = 2
Me.ToolStrip2.Text = "ToolStrip2"
'
@@ -761,7 +761,7 @@ Partial Class frmRecordView
Me.XtraTabPage1.Controls.Add(STATE_IDLabel)
Me.XtraTabPage1.Controls.Add(Me.STATE_IDComboBox)
Me.XtraTabPage1.Name = "XtraTabPage1"
Me.XtraTabPage1.Size = New System.Drawing.Size(799, 318)
Me.XtraTabPage1.Size = New System.Drawing.Size(795, 315)
Me.XtraTabPage1.Text = "Workflows/Tasks"
'
'WF_IDTextBox

View File

@@ -9,6 +9,7 @@ Public Class frmRecordView
Private Const SEE_MASK_NOCLOSEPROCESS = &H40
Private Const SEE_MASK_FLAG_NO_UI = &H400
Public Const SW_SHOW As Short = 5
Private DT_RESULTLIST_OPTIONS As DataTable
<DllImport("Shell32", CharSet:=CharSet.Auto, SetLastError:=True)> _
Public Shared Function ShellExecuteEx(ByRef lpExecInfo As SHELLEXECUTEINFO) As Boolean
@@ -32,44 +33,67 @@ Public Class frmRecordView
End Structure
Private Sub frmRecordView_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Detailview Record"
Else
Me.Text = "Detailansicht Record"
End If
recordView = New ClassRecordView(pnlDetails)
recordView.LoadRecord(JUMP_RECORD_ID)
'Titel updaten
Me.Text &= " " + recordView.RecordId.ToString()
Try
If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Detailview Record"
Else
Me.Text = "Detailansicht Record"
End If
recordView = New ClassRecordView(pnlDetails)
recordView.LoadRecord(JUMP_RECORD_ID)
'Titel updaten
Me.Text &= " " + recordView.RecordId.ToString()
Dim sql = "SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = " & JUMP_RECORD_ID
ENTITY_ID = ClassDatabase.Execute_Scalar(sql)
sql = String.Format("select * from TBPMO_DOCSEARCH_VARIABLE_CONTROLS WHERE ENTITY_ID = {0}", ENTITY_ID) 'TBPMO_WINDREAM_RESULTLIST_CONFIG"
DT_RESULTLIST_OPTIONS = ClassDatabase.Return_Datatable(sql, "GETVARIABLE CONTROLS")
Catch ex As Exception
MsgBox("Unexpected error in loading form: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
RUN_WDSEARCH_GRID()
Load_Tasks()
End Sub
Private Sub RUN_WDSEARCH_GRID()
Me.Cursor = Cursors.WaitCursor
Dim gridGUID = 2
Dim sql_ResultList = "select * from TBPMO_WINDREAM_RESULTLIST_CONFIG"
Dim DT_WINDREAM_RESULTLIST_DEF As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GETRESULTLIST KONFIG")
Dim DT_WINDREAM_RESULTLIST As DataTable
If USER_LANGUAGE <> "de-DE" Then
gridGUID = 3
End If
For Each row As DataRow In DT_WINDREAM_RESULTLIST_DEF.Rows
If row.Item(0) <> gridGUID Then
row.Delete()
End If
Next
DT_WINDREAM_RESULTLIST_DEF.AcceptChanges()
If DT_WINDREAM_RESULTLIST_DEF.Rows.Count = 1 Then
DT_WINDREAM_RESULTLIST = DT_WINDREAM_RESULTLIST_DEF
End If
Dim sql_ResultList = String.Format("select * from TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE ENTITY_ID = {0} AND LANGUAGE = '{1}'", ENTITY_ID, USER_LANGUAGE) 'TBPMO_WINDREAM_RESULTLIST_CONFIG"
Dim DT_WINDREAM_RESULTLIST As DataTable = ClassDatabase.Return_Datatable(sql_ResultList, "GETRESULTLIST KONFIG")
Try
Dim sw As New Stopwatch
sw.Start()
Dim elapsed As Double
Dim SQL_DOC_SEARCH = String.Format("SELECT * FROM VWPMO_WD_DOC_SEARCH WHERE [RECORD_ID] = {0}", JUMP_RECORD_ID)
Dim OPTION1 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION1_CTRL")
Dim OPTION2 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION2_CTRL")
Dim OPTION3 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION3_CTRL")
Dim OPTION4 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION4_CTRL")
Dim OPTION5 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION5_CTRL")
If DT_RESULTLIST_OPTIONS.Rows.Count = 0 Then
OPTION1 = 0
OPTION2 = 0
OPTION3 = 0
OPTION4 = 0
OPTION5 = 0
End If
Dim SQL_DOC_SEARCH = String.Format("SELECT * ," & _
"(CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {2} AND RECORD_ID = {0}) " & _
"ELSE '' END) AS OPTION1," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {3} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION2," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {4} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION3," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {5} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION4 " & _
"FROM VWPMO_WD_DOC_SEARCH WHERE RECORD_ID LIKE '%#{0}%'", JUMP_RECORD_ID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4)
Dim DT_FILE_RESULT As DataTable = ClassDatabase.Return_Datatable_Connection(SQL_DOC_SEARCH, 1)
@@ -90,7 +114,7 @@ Public Class frmRecordView
tslblWindreamView.Text = msg
Dim DTGrid As New DataTable
Dim ColArray As New List(Of String)
Dim ColArrayDEFINITION As New List(Of String)
Try
'Die Icon Colum erstellen und konfigurieren
Dim colIcon As New System.Data.DataColumn()
@@ -105,49 +129,37 @@ Public Class frmRecordView
colPath.Caption = "Fullpath"
DTGrid.Columns.Add(colPath)
Dim colOtype As New System.Data.DataColumn()
colOtype.DataType = GetType(String)
colOtype.ColumnName = "OBJECTTYPE"
colOtype.Caption = "Objecttype"
DTGrid.Columns.Add(colOtype)
If Not DT_WINDREAM_RESULTLIST Is Nothing And DT_WINDREAM_RESULTLIST.Rows.Count = 1 Then
If Not DT_WINDREAM_RESULTLIST Is Nothing And DT_WINDREAM_RESULTLIST.Rows.Count >= 1 Then
Dim ColCount As Integer = 1
For Each Column As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If Column.ColumnName.StartsWith("COLUMN") And Column.ColumnName.EndsWith("WIDTH") = False Then
Dim ColumnName = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column.ColumnName)
If Not IsDBNull(ColumnName) Then
If Not IsDBNull(ColumnName) Or IsNothing(ColumnName) Or ColumnName <> "" Or ColumnName <> "{}" Then
'Jetzt die Spalten aus Array hinzufügen und Breite konfigurieren
Dim Width = DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("COLUMN{0}_WIDTH", ColCount))
If IsNothing(Width) Or IsDBNull(Width) Then
Width = 200
End If
'Die Spalte definieren
DTGrid.Columns.Add(ColumnName)
ColCount += 1
End If
End If
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
Dim ColumnName = rw.Item("HEADER_CAPTION")
Dim Width = rw.Item("WIDTH")
If IsNothing(Width) Or IsDBNull(Width) Then
Width = 200
End If
'Die Spalte definieren
DTGrid.Columns.Add(ColumnName)
ColCount += 1
Next
'Jetzt das Array zusammenbauen um die Spaltenwerte zu erhalten
ColCount = 1
For Each Column As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If Column.ColumnName = String.Format("COLUMN{0}", ColCount) Then
Dim ColumnName = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column.ColumnName)
If Not IsDBNull(ColumnName) Then
If Not IsDBNull(ColumnName) Or IsNothing(ColumnName) Or ColumnName <> "" Or ColumnName <> "{}" Then
'Jetzt die Spalten aus Array hinzufügen und Breite konfigurieren
ColArray.Add(Column.ColumnName)
End If
End If
ColCount += 1
End If
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
ColArrayDEFINITION.Add(rw.Item("COLUMN_VIEW"))
Next
End If
Catch ex As Exception
MsgBox("Unexpected Error in Construct Datatable for GridResult: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
'COL_ARRAY_RESULTLIST = ColArray
For Each row As DataRow In DT_FILE_RESULT.Rows
For Each FILE_ROW As DataRow In DT_FILE_RESULT.Rows
Dim fullpath = row.Item("FULL_FILENAME")
Dim fullpath = FILE_ROW.Item("FULL_FILENAME")
Dim objecttype = FILE_ROW.Item("OBJECTTYPE")
'Dim Folderpath = Path.GetDirectoryName(fullpath)
Dim filename = Path.GetFileName(fullpath)
Dim extension = Path.GetExtension(fullpath)
@@ -182,21 +194,13 @@ Public Class frmRecordView
End Select
'Den Filepath mitgeben
NewRow.Item(1) = fullpath
Dim i = 2 'Fängt bei 2 an, um die ICON Column zu überspringen
For Each Column As String In ColArray
Dim Colname = DT_WINDREAM_RESULTLIST.Rows(0).Item(Column)
NewRow.Item(2) = objecttype
Dim i = 3 'Fängt bei 2 an, um die ICON Column zu überspringen
For Each Colname As String In ColArrayDEFINITION
Dim rowvalue
Try
If Colname = "Dateiname" Or Colname = "filename" Then
rowvalue = filename
ElseIf Colname = "Dokumentart" Or Colname = "doctype" Then
rowvalue = row.Item("Doctype")
ElseIf Colname = "Erstellt" Or Colname = "created" Then
rowvalue = row.Item("Creation_DateTime")
Else
rowvalue = row.Item(Colname)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> now rowvalue for Colname '" & Colname & "'", False)
rowvalue = FILE_ROW.Item(Colname)
If LogErrorsOnly = False Then ClassLogger.Add(" >> rowvalue : '" & rowvalue.ToString & "'", False)
Catch ex As Exception
ClassLogger.Add("Unexpected Error in GetVariableValue for Column '" & Colname & "- Error: " & ex.Message)
@@ -220,18 +224,11 @@ Public Class frmRecordView
GridViewDoc_Search.Columns.Item("ICON").MaxWidth = 24
GridViewDoc_Search.Columns.Item("ICON").MinWidth = 24
GridViewDoc_Search.Columns.Item("FULLPATH").Visible = False
For Each col As DataColumn In DT_WINDREAM_RESULTLIST.Columns
If col.ColumnName.EndsWith("WIDTH") Or col.ColumnName.StartsWith("ADDED") Or col.ColumnName.StartsWith("CHANGED") Then
Continue For
End If
Dim rowvalue = DT_WINDREAM_RESULTLIST.Rows(0).Item(col.ColumnName)
If IsDBNull(rowvalue) Or IsNumeric(rowvalue) Then
Continue For
End If
Dim Width = DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("{0}_WIDTH", col.ColumnName))
GridViewDoc_Search.Columns.Item("OBJECTTYPE").Visible = False
For Each rw As DataRow In DT_WINDREAM_RESULTLIST.Rows
Dim Width = rw.Item("WIDTH") 'DT_WINDREAM_RESULTLIST.Rows(0).Item(String.Format("{0}_WIDTH", col.ColumnName))
If Not IsNothing(Width) And Not IsDBNull(Width) Then
Dim column = DirectCast(GridViewDoc_Search.Columns.Item(rowvalue), DevExpress.XtraGrid.Columns.GridColumn)
Dim column = DirectCast(GridViewDoc_Search.Columns.Item(rw.Item("HEADER_CAPTION")), DevExpress.XtraGrid.Columns.GridColumn)
column.Width = Width
Console.WriteLine("ColumnWidth {0} set to {1}", column.FieldName, Width)
Console.WriteLine("ColumnWidth {0} really set to {1}", column.FieldName, column.VisibleWidth)
@@ -262,9 +259,8 @@ Public Class frmRecordView
Me.TBPMO_WORKFLOW_TASK_STATETableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.FillByRecord(Me.DD_DMSDataSet.VWPMO_WF_ACTIVE, USER_LANGUAGE, Environment.UserName, JUMP_RECORD_ID)
Dim sql = "SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = " & JUMP_RECORD_ID
ENTITY_ID = ClassDatabase.Execute_Scalar(sql)
sql = "SELECT GUID FROM TBPMO_FORM_VIEW WHERE SCREEN_ID = 1 AND FORM_ID = " & ENTITY_ID
Dim Sql = "SELECT GUID FROM TBPMO_FORM_VIEW WHERE SCREEN_ID = 1 AND FORM_ID = " & ENTITY_ID
FORMVIEW_ID = ClassDatabase.Execute_Scalar(sql)
sql = "SELECT PARENT_ID FROM TBPMO_FORM WHERE GUID = " & ENTITY_ID
PARENT_ENTITY_ID = ClassDatabase.Execute_Scalar(sql)
@@ -495,7 +491,7 @@ Public Class frmRecordView
CURRENT_FORM_ID = ENTITY_ID
CURRENT_FORMVIEW_ID = FORMVIEW_ID
If ClassDatabase.Execute_Scalar("SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE GUID = " & CURRENT_FILEID & " AND WORKED = 0") = 1 Then
frmWD_Index_Dokart.ShowDialog()
frmWD_IndexFile.ShowDialog()
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> File was deleted or worked meanwhile!")
End If

View File

@@ -120,13 +120,19 @@ Public Class frmSAP_FuBa
lblSave.Visible = False
Exit Sub
End If
Dim rowlimit As Integer = 0
If txtLimitRows.Text <> "" Then
rowlimit = txtLimitRows.Text
End If
Dim SAPResulttable As DataTable = New DataTable
If rbTable.Checked = True Then
Dim result = ClassSAP.Return_Datatable_for_Table(TableNameTextBox.Text, WHERE_CLAUSETextBox.Text, rowlimit)
If Not IsNothing(result) Then
SAPResulttable = result
End If
End If
If rBFuba.Checked = True Then
Dim result = ClassSAP.FuBa_Returndatatable_Seperated(TableNameTextBox.Text, FuBa_SplitCharacterTextBox.Text, txtLimitRows.Text)
Dim result = ClassSAP.FuBa_Returndatatable_Seperated(TableNameTextBox.Text, FuBa_SplitCharacterTextBox.Text, rowlimit)
If Not IsNothing(result) Then
SAPResulttable = result
End If
@@ -143,61 +149,50 @@ Public Class frmSAP_FuBa
'######
Dim i = 0
Dim tablename = "[TBPMO_SAP_" & TempTableNameTextBox.Text & "]"
Dim createtablesql = "CREATE TABLE TBPMO_SAP_" & TempTableNameTextBox.Text & " ("
ClassDatabase.Execute_non_Query_withConn("DROP TABLE " & tablename, 1)
Dim createtablesql = "CREATE TABLE " & tablename & " ( "
For Each col As System.Data.DataColumn In SAPResulttable.Columns
If i = 0 Then
createtablesql += "[" & col.ColumnName & "] [varchar](100)"
createtablesql += "[" & col.ColumnName & "] [varchar](250)"
Else
createtablesql += ", [" & col.ColumnName & "] [varchar](100)"
createtablesql += ", [" & col.ColumnName & "] [varchar](250)"
End If
i += 1
Next
createtablesql += ")"
Dim check = String.Format("SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE' AND TABLE_NAME='{0}'", tablename)
If ClassDatabase.Execute_Scalar(check) = 1 Then
If LogErrorsOnly = False Then ClassLogger.Add(">> TempTable " & tablename & " exists and will now be deleted!", False)
ClassDatabase.Execute_non_Query_withConn("DROP TABLE " & tablename, 1)
End If
''Die Tabelle anlegen
If LogErrorsOnly = False Then ClassLogger.Add(">> Create Table: " & createtablesql, False)
ClassDatabase.Execute_non_Query_withConn(createtablesql, 1)
Dim del = "delete from " & tablename
ClassDatabase.Execute_non_Query_withConn(del, 1)
If ClassDatabase.Execute_non_Query_withConn(createtablesql, 1) = False Then
MsgBox("Error in creating TempTable: Check log", MsgBoxStyle.Critical)
Exit Sub
End If
If LogErrorsOnly = False Then ClassLogger.Add(">> table has been created", False)
Dim alter = String.Format("ALTER TABLE {0} ADD GUID INTEGER NOT NULL IDENTITY(1,1)", tablename)
ClassDatabase.Execute_non_Query_withConn(alter, 1)
'Dim del = "delete from " & tablename
'ClassDatabase.Execute_non_Query_withConn(del, 1)
'If ClassDatabase.Execute_non_Query_withConn(createtablesql, 1) = False Then
' Me.Cursor = Cursors.Default
' MsgBox("Error while creating the temporary table. Please check the logfile!", MsgBoxStyle.Critical)
' Exit Sub
'End If
Dim ins = "Insert into " & tablename & "("
Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM " & tablename)
If Not IsNothing(DT) Then
Dim anz As Integer = 0
For Each col As DataColumn In DT.Columns
If anz = 0 Then
ins = ins & col.ColumnName
Else
ins = ins & ", " & col.ColumnName
End If
anz += 1
Next
ins = ins & ") VALUES ("
End If
'Dim ins = "Insert into " & tablename & "("
'Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM " & tablename)
'If Not IsNothing(DT) Then
' Dim anz As Integer = 0
' For Each col As DataColumn In DT.Columns
' If anz = 0 Then
' ins = ins & col.ColumnName
' Else
' ins = ins & ", " & col.ColumnName
' End If
' anz += 1
' Next
' ins = ins & ") VALUES ("
'End If
Try
'For Each row As DataRow In SAPResulttable.Rows
' For x = 0 To CURRENT_COL_COUNT
' If x = 0 Then
' ins = ins & "'" & row.Item(x).ToString & "', "
' Else
' ins = ins & "'" & row.Item(x).ToString & "'"
' End If
' ins = ins & ")"
' Next
' ClassDatabase.Execute_non_Query_withConn(ins, 1)
'Next
Dim OwnerCS As String
OwnerCS = ClassDatabase.GetConnectionString(1)
Dim SQLconnect As New SqlClient.SqlConnection
@@ -206,8 +201,7 @@ Public Class frmSAP_FuBa
' Note that the column positions in the source DataTable
' match the column positions in the destination table,
' so there is no need to map columns.
Using bulkCopy As SqlBulkCopy = _
New SqlBulkCopy(SQLconnect)
Using bulkCopy As SqlBulkCopy = New SqlBulkCopy(SQLconnect)
bulkCopy.DestinationTableName = tablename
Try
' Write from the source to the destination.
@@ -264,13 +258,18 @@ Public Class frmSAP_FuBa
End If
Dim SAPResulttable As DataTable = New DataTable
Dim rowlimit As Integer = 0
If txtLimitRows.Text <> "" Then
rowlimit = txtLimitRows.Text
End If
If rbTable.Checked = True Then
Dim result = ClassSAP.Return_Datatable_for_Table(TableNameTextBox.Text, WHERE_CLAUSETextBox.Text, txtLimitRows.Text)
Dim result = ClassSAP.Return_Datatable_for_Table(TableNameTextBox.Text, WHERE_CLAUSETextBox.Text, rowlimit)
If Not IsNothing(result) Then
SAPResulttable = result
End If
ElseIf rBFuba.Checked = True Then 'FUBA Abruf
Dim result = ClassSAP.FuBa_Returndatatable_Seperated(TableNameTextBox.Text, FuBa_SplitCharacterTextBox.Text, txtLimitRows.Text)
Dim result = ClassSAP.FuBa_Returndatatable_Seperated(TableNameTextBox.Text, FuBa_SplitCharacterTextBox.Text, rowlimit)
If Not IsNothing(result) Then
SAPResulttable = result
End If
@@ -297,8 +296,8 @@ Public Class frmSAP_FuBa
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
If txtLimitRows.Text <> "" And SAPResulttable.Rows.Count >= CInt(txtLimitRows.Text) Then
lblResult.Text = "Result (limited to " & txtLimitRows.Text & " rows) - Duration: " & Format(elapsed, "0.00") & " seconds"
If rowlimit <> 0 And SAPResulttable.Rows.Count >= rowlimit Then
lblResult.Text = "Result (limited to " & rowlimit.ToString & " rows) - Duration: " & Format(elapsed, "0.00") & " seconds"
Else
lblResult.Text = "Result (unlimited) >> " & SAPResulttable.Rows.Count & " rows retrieved - Duration: " & Format(elapsed, "0.00") & " seconds"
End If

View File

@@ -1,5 +1,5 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmWD_Index_Dokart
Partial Class frmWD_IndexFile
Inherits System.Windows.Forms.Form
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
@@ -24,7 +24,7 @@ Partial Class frmWD_Index_Dokart
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim OBJECT_TYPELabel As System.Windows.Forms.Label
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmWD_Index_Dokart))
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmWD_IndexFile))
Dim FW_DOCTYPE_IDLabel As System.Windows.Forms.Label
Dim PATHLabel As System.Windows.Forms.Label
Dim Label3 As System.Windows.Forms.Label

View File

@@ -2,7 +2,7 @@
Imports System.Security.AccessControl
Imports System.Security.Principal
Public Class frmWD_Index_Dokart
Public Class frmWD_IndexFile
Dim droptype As String
Dim aktFiledropped As String
Dim MULTIFILES As Integer = 0
@@ -173,11 +173,19 @@ Public Class frmWD_Index_Dokart
End If
Return True
Else
MsgBox("Es gab ein Problem bei der Indexierung der Datei. Bitte prüfen sie das Log!", MsgBoxStyle.Exclamation, "Achtung:")
MsgBox("An unexpected error occured while indexing file. Please check the log!", MsgBoxStyle.Exclamation)
Return False
End If
Else
MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (1)!", MsgBoxStyle.Critical)
Return False
End If
Else
MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (0)!", MsgBoxStyle.Critical)
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox("Unexpected error in Work-File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
@@ -186,7 +194,7 @@ Public Class frmWD_Index_Dokart
End Function
'Function FillIndexe_Autom(dokart_id As Integer)
' Try
' Me.VWDDINDEX_AUTOMTableAdapter.Fill(Me.DD_DMSDataSet.VWDDINDEX_AUTOM, dokart_id)

View File

@@ -22,6 +22,7 @@ Partial Class frmWD_Link_to_Record
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmWD_Link_to_Record))
Me.cmbConstructorForms = New System.Windows.Forms.ComboBox()
Me.Label1 = New System.Windows.Forms.Label()
Me.tvEntities = New System.Windows.Forms.TreeView()
@@ -40,59 +41,59 @@ Partial Class frmWD_Link_to_Record
'
'cmbConstructorForms
'
resources.ApplyResources(Me.cmbConstructorForms, "cmbConstructorForms")
Me.cmbConstructorForms.FormattingEnabled = True
Me.cmbConstructorForms.Location = New System.Drawing.Point(170, 14)
Me.cmbConstructorForms.Name = "cmbConstructorForms"
Me.cmbConstructorForms.Size = New System.Drawing.Size(174, 21)
Me.cmbConstructorForms.TabIndex = 0
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label1.Location = New System.Drawing.Point(9, 17)
resources.ApplyResources(Me.Label1, "Label1")
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(142, 13)
Me.Label1.TabIndex = 1
Me.Label1.Text = "1. Konstruktor auswählen:"
'
'tvEntities
'
Me.tvEntities.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.tvEntities.Location = New System.Drawing.Point(12, 58)
resources.ApplyResources(Me.tvEntities, "tvEntities")
Me.tvEntities.Name = "tvEntities"
Me.tvEntities.Size = New System.Drawing.Size(332, 491)
Me.tvEntities.TabIndex = 2
'
'Label2
'
Me.Label2.AutoSize = True
Me.Label2.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label2.Location = New System.Drawing.Point(9, 42)
resources.ApplyResources(Me.Label2, "Label2")
Me.Label2.Name = "Label2"
Me.Label2.Size = New System.Drawing.Size(115, 13)
Me.Label2.TabIndex = 3
Me.Label2.Text = "2. Entität auswählen:"
'
'dgEntityRecords
'
Me.dgEntityRecords.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.dgEntityRecords.Location = New System.Drawing.Point(350, 58)
resources.ApplyResources(Me.dgEntityRecords, "dgEntityRecords")
Me.dgEntityRecords.EmbeddedNavigator.AccessibleDescription = resources.GetString("dgEntityRecords.EmbeddedNavigator.AccessibleDescription")
Me.dgEntityRecords.EmbeddedNavigator.AccessibleName = resources.GetString("dgEntityRecords.EmbeddedNavigator.AccessibleName")
Me.dgEntityRecords.EmbeddedNavigator.AllowHtmlTextInToolTip = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.AllowHtmlTextInToolTip"), DevExpress.Utils.DefaultBoolean)
Me.dgEntityRecords.EmbeddedNavigator.Anchor = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.Anchor"), System.Windows.Forms.AnchorStyles)
Me.dgEntityRecords.EmbeddedNavigator.BackgroundImage = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.BackgroundImage"), System.Drawing.Image)
Me.dgEntityRecords.EmbeddedNavigator.BackgroundImageLayout = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.BackgroundImageLayout"), System.Windows.Forms.ImageLayout)
Me.dgEntityRecords.EmbeddedNavigator.ImeMode = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.ImeMode"), System.Windows.Forms.ImeMode)
Me.dgEntityRecords.EmbeddedNavigator.MaximumSize = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.MaximumSize"), System.Drawing.Size)
Me.dgEntityRecords.EmbeddedNavigator.TextLocation = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.TextLocation"), DevExpress.XtraEditors.NavigatorButtonsTextLocation)
Me.dgEntityRecords.EmbeddedNavigator.ToolTip = resources.GetString("dgEntityRecords.EmbeddedNavigator.ToolTip")
Me.dgEntityRecords.EmbeddedNavigator.ToolTipIconType = CType(resources.GetObject("dgEntityRecords.EmbeddedNavigator.ToolTipIconType"), DevExpress.Utils.ToolTipIconType)
Me.dgEntityRecords.EmbeddedNavigator.ToolTipTitle = resources.GetString("dgEntityRecords.EmbeddedNavigator.ToolTipTitle")
Me.dgEntityRecords.MainView = Me.grvwGrid
Me.dgEntityRecords.Name = "dgEntityRecords"
Me.dgEntityRecords.Size = New System.Drawing.Size(896, 491)
Me.dgEntityRecords.TabIndex = 4
Me.dgEntityRecords.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.grvwGrid})
'
'grvwGrid
'
Me.grvwGrid.Appearance.EvenRow.BackColor = System.Drawing.Color.Aqua
Me.grvwGrid.Appearance.EvenRow.BackColor = CType(resources.GetObject("grvwGrid.Appearance.EvenRow.BackColor"), System.Drawing.Color)
Me.grvwGrid.Appearance.EvenRow.FontSizeDelta = CType(resources.GetObject("grvwGrid.Appearance.EvenRow.FontSizeDelta"), Integer)
Me.grvwGrid.Appearance.EvenRow.FontStyleDelta = CType(resources.GetObject("grvwGrid.Appearance.EvenRow.FontStyleDelta"), System.Drawing.FontStyle)
Me.grvwGrid.Appearance.EvenRow.GradientMode = CType(resources.GetObject("grvwGrid.Appearance.EvenRow.GradientMode"), System.Drawing.Drawing2D.LinearGradientMode)
Me.grvwGrid.Appearance.EvenRow.Image = CType(resources.GetObject("grvwGrid.Appearance.EvenRow.Image"), System.Drawing.Image)
Me.grvwGrid.Appearance.EvenRow.Options.UseBackColor = True
Me.grvwGrid.Appearance.FilterPanel.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(128, Byte), Integer), CType(CType(0, Byte), Integer))
Me.grvwGrid.Appearance.FilterPanel.BackColor = CType(resources.GetObject("grvwGrid.Appearance.FilterPanel.BackColor"), System.Drawing.Color)
Me.grvwGrid.Appearance.FilterPanel.FontSizeDelta = CType(resources.GetObject("grvwGrid.Appearance.FilterPanel.FontSizeDelta"), Integer)
Me.grvwGrid.Appearance.FilterPanel.FontStyleDelta = CType(resources.GetObject("grvwGrid.Appearance.FilterPanel.FontStyleDelta"), System.Drawing.FontStyle)
Me.grvwGrid.Appearance.FilterPanel.GradientMode = CType(resources.GetObject("grvwGrid.Appearance.FilterPanel.GradientMode"), System.Drawing.Drawing2D.LinearGradientMode)
Me.grvwGrid.Appearance.FilterPanel.Image = CType(resources.GetObject("grvwGrid.Appearance.FilterPanel.Image"), System.Drawing.Image)
Me.grvwGrid.Appearance.FilterPanel.Options.UseBackColor = True
resources.ApplyResources(Me.grvwGrid, "grvwGrid")
Me.grvwGrid.GridControl = Me.dgEntityRecords
Me.grvwGrid.Name = "grvwGrid"
Me.grvwGrid.OptionsBehavior.Editable = False
@@ -101,66 +102,41 @@ Partial Class frmWD_Link_to_Record
'
'btnLink
'
Me.btnLink.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnLink.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnLink.Location = New System.Drawing.Point(1057, 12)
resources.ApplyResources(Me.btnLink, "btnLink")
Me.btnLink.Name = "btnLink"
Me.btnLink.Size = New System.Drawing.Size(189, 23)
Me.btnLink.TabIndex = 5
Me.btnLink.Text = "Verknüpfen"
Me.btnLink.UseVisualStyleBackColor = True
'
'Label3
'
Me.Label3.AutoSize = True
Me.Label3.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label3.Location = New System.Drawing.Point(347, 17)
resources.ApplyResources(Me.Label3, "Label3")
Me.Label3.Name = "Label3"
Me.Label3.Size = New System.Drawing.Size(37, 13)
Me.Label3.TabIndex = 6
Me.Label3.Text = "Datei:"
'
'Label4
'
Me.Label4.AutoSize = True
Me.Label4.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label4.Location = New System.Drawing.Point(821, 17)
resources.ApplyResources(Me.Label4, "Label4")
Me.Label4.Name = "Label4"
Me.Label4.Size = New System.Drawing.Size(135, 13)
Me.Label4.TabIndex = 7
Me.Label4.Text = "Ausgewählter Datensatz:"
'
'txtFilename
'
Me.txtFilename.Location = New System.Drawing.Point(390, 14)
resources.ApplyResources(Me.txtFilename, "txtFilename")
Me.txtFilename.Name = "txtFilename"
Me.txtFilename.ReadOnly = True
Me.txtFilename.Size = New System.Drawing.Size(425, 22)
Me.txtFilename.TabIndex = 8
'
'txtRecordId
'
Me.txtRecordId.Location = New System.Drawing.Point(962, 14)
resources.ApplyResources(Me.txtRecordId, "txtRecordId")
Me.txtRecordId.Name = "txtRecordId"
Me.txtRecordId.ReadOnly = True
Me.txtRecordId.Size = New System.Drawing.Size(89, 22)
Me.txtRecordId.TabIndex = 9
'
'Label5
'
Me.Label5.AutoSize = True
Me.Label5.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label5.Location = New System.Drawing.Point(347, 42)
resources.ApplyResources(Me.Label5, "Label5")
Me.Label5.Name = "Label5"
Me.Label5.Size = New System.Drawing.Size(132, 13)
Me.Label5.TabIndex = 3
Me.Label5.Text = "3. Datensatz auswählen:"
'
'frmWD_Link_to_Record
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1258, 561)
Me.Controls.Add(Me.txtRecordId)
Me.Controls.Add(Me.txtFilename)
Me.Controls.Add(Me.Label4)
@@ -172,9 +148,7 @@ Partial Class frmWD_Link_to_Record
Me.Controls.Add(Me.tvEntities)
Me.Controls.Add(Me.Label1)
Me.Controls.Add(Me.cmbConstructorForms)
Me.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Name = "frmWD_Link_to_Record"
Me.Text = "Datei mit Datensatz verknüpfen"
CType(Me.dgEntityRecords, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.grvwGrid, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)

View File

@@ -0,0 +1,184 @@
<?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.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="Label1.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 13</value>
</data>
<data name="Label1.Text" xml:space="preserve">
<value>1. Choose Constructor:</value>
</data>
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>93, 13</value>
</data>
<data name="Label2.Text" xml:space="preserve">
<value>2. Choose entity:</value>
</data>
<data name="btnLink.Text" xml:space="preserve">
<value>Link record to file</value>
</data>
<data name="Label3.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Italic</value>
</data>
<data name="Label3.Location" type="System.Drawing.Point, System.Drawing">
<value>350, 17</value>
</data>
<data name="Label3.Size" type="System.Drawing.Size, System.Drawing">
<value>23, 13</value>
</data>
<data name="Label3.Text" xml:space="preserve">
<value>file:</value>
</data>
<data name="Label4.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Italic</value>
</data>
<data name="Label4.Location" type="System.Drawing.Point, System.Drawing">
<value>873, 17</value>
</data>
<data name="Label4.Size" type="System.Drawing.Size, System.Drawing">
<value>74, 13</value>
</data>
<data name="Label4.Text" xml:space="preserve">
<value>record chosen:</value>
</data>
<data name="txtFilename.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Italic</value>
</data>
<data name="txtFilename.Size" type="System.Drawing.Size, System.Drawing">
<value>477, 22</value>
</data>
<data name="txtRecordId.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Italic</value>
</data>
<data name="txtRecordId.Location" type="System.Drawing.Point, System.Drawing">
<value>953, 14</value>
</data>
<data name="Label5.Size" type="System.Drawing.Size, System.Drawing">
<value>97, 13</value>
</data>
<data name="Label5.Text" xml:space="preserve">
<value>3. Choose record:</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Italic</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Link file to Record</value>
</data>
</root>

View File

@@ -117,4 +117,394 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Label4.Text" xml:space="preserve">
<value>Ausgewählter Datensatz:</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1258, 561</value>
</data>
<data name="Label5.Text" xml:space="preserve">
<value>3. Datensatz auswählen:</value>
</data>
<assembly alias="DevExpress.XtraEditors.v15.2" name="DevExpress.XtraEditors.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="dgEntityRecords.EmbeddedNavigator.TextLocation" type="DevExpress.XtraEditors.NavigatorButtonsTextLocation, DevExpress.XtraEditors.v15.2">
<value>Center</value>
</data>
<data name="Label3.Text" xml:space="preserve">
<value>Datei:</value>
</data>
<data name="Label5.Location" type="System.Drawing.Point, System.Drawing">
<value>347, 42</value>
</data>
<data name="&gt;&gt;Label4.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;txtRecordId.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtFilename.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;cmbConstructorForms.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="grvwGrid.Appearance.FilterPanel.FontSizeDelta" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="btnLink.Text" xml:space="preserve">
<value>Verknüpfen</value>
</data>
<data name="tvEntities.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 58</value>
</data>
<data name="&gt;&gt;Label2.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="btnLink.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="grvwGrid.Appearance.FilterPanel.FontStyleDelta" type="System.Drawing.FontStyle, System.Drawing">
<value>Regular</value>
</data>
<data name="btnLink.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt, style=Bold</value>
</data>
<data name="&gt;&gt;Label5.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="grvwGrid.Appearance.EvenRow.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="txtRecordId.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="Label2.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="Label3.Location" type="System.Drawing.Point, System.Drawing">
<value>347, 17</value>
</data>
<data name="grvwGrid.Appearance.FilterPanel.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="cmbConstructorForms.Size" type="System.Drawing.Size, System.Drawing">
<value>174, 21</value>
</data>
<data name="grvwGrid.Appearance.FilterPanel.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="Label1.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="Label2.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="txtFilename.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="txtFilename.Size" type="System.Drawing.Size, System.Drawing">
<value>425, 22</value>
</data>
<data name="grvwGrid.Appearance.EvenRow.FontSizeDelta" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;Label2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="btnLink.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="&gt;&gt;txtRecordId.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Label1.Name" xml:space="preserve">
<value>Label1</value>
</data>
<data name="Label2.Text" xml:space="preserve">
<value>2. Entität auswählen:</value>
</data>
<data name="Label3.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;Label5.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="dgEntityRecords.Size" type="System.Drawing.Size, System.Drawing">
<value>896, 491</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Label5.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="Label4.Size" type="System.Drawing.Size, System.Drawing">
<value>135, 13</value>
</data>
<data name="&gt;&gt;Label1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="tvEntities.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left</value>
</data>
<data name="dgEntityRecords.Location" type="System.Drawing.Point, System.Drawing">
<value>350, 58</value>
</data>
<data name="&gt;&gt;Label3.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="grvwGrid.Appearance.EvenRow.FontStyleDelta" type="System.Drawing.FontStyle, System.Drawing">
<value>Regular</value>
</data>
<data name="&gt;&gt;txtRecordId.Name" xml:space="preserve">
<value>txtRecordId</value>
</data>
<data name="&gt;&gt;Label3.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;grvwGrid.Name" xml:space="preserve">
<value>grvwGrid</value>
</data>
<data name="txtRecordId.Location" type="System.Drawing.Point, System.Drawing">
<value>962, 14</value>
</data>
<data name="cmbConstructorForms.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;dgEntityRecords.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<assembly alias="DevExpress.Utils.v15.2" name="DevExpress.Utils.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="dgEntityRecords.EmbeddedNavigator.ToolTipIconType" type="DevExpress.Utils.ToolTipIconType, DevExpress.Utils.v15.2">
<value>None</value>
</data>
<data name="&gt;&gt;dgEntityRecords.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="Label3.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
</data>
<data name="&gt;&gt;tvEntities.Type" xml:space="preserve">
<value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Label1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="Label1.Text" xml:space="preserve">
<value>1. Konstruktor auswählen:</value>
</data>
<assembly alias="DevExpress.Data.v15.2" name="DevExpress.Data.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="dgEntityRecords.EmbeddedNavigator.AllowHtmlTextInToolTip" type="DevExpress.Utils.DefaultBoolean, DevExpress.Data.v15.2">
<value>Default</value>
</data>
<data name="&gt;&gt;Label5.Name" xml:space="preserve">
<value>Label5</value>
</data>
<data name="&gt;&gt;txtFilename.Name" xml:space="preserve">
<value>txtFilename</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.MaximumSize" type="System.Drawing.Size, System.Drawing">
<value>0, 0</value>
</data>
<data name="Label5.Size" type="System.Drawing.Size, System.Drawing">
<value>132, 13</value>
</data>
<data name="Label4.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="grvwGrid.Appearance.FilterPanel.BackColor" type="System.Drawing.Color, System.Drawing">
<value>255, 128, 0</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left</value>
</data>
<data name="&gt;&gt;Label3.Name" xml:space="preserve">
<value>Label3</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.ToolTipTitle" xml:space="preserve">
<value />
</data>
<data name="&gt;&gt;cmbConstructorForms.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtRecordId.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnLink.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 23</value>
</data>
<data name="&gt;&gt;cmbConstructorForms.Name" xml:space="preserve">
<value>cmbConstructorForms</value>
</data>
<data name="&gt;&gt;tvEntities.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="btnLink.Location" type="System.Drawing.Point, System.Drawing">
<value>1057, 12</value>
</data>
<data name="grvwGrid.Appearance.EvenRow.BackColor" type="System.Drawing.Color, System.Drawing">
<value>Aqua</value>
</data>
<data name="&gt;&gt;Label3.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="txtRecordId.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 22</value>
</data>
<data name="Label1.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 17</value>
</data>
<data name="&gt;&gt;tvEntities.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;dgEntityRecords.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="txtFilename.Location" type="System.Drawing.Point, System.Drawing">
<value>390, 14</value>
</data>
<data name="&gt;&gt;txtFilename.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;Label4.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Label5.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="Label2.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 42</value>
</data>
<data name="Label1.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="Label4.Location" type="System.Drawing.Point, System.Drawing">
<value>821, 17</value>
</data>
<data name="Label2.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="Label1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="tvEntities.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 491</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmWD_Link_to_Record</value>
</data>
<data name="&gt;&gt;Label1.ZOrder" xml:space="preserve">
<value>9</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Datei mit Datensatz verknüpfen</value>
</data>
<data name="&gt;&gt;btnLink.Name" xml:space="preserve">
<value>btnLink</value>
</data>
<data name="grvwGrid.Appearance.EvenRow.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
<value>Tile</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.ToolTip" xml:space="preserve">
<value />
</data>
<data name="&gt;&gt;Label2.Name" xml:space="preserve">
<value>Label2</value>
</data>
<data name="dgEntityRecords.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="Label5.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="&gt;&gt;grvwGrid.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v15.2, Version=15.2.9.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;btnLink.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;Label2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;dgEntityRecords.Name" xml:space="preserve">
<value>dgEntityRecords</value>
</data>
<data name="Label4.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;Label4.Name" xml:space="preserve">
<value>Label4</value>
</data>
<data name="dgEntityRecords.EmbeddedNavigator.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="&gt;&gt;btnLink.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="cmbConstructorForms.Location" type="System.Drawing.Point, System.Drawing">
<value>170, 14</value>
</data>
<data name="tvEntities.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="&gt;&gt;Label5.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="dgEntityRecords.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;Label4.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="Label1.Size" type="System.Drawing.Size, System.Drawing">
<value>142, 13</value>
</data>
<data name="&gt;&gt;btnLink.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>115, 13</value>
</data>
<data name="Label3.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="&gt;&gt;cmbConstructorForms.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;txtFilename.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Label3.Size" type="System.Drawing.Size, System.Drawing">
<value>37, 13</value>
</data>
<data name="Label4.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="&gt;&gt;tvEntities.Name" xml:space="preserve">
<value>tvEntities</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>

View File

@@ -2,7 +2,7 @@
Imports System.IO
Public Class frmWD_Link_to_Record
Private _objecttype As String
Private Class ClassConstructor
Public title As String
Public id As Integer
@@ -14,9 +14,10 @@ Public Class frmWD_Link_to_Record
Private CONSTRUCTOR_DETAIL_ID, CONSTRUCTOR_ID, FORM_ID As Integer
Public Sub New(fileName As String)
Public Sub New(fileName As String, Objecttype As String)
InitializeComponent()
txtFilename.Text = fileName
_objecttype = Objecttype
End Sub
Private Function GetConstructorForms() As DataTable
@@ -234,13 +235,46 @@ Public Class frmWD_Link_to_Record
If txtRecordId.Text.Trim.Count > 0 Then
RecordId = Integer.Parse(txtRecordId.Text)
FileName = txtFilename.Text
Try
Dim sql = String.Format("SELECT * FROM TBPMO_WD_OBJECTTYPE WHERE OBJECT_TYPE = '{0}'", _objecttype)
Dim DT_OBJTYPE As DataTable = ClassDatabase.Return_Datatable(sql)
If DT_OBJTYPE.Rows.Count = 1 Then
Dim Entity_Index = DT_OBJTYPE.Rows(0).Item("IDXNAME_ENTITYID")
Dim Record_Index = DT_OBJTYPE.Rows(0).Item("IDXNAME_RECORDID")
Dim ENT_ID = ClassDatabase.Execute_Scalar(String.Format("SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}", RecordId))
If ENT_ID > 1 Then
If ClassWindream.IndexFile(FileName, Entity_Index, ENT_ID, True, _objecttype) = False Then
Dim msg = "Die Entität-ID konnte nicht gesetzt werden! Bitte überprüfen Sie die Logfile"
If USER_LANGUAGE <> "de-DE" Then
msg = "Could not index Entity-ID! Please check logfile!"
End If
MsgBox(msg, MsgBoxStyle.Exclamation)
End If
End If
If ClassWindream.IndexFile(FileName, Record_Index, RecordId, True, _objecttype) = False Then
Dim msg = "Die Record-ID konnte nicht gesetzt werden! Bitte überprüfen Sie die Logfile"
If USER_LANGUAGE <> "de-DE" Then
msg = "Could not index Record-ID! Please check logfile!"
End If
MsgBox(msg, MsgBoxStyle.Exclamation)
Else
Dim msg = "Der Datensatz wurde erfolgreich mit der Datei verlinked!"
If USER_LANGUAGE <> "de-DE" Then
msg = "The record was successfully added to the file!"
End If
MsgBox(msg, MsgBoxStyle.Information)
End If
End If
Catch ex As Exception
MsgBox("Unexpected Error in Linking Record to file:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
Else
MsgBox("Bitte wählen Sie einen Datensatz aus!", MsgBoxStyle.Exclamation, "Kein Datensatz ausgewählt")
MsgBox("Please choose a record!", MsgBoxStyle.Exclamation)
Exit Sub
End If
End Sub
'TODO: Datei mit Record verknüpfen
Private Sub frmWD_Link_to_Record_Shown(sender As Object, e As EventArgs) Handles Me.Shown
txtRecordId.Text = ""
End Sub
End Class