Ansicht
Dokumentation
SD_DELIVERY_ASSIGN_TO_SHIPMENT - Zuordnen von Lieferungen zu einem Transport
BAL_S_LOG - Application Log: Log header data PERFORM Short ReferenceDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Dieser Funktionsbaustein ordnet die in der Tabelle I_DELIVERIES angebenen Lieferungen dem Transport mit der Nummer I_TKNUM zu, dessen Kopf die Workarea C_XVTTK sein muß (In dieser werden 2 Informationen aktualisiert: Zuletzt vergebene Positionsnummer und zuletzt vergebene Reihenfolgenummer).
Hierbei werden natürlich die Transportpositionstabellen C_XVTTP und C_YVTTP verändert.
Wenn Lieferungen sich bereits in einem anderen Transport befinden, werden sie aus diesem herausgenommen und dem neuen zugeordnet. Dabei werden natürlich nicht nur die Transportpositions-Tabellen der anderen Transporte verändert, sondern auch die Position/Strecken-Zuordnungen (C_XVTSP, C_YVTSP), da die Lieferungen ja auch Strecken zugeordnet sein können.
Sind dem Transport mit der Nummer I_TKNUM schon Lieferungen zugeordnet, so werden jene Lieferungen, die nicht in I_DELIVERIES erwähnt sind, aus dem Transport herausgenommen.
Im Prinzip steht in C_XVTTP der alte Zustand des Transports I_TKNUM, während I_DELIVERIES den neuen beschreibt.
Nicht zugeordnete Lieferungen stehen ebenfalls in der Tabelle C_XVTTP, haben aber die Transportnummer TKNUM = SPACE.
Außerdem werden die Lieferungen automatisch allen Strecken zugeordnet, die das Laufkennzeichen 'Hauptlauf' besitzen (Daher wird die Tabelle I_XVTTS als Input benötigt).
Beispiel
Es liegt folgende Situation vor:
Transport '0000000001':
Lieferung A
Transport '0000000002':
Lieferung B
Lieferung C
Lieferungen ohne Transport:
Lieferung D
Lieferung E
Dem ersten Transport sollen die Lieferungen D und C (in genau dieser Reihenfolge) zugeordnet werden. Dafür wird zuerst die Tabelle I_DELIVERIES aufgebaut:
I_DELIVERIES-vbeln = 'D'.
I_DELIVERIES-tprfo = 1.
append I_DELIVERIES.
I_DELIVERIES-vbeln = 'C'.
I_DELIVERIES-tprfo = 2.
append I_DELIVERIES.
Und jetzt erfolgt der Aufruf des Funktionsbausteins:
call function 'SD_DELIVERY_ASSIGN_TO_SHIPMENT'
exporting
i_tknum = '0000000001'
tables
c_xvttp = xvttp
c_yvttp = yvttp
c_xvtsp = xvtsp
c_yvtsp = yvtsp
i_deliveries = I_DELIVERIES
i_xtrlk = xtrlk
i_xtrlp = xtrlp
i_xvtts = xvtts
changing
c_xvttk = xvttk
exceptions
others = 1.
Das Ergebnis ist dann:
Transport '0000000001':
Lieferung D
Lieferung C
Transport '0000000002':
Lieferung B
Lieferungen ohne Transport:
Lieferung E
Lieferung A
Das heißt:
- Lieferung A wurde aus dem ersten Transport entfernt und in den Bereich 'Lieferungen ohne Transport' gestellt (hier gilt: TKNUM = SPACE)
- Lieferung C wurde aus dem zweiten Transport in den ersten verschoben.
- Lieferung D wurd aus dem Bereich 'Lieferungen ohne Transport' herausgenommen und dem ersten Transport zugeordnet.
Hinweise
Weiterführende Informationen
Parameter
C_XVTSPC_XVTTK
C_XVTTP
C_YVTSP
C_YVTTP
I_DELIVERIES
I_TKNUM
I_XTRLK
I_XTRLP
I_XVTTS
Ausnahmen
NO_TRANSPORT_RELEVANCEFunktionsgruppe
V56LRFUMSV00 - Advance Return for Tax on Sales/Purchases BAL Application Log Documentation
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 3754 Date: 20240523 Time: 140955 sap01-206 ( 55 ms )