Hierarchy

⤷

⤷

⤷

IMG Activity
ID | OKCM_TR_USER_EXIT | SAP enhancements for data transfer |
Transaction Code | S_ALR_87000025 | IMG Activity: OKCM_TR_USER_EXIT |
Created on | 19981222 | |
Customizing Attributes | OKCM_TR_USER_EXIT | User exits in data transfer |
Customizing Activity | OKCM_TR_USER_EXIT | User exits in data transfer |
Document
Document Class | SIMG | Hypertext: Object Class - Class to which a document belongs. |
Document Name | OKCM_TR_USER_EXIT |
Es existieren vier Customer-Exits für die Datenübertragung, beziehungsweise für die Umsetzung von IDOC-Segmenten. Die Exits sind in der Erweiterung KKCD0001 enthalten. Sobald die Customer-Exits aktiviert sind, werden sie für alle Senderstrukturen beziehungsweise Segmente ausgeführt. Die ersten zwei Customer-Exits müssen mit einem minimalem Coding versehen werden, sobald sie aktiviert sind. Der Begriff Senderstruktur wird beim Laden von Daten in das SAP-System verwendet. Der Begriff Segment wird im Zusammenhang mit der Verteilung des SAP-Systems verwendet. Es handelt sich dabei jeweils um einen Satz von Daten, die zu übertragen beziehungsweise umzusetzen sind. Es empfiehlt sich also, innerhalb der Customer-Exits eine CASE
-Anweisung zu codieren, in der nach Senderstruktur (REPID
) beziehungsweise Segment unterschieden, verschiedenes Coding angesprungen wird. Im Parameter REPID
steht bei der Umsetzung von IDOC-Segmenten der Name der Umsetzungsregel. Der Parameter GRPID
wird bei der Umsetzung von IDOC-Segmenten nicht gefüllt. Innerhalb der CASE
-Anweisung sollten Sie einen WHEN OTHERS
-Zweig vorsehen, in dem der 'SENDER_SET
' dem 'SENDER_SET_NEW
' bzw. der 'RECEIVER_SET
' dem 'RECEIVER_SET_NEW
' zugewiesen wird, sonst bleibt der Rückgabewert jeweils initial. Eine mögliche Lösung können Sie im Code-Beispiel ansehen.
Der erste Customer-Exit wird vor der Verdichtung beziehungsweise Umsetzung angesprungen. Er wird wie folgt aufgerufen:
CALL CUSTOMER-FUNCTION '001'
EXPORTING
GRPID = GRPID "Herkunft
REPID = REPID "Senderstruktur
SENDER_SET = SENDER_SET "Sendersatz
IMPORTING
SENDER_SET_NEW = SENDER_SET "modifizierter Sendersatz
SUBRC = SUBRC. "Returncode
- Falls die Variable '
SUBRC
' initial ist, wird der modifizierte Satz weiter bearbeitet, ansonsten übersprungen. - Der Importparameter '
SENDER_SET_NEW
' muß in dem Customer-Exit gefüllt werden, denn nur dieses Feld und nicht das Feld 'SENDER_SET
' wird weiter bearbeitet. Dies bedeutet insbesondere auch, daß Sie dem Importparameter 'SENDER_SET_NEW
' den Wert von 'SENDER_SET
' für Sätze zuweisen müssen, für die sonst keine Sonderbehandlung durchgeführt werden soll. - Der zweite Customer-Exit wird nach der Verdichtung und vor der Verbuchung, bzw. nach der Umsetzung angesprungen:
CALL CUSTOMER-FUNCTION '002'
EXPORTING
REPID = REPID "Senderstruktur
GRPID = GRPID "Herkunft
RECEIVER_SET = RECEIVER_SET "verdichteter Satz
IMPORTING
RECEIVER_SET_NEW = RECEIVER_SET "modifizierter verdichteter Satz
SUBRC = SUBRC. "Returncode
- Der modifizierte Satz wird nur verbucht, wenn die Variable '
SUBRC
' initial ist. - Der Importparameter '
RECEIVER_SET_NEW
' muß in dem Customer-Exit gefüllt werden, denn nur dieses Feld und nicht das Feld 'RECEIVER_SET
' wird verbucht.
Der dritte Customer-Exit dient zur Ersetzung von Variablenwerten. Er wird beim Laden der Übertragungsregeln aufgerufen.
CALL CUSTOMER-FUNCTION '003'
EXPORTING
REPID = REPID
GRPID = GRPID
VARIA = VARIA
RFELD = RFELD
VARTP = VARTP
CHANGING
KEYID = KEYID
EXCEPTIONS
VARIABLE_ERROR = 1.
Die Parameter REPID
und GRPID
werden mit der Senderstruktur und der Herkunft versorgt. Im Feld VARIA
steht der Name der Variablen. Im Parameter RFELD
steht der Name des Empfängerfeldes. Im Feld VARTP
steht der Typ der Variablen. Gültige Typen sind Festwerte der Domäne KCD_VARTYP
. Den Wert der Variablen übergeben Sie in dem Parameter KEYID
. Falls ein Fehler auftritt, lösen Sie die Ausnahme VARIABLE_ERROR
aus.
Der vierte Customer-Exit wird nur in der Komponente EC-EIS benötigt und nach der Verdichtung und vor der Ermittlung der Kennzahlen aufgerufen. Er ist eine notwendige Ergänzung zum zweiten Customer-Exit, da Veränderungen in den Schlüsseln berücksichtigt werden, bevor auf der Datenbank nachgelesen wird, ob zu den gebildeten Schlüsseln Sätze vorhanden sind.
Die Funktion wird wie folgt aufgerufen:
CALL CUSTOMER-FUNCTION '004'
CHANGING
RECEIVER_SET = R
SUBRC = UE_SUBRC.
Der Parameter RECEIVER_SET
enthält den zu ändernden Empfängersatz. Der Parameter RECEIVER_SET
ist ein Changing Parameter. Damit müssen keine Änderungen in dem Funktionsbaustein vorgenommen werden, falls er nicht benutzt wird.
Die Customer-Exits befinden sich im Modulpool 'SAPFKCIM'. Falls Sie die Customer-Exits benutzen wollen, können Sie ein Projekt anlegen und die Customer-Exits mit der Transaktion 'CMOD' aktivieren. Die Erweiterung, die Sie dabei benutzen müssen, heißt KKCD0001.
Business Attributes
ASAP Roadmap ID | 257 | Create User Exits |
Mandatory / Optional | 2 | Optional activity |
Critical / Non-Critical | 2 | Non-critical |
Country-Dependency | A | Valid for all countries |
Assigned Application Components
Documentation Object Class | Documentation Object Name | Current line number | Application Component | Application Component Name |
---|---|---|---|---|
SIMG | OKCM_TR_USER_EXIT | 0 | HLA0009491 | Data Collection |
Maintenance Objects
Maintenance object type | C | Customizing Object |
Assigned objects | ||||||
---|---|---|---|---|---|---|
Customizing Object | Object Type | Transaction Code | Sub-object | Do not Summarize | Skip Subset Dialog Box | Description for multiple selections |
CMOD | L - Logical transport object | CMOD | EC-EIS_TR | Enhancements |
History
Last changed by/on | SAP | 19990301 |
SAP Release Created in |