Show Date in index confirmation, add new hash logic to all paths, fix hash empty when using folder watch #GI-12
This commit is contained in:
parent
0692d4e295
commit
d771895b43
@ -109,7 +109,7 @@ Public Class ClassDatabase
|
|||||||
Return Nothing
|
Return Nothing
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
Public Shared Function Return_Datatable_CS(sql_command As String, ConString As String, Optional userInput As Boolean = False)
|
Public Shared Function Return_Datatable_CS(sql_command As String, ConString As String, Optional userInput As Boolean = False) As DataTable
|
||||||
Try
|
Try
|
||||||
Dim SQLconnect As New SqlConnection
|
Dim SQLconnect As New SqlConnection
|
||||||
Dim SQLcommand As SqlCommand
|
Dim SQLcommand As SqlCommand
|
||||||
@ -138,7 +138,7 @@ Public Class ClassDatabase
|
|||||||
LOGGER.Info("#SQL: " & sql_command)
|
LOGGER.Info("#SQL: " & sql_command)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Return False
|
Return Nothing
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
If userInput = True Then
|
If userInput = True Then
|
||||||
MsgBox("Error in Return_Datatable_CS - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
|
MsgBox("Error in Return_Datatable_CS - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
|
||||||
|
|||||||
@ -122,7 +122,7 @@ Public Class ClassFolderWatcher
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If FolderWatcher_SCAN Is Nothing Then
|
If FolderWatcher_SCAN Is Nothing Then
|
||||||
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
FolderWatcher_SCAN = New FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
||||||
LOGGER.Info(" >> FolderWatch Scan Gestartet")
|
LOGGER.Info(" >> FolderWatch Scan Gestartet")
|
||||||
FolderWatcher_SCAN.IncludeSubdirectories = False
|
FolderWatcher_SCAN.IncludeSubdirectories = False
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = True
|
FolderWatcher_SCAN.EnableRaisingEvents = True
|
||||||
@ -134,7 +134,7 @@ Public Class ClassFolderWatcher
|
|||||||
If FolderWatcher_SCAN.EnableRaisingEvents = False Then
|
If FolderWatcher_SCAN.EnableRaisingEvents = False Then
|
||||||
' Dim watcher As New FileSystemWatcher()
|
' Dim watcher As New FileSystemWatcher()
|
||||||
' watcher.Path = CURRENT_FOLDERWATCH
|
' watcher.Path = CURRENT_FOLDERWATCH
|
||||||
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
FolderWatcher_SCAN = New FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
||||||
LOGGER.Info(" >> FolderWatch Scan Gestartet")
|
LOGGER.Info(" >> FolderWatch Scan Gestartet")
|
||||||
FolderWatcher_SCAN.IncludeSubdirectories = False
|
FolderWatcher_SCAN.IncludeSubdirectories = False
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = True
|
FolderWatcher_SCAN.EnableRaisingEvents = True
|
||||||
@ -185,18 +185,32 @@ Public Class ClassFolderWatcher
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|
||||||
Dim handleType As String
|
Dim oHandleType As String
|
||||||
If e.FullPath.ToLower.EndsWith(".msg") Then
|
If e.FullPath.ToLower.EndsWith(".msg") Then
|
||||||
handleType = "|FW_OUTLOOK_MESSAGE|"
|
oHandleType = "|FW_OUTLOOK_MESSAGE|"
|
||||||
Else
|
Else
|
||||||
handleType = "|FW_SIMPLEINDEXER|"
|
oHandleType = "|FW_SIMPLEINDEXER|"
|
||||||
End If
|
End If
|
||||||
'Die Datei übergeben
|
'Die Datei übergeben
|
||||||
LOGGER.Info(">> OnCreated-File:" & e.FullPath)
|
LOGGER.Info(">> OnCreated-File:" & e.FullPath)
|
||||||
If ClassIndexFunctions.FileExistsinDropTable(e.FullPath) = False Then
|
|
||||||
ClassFilehandle.Decide_FileHandle(e.FullPath, handleType)
|
Dim oFileExists As Date = ClassIndexFunctions.FileExistsinDropTable(e.FullPath)
|
||||||
|
|
||||||
|
If IsNothing(oFileExists) Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(e.FullPath, oHandleType)
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> Folderwatcher: File already exists:" & e.FullPath)
|
Dim oResult As DialogResult
|
||||||
|
Dim oDate As String = oFileExists.ToString("d")
|
||||||
|
|
||||||
|
If USER_LANGUAGE = "de-DE" Then
|
||||||
|
oResult = MsgBox($"Die Datei wurde bereits am [{oDate}] verarbeitet. Wollen Sie die gleiche Datei noch einmal verarbeiten?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
Else
|
||||||
|
oResult = MsgBox($"This file has already been processed at [{oDate}]. Do you want to process the same file again?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
End If
|
||||||
|
|
||||||
|
If oResult = DialogResult.Yes Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(e.FullPath, oHandleType)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
Public Class ClassIndexFunctions
|
Public Class ClassIndexFunctions
|
||||||
Public Shared Function FileExistsinDropTable(Filename As String)
|
Public Shared Function FileExistsinDropTable(Filename As String) As DateTime
|
||||||
Dim oSQL As String
|
Dim oSQL As String
|
||||||
Dim oHash As String
|
Dim oHash As String
|
||||||
|
|
||||||
@ -15,20 +15,30 @@
|
|||||||
oHash = ""
|
oHash = ""
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
oSQL = "SELECT COUNT(*) FROM TBGI_FILES_USER WHERE UPPER(FILE_HASH) = UPPER('" & oHash & "') AND WORKED = 0"
|
oSQL = "SELECT * FROM TBGI_FILES_USER WHERE UPPER(FILE_HASH) = UPPER('" & oHash & "') AND WORKED = 0 ORDER BY ADDED_WHEN"
|
||||||
Dim oResult = ClassDatabase.Execute_Scalar(oSQL, MyConnectionString, True)
|
Dim oResult As DataTable = ClassDatabase.Return_Datatable_CS(oSQL, MyConnectionString, True)
|
||||||
|
|
||||||
If oResult = 0 Then
|
If oResult Is Nothing Then
|
||||||
oSQL = "SELECT COUNT(*) FROM TBGI_HISTORY WHERE UPPER(FILE_HASH) = UPPER('" & oHash & "')"
|
Return Nothing
|
||||||
oResult = ClassDatabase.Execute_Scalar(oSQL, MyConnectionString, True)
|
End If
|
||||||
|
|
||||||
If oResult = 0 Then
|
If oResult.Rows.Count = 0 Then
|
||||||
Return False
|
oSQL = "SELECT * FROM TBGI_HISTORY WHERE UPPER(FILE_HASH) = UPPER('" & oHash & "') ORDER BY ADDED_WHEN"
|
||||||
|
oResult = ClassDatabase.Return_Datatable_CS(oSQL, MyConnectionString, True)
|
||||||
|
|
||||||
|
If oResult Is Nothing Then
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
If oResult.Rows.Count = 0 Then
|
||||||
|
Return Nothing
|
||||||
Else
|
Else
|
||||||
Return True
|
Dim oFirstRow As DataRow = oResult.Rows.Item(0)
|
||||||
|
Return oFirstRow.Item("ADDED_WHEN")
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
Return True
|
Dim oFirstRow As DataRow = oResult.Rows.Item(0)
|
||||||
|
Return oFirstRow.Item("ADDED_WHEN")
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in FileExistsinDropTable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & oSQL, MsgBoxStyle.Critical)
|
MsgBox("Error in FileExistsinDropTable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & oSQL, MsgBoxStyle.Critical)
|
||||||
|
|||||||
@ -168,26 +168,25 @@ Public Class frmStart
|
|||||||
Dim oLastPipe = oFiledropString.LastIndexOf("|")
|
Dim oLastPipe = oFiledropString.LastIndexOf("|")
|
||||||
Dim oHandleType As String = oFiledropString.Substring(0, oLastPipe + 1)
|
Dim oHandleType As String = oFiledropString.Substring(0, oLastPipe + 1)
|
||||||
Dim oFilename As String = oFiledropString.Substring(oLastPipe + 1)
|
Dim oFilename As String = oFiledropString.Substring(oLastPipe + 1)
|
||||||
Dim oFileExists As Boolean = ClassIndexFunctions.FileExistsinDropTable(oFilename)
|
Dim oFileExists As Date = ClassIndexFunctions.FileExistsinDropTable(oFilename)
|
||||||
|
|
||||||
If oFileExists = False Then
|
If IsNothing(oFileExists) Then
|
||||||
ClassFilehandle.Decide_FileHandle(oFilename, oHandleType)
|
ClassFilehandle.Decide_FileHandle(oFilename, oHandleType)
|
||||||
oIndex += 1
|
oIndex += 1
|
||||||
ElseIf oFileExists Then
|
Else
|
||||||
Dim oResult As DialogResult
|
Dim oResult As DialogResult
|
||||||
|
Dim oDate As String = oFileExists.ToString("d")
|
||||||
|
|
||||||
If USER_LANGUAGE = "de-DE" Then
|
If USER_LANGUAGE = "de-DE" Then
|
||||||
oResult = MsgBox("Die Datei wurde bereits verarbeitet. Wollen Sie die gleiche Datei noch einmal verarbeiten?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, Text)
|
oResult = MsgBox($"Die Datei wurde bereits am [{oDate}] verarbeitet. Wollen Sie die gleiche Datei noch einmal verarbeiten?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
Else
|
Else
|
||||||
oResult = MsgBox("This file has already been processed. Do you want to process the same file again?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, Text)
|
oResult = MsgBox($"This file has already been processed at [{oDate}]. Do you want to process the same file again?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If oResult = DialogResult.Yes Then
|
If oResult = DialogResult.Yes Then
|
||||||
ClassFilehandle.Decide_FileHandle(oFilename, oHandleType)
|
ClassFilehandle.Decide_FileHandle(oFilename, oHandleType)
|
||||||
oIndex += 1
|
oIndex += 1
|
||||||
End If
|
End If
|
||||||
Else
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
@ -216,7 +215,7 @@ Public Class frmStart
|
|||||||
CURRENT_FILENAME = Filerow.Item("FILENAME2WORK")
|
CURRENT_FILENAME = Filerow.Item("FILENAME2WORK")
|
||||||
CURRENT_WORKFILE_GUID = Filerow.Item(0)
|
CURRENT_WORKFILE_GUID = Filerow.Item(0)
|
||||||
CURRENT_WORKFILE = Filerow.Item("FILENAME2WORK")
|
CURRENT_WORKFILE = Filerow.Item("FILENAME2WORK")
|
||||||
CURRENT_WORKFILE_HASH = Filerow.Item("FILE_HASH")
|
CURRENT_WORKFILE_HASH = NotNull(Filerow.Item("FILE_HASH"), "")
|
||||||
|
|
||||||
LOGGER.Info(">> CURRENT_WORKFILE: " & CURRENT_WORKFILE)
|
LOGGER.Info(">> CURRENT_WORKFILE: " & CURRENT_WORKFILE)
|
||||||
If File.Exists(CURRENT_WORKFILE) = True And DTACTUAL_FILES.Rows.Count > 0 Then
|
If File.Exists(CURRENT_WORKFILE) = True And DTACTUAL_FILES.Rows.Count > 0 Then
|
||||||
@ -356,29 +355,49 @@ Public Class frmStart
|
|||||||
LOGGER.Info(">> FWSCAN started - Checking file:" & CURRENT_SCAN_FOLDERWATCH)
|
LOGGER.Info(">> FWSCAN started - Checking file:" & CURRENT_SCAN_FOLDERWATCH)
|
||||||
Dim fileEntries As String() = Directory.GetFiles(CURRENT_SCAN_FOLDERWATCH)
|
Dim fileEntries As String() = Directory.GetFiles(CURRENT_SCAN_FOLDERWATCH)
|
||||||
' Process the list of files found in the directory.
|
' Process the list of files found in the directory.
|
||||||
Dim fileName As String
|
Dim oFileName As String
|
||||||
For Each fileName In fileEntries
|
For Each oFileName In fileEntries
|
||||||
LOGGER.Info(">> Scanfolder after startup: Checking file:" & fileName)
|
LOGGER.Info(">> Scanfolder after startup: Checking file:" & oFileName)
|
||||||
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
||||||
Dim content As String = row.Item(0).ToString.ToLower
|
Dim content As String = row.Item(0).ToString.ToLower
|
||||||
If fileName.ToLower.Contains(content) Then
|
If oFileName.ToLower.Contains(content) Then
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
Dim handleType As String
|
Dim oHandleType As String
|
||||||
If fileName.ToLower.EndsWith(".msg") Then
|
If oFileName.ToLower.EndsWith(".msg") Then
|
||||||
handleType = "|FW_OUTLOOK_MESSAGE|"
|
oHandleType = "|FW_OUTLOOK_MESSAGE|"
|
||||||
Else
|
Else
|
||||||
handleType = "|FW_SIMPLEINDEXER|"
|
oHandleType = "|FW_SIMPLEINDEXER|"
|
||||||
End If
|
End If
|
||||||
'Die Datei übergeben
|
'Die Datei übergeben
|
||||||
LOGGER.Info(">> Adding file from Scanfolder after startup:" & fileName)
|
LOGGER.Info(">> Adding file from Scanfolder after startup:" & oFileName)
|
||||||
If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
|
|
||||||
ClassFilehandle.Decide_FileHandle(fileName, handleType)
|
Dim oFileExists As Date = ClassIndexFunctions.FileExistsinDropTable(oFileName)
|
||||||
|
|
||||||
|
If IsNothing(oFileExists) Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(oFileName, oHandleType)
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> Scanfolder Startup: File already exists:" & fileName)
|
Dim oResult As DialogResult
|
||||||
|
Dim oDate As String = oFileExists.ToString("d")
|
||||||
|
|
||||||
|
If USER_LANGUAGE = "de-DE" Then
|
||||||
|
oResult = MsgBox($"Die Datei wurde bereits am [{oDate}] verarbeitet. Wollen Sie die gleiche Datei noch einmal verarbeiten?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
Else
|
||||||
|
oResult = MsgBox($"This file has already been processed at [{oDate}]. Do you want to process the same file again?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
End If
|
||||||
|
|
||||||
|
If oResult = DialogResult.Yes Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(oFileName, oHandleType)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
Next fileName
|
|
||||||
|
'If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
|
||||||
|
' ClassFilehandle.Decide_FileHandle(fileName, handleType)
|
||||||
|
'Else
|
||||||
|
' LOGGER.Info(">> Scanfolder Startup: File already exists:" & fileName)
|
||||||
|
'End If
|
||||||
|
Next oFileName
|
||||||
|
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> FWSCAN not started")
|
LOGGER.Info(">> FWSCAN not started")
|
||||||
@ -393,29 +412,50 @@ Public Class frmStart
|
|||||||
LOGGER.Info(">> FW_started started - Checking file:" & CURRENT_FOLDERWATCH)
|
LOGGER.Info(">> FW_started started - Checking file:" & CURRENT_FOLDERWATCH)
|
||||||
Dim fileEntries As String() = Directory.GetFiles(CURRENT_FOLDERWATCH)
|
Dim fileEntries As String() = Directory.GetFiles(CURRENT_FOLDERWATCH)
|
||||||
' Process the list of files found in the directory.
|
' Process the list of files found in the directory.
|
||||||
Dim fileName As String
|
Dim oFileName As String
|
||||||
For Each fileName In fileEntries
|
For Each oFileName In fileEntries
|
||||||
LOGGER.Info(">> Folderwach after startup: Checking file:" & fileName)
|
LOGGER.Info(">> Folderwach after startup: Checking file:" & oFileName)
|
||||||
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
||||||
Dim content As String = row.Item(0).ToString.ToLower
|
Dim content As String = row.Item(0).ToString.ToLower
|
||||||
If fileName.ToLower.Contains(content) Then
|
If oFileName.ToLower.Contains(content) Then
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
Dim handleType As String
|
Dim handleType As String
|
||||||
If fileName.ToLower.EndsWith(".msg") Then
|
If oFileName.ToLower.EndsWith(".msg") Then
|
||||||
handleType = "|FW_OUTLOOK_MESSAGE|"
|
handleType = "|FW_OUTLOOK_MESSAGE|"
|
||||||
Else
|
Else
|
||||||
handleType = "|FW_SIMPLEINDEXER|"
|
handleType = "|FW_SIMPLEINDEXER|"
|
||||||
End If
|
End If
|
||||||
'Die Datei übergeben
|
'Die Datei übergeben
|
||||||
LOGGER.Info(">> Adding file from Folderwatch after startup:" & fileName)
|
LOGGER.Info(">> Adding file from Folderwatch after startup:" & oFileName)
|
||||||
If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
|
|
||||||
ClassFilehandle.Decide_FileHandle(fileName, handleType)
|
'If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
|
||||||
|
' ClassFilehandle.Decide_FileHandle(fileName, handleType)
|
||||||
|
'Else
|
||||||
|
' LOGGER.Info(">> Folderwatch Startup: File already exists:" & fileName)
|
||||||
|
'End If
|
||||||
|
|
||||||
|
Dim oFileExists As Date = ClassIndexFunctions.FileExistsinDropTable(oFileName)
|
||||||
|
|
||||||
|
If IsNothing(oFileExists) Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(oFileName, handleType)
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> Folderwatch Startup: File already exists:" & fileName)
|
Dim oResult As DialogResult
|
||||||
|
Dim oDate As String = oFileName.ToString("d")
|
||||||
|
|
||||||
|
If USER_LANGUAGE = "de-DE" Then
|
||||||
|
oResult = MsgBox($"Die Datei wurde bereits am [{oDate}] verarbeitet. Wollen Sie die gleiche Datei noch einmal verarbeiten?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
Else
|
||||||
|
oResult = MsgBox($"This file has already been processed at [{oDate}]. Do you want to process the same file again?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "GLOBIX - FolderWatch")
|
||||||
|
End If
|
||||||
|
|
||||||
|
If oResult = DialogResult.Yes Then
|
||||||
|
ClassFilehandle.Decide_FileHandle(oFileName, handleType)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
Next fileName
|
|
||||||
|
Next oFileName
|
||||||
|
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> FW_started not started")
|
LOGGER.Info(">> FW_started not started")
|
||||||
@ -512,9 +552,11 @@ Public Class frmStart
|
|||||||
Dim fileexists As Boolean = System.IO.File.Exists(FileForWork)
|
Dim fileexists As Boolean = System.IO.File.Exists(FileForWork)
|
||||||
If fileInUse = False Then
|
If fileInUse = False Then
|
||||||
If fileexists = True Then
|
If fileexists = True Then
|
||||||
CURRENT_WORKFILE = FileForWork
|
|
||||||
CURRENT_FILENAME = FileForWork
|
CURRENT_FILENAME = FileForWork
|
||||||
|
CURRENT_WORKFILE = FileForWork
|
||||||
CURRENT_WORKFILE_GUID = row.Item("GUID")
|
CURRENT_WORKFILE_GUID = row.Item("GUID")
|
||||||
|
CURRENT_WORKFILE_HASH = row.Item("FILE_HASH")
|
||||||
|
|
||||||
Open_IndexDialog()
|
Open_IndexDialog()
|
||||||
Else
|
Else
|
||||||
LOGGER.Info(">> File not existing - Row will be deleted!")
|
LOGGER.Info(">> File not existing - Row will be deleted!")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user