Ansicht
Dokumentation
W_FIP_028 - BAdI: Access Product Procurement Arrangement
ABAP Short Reference CL_GUI_FRONTEND_SERVICES - Frontend ServicesThis documentation is copyright by SAP AG.
This technical Business Add-In (BAdI) is part of a business abstraction layer used internally by SAP. It is not intended for reuse by customers. This technology enables individual functionality or complete applications to be called either by back-end functions or enterprise services. It is used to get the product procurement arrangement. This refers to the arrangement between a strategic purchasing unit and a supplier that is used for procurement transactions. This information is obtained using selection criteria found in the FIP_S_PPA_INFOstructure.
When implementation of this BAdI is enabled, the application can retrieve the data from the backend.
This BAdI uses the following method:
- READ_BY_ELEMENTS
As for all BAdIs in the ES_FIP_BAL enhancement spot, a developer should never use the GET_BADIcall to create an instance of this BAdI. Rather, the developer should first get an instance of the CL_FIP_BAL_FACTORY class and then use its GET_BADImethod to instantiate the needed BAdI.
Example - Instantiation of the FIP_BADI_PRODPROCMTARRG_BALBAdI
DATA:
lo_bal_factory TYPE REF TO cl_fip_bal_factory,
lo_badi_prodprocmtarrg TYPE REF TO fip_badi_prodprocmtarrg_bal.
" Get instance of the BAL factory
cl_fip_bal_factory=>get_instance(
IMPORTING eo_factory = lo_bal_factory ).
" Instantiate the FIP_BADI_PRODPROCMTARRG_BAL BAdI
lo_badi_prodprocmtarrg ?= lo_bal_factory->get_badi(
cl_fip_const=>co_prodprocmtarrg_bal ).
This BAdI was designed to run only one BAdI implementation. It uses a filter named ACCESS_TYPE to determine which implementation is to be executed. Each implementation must have a different filter. In the GET_BADIcall to the BAL factory, the value of ACCESS_TYPE is automatically determined and set.
All possible values of ACCESS_TYPE:
- 0BA
- Implementation using BAPIs and/or direct database access
- 0ES
- Implementation using enterprise services, which allows access to different back-ends in case used functionalities are available in different systems
- Cnn (where nn is a one-digit or two-digit number)
- Customer implementation
The BAL factory class determines the value of the ACCESS_TYPE filter by going through the following process:
- Get the value from the FIP_C_BAL_BADI client-specific customizing table.
- If a value was not yet obtained, get the value from the FIP_C_BAL_CONF client-specific customizing table.
- If a value was not yet obtained, the default value as determined by the BAL factory will be used. In ERP 6.0 EHP4, this value is 0BA.
As of ERP 6.0 EHP4, 0BA and 0ES implementations exist for each BAdI that belongs to the ES_FIP_BALenhancement spot.
For information about the implementation of BAdIs in the context of the Enhancement Concept, see SAP Library for SAP NetWeaver under BAdIs - Embedding in the Enhancement Framework.
You want to retrieve pricing information related to a material, vendor, and supplying plant.
LOOP AT ct_materials INTO ls_material.
ls_ppa_info-lifnr = ls_material-lifnr.
ls_ppa_info-matnr = ls_material-matnr.
ls_ppa_info-werks = ls_material-werks.
INSERT ls_ppa_info INTO TABLE lt_ppa_info.
ENDLOOP."AT ct_suppliers INTO ls_supplier.
CALL BADI go_ppa_bal->if_fip_manage_prodprocmtarrg~read_by_elements
EXPORTING
it_ppa_info = lt_ppa_info
IMPORTING
et_materials = lt_mat
CHANGING
co_logger = co_logger.
TXBHW - Original Tax Base Amount in Local Currency CPI1466 during Backup
This documentation is copyright by SAP AG.
Length: 7508 Date: 20240523 Time: 215412 sap01-206 ( 153 ms )