Ansicht API-Liste und Fehlerliste

This commit is contained in:
2023-07-17 16:54:32 +02:00
parent 565e1f9942
commit 60bc349378
11 changed files with 1774 additions and 511 deletions

View File

@@ -1,4 +1,11 @@
Imports System.ComponentModel
Imports DocumentFormat.OpenXml.Drawing.Spreadsheet
Imports DocumentFormat.OpenXml.Office2010.Excel
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Imports DocumentFormat.OpenXml.Spreadsheet
Imports DocumentFormat.OpenXml.Wordprocessing
Imports GrapeCity.ActiveReports.ReportsCore.Tools
Public Class usrCntlERS
@@ -14,44 +21,22 @@ Public Class usrCntlERS
btnMonat.Text = MONAT.ToString("MMMM")
btnJahr.Text = JAHR.Year
txtUser.initKdBox(Me.FindForm) ' initKdAbsender()
kdtxtKunde.initKdBox(Me.FindForm) ' initKdAbsender()
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", True)
cboFirma.fillWithSQL("SELECT [Firma_Bez] FROM [tblFirma] ", False, "FMZOLL", True)
cboDatum.Items.Clear()
cboDatum.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("API-Datum", "ADat"))
cboDatum.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Durchführungsdatum", "DDat"))
cboDatum.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Error-Datum", "EDat"))
cboDatum.changeItem("RDat")
cboInOut.Items.Clear()
cboInOut.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboInOut.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IN", VERAG_PROG_ALLGEMEIN.cAPI_INOUT.IN))
cboInOut.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("OUT", VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT))
cboInOut.changeItem("")
cboDatum.changeItem("EDat")
cboProgram.Items.Clear()
cboProgram.fillWithSQL("SELECT [prog_id],[prog_codename] from [tblProgramme]", False, "ADMIN", True)
cboProgram.changeItem("")
cboType.Items.Clear()
cboType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FTP", VERAG_PROG_ALLGEMEIN.cAPI_Type.FTP))
cboType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("MAIL", VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL))
cboType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("REST", VERAG_PROG_ALLGEMEIN.cAPI_Type.REST))
cboType.fillWithSQL("SELECT distinct(ers_Type) FROM [tblERS] ", False, "ADMIN", True)
cboType.changeItem("")
cboAPIArt.Items.Clear()
cboAPIArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboAPIArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AVISO_OUT_STATUSMAIL", VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_OUT_STATUSMAIL))
cboAPIArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AVISO_OUT_BELEGMAIL", VERAG_PROG_ALLGEMEIN.cAPI_ART.AVISO_OUT_BELEGMAIL))
cboAPIArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG_OUT_EZA", VERAG_PROG_ALLGEMEIN.cAPI_ART.VERAG_OUT_EZA))
cboAPIArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG_OUT_NCTS", VERAG_PROG_ALLGEMEIN.cAPI_ART.VERAG_OUT_NCTS))
cboAPIArt.changeItem("")
End Sub
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
@@ -136,12 +121,12 @@ Public Class usrCntlERS
Dim sqlstr As String = ""
Dim TopMax = If(IsNumeric(txtMaxSrch.Text), " TOP " & txtMaxSrch.Text, "")
sqlstr &= "SELECT " & TopMax & " api_id, [api_apiArt],[api_apiUArt],[api_apiZollStatus],[api_InOut],[api_datetime],[api_status],[api_fehlversuch],[api_progName],[api_progVersion],[api_Type],[api_EMail],[api_filepathSource],[api_filepathDestination],[api_Firma],[api_Username],[api_Partnersystem],[api_Vorsystem],[api_KundenNr],[api_AvisoId],[api_SendungsId],[api_FilialenNr],[api_AbfertigungsNr],[api_BezugsNr],[api_Zollbelegnummer],[api_finTstmp]
FROM [tblAPI] WHERE 1=1 "
sqlstr &= "SELECT " & TopMax & " [ers_id],[ers_progId],[ers_progName],[ers_progVersion],[ers_datetime],[ers_Testsystem],[ers_Type],[ers_EMail],[ers_maId],[ers_userName],[ers_Firma],[ers_errCode],[ers_errStack],[ers_errMessage],[ers_errMethodName],[ers_infotext]
FROM [tblERS] WHERE 1=1 "
With DataGridView
' .DataSource = myTable
.SET_SQL(sqlstr & getRechnungsAusgangWhere() & " ORDER BY Rechnungsdatum, RK_ID", "FMZOLL", getSpedbuchList)
.SET_SQL(sqlstr & getErrordatumWhere() & " ORDER BY ers_datetime", "ADMIN", getErrorList)
.LOAD()
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
@@ -150,7 +135,12 @@ Public Class usrCntlERS
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
.MultiSelect = False
.Columns("api_id").Visible = False
.Columns("ers_id").Visible = False
.Columns("ers_progId").Visible = False
For Each cc As DataGridViewColumn In .Columns
cc.HeaderText = cc.Name.Replace("ers_", "")
Next
'.Columns("RechnungsNr").Width = 70
'.Columns("RechnungsNr").HeaderText = "Rechnugs-Nr"
@@ -217,85 +207,67 @@ Public Class usrCntlERS
Me.Cursor = Cursors.Default
End Sub
Function getRechnungsAusgangWhere() As String
Function getErrordatumWhere() As String
Dim sqlstr = ""
If kdtxtKunde.Text <> "" And IsNumeric(kdtxtKunde.Text) Then sqlstr &= " AND [api_KundenNr] LIKE @Kunde "
If txtUser.Text <> "" And IsNumeric(txtUser.Text) Then sqlstr &= " AND [ers_userName] LIKE @User "
If cboDatum._value = "ADat" Then
If txtAbfertDat.Text <> "" Then
If txtAbfertDatBis.Text <> "" Then
sqlstr &= " AND ([api_datetime] BETWEEN @Datum_von AND @Datum_bis ) "
Else
sqlstr &= " AND ([api_datetime] BETWEEN @Datum_von AND @Datum_von ) "
End If
End If
ElseIf cboDatum._value = "DDat" Then
If txtAbfertDat.Text <> "" Then
If txtAbfertDatBis.Text <> "" Then
sqlstr &= " AND ([api_finTstmp] BETWEEN @Datum_von AND @Datum_bis ) "
Else
sqlstr &= " AND ([api_finTstmp] BETWEEN @Datum_von AND @Datum_von ) "
End If
End If
ElseIf cboDatum._value = "EDat" Then
If txtAbfertDat.Text <> "" Then
If txtAbfertDatBis.Text <> "" Then
sqlstr &= " AND ([api_errTstmp] BETWEEN @Datum_von AND @Datum_bis ) "
Else
sqlstr &= " AND ([api_errTstmp] BETWEEN @Datum_von AND @Datum_von ) "
End If
End If
End If
If txtAbfertigungsnummer.Text <> "" Then
If txtAbfertigungsnummerBis.Text <> "" Then
sqlstr &= " AND ([api_AbfertigungsNr] BETWEEN @AbfertigungsNr AND @AbfertigungsNr_bis) "
If txtAbfertDat.Text <> "" Then
If txtAbfertDatBis.Text <> "" Then
sqlstr &= " AND ([ers_datetime] BETWEEN @Datum_von AND @Datum_bis ) "
Else
sqlstr &= " AND [api_AbfertigungsNr] LIKE @AbfertigungsNr "
sqlstr &= " AND ([ers_datetime] BETWEEN @Datum_von AND @Datum_von ) "
End If
End If
If cboFiliale._value <> "" Then sqlstr &= " AND [api_FilialenNr] LIKE @FilialenNr "
If txtAPIUArt.Text <> "" Then sqlstr &= " AND [api_apiUArt] LIKE @UArt "
If cboAPIArt._value <> "" Then sqlstr &= " AND [api_apiArt] LIKE @APIArt "
If cboType._value <> "" Then sqlstr &= " AND [api_Type] LIKE @APIType "
If cboInOut._value <> "" Then sqlstr &= " AND [api_InOut] LIKE @APIInOut "
If txtAvisoId.Text <> "" Then sqlstr &= " AND [api_AvisoId] LIKE @AvisoId "
If txtSendungsId.Text <> "" Then sqlstr &= " AND [api_SendungsId] LIKE @SendungsId "
If cboFirma._value <> "" Then sqlstr &= " AND [ers_Firma] LIKE @ersFirma "
If cboType._value <> "" Then sqlstr &= " AND [ers_Type] LIKE @ersType "
If cboProgram._value <> "" Then sqlstr &= " AND [ers_progId] = @ersprogId "
If cbxTestSys.CheckState <> CheckState.Indeterminate Then
sqlstr &= " AND [ers_Testsystem] = @ersTestsystem "
End If
Return sqlstr
End Function
Function getSpedbuchList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Function getErrorList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Kunde", kdtxtKunde.KdNr_value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("User", txtUser.KdNr_value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_von", txtAbfertDat.Text & " 00:00:00"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_bis", txtAbfertDatBis.Text & " 23:59:59"))
If txtAbfertigungsnummerBis.Text <> "" Then
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", txtAbfertigungsnummer.Text.Replace("*", "")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr_bis", txtAbfertigungsnummerBis.Text.Replace("*", "")))
Else
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", txtAbfertigungsnummer.Text.Replace("*", "%")))
End If
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ersFirma", cboFirma._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ersType", cboType._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ersprogId", cboProgram._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ersTestsystem", cbxTestSys.Checked))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", cboFiliale._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UArt", txtAPIUArt.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("APIArt", cboAPIArt._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("APIType", cboType._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("APIInOut", cboInOut._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisoId", txtAvisoId._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SendungsId", txtSendungsId._value))
Return list
End Function
Private Sub DataGridView_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView.CellDoubleClick
Me.Cursor = Cursors.WaitCursor
Dim err As New frmERS With {
.id = sender.CurrentRow.Cells("ers_id").Value,
.progId = sender.CurrentRow.Cells("ers_progId").Value,
.progName = sender.CurrentRow.Cells("ers_progName").Value,
.progVersion = sender.CurrentRow.Cells("ers_progVersion").Value,
.datetime = sender.CurrentRow.Cells("ers_datetime").Value,
.testsystem = sender.CurrentRow.Cells("ers_testsystem").Value,
.type = sender.CurrentRow.Cells("ers_type").Value,
.mail = sender.CurrentRow.Cells("ers_email").Value,
.maId = sender.CurrentRow.Cells("ers_maId").Value,
.userName = sender.CurrentRow.Cells("ers_userName").Value,
.firma = sender.CurrentRow.Cells("ers_firma").Value,
.errorCode = sender.CurrentRow.Cells("ers_progId").Value,
.errStack = sender.CurrentRow.Cells("ers_errStack").Value,
.errMessage = sender.CurrentRow.Cells("ers_errMessage").Value,
.errMethodName = sender.CurrentRow.Cells("ers_errMethodName").Value
}
err.Show(Me)
sender.RELOAD()
Me.Cursor = Cursors.Default
End Sub
End Class