This commit is contained in:
2020-01-08 13:18:12 +01:00
parent de1d935624
commit a6964d7082
28 changed files with 3853 additions and 1086 deletions

View File

@@ -430,13 +430,13 @@ Public Class cDakosyEZA
End Try
Return LOADByAnmID
End Function
Shared Function LOADByBezugsNr(bezugsNr As String, loadALL As Boolean) As cDakosyEZA
Shared Function LOADByBezugsNr(bezugsNr As String, loadALL As Boolean, Optional checkValidStatus As Boolean = False) As cDakosyEZA
Try
Dim EZA As New cDakosyEZA
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_EZA WHERE eza_ObjectName=@bezugsNr ", conn)
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_EZA WHERE eza_ObjectName LIKE @bezugsNr " & If(checkValidStatus, " AND eza_status BETWEEN 40 and 90 ", "") & " order by eza_LetzteBearbeitung desc ", conn)
cmd.Parameters.AddWithValue("@bezugsNr", bezugsNr)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
@@ -448,8 +448,8 @@ Public Class cDakosyEZA
Else
propInfo.SetValue(EZA, dr.Item(l.Text))
End If
Next
If loadALL Then
EZA.LOAD_Unterlagen()
EZA.LOAD_Warenposition()
@@ -912,6 +912,10 @@ Public Class cDakosyEZA
Dim filiale = getFiliale(Me.eza_ObjectName, filialeBez)
Dim abfertigungsnummer = getAbfertigungsnummer(Me.eza_ObjectName)
If abfertigungsnummer = "" Then
getFilialeAbfertigungsnummerFromSendung(filiale, abfertigungsnummer, DY.dy_SendungsId)
End If
If filiale <> "" And abfertigungsnummer <> "" Then
If countSpedbuchEntrysFilialeAbf(filiale, abfertigungsnummer) = 0 Then
' VERAG_PROG_ALLGEMEIN.cErrorHandler.sendERRORperMail("HEUREKA EZA ", "" & Me.eza_ObjectName, Now.ToString("yyyy.MM.dd HH:mm"), "al@verag.ag", "")
@@ -968,6 +972,10 @@ Public Class cDakosyEZA
Case "5003" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5103" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5303" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5501", "5601", "5701", "5801" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case Else
If IsNumeric(bezugsNr.ToString.Substring(0, 4)) Then Return bezugsNr.ToString.Substring(0, 4)
'Case "4801", "4803", "4805", "4807", "4811", "5003", "5103", "5303" : Return bezugsNr.ToString.Substring(0, 4) ...... derzeit nur 4803
'filialeBez SUB, NKD, WAI,.-..
End Select
@@ -996,6 +1004,17 @@ Public Class cDakosyEZA
End If
Return ""
End Function
Sub getFilialeAbfertigungsnummerFromSendung(ByRef filiale, ByRef abfertigungsnummer, dy_SendungsId)
If dy_SendungsId IsNot Nothing AndAlso IsNumeric(dy_SendungsId) Then
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(dy_SendungsId)
If SND IsNot Nothing Then
If SND.FilialenNr > 0 Then filiale = SND.FilialenNr
If SND.AbfertigungsNr > 0 Then abfertigungsnummer = SND.AbfertigungsNr
End If
End If
End Sub
Public Shared Sub DakosyEZADatenbereitstellung(ByRef SPEDITIONSBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch, EZA_Nr As String, ByRef notFound As Boolean, ByRef PosAnzahl As Integer)
Dim DY As DAKOSY_Worker.cDakosyEZA = DAKOSY_Worker.cDakosyEZA.LOADByBezugsNr(EZA_Nr, True)
If DY Is Nothing Then
@@ -1280,6 +1299,7 @@ Public Class cDakosy_EZA_Aufschub
Property ezaAfb_ArtAufschubantrag As Object = Nothing
Property ezaAfb_AufschubnehmerEORI As Object = Nothing
Property ezaAfb_KontoNr As Object = Nothing
Property ezaAfb_HZA As Object = Nothing
Property ezaAfb_AufschuBIN As Object = Nothing
'Public selButton As Object = Nothing ' Für die GUI
@@ -1305,6 +1325,7 @@ Public Class cDakosy_EZA_Aufschub
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ezaAfb_AufschubnehmerEORI", ezaAfb_AufschubnehmerEORI))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ezaAfb_KontoNr", ezaAfb_KontoNr))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ezaAfb_AufschuBIN", ezaAfb_AufschuBIN))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ezaAfb_HZA", ezaAfb_HZA))
Return list
End Function

