SMOD
CLCLRS01
EXIT_SAPLCLRS_001 (Kunden Erweiterungen fürs Ergebnisbild)
INCLUDE ZXLRSU01
*&---------------------------------------------------------------------*
*& Include ZXCLRSU01
*&---------------------------------------------------------------------*
* Nur Materialklassifizierung
if I_CLASSTYPE = '001'.
* Feldnamen festlegen - Lagerstand 5000
concatenate text-001 '5000' into et_fields-fieldname separated by space.
et_fields-datatype = 'CHAR'.
et_fields-length = '15'.
append et_fields.
* Feldnamen festlegen - Lagerstand 9000
concatenate text-001 '9000' into et_fields-fieldname separated by space.
et_fields-datatype = 'CHAR'.
et_fields-length = '15'.
append et_fields.
endif.
SMOD
CLCLRS02
EXIT_SAPLCLRS_002 (Kunden Erweiterungen fürs Ergebnisbild)
INCLUDE ZXLRSU02
*&---------------------------------------------------------------------*
*& Include ZXCLRSU02
*&---------------------------------------------------------------------*
* Data
DATA: BEGIN OF wa_it_ob_keys.
INCLUDE STRUCTURE it_ob_keys.
DATA: END OF wa_it_ob_keys.
DATA: h_labst LIKE mard-labst.
DATA: h_labst_sum LIKE mard-labst.
* Nur Materialklassifizierung
IF i_classtype = '001'.
* Alle Treffer behandeln
LOOP AT it_ob_keys INTO wa_it_ob_keys.
* Bestand in Werk 5000 lesen
CLEAR et_ob_values.
MOVE wa_it_ob_keys-object TO et_ob_values-object.
MOVE wa_it_ob_keys-mafid TO et_ob_values-mafid.
CONCATENATE TEXT-001 '5000' INTO et_ob_values-fieldname SEPARATED BY space.
CLEAR h_labst. CLEAR h_labst_sum.
SELECT labst INTO h_labst FROM mard
WHERE matnr = wa_it_ob_keys-matnr AND
werks = '5000'.
ADD h_labst TO h_labst_sum.
ENDSELECT.
IF sy-subrc <> 0.
MOVE TEXT-002 TO et_ob_values-atwrt.
ELSEIF h_labst_sum = 0.
MOVE TEXT-003 TO et_ob_values-atwrt.
ELSEIF h_labst_sum <> 0.
WRITE h_labst_sum TO et_ob_values-atwrt DECIMALS 3.
"CONDENSE et_ob_values-atwrt.
"shift et_ob_values-atwrt by 40 PLACES.
ENDIF.
MOVE '1' TO et_ob_values-atcod.
clear et_ob_values-atcod.
APPEND et_ob_values.
* Bestand in Werk 9000 lesen
CLEAR et_ob_values.
MOVE wa_it_ob_keys-object TO et_ob_values-object.
MOVE wa_it_ob_keys-mafid TO et_ob_values-mafid.
CONCATENATE TEXT-001 '9000' INTO et_ob_values-fieldname SEPARATED BY space.
CLEAR h_labst. CLEAR h_labst_sum.
SELECT labst INTO h_labst FROM mard
WHERE matnr = wa_it_ob_keys-matnr AND
werks = '9000'.
ADD h_labst TO h_labst_sum.
ENDSELECT.
IF sy-subrc <> 0.
MOVE TEXT-002 TO et_ob_values-atwrt.
ELSEIF h_labst_sum = 0.
MOVE TEXT-003 TO et_ob_values-atwrt.
ELSEIF h_labst_sum <> 0.
WRITE h_labst_sum TO et_ob_values-atwrt DECIMALS 3.
"CONDENSE et_ob_values-atwrt. "HST20221130 Insert
"shift et_ob_values-atwrt by 40 PLACES.
ENDIF.
MOVE '1' TO et_ob_values-atcod.
clear et_ob_values-atcod.
APPEND et_ob_values.
ENDLOOP.
ENDIF.
Aufruf Customer Exit 002
call customer-function '002'
EXPORTING
I_CLASSTYPE = G_KLART
I_CLASS = G_CLASS
TABLES
IT_OB_KEYS = LT_OB_KEYS
ET_OB_VALUES = LT_OB_VALUES.
PERFORM APPEND_AUSP TABLES LT_OB_VALUES
GT_AUSP.
IT_OB_KEYS
ET_OB_VALUES
Aufruf Customer Exit 001
Im Include LCLRSF03 wird der Customer Exit 001 aufgerufen
call customer-function '001'
exporting
i_language = g_language
i_classtype = g_klart
i_class = g_class
tables
et_fields = lt_fields
et_fields_text = lt_fields_text.
et_fields haben folgenden Typ:
Name EXIT_SAPLCLRS_001
ergibt sich aus der Funktionsgruppe, indem der Code enthalten ist.
EXIT
_
SAPLCLRS
_
001
CMOD
Aktivierung
Projekt CL30N