CL30N Spalten erweitern

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