View File

@@ -499,13 +499,13 @@ Public Class cDakosyNCTSOut
End Try
Return LOADByAnmID
End Function
Shared Function LOADByBezugsNr(bezugsNr As String, loadALL As Boolean) As cDakosyNCTSOut
Shared Function LOADByBezugsNr(bezugsNr As String, loadALL As Boolean, Optional checkValidStatus As Boolean = False) As cDakosyNCTSOut
Try
Dim NCTS As New cDakosyNCTSOut
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_NCTSOut WHERE ncts_ObjectName=@bezugsNr ", conn)
Using cmd As New SqlCommand("SELECT TOP 1 * FROM tblDakosy_NCTSOut WHERE ncts_ObjectName LIKE @bezugsNr " & If(checkValidStatus, " AND ncts_status BETWEEN 40 and 90 ", "") & " order by ncts_LetzteBearbeitung desc", conn)
cmd.Parameters.AddWithValue("@bezugsNr", bezugsNr)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
@@ -761,6 +761,11 @@ Public Class cDakosyNCTSOut
Dim filialeBez = ""
Dim filiale = getFiliale(Me.ncts_ObjectName, filialeBez)
Dim abfertigungsnummer = getAbfertigungsnummer(Me.ncts_ObjectName)
If abfertigungsnummer = "" Then
getFilialeAbfertigungsnummerFromSendung(filiale, abfertigungsnummer, DY.dy_SendungsId)
End If
If filiale <> "" And abfertigungsnummer <> "" Then
' If countSpedbuchEntrysFilialeAbf(filiale, abfertigungsnummer) = 0 Then
If countSpedbuchEntrys(filiale, Me.ncts_ObjectName) = 0 Then
@@ -815,6 +820,9 @@ Public Class cDakosyNCTSOut
Case "5003" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5103" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5303" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case "5501", "5601", "5701", "5801" : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
Case Else
If IsNumeric(bezugsNr.ToString.Substring(0, 4)) Then Return bezugsNr.ToString.Substring(0, 4) 'Case Else : Return bezugsNr.ToString.Substring(0, 4) '...... derzeit nur 4803
'Case "4801", "4803", "4805", "4807", "4811", "5003", "5103", "5303" : Return bezugsNr.ToString.Substring(0, 4) ...... derzeit nur 4803
'filialeBez SUB, NKD, WAI,.-..
End Select
@@ -831,7 +839,7 @@ Public Class cDakosyNCTSOut
If Not IsNumeric(s) Then Exit For
abf &= s
Next
If IsNumeric(abf) Then
If CLng(abf) < 99000000 Then ' wenn zu groß, fehlerhaft
@@ -845,6 +853,16 @@ Public Class cDakosyNCTSOut
End If
Return ""
End Function
Sub getFilialeAbfertigungsnummerFromSendung(ByRef filiale, ByRef abfertigungsnummer, dy_SendungsId)
If dy_SendungsId IsNot Nothing AndAlso IsNumeric(dy_SendungsId) Then
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(dy_SendungsId)
If SND IsNot Nothing Then
If SND.FilialenNr > 0 Then filiale = SND.FilialenNr
If SND.AbfertigungsNr > 0 Then abfertigungsnummer = SND.AbfertigungsNr
End If
End If
End Sub
Public Shared Sub DakosyNCTSDatenbereitstellung(ByRef SPEDITIONSBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch, NCTS_Nr As String, ByRef notFound As Boolean)
Dim DY As DAKOSY_Worker.cDakosyNCTSOut = DAKOSY_Worker.cDakosyNCTSOut.LOADByBezugsNr(NCTS_Nr, True)