This commit is contained in:
Digital Data - Marlon Schreiber
2017-10-06 10:31:13 +02:00
parent 463f8d0188
commit 71c4a70a44
8 changed files with 82 additions and 54 deletions

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")> <Assembly: AssemblyVersion("1.1.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")> <Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -11,7 +11,7 @@ Public Class DD_PROXY_SERV
' Start the thread. ' Start the thread.
Try Try
clsLogger.Init(My.Application.Info.DirectoryPath & "\Log", "logPROXY_SYNC_") clsLogger.Init(My.Application.Info.DirectoryPath & "\Log", "logPROXY_SYNC_")
clsLogger.Add("## PMO-Service started - " & Now & " ## ", False) clsLogger.Add("## PMO-PROXYService started ## ", False)
If My.Settings.MyConnectionString = String.Empty Then If My.Settings.MyConnectionString = String.Empty Then
clsLogger.Add("NO CONNECTIONSTRING CONFIGURED.", True) clsLogger.Add("NO CONNECTIONSTRING CONFIGURED.", True)
@@ -40,7 +40,6 @@ Public Class DD_PROXY_SERV
Private Shared Sub Thread_Completed(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) 'Handles threadDateiimport.RunWorkerCompleted Private Shared Sub Thread_Completed(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) 'Handles threadDateiimport.RunWorkerCompleted
' This event fires when the DoWork event completes ' This event fires when the DoWork event completes
Try Try
Dim result As String = ""
If e.Cancelled Then If e.Cancelled Then
clsLogger.Add("## The thread was cancelled", False) clsLogger.Add("## The thread was cancelled", False)
ElseIf e.Error IsNot Nothing Then ElseIf e.Error IsNot Nothing Then
@@ -56,9 +55,7 @@ Public Class DD_PROXY_SERV
' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen. ' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen.
' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen. ' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen.
'EventLog1.WriteEntry("Dienst 'DD windream Result Handler' gestoppt") 'EventLog1.WriteEntry("Dienst 'DD windream Result Handler' gestoppt")
clsLogger.Add("", False) clsLogger.Add("## Service was stopped ## ", False)
clsLogger.Add("## Service was stopped - " & Now & " ## ", False)
clsLogger.Add("", False)
clsLogger.WriteLog() clsLogger.WriteLog()
End Sub End Sub
Public Shared Sub RUN_THREAD(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Public Shared Sub RUN_THREAD(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
@@ -68,19 +65,38 @@ Public Class DD_PROXY_SERV
Dim DT_PROCEDURES As DataTable = clsDatabase.Return_Datatable(sql) Dim DT_PROCEDURES As DataTable = clsDatabase.Return_Datatable(sql)
If Not IsNothing(DT_PROCEDURES) Then If Not IsNothing(DT_PROCEDURES) Then
If DT_PROCEDURES.Rows.Count > 0 Then If DT_PROCEDURES.Rows.Count > 0 Then
Dim sw As New Stopwatch
sw.Start()
Dim error_While_executing As Boolean = False
Dim upd = ""
upd = "UPDATE TBPROXY_CONFIG SET SYNC_RUNNING = 1 WHERE GUID = 1"
clsDatabase.Execute_non_Query(upd)
'Wenn Zeilen enthalten..... 'Wenn Zeilen enthalten.....
For Each syncRow As DataRow In DT_PROCEDURES.Rows For Each syncRow As DataRow In DT_PROCEDURES.Rows
Dim GUID = syncRow.Item("GUID") Dim GUID = syncRow.Item("GUID")
clsLogger.AddDetailLog(">> Executing Procedure: " & syncRow.Item("PROC_NAME").ToString & " ...") clsLogger.AddDetailLog(">> Executing Procedure: " & syncRow.Item("PROC_NAME").ToString & " ...")
clsLogger.WriteLog() clsLogger.WriteLog()
Dim upd = "UPDATE TBPROXY_SYNC_PROCEDURES SET SYNCHRONIZED_WHEN = NULL WHERE GUID = " & GUID upd = "UPDATE TBPROXY_SYNC_PROCEDURES SET SYNCHRONIZED_WHEN = NULL WHERE GUID = " & GUID
clsDatabase.Execute_non_Query(upd) clsDatabase.Execute_non_Query(upd)
If EXECUTE_ROCEDURE(syncRow.Item("PROC_NAME").ToString) = True Then If EXECUTE_ROCEDURE(syncRow.Item("PROC_NAME").ToString) = True Then
upd = "UPDATE TBPROXY_SYNC_PROCEDURES SET SYNCHRONIZED_WHEN = GETDATE() WHERE GUID = " & GUID upd = "UPDATE TBPROXY_SYNC_PROCEDURES SET SYNCHRONIZED_WHEN = GETDATE() WHERE GUID = " & GUID
clsDatabase.Execute_non_Query(upd) clsDatabase.Execute_non_Query(upd)
Else
clsLogger.Add(">> An error occured while executing procedure: " & syncRow.Item("PROC_NAME").ToString & " ...", False)
error_While_executing = True
End If End If
clsLogger.WriteLog() clsLogger.WriteLog()
Next Next
upd = "UPDATE TBPROXY_CONFIG SET SYNC_RUNNING = 0, LAST_SYNC = GETDATE() WHERE GUID = 1"
clsDatabase.Execute_non_Query(upd)
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
If error_While_executing = False Then
clsLogger.Add(">> All procedures executed without errors!", False)
clsLogger.Add(">> Execution-time: " & Format(elapsed, "0.000000000") & " seconds", False)
End If
End If End If
Else Else
clsLogger.Add("- NO SYNC PROCEDURES!", False) clsLogger.Add("- NO SYNC PROCEDURES!", False)
@@ -93,17 +109,10 @@ Public Class DD_PROXY_SERV
End Try End Try
End Sub End Sub
Public Shared Function EXECUTE_ROCEDURE(PROXY_PROCEDURE As String) Public Shared Function EXECUTE_ROCEDURE(PROXY_PROCEDURE As String)
Dim sel = String.Format("DECLARE @return_value int" & vbNewLine & _ Dim executesql = String.Format("EXEC [dbo].[{0}]", PROXY_PROCEDURE)
"EXEC @return_value = [dbo].[{0}]" & vbNewLine & _ If clsDatabase.Execute_non_Query(executesql) = True Then
"SELECT 'Return Value' = @return_value", PROXY_PROCEDURE) clsLogger.AddDetailLog(">> Procedure executed successfull - Command: " & executesql)
clsLogger.AddDetailLog(">> ExecuteCommand: " & sel) Return True
Dim Result As DataTable = clsDatabase.Return_Datatable(sel)
If Not IsNothing(Result) Then
If Result.Rows(0).Item(0) = 0 Then
Return True
Else
Return False
End If
Else Else
Return False Return False
End If End If

View File

@@ -24,7 +24,7 @@
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = Select_anweisung SQLcommand.CommandText = Select_anweisung
SQLcommand.CommandTimeout = 180 SQLcommand.CommandTimeout = 240
Dim adapter1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(SQLcommand) Dim adapter1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable() Dim dt As DataTable = New DataTable()
@@ -33,7 +33,7 @@
Return dt Return dt
Catch ex As Exception Catch ex As Exception
clsLogger.Add("Unexpected Error in Return_Datatable: " & ex.Message, True) clsLogger.Add("Unexpected Error in Return_Datatable: " & ex.Message, True)
clsLogger.Add("SQL: " & Select_anweisung, False) clsLogger.Add("##SQL-Return_Datatable: " & Select_anweisung, False)
Return Nothing Return Nothing
End Try End Try
End Function End Function
@@ -44,6 +44,7 @@
SQLconnect.ConnectionString = connectionString SQLconnect.ConnectionString = connectionString
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandTimeout = 240
'Update Last Created Record in Foo 'Update Last Created Record in Foo
SQLcommand.CommandText = ExecuteCMD SQLcommand.CommandText = ExecuteCMD
SQLcommand.ExecuteNonQuery() SQLcommand.ExecuteNonQuery()
@@ -52,7 +53,9 @@
Return True Return True
Catch ex As Exception Catch ex As Exception
clsLogger.Add("Unexpected Error in Execute_non_Query: " & ex.Message, True) clsLogger.Add("Unexpected Error in Execute_non_Query: " & ex.Message, True)
clsLogger.Add("SQL: " & ExecuteCMD, False) clsLogger.Add("###############################", False)
clsLogger.Add("##SQL-Execute_non_Query: " & ExecuteCMD, False)
clsLogger.Add("###############################", False)
Return False Return False
End Try End Try
End Function End Function
@@ -71,8 +74,10 @@
SQLconnect.Close() SQLconnect.Close()
Return result Return result
Catch ex As Exception Catch ex As Exception
clsLogger.Add("Unexpected Error Execute_Scalar: " & ex.Message, True) clsLogger.Add("Unexpected Error ExecuteScalar: " & ex.Message, True)
clsLogger.Add("SQL: " & cmdscalar, False) clsLogger.Add("###############################", False)
clsLogger.Add("##SQL-ExecuteScalar: " & cmdscalar, False)
clsLogger.Add("###############################", False)
Return Nothing Return Nothing
End Try End Try
End Function End Function

View File

@@ -25,22 +25,19 @@ Public Class clsLogger
Loop Loop
LogFilename = logf_name LogFilename = logf_name
Try Try
'Veruch das Log zu öffnen 'Create the file.
Dim fs As FileStream = New FileStream(LogFilename, FileMode.OpenOrCreate, FileAccess.Write) Dim fs As FileStream = New FileStream(LogFilename, FileMode.OpenOrCreate, FileAccess.Write)
' --- Stream öffnen If fs.CanWrite = False Then
Dim w As StreamWriter = New StreamWriter(fs) LogEscalation_Error("The Logfile can not be written - Check read/write")
' --- Anfügen am Ende End If
w.BaseStream.Seek(0, SeekOrigin.End)
' --- Zeilen schreiben
w.WriteLine("")
' --- Writer und Stream schließen
w.Close()
fs.Close() fs.Close()
Return False
Catch ex As Exception Catch ex As Exception
LogEscalation_Error("The Logfile could not be created - Error: " & ex.Message) LogEscalation_Error("The Logfile could not be created - Error: " & ex.Message)
Return False Return False
End Try End Try
'Alles Ok 'Alles Ok
log_string = ""
Return True Return True
Catch ex As Exception Catch ex As Exception
LogEscalation_Error("Unexpected Error in init Logger - Error: " & ex.Message) LogEscalation_Error("Unexpected Error in init Logger - Error: " & ex.Message)
@@ -74,19 +71,22 @@ Public Class clsLogger
LogPath = My.Application.Info.DirectoryPath & "\Log\" LogPath = My.Application.Info.DirectoryPath & "\Log\"
End Sub End Sub
Public Shared Sub Add(ByVal text As String, ByVal _error As Boolean, Optional ByVal Funktion As String = "") Public Shared Sub Add(ByVal text As String, ByVal _error As Boolean, Optional ByVal Funktion As String = "")
Dim msg As String Dim msg As String = Now.ToString
If log_string <> "" Then If log_string <> "" Then
log_string &= vbNewLine log_string &= vbNewLine
End If End If
'Präfixe schreiben 'Präfixe schreiben
If _error = True And Funktion <> "" Then If _error = True And Funktion <> "" Then
msg = ">> Achtung Fehler in Funktion '" & Funktion & "'" & vbNewLine & "Fehlermeldung: " msg = " >> Error in function '" & Funktion & "'" & vbNewLine & "errormessage: "
ElseIf _error = True Then ElseIf _error = True Then
msg = ">> Achtung Fehler:" & vbNewLine & "Fehlermeldung: " msg = " >> Unexpected error(2):" & vbNewLine & "errormessage: "
End If End If
'Präfix und Meldung zusammenstellen 'Präfix und Meldung zusammenstellen
msg &= text If text <> "" Then
log_string &= msg msg &= text
log_string &= msg
End If
End Sub End Sub
Public Shared Sub AddError(ByVal error_string As String, Optional ByVal Funktion As String = "") Public Shared Sub AddError(ByVal error_string As String, Optional ByVal Funktion As String = "")
Try Try
@@ -96,9 +96,9 @@ Public Class clsLogger
Dim msg As String Dim msg As String
'Präfixe schreiben 'Präfixe schreiben
If Funktion <> "" Then If Funktion <> "" Then
msg = ">> Achtung Fehler in Funktion '" & Funktion & "'" & vbNewLine & "Fehlermeldung: " msg = Now.ToString & " >> Achtung Fehler in Funktion '" & Funktion & "'" & vbNewLine & "Fehlermeldung: "
Else Else
msg = ">> Achtung Fehler:" & vbNewLine & "Fehlermeldung: " msg = Now.ToString & " >> Unexpected error(1):" & vbNewLine & "errormessage: "
End If End If
'Präfix und Meldung zusammenstellen 'Präfix und Meldung zusammenstellen
msg &= error_string msg &= error_string
@@ -125,7 +125,7 @@ Public Class clsLogger
If log_string <> "" Then If log_string <> "" Then
log_string &= vbNewLine log_string &= vbNewLine
End If End If
log_string &= " >> " & text log_string &= Now.ToString & " >> " & text
End If End If
Catch ex As Exception Catch ex As Exception
LogEscalation_Error("Unexpected Error in AddDetailLog - Error: " & ex.Message) LogEscalation_Error("Unexpected Error in AddDetailLog - Error: " & ex.Message)
@@ -134,20 +134,24 @@ Public Class clsLogger
Public Shared Sub WriteLog() Public Shared Sub WriteLog()
Try Try
'Veruch das Log zu öffnen If log_string <> String.Empty Then
Dim fs As FileStream = New FileStream(LogFilename, FileMode.OpenOrCreate, FileAccess.Write) SetSpeicherort()
' --- Stream öffnen 'Veruch das Log zu öffnen
Dim w As StreamWriter = New StreamWriter(fs) Dim fs As FileStream = New FileStream(LogFilename, FileMode.OpenOrCreate, FileAccess.Write)
' --- Anfügen am Ende ' --- Stream öffnen
w.BaseStream.Seek(0, SeekOrigin.End) Dim w As StreamWriter = New StreamWriter(fs)
' --- Zeilen schreiben ' --- Anfügen am Ende
w.WriteLine(log_string) w.BaseStream.Seek(0, SeekOrigin.End)
' --- Writer und Stream schließen ' --- Zeilen schreiben
w.Close() w.WriteLine(log_string)
fs.Close() ' --- Writer und Stream schließen
SetSpeicherort() w.Close()
'Den Meldungsstring wieder leeren fs.Close()
log_string = ""
'Den Meldungsstring wieder leeren
log_string = ""
End If
Catch ex As Exception Catch ex As Exception
LogEscalation_Error("Unexpected Error in WriteLog - Error: " & ex.Message) LogEscalation_Error("Unexpected Error in WriteLog - Error: " & ex.Message)
End Try End Try

View File

@@ -10,3 +10,13 @@ E:\SchreiberM\Visual Studio\GIT\DD_PROXY_SYNC\DD_PROXY_SYNC\obj\Debug\DD_PROXY_S
E:\SchreiberM\Visual Studio\GIT\DD_PROXY_SYNC\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.xml E:\SchreiberM\Visual Studio\GIT\DD_PROXY_SYNC\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.xml
E:\SchreiberM\Visual Studio\GIT\DD_PROXY_SYNC\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.pdb E:\SchreiberM\Visual Studio\GIT\DD_PROXY_SYNC\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.pdb
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\bin\Debug\DD_PROXY_SYNC.exe.config E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\bin\Debug\DD_PROXY_SYNC.exe.config
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\bin\Debug\DD_PROXY_SYNC.exe
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\bin\Debug\DD_PROXY_SYNC.pdb
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\bin\Debug\DD_PROXY_SYNC.xml
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.Resources.resources
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.ProjectInstaller.resources
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.DD_PROXY_SERV.resources
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.vbproj.GenerateResource.Cache
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.exe
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.xml
E:\SchreiberM\Visual Studio\GIT\DDProxySync\DD_PROXY_SYNC\obj\Debug\DD_PROXY_SYNC.pdb