0

我对 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”。在此先感谢您的帮助...

4

2 回答 2

1

经过多次尝试和失败,我找到了解决方案。

    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,因为我需要获取所有供应商,在我的情况下,所有供应商在 MANDT 列中都有 900。

这可能不是正确的方法,但至少它有效。如果有人知道更好的方法来做到这一点,请随时写信。我将根据该编辑答案...

于 2014-02-16T01:48:37.203 回答
0

看看在线文档——无论是功能模块直接还是在事务中BAPI

于 2014-02-16T10:26:06.653 回答