MS
This commit is contained in:
@@ -36,6 +36,7 @@ Public Class frmWM_IndexFile
|
||||
Dim swWORK_FILE As New SW("WORK_FILE: " & DOCTYPE_IDTextBox.Text)
|
||||
Try
|
||||
CURRENT_DOC_ID = Nothing
|
||||
Dim odeleteRights As Boolean = True
|
||||
|
||||
CURRENT_DOKARTSTRING = vDokart
|
||||
Dim err As Boolean = False
|
||||
@@ -104,246 +105,259 @@ Public Class frmWM_IndexFile
|
||||
|
||||
Dim sql = "SELECT * FROM TBDD_INDEX_AUTOM WHERE ACTIVE = 1 AND UPPER(INDEXNAME) NOT LIKE UPPER('%ONLY %') AND SQL_ACTIVE = 0 AND DOCTYPE_ID = " & vDokart_ID
|
||||
Dim DT_AUTO_INDEXE As DataTable = ClassDatabase.Return_Datatable(sql, True)
|
||||
Dim indexierung_erfolgreich As Boolean = True
|
||||
'Erst die Objekttyp-Indices indexieren
|
||||
'den Entity-Key auslesen
|
||||
Dim DTTBPMO_WD_OBJECTTYPE As DataTable
|
||||
sql = "Select Top 1 * from TBPMO_WD_OBJECTTYPE where Upper(object_type) = Upper('" & clsWindream.MY_WDOBJECTTYPE & "')"
|
||||
DTTBPMO_WD_OBJECTTYPE = ClassDatabase.Return_Datatable(sql, True)
|
||||
If Not DTTBPMO_WD_OBJECTTYPE Is Nothing Then
|
||||
If DTTBPMO_WD_OBJECTTYPE.Rows.Count = 1 Then
|
||||
Dim indexname
|
||||
''den Record_Key auslesen
|
||||
'Dim indexname = DT.Rows(0).Item("IDXNAME_RECORDID").ToString
|
||||
'LOGGER.Debug("Record-ID: " & CURRENT_RECORD_ID.ToString, False)
|
||||
'indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_RECORD_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' err = True
|
||||
' ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing RecordID '" & indexname & "') - Check logfile!")
|
||||
' sw.Done()
|
||||
' Return False
|
||||
'End If
|
||||
'den Entity-Key auslesen
|
||||
'indexname = DT.Rows(0).Item("IDXNAME_ENTITYID").ToString
|
||||
'LOGGER.Debug("Entity-ID: " & CURRENT_ENTITY_ID.ToString, False)
|
||||
'indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_ENTITY_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' err = True
|
||||
' ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing EntityID '" & indexname & "') - Check logfile!")
|
||||
' sw.Done()
|
||||
' Return False
|
||||
'End If
|
||||
'If CURRENT_REDUNDANT_FORM_ID <> 0 Then
|
||||
' indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_REDUNDANT_FORM_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'End If
|
||||
'den Doctype auslesen
|
||||
indexname = DTTBPMO_WD_OBJECTTYPE.Rows(0).Item("IDXNAME_DOCTYPE").ToString
|
||||
LOGGER.Debug("Doctype: " & vDokart.ToString, False)
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, vDokart, clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
err = True
|
||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing Doctype '" & indexname & "') - Check logfile!")
|
||||
sw.Done()
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
indexname = DTTBPMO_WD_OBJECTTYPE.Rows(0).Item("IDXNAME_RELATION").ToString
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, "ADDI-RELATION", clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
err = True
|
||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing AddiRelation '" & indexname & "') - Check logfile!")
|
||||
sw.Done()
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
Try
|
||||
sql = "SELECT * FROM VWCUST_DOCTYPE_CONFIG WHERE DOCTYPE_ID = " & vDokart_ID
|
||||
Dim DTVWCUST_DOCTYPE_CONFIG As DataTable = ClassDatabase.Return_Datatable(sql, True)
|
||||
If Not IsNothing(DTVWCUST_DOCTYPE_CONFIG) Then
|
||||
For Each oRow As DataRow In DTVWCUST_DOCTYPE_CONFIG.Rows
|
||||
If oRow.Item(0) = "DELETE_RIGHTS" Then
|
||||
odeleteRights = CBool(oRow.Item(1))
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
sw.Done()
|
||||
If DT_AUTO_INDEXE Is Nothing = False Then 'CHECK DD
|
||||
If DT_AUTO_INDEXE.Rows.Count > 0 Then
|
||||
Dim Count As Integer = 0
|
||||
For Each row As DataRow In DT_AUTO_INDEXE.Rows
|
||||
Dim indexname = row.Item("INDEXNAME").ToString
|
||||
Dim idxvalue = row.Item("VALUE")
|
||||
If idxvalue.ToString.StartsWith("@") Then
|
||||
Select Case idxvalue.ToString.ToUpper
|
||||
Case "@RECORD-ID"
|
||||
idxvalue = idxvalue.ToString.Replace("@Record-ID", CURRENT_RECORD_ID)
|
||||
Case "@DOKART"
|
||||
idxvalue = idxvalue.ToString.Replace("@Dokart", vDokart)
|
||||
End Select
|
||||
Else 'Es wird nicht über einen @PAttern indexiert
|
||||
' Regulären Ausdruck zum Auslesen der Indexe definieren
|
||||
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
|
||||
' einen Regulären Ausdruck laden
|
||||
Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
|
||||
' die Vorkommen im SQL-String auslesen
|
||||
Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(idxvalue)
|
||||
'####
|
||||
' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
|
||||
For Each element As System.Text.RegularExpressions.Match In elemente
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Unexpected error in VWCUST_DOCTYPE_CONFIG Area: {ex.Message}")
|
||||
|
||||
LOGGER.Debug("element in RegeX: " & element.Value, False)
|
||||
Select Case element.Value.Substring(2, 1).ToUpper
|
||||
End Try
|
||||
|
||||
Dim indexierung_erfolgreich As Boolean = True
|
||||
'Erst die Objekttyp-Indices indexieren
|
||||
'den Entity-Key auslesen
|
||||
Dim DTTBPMO_WD_OBJECTTYPE As DataTable
|
||||
sql = "Select Top 1 * from TBPMO_WD_OBJECTTYPE where Upper(object_type) = Upper('" & clsWindream.MY_WDOBJECTTYPE & "')"
|
||||
DTTBPMO_WD_OBJECTTYPE = ClassDatabase.Return_Datatable(sql, True)
|
||||
If Not DTTBPMO_WD_OBJECTTYPE Is Nothing Then
|
||||
If DTTBPMO_WD_OBJECTTYPE.Rows.Count = 1 Then
|
||||
Dim indexname
|
||||
''den Record_Key auslesen
|
||||
'Dim indexname = DT.Rows(0).Item("IDXNAME_RECORDID").ToString
|
||||
'LOGGER.Debug("Record-ID: " & CURRENT_RECORD_ID.ToString, False)
|
||||
'indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_RECORD_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' err = True
|
||||
' ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing RecordID '" & indexname & "') - Check logfile!")
|
||||
' sw.Done()
|
||||
' Return False
|
||||
'End If
|
||||
'den Entity-Key auslesen
|
||||
'indexname = DT.Rows(0).Item("IDXNAME_ENTITYID").ToString
|
||||
'LOGGER.Debug("Entity-ID: " & CURRENT_ENTITY_ID.ToString, False)
|
||||
'indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_ENTITY_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' err = True
|
||||
' ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing EntityID '" & indexname & "') - Check logfile!")
|
||||
' sw.Done()
|
||||
' Return False
|
||||
'End If
|
||||
'If CURRENT_REDUNDANT_FORM_ID <> 0 Then
|
||||
' indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_REDUNDANT_FORM_ID, clsWindream.MY_WDOBJECTTYPE)
|
||||
'End If
|
||||
'den Doctype auslesen
|
||||
indexname = DTTBPMO_WD_OBJECTTYPE.Rows(0).Item("IDXNAME_DOCTYPE").ToString
|
||||
LOGGER.Debug("Doctype: " & vDokart.ToString, False)
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, vDokart, clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
err = True
|
||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing Doctype '" & indexname & "') - Check logfile!")
|
||||
sw.Done()
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
indexname = DTTBPMO_WD_OBJECTTYPE.Rows(0).Item("IDXNAME_RELATION").ToString
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, "ADDI-RELATION", clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
err = True
|
||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error: ", "Unexpected Error in WorkFile-indexing AddiRelation '" & indexname & "') - Check logfile!")
|
||||
sw.Done()
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
sw.Done()
|
||||
If DT_AUTO_INDEXE Is Nothing = False Then 'CHECK DD
|
||||
If DT_AUTO_INDEXE.Rows.Count > 0 Then
|
||||
Dim Count As Integer = 0
|
||||
For Each row As DataRow In DT_AUTO_INDEXE.Rows
|
||||
Dim indexname = row.Item("INDEXNAME").ToString
|
||||
Dim idxvalue = row.Item("VALUE")
|
||||
If idxvalue.ToString.StartsWith("@") Then
|
||||
Select Case idxvalue.ToString.ToUpper
|
||||
Case "@RECORD-ID"
|
||||
idxvalue = idxvalue.ToString.Replace("@Record-ID", CURRENT_RECORD_ID)
|
||||
Case "@DOKART"
|
||||
idxvalue = idxvalue.ToString.Replace("@Dokart", vDokart)
|
||||
End Select
|
||||
Else 'Es wird nicht über einen @PAttern indexiert
|
||||
' Regulären Ausdruck zum Auslesen der Indexe definieren
|
||||
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
|
||||
' einen Regulären Ausdruck laden
|
||||
Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
|
||||
' die Vorkommen im SQL-String auslesen
|
||||
Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(idxvalue)
|
||||
'####
|
||||
' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
|
||||
For Each element As System.Text.RegularExpressions.Match In elemente
|
||||
|
||||
LOGGER.Debug("element in RegeX: " & element.Value, False)
|
||||
Select Case element.Value.Substring(2, 1).ToUpper
|
||||
'Nur automatische Indizes auswerten
|
||||
Case "A"
|
||||
Dim APattern = element.Value.Substring(3, element.Value.Length - 4)
|
||||
If APattern.Contains("#") Then
|
||||
LOGGER.Debug("element filled with Record-Data.......: ", False)
|
||||
Dim split() As String = APattern.Split("#")
|
||||
If split.Length = 2 Then
|
||||
Dim CONTROL_ID = split(1)
|
||||
LOGGER.Debug("CONTROL_ID: " & CONTROL_ID, False)
|
||||
If IsNumeric(CONTROL_ID) Then
|
||||
Dim CONTROLVALUE = ClassControlValues.Get_Control_Value_for_ID(CONTROL_ID, CURRENT_RECORD_ID)
|
||||
If IsNothing(CONTROLVALUE) Then
|
||||
LOGGER.Warn("Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was nothing.", False)
|
||||
LOGGER.Warn("SQL-Command: " & CURRENT_LAST_SQL)
|
||||
idxvalue = ""
|
||||
Else
|
||||
If IsDBNull(CONTROLVALUE) Then
|
||||
LOGGER.Warn("Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was DBNULL.", False)
|
||||
Case "A"
|
||||
Dim APattern = element.Value.Substring(3, element.Value.Length - 4)
|
||||
If APattern.Contains("#") Then
|
||||
LOGGER.Debug("element filled with Record-Data.......: ", False)
|
||||
Dim split() As String = APattern.Split("#")
|
||||
If split.Length = 2 Then
|
||||
Dim CONTROL_ID = split(1)
|
||||
LOGGER.Debug("CONTROL_ID: " & CONTROL_ID, False)
|
||||
If IsNumeric(CONTROL_ID) Then
|
||||
Dim CONTROLVALUE = ClassControlValues.Get_Control_Value_for_ID(CONTROL_ID, CURRENT_RECORD_ID)
|
||||
If IsNothing(CONTROLVALUE) Then
|
||||
LOGGER.Warn("Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was nothing.", False)
|
||||
LOGGER.Warn("SQL-Command: " & CURRENT_LAST_SQL)
|
||||
idxvalue = ""
|
||||
Else
|
||||
idxvalue = CONTROLVALUE
|
||||
If IsDBNull(CONTROLVALUE) Then
|
||||
LOGGER.Warn("Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was DBNULL.", False)
|
||||
LOGGER.Warn("SQL-Command: " & CURRENT_LAST_SQL)
|
||||
idxvalue = ""
|
||||
Else
|
||||
idxvalue = CONTROLVALUE
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
Else
|
||||
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Select
|
||||
End Select
|
||||
|
||||
Next
|
||||
End If
|
||||
LOGGER.Debug("Value for Indexing : '" & idxvalue.ToString & "'", False)
|
||||
Count += 1
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, idxvalue, clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Unexpected Error in indexing file - See log", MsgBoxStyle.Critical)
|
||||
err = True
|
||||
Exit For
|
||||
End If
|
||||
'ByVal WD_File As String, ByVal _Indexname As String, ByVal _Value As String
|
||||
Next
|
||||
If err = True Then
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
Else
|
||||
'MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (1)!", MsgBoxStyle.Critical)
|
||||
'Return False
|
||||
End If
|
||||
Else
|
||||
swWORK_FILE.Done()
|
||||
MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (0)!", MsgBoxStyle.Critical)
|
||||
|
||||
Return False
|
||||
End If
|
||||
'Nun alles aufrüumen und die neue DocID holen
|
||||
|
||||
If indexierung_erfolgreich = True Then
|
||||
LOGGER.Info("File was correctly imported and indexed: " & CURRENT_FILEIN_WD, False)
|
||||
Dim stg As String = "Datei erfolgreich nach windream übertragen"
|
||||
Dim stg1 As String = "Erfolgsmeldung"
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "File was successfully transfered to windream"
|
||||
stg1 = "Success:"
|
||||
End If
|
||||
If multiindex = False Then CURRENT_NOTIFICATION_MSG = stg
|
||||
ClassDatabase.Execute_Scalar("UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = " & CURRENT_FILEID, True)
|
||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||
If row.Item("GUID") = CURRENT_FILEID Then
|
||||
row.Item("WORKED") = 1
|
||||
If IsNothing(droptype) Then
|
||||
droptype = row.Item("HANDLE_TYPE")
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
If IsNothing(CURRENT_DOC_ID) Then
|
||||
sw = New SW("GettingDocID")
|
||||
sql = String.Format("SELECT DocID FROM VWPMO_DOC_SYNC WHERE UPPER(FULL_FILENAME) = UPPER('{0}') AND CONVERT(DATE,Change_DateTime) = CONVERT(DATE,GETDATE())", CURRENT_FILEIN_WD)
|
||||
CURRENT_DOC_ID = ClassDatabase.Execute_Scalar(sql)
|
||||
sw.Done()
|
||||
End If
|
||||
|
||||
|
||||
If Not IsNothing(CURRENT_DOC_ID) Then
|
||||
ClassHelper.InsertEssential_Log(CURRENT_DOC_ID, "DOC_ID", "File was imported and indexed!")
|
||||
LOGGER.Info(String.Format("File-Import was finished - DocID: {0} ", CURRENT_DOC_ID), False)
|
||||
Dim delete = False
|
||||
'Die Originaldatei löschen
|
||||
If droptype = "dragdrop file" And indexierung_erfolgreich = True Then
|
||||
If chkdelete_origin.Checked = True Then
|
||||
'Die temporäre Datei löschen
|
||||
File.Delete(aktFiledropped)
|
||||
End If
|
||||
ElseIf (droptype = "@ATTMNTEXTRACTED@" Or droptype = "SCAN") And indexierung_erfolgreich = True Then
|
||||
'Die temporäre Datei löschen
|
||||
delete = True
|
||||
ElseIf droptype = "dragdrop message" And indexierung_erfolgreich = True Then
|
||||
'Die temporäre Datei löschen
|
||||
delete = True
|
||||
End If
|
||||
If delete = True Then
|
||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||
If row.Item("GUID") = CURRENT_FILEID Then
|
||||
row.Item("DELETE_FILE") = True
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
LOGGER.Debug("Value for Indexing : '" & idxvalue.ToString & "'", False)
|
||||
Count += 1
|
||||
indexierung_erfolgreich = clsWD_SET.IndexFile(CURRENT_FILEIN_WD, indexname, idxvalue, clsWindream.MY_WDOBJECTTYPE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Unexpected Error in indexing file - See log", MsgBoxStyle.Critical)
|
||||
err = True
|
||||
Exit For
|
||||
End If
|
||||
'ByVal WD_File As String, ByVal _Indexname As String, ByVal _Value As String
|
||||
Next
|
||||
If err = True Then
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
|
||||
Else
|
||||
'MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (1)!", MsgBoxStyle.Critical)
|
||||
'Return False
|
||||
End If
|
||||
Else
|
||||
swWORK_FILE.Done()
|
||||
MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (0)!", MsgBoxStyle.Critical)
|
||||
|
||||
Return False
|
||||
End If
|
||||
'Nun alles aufrüumen und die neue DocID holen
|
||||
|
||||
If indexierung_erfolgreich = True Then
|
||||
LOGGER.Info("File was correctly imported and indexed: " & CURRENT_FILEIN_WD, False)
|
||||
Dim stg As String = "Datei erfolgreich nach windream übertragen"
|
||||
Dim stg1 As String = "Erfolgsmeldung"
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "File was successfully transfered to windream"
|
||||
stg1 = "Success:"
|
||||
End If
|
||||
If multiindex = False Then CURRENT_NOTIFICATION_MSG = stg
|
||||
ClassDatabase.Execute_Scalar("UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = " & CURRENT_FILEID, True)
|
||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||
If row.Item("GUID") = CURRENT_FILEID Then
|
||||
row.Item("WORKED") = 1
|
||||
If IsNothing(droptype) Then
|
||||
droptype = row.Item("HANDLE_TYPE")
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
If IsNothing(CURRENT_DOC_ID) Then
|
||||
sw = New SW("GettingDocID")
|
||||
sql = String.Format("SELECT DocID FROM VWPMO_DOC_SYNC WHERE UPPER(FULL_FILENAME) = UPPER('{0}') AND CONVERT(DATE,Change_DateTime) = CONVERT(DATE,GETDATE())", CURRENT_FILEIN_WD)
|
||||
CURRENT_DOC_ID = ClassDatabase.Execute_Scalar(sql)
|
||||
sw.Done()
|
||||
End If
|
||||
|
||||
|
||||
If Not IsNothing(CURRENT_DOC_ID) Then
|
||||
ClassHelper.InsertEssential_Log(CURRENT_DOC_ID, "DOC_ID", "File was imported and indexed!")
|
||||
LOGGER.Info(String.Format("File-Import was finished - DocID: {0} ", CURRENT_DOC_ID), False)
|
||||
Dim delete = False
|
||||
'Die Originaldatei löschen
|
||||
If droptype = "dragdrop file" And indexierung_erfolgreich = True Then
|
||||
If chkdelete_origin.Checked = True Then
|
||||
'Die temporäre Datei löschen
|
||||
File.Delete(aktFiledropped)
|
||||
End If
|
||||
ElseIf (droptype = "@ATTMNTEXTRACTED@" Or droptype = "SCAN") And indexierung_erfolgreich = True Then
|
||||
'Die temporäre Datei löschen
|
||||
delete = True
|
||||
ElseIf droptype = "dragdrop message" And indexierung_erfolgreich = True Then
|
||||
'Die temporäre Datei löschen
|
||||
delete = True
|
||||
End If
|
||||
If delete = True Then
|
||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||
If row.Item("GUID") = CURRENT_FILEID Then
|
||||
row.Item("DELETE_FILE") = True
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
If clsWindream.Create_Session() = False Then
|
||||
MsgBox("Could not create a windream-session!", MsgBoxStyle.Critical)
|
||||
Else
|
||||
'Create Session um Fehler bei windows Session nicht zu erzeugen
|
||||
FAU_AD_USER = ""
|
||||
ClassFileResult.DocID = CURRENT_DOC_ID
|
||||
ClassFileResult.SET_DOCID_INDICES()
|
||||
If ClassDOC_SEARCH.CREATE_DOC_RELATED_LINKS(CURRENT_DOC_ID, CURRENT_RECORD_ID) = False Then
|
||||
stg = "Unerwarteter Fehler: Der Record-Link konnte nicht erzeugt werden! Überprüfen Sie das Log."
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "Unexpected Error: Could not create the recordlink! Please check the log."
|
||||
End If
|
||||
MsgBox(stg, MsgBoxStyle.Critical, stg1)
|
||||
If clsWindream.Create_Session() = False Then
|
||||
MsgBox("Could not create a windream-session!", MsgBoxStyle.Critical)
|
||||
Else
|
||||
'If CURRENT_REDUNDANT_FORM_ID <> 0 Then
|
||||
' ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_DOC_ID, CURRENT_FILEIN_WD)
|
||||
'End If
|
||||
'Create Session um Fehler bei windows Session nicht zu erzeugen
|
||||
FAU_AD_USER = ""
|
||||
ClassFileResult.DocID = CURRENT_DOC_ID
|
||||
ClassFileResult.SET_DOCID_INDICES()
|
||||
If ClassDOC_SEARCH.CREATE_DOC_RELATED_LINKS(CURRENT_DOC_ID, CURRENT_RECORD_ID) = False Then
|
||||
stg = "Unerwarteter Fehler: Der Record-Link konnte nicht erzeugt werden! Überprüfen Sie das Log."
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "Unexpected Error: Could not create the recordlink! Please check the log."
|
||||
End If
|
||||
MsgBox(stg, MsgBoxStyle.Critical, stg1)
|
||||
Else
|
||||
|
||||
sw = New SW("Setting_Rights")
|
||||
If ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_DOC_ID, CURRENT_FILEIN_WD) = False Then
|
||||
If ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_DOC_ID, CURRENT_FILEIN_WD, odeleteRights) = False Then
|
||||
MsgBox("The rights for the new file could not be created! Please check the logfile!" & vbNewLine &
|
||||
"ADDI will try to give You at least reading rights!", MsgBoxStyle.Exclamation)
|
||||
DD_Rights.ClassRights.SetRightExplicit(CURRENT_DOC_ID, CURRENT_FILEIN_WD, USER_USERNAME, 1)
|
||||
ClassHelper.InsertEssential_Log(CURRENT_DOC_ID, "DOC-ID", "NEW FILE INDEXING - RIGHTS COULD NOT BE SET!!")
|
||||
End If
|
||||
sw.Done()
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
stg = "Unerwarteter Fehler: Es konnte keine DocID für die übertragene Datei erzeugt werden!"
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "Unexpected Error: Could not get a docId for transmitted file!"
|
||||
|
||||
End If
|
||||
LOGGER.Warn(stg)
|
||||
MsgBox(stg, MsgBoxStyle.Critical, stg1)
|
||||
End If
|
||||
Else
|
||||
stg = "Unerwarteter Fehler: Es konnte keine DocID für die übertragene Datei erzeugt werden!"
|
||||
If USER_LANGUAGE <> "de-DE" Then
|
||||
stg = "Unexpected Error: Could not get a docId for transmitted file!"
|
||||
|
||||
End If
|
||||
LOGGER.Warn(stg)
|
||||
MsgBox(stg, MsgBoxStyle.Critical, stg1)
|
||||
MsgBox("An unexpected error occured while indexing file. Please check the log!", MsgBoxStyle.Exclamation)
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
Else
|
||||
MsgBox("An unexpected error occured while indexing file. Please check the log!", MsgBoxStyle.Exclamation)
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
swWORK_FILE.Done()
|
||||
Return True
|
||||
Else
|
||||
swWORK_FILE.Done()
|
||||
Return True
|
||||
Else
|
||||
swWORK_FILE.Done()
|
||||
Return False
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
Reference in New Issue
Block a user