Anlage des Repos
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
' UpdateOrderDataBeforeDelNote()
|
||||
' ----------------------------------------------------------------------------
|
||||
' Vor der Erstellung des Lieferscheins, können hier noch
|
||||
' Werte in der Datenstruktur korrigiert werden.
|
||||
'
|
||||
' Beispiel: Versandkosten in Package-Artikeln
|
||||
'
|
||||
' Returns: -
|
||||
' ----------------------------------------------------------------------------
|
||||
' Copyright (c) 2021 by Digital Data GmbH
|
||||
'
|
||||
' Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim
|
||||
' Tel.: 0641/202360 • E-Mail: info-flow(at)digitaldata.works
|
||||
' ----------------------------------------------------------------------------
|
||||
' Creation Date / Author: 08.03.2021 / JJ
|
||||
' Version Date / Editor: 24.06.2021 / MP
|
||||
' Version Number: 4.0.0.0
|
||||
|
||||
Sub UpdateOrderDataBeforeDelNote()
|
||||
|
||||
Dim MacroAmountFaktor
|
||||
Dim MacroComplete
|
||||
Dim MacroAmountScanned
|
||||
|
||||
For OrderArrayIndex = 0 To Ubound(ORDER_ARTICLE_DATA, 2)
|
||||
|
||||
If DEBUG_ON = True Then
|
||||
AddDebugLine "Current ORDER_ARTICLE_DATA values for Index: " & OrderArrayIndex
|
||||
AddDebugLine "LineNumber: " & vbTab & ORDER_ARTICLE_DATA(INDEX_LINE_NUMBER, OrderArrayIndex)
|
||||
AddDebugLine "ArticleNumber: " & vbTab & ORDER_ARTICLE_DATA(INDEX_ARTICLE_NUMBER, OrderArrayIndex)
|
||||
AddDebugLine "MacroFlag: " & vbTab & ORDER_ARTICLE_DATA(INDEX_MACRO_FLAG, OrderArrayIndex)
|
||||
AddDebugLine "ProductGroup: " & vbTab & ORDER_ARTICLE_DATA(INDEX_ARTICLE_GROUP, OrderArrayIndex)
|
||||
AddDebugLine "AmountOrdered: " & vbTab & ORDER_ARTICLE_DATA(INDEX_AMOUNT_ORDERED, OrderArrayIndex)
|
||||
AddDebugLine "AmountDelivered: " & vbTab & ORDER_ARTICLE_DATA(INDEX_AMOUNT_DELIVERED, OrderArrayIndex)
|
||||
AddDebugLine "AmountScanned: " & vbTab & ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex)
|
||||
|
||||
ShowDebugBox "UpdateOrderDataBeforeDelNote"
|
||||
End If
|
||||
|
||||
MacroFlag = CInt(ORDER_ARTICLE_DATA(INDEX_MACRO_FLAG, OrderArrayIndex))
|
||||
|
||||
' Wenn Macro-Artikel nur zum Teil ausgeliefert werden,
|
||||
' müssen die Anteile Nicht-scannbarer Artikel entsprechend reduziert werden.
|
||||
If MacroFlag = 1 Then
|
||||
|
||||
MacroAmount = Cint(ORDER_ARTICLE_DATA(INDEX_AMOUNT_ORDERED, OrderArrayIndex)) - Cint(ORDER_ARTICLE_DATA(INDEX_AMOUNT_DELIVERED, OrderArrayIndex))
|
||||
MacroAmountScannend = Cint(ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex))
|
||||
|
||||
If MacroAmount > MacroAmountScannend Then
|
||||
MacroComplete = False
|
||||
If MacroAmount > 0 Then
|
||||
MacroAmountFaktor = MacroAmountScannend / MacroAmount
|
||||
End If
|
||||
Else
|
||||
MacroComplete = True
|
||||
MacroAmountFaktor = 1
|
||||
End If
|
||||
|
||||
ElseIf MacroFlag = 2 And MacroComplete = False Then
|
||||
ProductGroup = Cint(ORDER_ARTICLE_DATA(INDEX_ARTICLE_GROUP, OrderArrayIndex))
|
||||
|
||||
' Wir müssen nur etwas tun, wenn ein Faktor < 1 (=100%) ermittelt wurde,
|
||||
' da die Artikel der ProductGroup aus den EXCLUDED_ARTICLEGROUPS ja bereits vollständig initialisiert werden.
|
||||
If CheckArticleGroupIsRelevant(ORDER_ARTICLE_DATA(INDEX_ARTICLE_GROUP, OrderArrayIndex)) = False And MacroAmountFaktor < 1 Then
|
||||
ProductAmount = Cint(ORDER_ARTICLE_DATA(INDEX_AMOUNT_ORDERED, OrderArrayIndex)) - Cint(ORDER_ARTICLE_DATA(INDEX_AMOUNT_DELIVERED, OrderArrayIndex))
|
||||
ProductAmount = Round(ProductAmount * MacroAmountFaktor)
|
||||
ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex) = ProductAmount
|
||||
End If
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End Sub
|
||||
Reference in New Issue
Block a user