2013-07-04 74 views

回答

4

據我所知,沒有「BAPI獲取BAPI列表」,所以這將是一項不平凡的任務。您可以嘗試使用RFC_FUNCTION_SEARCH來搜索名爲BAPI*的功能模塊,但這並不能保證給您a)僅官方BAPI和b)所有官方BAPI ...

1

您可以使ABAP函數搜索所有表TFDIR中的RFC功能,FMODE ='R'(遠程)。但是,這將爲您提供所有可遠程調用的功能,而不僅僅是BAPI。

4

您也可以使用功能模塊SWO_QUERY_API_METHODS。下面的代碼片段可與JCO 2:

IFunctionTemplate functionTemplate = Repository.getFunctionTemplate("SWO_QUERY_API_METHODS"); 
JCO.Function function = functionTemplate.getFunction(); 
mConnection.execute(function); 

ParameterList exportParameter = function.getExportParameterList(); 
System.out.println("exportParameter: " + exportParameter); 
ParameterList importParameter = function.getImportParameterList(); 
System.out.println("importParameter: " + importParameter); 
ParameterList tableParameter = function.getTableParameterList(); 
System.out.println("tableParameter: " + tableParameter); 
+0

請注意'SWO_QUERY_API_METHODS'不是BAPI,它只是一個啓用了RFC的功能模塊,用於內部使用。它可能會改變或消失,而不會向客戶發出警告。除此之外,這聽起來像是一個很好的選擇。 – vwegert

+0

感謝您的更正。 – dweisser

1

可以使用BAPI_MONITOR_GETLIST在你的系統元數據讓所有的BAPI列表在一起。