19 марта 2017

Чтение признаков партии и материала

Для чтения признаков партии используем функциональный модуль BAPI_OBJCL_GETDETAIL.

  DATA: lv_objkey       TYPE bapi1003_key-object,
        lt_num          TYPE TABLE OF bapi1003_alloc_values_num,
        lt_char         TYPE TABLE OF bapi1003_alloc_values_char,
        lt_curr         TYPE TABLE OF bapi1003_alloc_values_curr,
        lt_return       TYPE TABLE OF bapiret2.

  FIELD-SYMBOLS: <lfs_char>       LIKE LINE OF lt_char.

  CONCATENATE p_matnr p_werks p_charg INTO lv_objkey.

  " или

  lv_objkey+0(18) = p_matnr.
  lv_objkey+18(4) = p_werks.
  lv_objkey+22(10) = p_charg.

  CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
    EXPORTING
      objectkey       = lv_objkey
      objecttable     = 'MCHA'
      classnum        = 'ZCLASS01'
      classtype       = '022'
    TABLES
      allocvaluesnum  = lt_num
      allocvalueschar = lt_char
      allocvaluescurr = lt_curr
      return          = lt_return.

  READ TABLE lt_char ASSIGNING <lfs_char> WITH KEY charact = 'Z_PARAM01'.
  IF sy-subrc EQ 0.
    " <lfs_char>-value_char содержит значение признака Z_PARAM01
  ENDIF.

Для чтения признаков материала используем objecttable = 'MARA'.

Комментариев нет:

Отправить комментарий