ATEZ_NCTS

This commit is contained in:
2023-08-23 16:29:07 +02:00
parent 8ef39f02a7
commit 660562f8f9
2 changed files with 114 additions and 39 deletions

View File

@@ -1,4 +1,5 @@
Imports GrapeCity.ActiveReports.Design.DdrDesigner.Designers
Imports GrapeCity.ActiveReports.ReportsCore.Tools
Imports Newtonsoft.Json.Linq
Imports SDL
Imports VERAG_PROG_ALLGEMEIN
@@ -24,15 +25,17 @@ Public Class frmATEZ_NCTS
Dim NCTS As DAKOSY_Worker.cDakosyNCTSOut = Nothing
Dim openExisting As Boolean = False
Dim id As Integer = -1
Dim dgv As DataGridView = Nothing
Property BezugsNr As String = ""
Property SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen
Sub New(AVISO As VERAG_PROG_ALLGEMEIN.cAviso, SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen, JAHR As Integer)
Sub New(AVISO As VERAG_PROG_ALLGEMEIN.cAviso, SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen, JAHR As Integer, Optional _dgv As DataGridView = Nothing)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
If _dgv IsNot Nothing Then Me.dgv = _dgv
Me.AVISO = AVISO
Me.SENDUNG = SENDUNG
Me.JAHR = JAHR
@@ -47,13 +50,22 @@ Public Class frmATEZ_NCTS
End Sub
Sub New(_id As Integer)
Sub New(_id As Integer, AVISO As VERAG_PROG_ALLGEMEIN.cAviso, SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen, JAHR As Integer)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
openExisting = True
id = _id
Me.AVISO = AVISO
Me.SENDUNG = SENDUNG
Me.JAHR = JAHR
If SENDUNG IsNot Nothing Then
Me.FilialenNr = SENDUNG.FilialenNr
Me.AbfertigungsNr = SENDUNG.AbfertigungsNr
End If
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
@@ -63,15 +75,18 @@ Public Class frmATEZ_NCTS
If id > 0 Then
Dim atez_data = New cATEZ_NCTS_DATA(id)
If atez_data.json <> "" Then
MsgBox(atez_data.json) 'InputBox(atez_data.json, "JSON-Text", , 100, 100)
Dim atezData = New cATEZ_NCTS_DATA(id)
If atezData.json <> "" And atezData.status <> "Draft" Then
MsgBox(atezData.json)
Else
Dim atez As New cATEZ_NCTS_IN
sendAtezData(atezData, atez)
End If
Else
lblInfo.Text = ""
Dim failreDesc As String
Dim selectedDocuments As Boolean = False
@@ -134,43 +149,74 @@ Public Class frmATEZ_NCTS
If sbRoute8._value <> "" Then Dim route As New cATEZ_NCTS_Routen(atezData.Id, sbRoute8._value)
If sbRoute9._value <> "" Then Dim route As New cATEZ_NCTS_Routen(atezData.Id, sbRoute9._value)
Dim authResp = atez.authenticate()
If authResp <> "200" Then
failreDesc = "Authentifizierung fehlgeschlagen - " & authResp & vbNewLine & "Vorgang abgebrochen!"
lblInfo.Text = failreDesc
Exit Sub
End If
If Not atez.setJson(atezData, dgvAnhaenge) Then MsgBox("Fehler beim Erstellen der Daten")
Dim azetId = atez.SendRequestWithAuthHeader("application/json", failreDesc)
If failreDesc <> "" Then
atezData.status = failreDesc
atezData.SAVE()
lblInfo.Text = "Fehler in der API"
Else
atezData.status = "Sent"
atezData.atezId = IIf(azetId IsNot Nothing, azetId, "")
atezData.SAVE()
Me.Close()
End If
sendAtezData(atezData, atez)
End If
End Sub
Private Sub sendAtezData(atezData As cATEZ_NCTS_DATA, atez As cATEZ_NCTS_IN)
Dim failreDesc As String
Dim authResp = atez.authenticate()
If authResp <> "200" Then
failreDesc = "Authentifizierung fehlgeschlagen - " & authResp & vbNewLine & "Vorgang abgebrochen!"
lblInfo.Text = failreDesc
Exit Sub
End If
If Not atez.setJson(atezData, dgvAnhaenge) Then MsgBox("Fehler beim Erstellen der Daten" & vbNewLine & "Vorgang abgebrochen!")
Dim azetId = atez.SendRequestWithAuthHeader("application/json", failreDesc)
If failreDesc <> "" Then
If atezData.status = "Draft" Then
MsgBox("Fehler beim Senden")
Exit Sub
End If
Dim result As MsgBoxResult = MsgBox("Fehler beim Senden" & vbNewLine & "Soll NCTS wird als Entwurf gespeichert werden?", vbYesNoCancel)
If result = vbYes Then
atezData.status = "Draft"
atezData.SAVE()
End If
lblInfo.Text = "Fehler in der API"
Else
atezData.status = "Sent"
atezData.atezId = IIf(azetId IsNot Nothing, azetId, "")
atezData.SAVE()
Me.Close()
End If
End Sub
Function getBezugsnr(ByRef BezugsNr)
Dim BezugsNrTmp = ""
BezugsNrTmp = SENDUNG.FilialenNr & "/" & SENDUNG.AbfertigungsNr '& If(zusatz <> "", "/" & zusatz, "") 'zusatz ' & "/" & Jahr2Stellig
BezugsNrTmp = SENDUNG.FilialenNr & "/" & SENDUNG.AbfertigungsNr
BezugsNr = BezugsNrTmp
zusatz = "A"
'Soloagne bis die Bezugsnummer noch nicht existiert
If dgv IsNot Nothing Then
For Each r As DataGridViewRow In dgv.Rows
If r.Cells("BezugsNr").Value = BezugsNr Then
If zusatz.Length = 1 Then
zusatz = Chr(Asc(zusatz.ToString) + 1)
Else
zusatz = zusatz.Substring(0, 1) & Chr(Asc(zusatz.Substring(0, 2).ToString) + 1)
End If
If zusatz = "Z" Then zusatz = "AA"
End If
BezugsNr = BezugsNrTmp & "/" & zusatz
Next
End If
While DAKOSY_Worker.cDakosy_Zollanmeldungen.ExistsBezugsNr(BezugsNr) 'IsNot Nothing
BezugsNr = BezugsNrTmp & "/" & zusatz
@@ -182,6 +228,7 @@ Public Class frmATEZ_NCTS
If zusatz = "Z" Then zusatz = "AA"
End While
lblBezugsnummer.Text = BezugsNr
Return BezugsNr
End Function
@@ -202,12 +249,16 @@ Public Class frmATEZ_NCTS
initAttachment()
If openExisting Then
Button1.Text = "JSON"
If id > 0 Then
Dim atez_data = New cATEZ_NCTS_DATA(id)
lblInfo.Text = "Atez-ID " & atez_data.atezId
If atez_data.atezId <> "" Then
lblInfo.Text = "Atez-ID " & atez_data.atezId
Else
lblInfo.Text = "Status: " & atez_data.status
End If
lblBezugsnummer.Text = atez_data.VERAG_LRN
cboStammreferenz._value = atez_data.SendungsId
@@ -264,8 +315,19 @@ Public Class frmATEZ_NCTS
i = i + 1
Next
pnlHead.Enabled = False
Button1.Enabled = True
If atez_data.status = "Draft" Then
Button1.Text = "An ATEZ senden -->"
pnlHead.Enabled = True
Button1.Enabled = True
initAttachment()
Else
Button1.Text = "JSON"
pnlHead.Enabled = False
Button1.Enabled = True
End If
Else
Button1.Enabled = False
End If