2014-02-15 52 views
0

我對ABAP世界相當陌生。我在網上搜索了一個多小時,但找不到bapi_vendor_find函數的示例。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」。在此先感謝您的幫助...

回答

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個。

這可能不是正確的方法,但至少可以。如果有人知道更好的方式來做到這一點,請隨時寫信。我將根據該編輯答案...

0

看看在線文檔 - 無論是直接在功能模塊還是在事務BAPI