Ansicht
Dokumentation
W_FIP_028 - BAdI: Zugriff auf Product Procurement Arrangement
Addresses (Business Address Services) Addresses (Business Address Services)Diese Dokumentation steht unter dem Copyright der SAP AG.
Dieses Business Add-In (BAdI) ist Teil einer intern von SAP verwendeten Business Abstraktionsschicht und nicht zur Nutzung durch Kunden bestimmt. Durch diese Technologie können entweder individuelle Funktionen oder komplette Anwendungen durch Backend-Funktionen oder Enterprise Services aufgerufen werden. Es wird verwendet um das Product Procurement Arrangement zu erhalten. Dies bezieht sich auf eine Absprache zwischen einer strategischen Einkaufsabteilung und einem Lieferanten, die für Beschaffungsvorgänge gilt. Diese Information wird mit Hilfe der Selektionskriterien aus der FIP_S_PPA_INFOStruktur ermittelt.
Ist die Implementierung dieses BAdI aktiviert, kann die Anwendung die Daten aus dem Backend abrufen.
Dieses BAdI verwendet die folgende Methode:
- READ_BY_ELEMENTS
Wie bei allen BAdIs im Erweiterungsspot ES_FIP_BAL sollte zum Anlegen einer Instanz dieses BAdIs nie der Aufruf GET BADI verwendet werden. Stattdessen sollte zunächst eine Instanz der Klasse CL_FIP_BAL_FACTORY bereitgestellt und deren Methode GET_BADI genutzt werden, um das benötigte BAdI zu instanziieren.
Beispiel - Instanziierung des 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 ).
Dieses BAdI ist so ausgelegt, dass es jeweils nur eine BAdI-Implementierung ausführt. Die auszuführende Implementierung ermittelt es über den Filter ACCESS_TYPE. Die einzelnen Implementierungen müssen hierzu unterschiedliche Filterwerte haben. Der Wert ACCESS_TYPE wird im Aufruf GET_BADI an die BAL-Factory automatisch ermittelt und eingesetzt.
Die möglichen Werte von ACCESS_TYPE sind:
- 0BA
- Implementierung mit Hilfe von BAPIs und/oder direktem Datenbankzugriff
- 0ES
- Implementierung über Enterprise Services, über die auf verschiedene Backends zugriffen werden kann, falls verwendete Funktionalitäten in verschiedenen Systemen zur Verfügung stehen
- Cnn (nn steht für eine ein- oder zweistellige Zahl)
- Kundeneigene Implementierung
Die BAL-Factory Klasse legt den Wert des ACCESS_TYPE Filters durch Ausführung des folgenden Prozesses fest:
- Der Wert wird aus der mandantenabhängigen Customizing-Tabelle FIP_C_BAL_BADI geholt..
- Falls noch kein Wert vorliegt, wird er aus der mandantenabhängigen Customizing-Tabelle FIP_C_BAL_CONF geholt
- Falls noch kein Wert vorliegt, wird der Vorschlagswert, wie er von der BAL-Factory ermittelt wird, verwendet. In ERP 6.0 EHP4 lautet dieser Wert 0BA.
Ab ERP 6.0 EHP4 existieren für jedes BAdI, das zu ES_FIP_BAL Erweiterungspot gehört, 0BA and 0ES Implementierungen.
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.
Sie möchten Preisinformationen über Material, einen Lieferanten und ein Lieferwerk abrufen.
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.
SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up Fill RESBD Structure from EBP Component Structure
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 7129 Date: 20240520 Time: 220426 sap01-206 ( 167 ms )