Использование bapi_vendor_find

Я совсем новичок в мире ABAP. Я искал в Интернете более часа, но не смог найти пример функции bapi_vendor_find.

    CALL FUNCTION 'BAPI_VENDOR_FIND'
    *  EXPORTING
    *   MAX_CNT          = 0
    *   PL_HOLD          = ' '
    *  IMPORTING
    *  RETURN           =
      TABLES
      selopt_tab       = g_tab_selopt
      result_tab       = g_tab_result
                            .

Как мне подготовить «g_tab_selopt» и «g_tab_selopt». Заранее благодарю за любую помощь...


person s.alem    schedule 15.02.2014    source источник


Ответы (2)


После многих попыток и неудач я нашел решение.

    REPORT  zbss00_lieferant_anzeigen.

    PARAMETERS: p_ccode  TYPE bapivendor_10-comp_code.

    TYPES: tab1 TYPE TABLE OF BAPIVENDOR_10.

    Data:
          g_tab_selopt type table of BAPIVENDOR_10,
          g_tab_result type table of BAPIVENDOR_11,
          l_vendor_no type BAPIVENDOR_11,
          g_selopt type BAPIVENDOR_10.


          g_selopt-COMP_CODE = p_ccode.
          g_selopt-TABNAME = 'LFB1'.
          g_selopt-FIELDNAME = 'MANDT'.
          g_selopt-FIELDVALUE = '900'.
          APPEND g_selopt TO g_tab_selopt.

     CALL FUNCTION 'BAPI_VENDOR_FIND'
    *  EXPORTING
    *   MAX_CNT          = 0
    *   PL_HOLD          = ' '
    *  IMPORTING
    *  RETURN           =
      TABLES
      selopt_tab       = g_tab_selopt
      result_tab       = g_tab_result
                            .

    loop at g_tab_result into l_vendor_no.
      write: /, 'Vendor No: ', l_vendor_no-VENDOR_NO.
    endloop.

В этом примере я искал поставщиков по балансовой единице в таблице «LFB1», где mandt равен 900. Я установил MANDT 900, потому что мне нужно было получить всех поставщиков, а в моем случае все поставщики имеют 900 в столбце MANDT.

Возможно, это неправильный способ, но, по крайней мере, он работает. Если кто-то знает лучший способ сделать это, пожалуйста, не стесняйтесь писать. Я отредактирую ответ в соответствии с этим...

person s.alem    schedule 16.02.2014

Взгляните на онлайн-документацию — либо непосредственно по функциональному модулю, либо по транзакции BAPI.

person vwegert    schedule 16.02.2014