Custom dictionary structures and remote function calls for getting bapi related data. To not reinvent the wheel, this abap part of the application makes use of existing SAP functions and dictionary structures identified by reviewing the code behind the BAPI transaction.
By running tcode BAPI you can identify the program behind the transaction from the standard bottom window options, in this case SAPLSBF_BW. In the SE80 Object Navigator you can look this program and find out it redirects to SBF_BW function group. In this group there are subroutines conveniently named DISPLAY_BAPI, DISPLAY_BO, DISPLAY_DOCU, GET_BASE_TREE_DATA. They provide examples of retrieving repository related data using existing SAP functions.
ZSAB_BAPI_EXPLORER function group contains all the function modules called via SAP Jco. These modules make use of existing SAP functions, further processing the data where needed:
- ZGET_BAPI_DOCS – responsible for getting bo/bapi documentation based on object type and method name. Calls existing BAPI_INTERFACE_GETDOCU function.
- ZGET_BAPI_INFO – responsible for getting full bapi info. Calls existing SWO_QUERY_METHOD function.
- ZGET_BO_INFO – responsible for getting full bo info. Calls existing SWO_QUERY_BASEDATA function.
- ZGET_BO_LIST – responsible for getting a table with all objects name and type. Calls existing BAPI_MONITOR_GETLIST function.
- ZGET_BO_METHODS – responsible for getting a table with all object methods. Calls existing SWO_QUERY_API_METHODS function.