SAP ABAP IMG Activity W_FIP_033 (BAdI: Access Substitute Materials)
Hierarchy
SAP_APPL (Software Component) Logistics and Accounting
   MM-PUR-FIP (Application Component) Perishables Procurement
     FIP_DDIC (Package) DDIC package for Fresh Item Procurement
IMG Activity
ID W_FIP_033 BAdI: Access Substitute Materials  
Transaction Code S_E4A_94000213   (empty) 
Created on 20080611    
Customizing Attributes W_FIP_033   BAdI: For Accessing Substitution Material 
Customizing Activity W_FIP_033   BAdI: For Accessing Replacemnt Material 
Document
Document Class SIMG   Hypertext: Object Class - Class to which a document belongs.
Document Name FIP_BADI_REPLACEMNT_MAT_BAL    

Use

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 substitute one material with another in a retail system.

This BAdI uses the following method:

  • READ_REPLACEMENT_MATERIAL

    Returns a substitution materials table called ET_FOLUP_MATERIALS for a given material, if there are any available. Therefore, the IV_MATNR parameter must be filled.

    By filling in the optional IV_DATE_FROM and IV_DATE_TO parameters, only substitution materials valid for the given time period will be returned.

Requirements

A material can only be substituted when using a retail back-end system. Additionally, substitution materials have to be maintained in this retail system.

Standard settings

As for all BAdIs in the ES_FIP_BAL enhancement spot, a developer should never use the GET_BADI call 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_BADI method to instantiate the needed BAdI.

Example - Instantiation of the FIP_BADI_REPLACEMNT_MAT_BAL BAdI

DATA:

lo_bal_factory TYPE REF TO cl_fip_bal_factory,

lo_badi_replacemnt_mat TYPE REF TO fip_badi_replacemnt_mat_bal.

" Get instance of the BAL factory

cl_fip_bal_factory=>get_instance(

IMPORTING eo_factory = lo_bal_factory ).

" Instantiate the FIP_BADI_REPLACEMNT_BAL BAdI

lo_badi_replacemnt_mat ?= lo_bal_factory->get_badi(

cl_fip_const=>co_replacemnt_mat_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_BADI call 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 to access different backends in case that 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:

  1. Get the value from the FIP_C_BAL_BADI client-specific customizing table.
  2. If a value was not yet obtained, get the value from the FIP_C_BAL_CONF client-specific customizing table.
  3. 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_BAL enhancement spot.

Activities

For information about implementing BAdIs as part of the Enhancement Concept, see SAP Library for SAP NetWeaver under BAdIs - Embedding in the Enhancement Framework.

Example

Business Attributes
ASAP Roadmap ID 153   Design enhancements 
Mandatory / Optional 2   Optional activity 
Critical / Non-Critical 2   Non-critical 
Country-Dependency A   Valid for all countries 
Maintenance Objects
Maintenance object type E   Business Add-In - Definition 
History
Last changed by/on SAP  20080703 
SAP Release Created in 604