Messaging: Prepare new email lib
This commit is contained in:
109
DBCleaner/Form1.vb
Normal file
109
DBCleaner/Form1.vb
Normal file
@@ -0,0 +1,109 @@
|
||||
Imports System.IO
|
||||
Imports DigitalData.Modules.Database
|
||||
Imports DigitalData.Modules.Logging
|
||||
|
||||
Public Class Form1
|
||||
Private MsgIds As New List(Of String)
|
||||
Public oMSSQL As MSSQLServer
|
||||
Public oFirebird As Firebird
|
||||
Public oLogConfig As LogConfig
|
||||
Public oLogger As Logger
|
||||
|
||||
Public ExistingIds As Integer
|
||||
Public MissingIds As Integer
|
||||
Public FailedIds As Integer
|
||||
|
||||
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
oLogConfig = New LogConfig(LogConfig.PathType.CustomPath, Application.StartupPath)
|
||||
oLogger = oLogConfig.GetLogger
|
||||
|
||||
ToolStripComboBox1.SelectedIndex = 0
|
||||
|
||||
Try
|
||||
oMSSQL = New MSSQLServer(oLogConfig, My.Settings.MSSQL_CONNECTION_STRING)
|
||||
oFirebird = New Firebird(oLogConfig, My.Settings.FB_DATASOURCE, My.Settings.FB_DATABASE, My.Settings.FB_USERNAME, My.Settings.FB_PASSWORD)
|
||||
|
||||
Dim oFilename As String = "zugferdhistory.txt"
|
||||
Dim oPath As String = Path.Combine(Application.StartupPath, oFilename)
|
||||
|
||||
If File.Exists(oPath) = False Then
|
||||
Throw New Exception($"{oFilename} does not exist!!")
|
||||
End If
|
||||
|
||||
MsgIds = File.ReadAllLines(oFilename).ToList
|
||||
|
||||
AddLog($"{MsgIds.Count} MessageIDs added!")
|
||||
|
||||
Catch ex As Exception
|
||||
oLogger.Error(ex)
|
||||
MsgBox("Error: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, Text)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub AddLog(Message As String)
|
||||
oLogger.Info(Message)
|
||||
ListBox1.Items.Add(Message)
|
||||
ListBox1.SelectedIndex = ListBox1.Items.Count - 1
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub BringTheActionToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BringTheActionToolStripMenuItem.Click
|
||||
If ToolStripComboBox1.Text = "DELETE" Then
|
||||
Dim oResult = MsgBox("Action is set to DELETE! Do you want to continue?", MsgBoxStyle.YesNo, "Attention")
|
||||
|
||||
If oResult = MsgBoxResult.Yes Then
|
||||
DoIt()
|
||||
Else
|
||||
MsgBox("Coward!")
|
||||
End If
|
||||
|
||||
Else
|
||||
DoIt()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub DoIt()
|
||||
For Each oMessageId As String In MsgIds
|
||||
Try
|
||||
Dim oSQL As String = $"SELECT msgid FROM VWCUST_BELEGE_TODAY WHERE msgid = '{oMessageId}'"
|
||||
Dim oResult As DataTable = oMSSQL.GetDatatable(oSQL)
|
||||
|
||||
If oResult Is Nothing Then
|
||||
Throw New Exception($"Nothing found in VWCUST_BELEGE_TODAY for message id [{oMessageId}]")
|
||||
End If
|
||||
|
||||
AddLog($"rows for messageid [{oMessageId}]: [{oResult.Rows.Count}]")
|
||||
|
||||
If oResult.Rows.Count = 0 Then
|
||||
AddLog("No rows found, deleting from FB history.")
|
||||
' Delete from fb history
|
||||
|
||||
oSQL = $"DELETE FROM TBEDM_ZUGFERD_HISTORY_IN WHERE MESSAGE_ID = '{oMessageId}'"
|
||||
If ToolStripComboBox1.Text = "DELETE" Then
|
||||
|
||||
If oFirebird.ExecuteNonQuery(oSQL) = True Then
|
||||
AddLog("Delete successful!")
|
||||
|
||||
End If
|
||||
Else
|
||||
AddLog("Simulating Delete !")
|
||||
AddLog(oSQL)
|
||||
End If
|
||||
|
||||
MissingIds += 1
|
||||
Else
|
||||
AddLog("Rows found, all good!")
|
||||
ExistingIds += 1
|
||||
End If
|
||||
Catch ex As Exception
|
||||
oLogger.Warn("Error while checking existence of MessageId [{0}]: {1}", oMessageId, ex.Message)
|
||||
oLogger.Error(ex)
|
||||
FailedIds += 1
|
||||
End Try
|
||||
Next
|
||||
|
||||
AddLog("MissingIds: " & MissingIds)
|
||||
AddLog("ExistingIds: " & ExistingIds)
|
||||
AddLog("FailedIds: " & FailedIds)
|
||||
End Sub
|
||||
End Class
|
||||
Reference in New Issue
Block a user