Ansicht
Dokumentation

SD_ROUTE_DETERMINATION - Routenfindung

SD_ROUTE_DETERMINATION - Routenfindung

Vendor Master (General Section)   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Der FB 'SD_ROUTE_DETERMINATION' dient zur Ermittlung von Routen auf Basis folgender vorgegebener (teilweise optionaler) Parameter:

Parameter Angabe
-----------------------------------
Abgangsland obligatorisch
Abgangszone obligatorisch
Empfangsland obligatorisch
Empfangszone obligatorisch
Versandbedingung optional
Transportgruppe optional
Gewichtsgruppe optional

Die optionalen Parameter können beim Aufruf des FB generisch behandelt werden, d.h. es wird eine Route gesucht, deren Parameter mit dem vorgegebenen Parameter übereinstimmt oder bei der der entsprechende Parameter initial ist. Die generische Behandlung kann einerseits für die Gewichtsgruppe (Parameter I_FLAG_GEN_GRULG) und andererseits für die Kombination Versandbedingung/Transportgruppe (Parameter I_FLAG_GEN_VT) ein- bzw. ausgeschaltet werden. Dadurch ist es z.B. möglich Routen zu definieren, die immer dann gefunden werden, wenn ein genau passender Eintrag für die Parameter Versandbedingung, Transportgruppe und Gewichtsgruppe nicht vorhanden ist (was sonst zu einer nicht gefundenen Route führt).

Beispiel:

Für die Routenfindung von Land1 nach Land2 mit Versandbedingung 01 sind zwar Routen für Transportgruppen 0001 und 0002 definiert, nicht jedoch für Transportgruppe 0003. Wird der Zugriff mit Transportgruppe 0003 durchgeführt, kann normalerweise keine Route gefunden werden. Soll jetzt aber z.B. für alle anderen Transportgruppen (außer 0001 und 0002) eine bestimmte Standardroute gefunden werden, so kann man durch die generische Vorgabe unabhängig von der Transportgruppe immer die Standardroute finden. Die Angabe generischer Routen wird in der neuen Routenfindungspflege unterstützt.

Von Nach VsBed TraGr Route
Land1 Land2 01 0001 000001
Land1 Land2 01 0002 000002
Land1 Land2 01 000003

Die Suche mit Land1/Land2/01 und Transportgruppe 0003 führt bei Parameter I_FLAG_GEN_VT = 'X' zur Ermittlung der Route 000003.

Der Schalter I_FLAG_INCR_GRULG ermöglicht es, nach einer Route mit höherer Gewichtsgruppe zu suchen, wenn eine Route mit passender Gewichtsgruppe nicht gefunden wird (siehe Beispiele).

In der Tabelle C_PROT wird ein Protokoll über den Routenfindungsvorgang zurückgegeben, das innerhalb einer Anwendung angezeigt werden kann.

Beispiel

Beispiel 1: Standard-Routenfindung im Auftrag:
CALL FUNCTION 'SD_ROUTE_DETERMINATION'
EXPORTING
I_ALAND = ALAND
I_AZONE = AZONE
I_LLAND = LLAND
I_LZONE = LZONE
I_VSBED = VSBED
I_TRAGR = TRAGR
I_GRULG = SPACE
I_FLAG_GEN_GRULG = SPACE
I_FLAG_GEN_VT = SPACE
I_FLAG_INCR_GRULG = SPACE
I_VBAK = VBAK
I_VBKD = VBKD
I_VBAP = VBAP
IMPORTING
E_ROUTE = VBAP-ROUTE
TABLES
C_PROT = PROTOCOL
I_VBPA = VBPA
EXCEPTIONS
NO_ROUTE_FOUND = 1
DEPARTURE_ERROR = 2
DESTINATION_ERROR = 3
INVALID_GENERIC_KEY = 4
CUSTOMER_EXIT_ERROR = 5
OTHERS = 6.

Beispiel 2: Standard-Routenfindung in der Lieferung:
CALL FUNCTION 'SD_ROUTE_DETERMINATION'
EXPORTING
I_ALAND = ALAND
I_AZONE = AZONE
I_LLAND = LLAND
I_LZONE = LZONE
I_VSBED = VSBED
I_TRAGR = TRAGR
I_GRULG = GRULG
I_FLAG_GEN_GRULG = SPACE
I_FLAG_GEN_VT = SPACE
I_FLAG_INCR_GRULG = SPACE
I_LIKP = LIKP
IMPORTING
E_ROUTE = LIKP-ROUTE
TABLES
C_PROT = PROTOCOL
I_VBPA = VBPA
EXCEPTIONS
NO_ROUTE_FOUND = 1
DEPARTURE_ERROR = 2
DESTINATION_ERROR = 3
INVALID_GENERIC_KEY = 4
CUSTOMER_EXIT_ERROR = 5
OTHERS = 6.

Beispiel 3: Ablauf der Findung bei Verwendung der Schalter I_FLAG_xxx:

  1. I_FLAG_GEN_GRULG = 'X':
    1. Suche nach passender Route
    2. Suche nach Route mit initialer Gewichtsgruppe
  2. I_FLAG_GEN_GRULG = 'X' und I_FLAG_GEN_VT = 'X':
    1. Suche nach passender Route
    2. Suche nach generischer Route. Höchste Suchpriorität hat die Versandbedingung, dann Transportgruppe, dann Gewichtsgruppe, d.h. ein Eintrag bei dem Versandbedingung und Transportgruppe definiert sind wird vor einem Eintrag gefunden, bei dem nur die Versandbedingung definiert ist
  3. I_FLAG_GEN_GRULG = 'X' und I_FLAG_INCR_GRULG = 'X':
    1. Suche nach passender Route
    2. Suche nach Routen mit höherer Gewichtsgruppe, wobei die Erhöhung nicht auf die Gewichtsgruppenbezeichnung sondern auf deren tatsächliche Gewichtszuordnung prüft.
    3. Suche nach Route mit initialer Gewichtsgruppe

Hinweise

Die Auftrags- bzw. Lieferungsdaten sollten in den Workareas I_VBAK, I_VBAP, I_VBKD und I_LIKP sowie die Tabelle I_VBPA mit übergeben werden, um eine Weiterverwendung im Customer-Exit zu ermöglichen.

Weiterführende Informationen





Parameter

C_PROT
E_ROUTE
I_ALAND
I_AZONE
I_FLAG_GEN_GRULG
I_FLAG_GEN_VT
I_FLAG_INCR_GRULG
I_FLAG_KEY_CHECK
I_GRULG
I_LIKP
I_LIPS
I_LLAND
I_LZONE
I_ROUTF
I_TRAGR
I_VBAK
I_VBAP
I_VBKD
I_VBPA
I_VSBED

Ausnahmen

CUSTOMER_EXIT_ERROR
DEPARTURE_ERROR
DESTINATION_ERROR
INVALID_GENERIC_KEY
NO_ROUTE_FOUND

Funktionsgruppe

0VRF

rdisp/max_wprun_time - Maximum work process run time   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 7219 Date: 20240523 Time: 130239     sap01-206 ( 101 ms )