This commit is contained in:
SchreiberM
2016-11-23 10:24:21 +01:00
parent a1d1b2a88e
commit fc9f391307
79 changed files with 7388 additions and 4524 deletions

View File

@@ -27,13 +27,13 @@ Public Class frmWD_IndexFile
'#################################################################
If streamresult = True Then
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 As DataTable = ClassDatabase.Return_Datatable(sql)
Dim DT_AUTO_INDEXE As DataTable = ClassDatabase.Return_Datatable(sql)
Dim indexierung_erfolgreich As Boolean = False
'Einbauen dass auch Konfigurationen erlaubt sind wo der Doktyp und der Record fest gestzt sind
If dt Is Nothing = False Then 'CHECK DD
If dt.Rows.Count >= 0 Then
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.Rows
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
@@ -103,15 +103,15 @@ Public Class frmWD_IndexFile
Return False
End If
'den Entity-Key auslesen
Dim DT As DataTable
sql = "Select Top 1 * from TBPMO_WD_OBJECTTYPE where Upper(object_type) = Upper('" & ClassWindream._WDObjekttyp & "')"
dt = ClassDatabase.Return_Datatable(sql)
If Not dt Is Nothing Then
If dt.Rows.Count = 1 Then
'den Entity-Key auslesen
Dim indexname = dt.Rows(0).Item("IDXNAME_ENTITYID").ToString
Dim idxvalue = CURRENT_FORM_ID
If LogErrorsOnly = False Then ClassLogger.Add(" >> Entity-ID: " & idxvalue.ToString, False)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, idxvalue)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Entity-ID: " & CURRENT_FORM_ID.ToString, False)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_FORM_ID)
If indexierung_erfolgreich = False Then
err = True
MsgBox("Unexpected Error in indexing file Entity - See log", MsgBoxStyle.Critical)
@@ -120,36 +120,25 @@ Public Class frmWD_IndexFile
If CURRENT_REDUNDANT_FORM_ID <> 0 Then
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_REDUNDANT_FORM_ID)
End If
'den Parent-Key auslesen
indexname = dt.Rows(0).Item("IDXNAME_PARENTID").ToString
idxvalue = CURRENT_PARENT_ENTITY_ID
If LogErrorsOnly = False Then ClassLogger.Add(" >> Parent-ID: " & idxvalue.ToString, False)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, idxvalue)
'den Doctype auslesen
indexname = DT.Rows(0).Item("IDXNAME_DOCTYPE").ToString
If LogErrorsOnly = False Then ClassLogger.Add(" >> Doctype: " & vDokart.ToString, False)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, vDokart)
If indexierung_erfolgreich = False Then
err = True
MsgBox("Unexpected Error in indexing file Doctype - See log", MsgBoxStyle.Critical)
Return False
End If
'den Record_Key auslesen
indexname = dt.Rows(0).Item("IDXNAME_RECORDID").ToString
If LogErrorsOnly = False Then ClassLogger.Add(" >> Record-ID: " & CURRENT_RECORD_ID.ToString, False)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, CURRENT_RECORD_ID)
If indexierung_erfolgreich = False Then
err = True
MsgBox("Unexpected Error in indexing file Parent-ID - See log", MsgBoxStyle.Critical)
Return False
End If
''den Record-Key auslesen
'indexname = dt.Rows(0).Item("IDXNAME_RECORDID").ToString
'idxvalue = CURRENT_RECORD_ID
'If LogErrorsOnly = False Then ClassLogger.Add(" >> Record-ID: " & idxvalue.ToString, False)
'indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_FILEIN_WD, indexname, idxvalue)
'If indexierung_erfolgreich = False Then
' err = True
' MsgBox("Unexpected Error in indexing file Record-ID - See log", MsgBoxStyle.Critical)
' Return False
'End If
''den Doctype-Key auslesen
'indexname = dt.Rows(0).Item("IDXNAME_DOCTYPE").ToString
'idxvalue = CURRENT_DOKARTSTRING
'If LogErrorsOnly = False Then ClassLogger.Add(" >> Doctype: " & idxvalue.ToString, False)
'indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_FILEIN_WD, indexname, idxvalue)
'If indexierung_erfolgreich = False Then
' err = True
' MsgBox("Unexpected Error in indexing file Doctype - See log", MsgBoxStyle.Critical)
' Return False
'End If
End If
End If
If indexierung_erfolgreich = True Then
@@ -176,14 +165,14 @@ Public Class frmWD_IndexFile
'Die temporäre Datei löschen
File.Delete(aktFiledropped)
End If
ClassDOC_SEARCH.REFRESH_DOC_TABLE_RESULTS()
sql = String.Format("SELECT DocID FROM VWPMO_WD_DOC_SYNC WHERE UPPER(FULL_FILENAME) = UPPER('{0}') AND CONVERT(DATE,Change_DateTime) = CONVERT(DATE,GETDATE())", CURRENT_FILEIN_WD)
'ClassDOC_SEARCH.REFRESH_DOC_TABLE_RESULTS()
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)
If Not IsNothing(CURRENT_DOC_ID) Then
If ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_DOC_ID, CURRENT_FILEIN_WD, CURRENT_FORM_ID) = 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, Environment.UserName, 1)
DD_Rights.ClassRights.SetRightExplicit(CURRENT_DOC_ID, CURRENT_FILEIN_WD, USER_USERNAME, 1)
End If
'Create Session um Fehler bei windows Session icht zu erzeugen
FAU_AD_USER = ""
@@ -193,18 +182,23 @@ Public Class frmWD_IndexFile
End If
ClassFileResult.DocID = CURRENT_DOC_ID
ClassFileResult.SET_DOCID_INDICES()
If ClassDOC_SEARCH.SET_RECORD_DOCID_LINK(CURRENT_DOC_ID, CURRENT_RECORD_ID) = True Then
Dim sel = String.Format("SELECT RECORD_ID FROM TBPMO_DOC_RECORD_LINK WHERE DOC_ID = {0} AND RECORD_ID <> {1}", CURRENT_DOC_ID, CURRENT_RECORD_ID
)
Dim DT_RECORD_LINK As DataTable = ClassDatabase.Return_Datatable(sel)
If DT_RECORD_LINK.Rows.Count > 0 Then
Dim vktIndex = ClassDatabase.Execute_Scalar(String.Format("SELECT IDXNAME_RECORDID FROM TBPMO_WD_OBJECTTYPE WHERE OBJECT_TYPE = '{0}'", ClassWindream._WDObjekttyp))
For Each recRow As DataRow In DT_RECORD_LINK.Rows
Dim recid = recRow.Item(0)
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, vktIndex, recid)
Next
If ClassDOC_SEARCH.CREATE_DOC_RELATED_LINKS(CURRENT_DOC_ID, CURRENT_RECORD_ID) = False Then
'Dim vktIndex = ClassDatabase.Execute_Scalar(String.Format("SELECT IDXNAME_RECORDID FROM TBPMO_WD_OBJECTTYPE WHERE OBJECT_TYPE = '{0}'", ClassWindream._WDObjekttyp))
'indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, vktIndex, CURRENT_RECORD_ID)
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)
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
MsgBox(stg, MsgBoxStyle.Critical, stg1)
End If
Else
MsgBox("An unexpected error occured while indexing file. Please check the log!", MsgBoxStyle.Exclamation)
@@ -484,7 +478,7 @@ Public Class frmWD_IndexFile
'Die erste Datei indexieren
If WORK_FILE(Me.txtFilepath.Text, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, True) = True Then
'Und nun die folgenden
Dim DTFiles2Work As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBPMO_FILES_USER WHERE WORKED = 0 AND GUID <> " & CURRENT_FILEID & " AND UPPER(USER_WORK) = UPPER('" & Environment.UserName & "')")
Dim DTFiles2Work As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBPMO_FILES_USER WHERE WORKED = 0 AND GUID <> " & CURRENT_FILEID & " AND UPPER(USER_WORK) = UPPER('" & USER_USERNAME & "')")
If Not DTFiles2Work Is Nothing Then
Dim err = False
For Each filerow As DataRow In DTFiles2Work.Rows
@@ -513,7 +507,6 @@ Public Class frmWD_IndexFile
stg = "All files were transferred via Multiindexing to windream"
stg1 = "Success:"
End If
ClassDOC_SEARCH.REFRESH_DOC_TABLE_RESULTS()
MsgBox(stg, MsgBoxStyle.Information, stg1)
Me.Close()
End If
@@ -1068,7 +1061,7 @@ Public Class frmWD_IndexFile
chkdelete_origin.Visible = False
CURRENT_FILENAME = ClassDatabase.Execute_Scalar("SELECT FILENAME2WORK FROM TBPMO_FILES_USER WHERE GUID = " & CURRENT_FILEID)
Dim HandleType As String = ClassDatabase.Execute_Scalar("SELECT HANDLE_TYPE FROM TBPMO_FILES_USER WHERE GUID = " & CURRENT_FILEID)
MULTIFILES = ClassDatabase.Execute_Scalar("SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE WORKED = 0 AND GUID <> " & CURRENT_FILEID & " AND UPPER(USER_WORK) = UPPER('" & Environment.UserName & "')")
MULTIFILES = ClassDatabase.Execute_Scalar("SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE WORKED = 0 AND GUID <> " & CURRENT_FILEID & " AND UPPER(USER_WORK) = UPPER('" & USER_USERNAME & "')")
If MULTIFILES > 0 Then
chkMultiIndexer.Text = "Multi-Indexing - Alle nachfolgenden Dateien (" & MULTIFILES & ") identisch indexieren"
chkMultiIndexer.Visible = True