As an application programmer, you can use business add-ins to create enhancements in customer namespace. All enhancement types, such as program exit, menu exit, and screen exit, can be created using BAdIs. In fact, the key feature of a BAdI is its reusability.
BUSSINESS ADD INS: ADVANTAGES
Earlier enhancement techniques had some serious limitations:
New enhancement techniques had to address these deficiencies. BAdIs allow you to create all enhancement types. The key feature of a BAdI being its reusability, you stand to reap certain advantages:
Use of the latest technology
SOFTWARE DELIVERY PROCESS
Previously enhancements were delivered directly to the customer. However, with the introduction of BAdIs, the implementation is a three-step process. This is because, for a BAdI to be executed, the implementation class and the service class need to be identified in the system.
BUSSINESS ADD-INS: ARCHITECTURE
A prerequisite for creating BAdIs is the availability of an enhancement option in an SAP application program. Additionally, there must be a BAdI class and an interface that implements it. The interface is implemented at the customer site.
BUSSINESS ADD-INS: COMPONENTS
Each BAdI includes a range of enhancement components, such as a program exit, menu exit, or a screen exit. When a BAdI is created, a BAdI interface and a generated class that implements the interface is automatically created. The generated class performs various tasks, such as filtering and control. The first task is performed so that only the relevant implementations are called. Similarly, the second task is carried out to call the active implementations.
BUSSINESS ADD-INS: FLOW OF A PROGRAM EXIT
This slide illustrates the process flow of a program that calls a BAdI. When a Business Add-In is defined, the system automatically generates a BAdI class that implements the interface. Then the interface method of the BAdI class is called. The BAdI class searches for all of the active implementations of the Business Add-In and calls the implemented methods.
BUSSINESS ADD-INS: CALL SYNTAX IN SAP PROGRAM
You need to define a reference variable that refers to the BAdI interface to call a Business Add-In. An object reference is created using the CALL METHOD statement which creates an instance of the generated BAdI class. By using this object reference, you can call the required methods.
FINDING A BUSSINESS ADD-IN
You can search a Business Add-In using the menu path: System → Status → program name (double-click) → Search for CL_EXITHANDLER String.
You can also define Business Add-In by forward navigation. The definition contains documentation and a guide for Business Add-In implementation. You can use the Repository Information System to search for a BAdI.
IMPLEMENTING BUSSINESS ADD-INS: INTRODUCTION
The transaction code SE19 is used to implement a Business Add-In. You can view the screen shown here by using this transaction. Then you need to enter a name for BAdI and click Create.
IMPLEMENTING BUSSINESS ADD-INS: METHODS
In order to implement Business Add-Ins, you need to specify the name of the implementing class. However, the class name should follow proper naming conventions. Then, you can double-click the method name to define its implementation part in the class builder. Similarly, you need to click the signature button to display the methods interface.
IMPLEMENTING BUSSINESS ADD-INS: PRIVATE METHODS
You can use the CALL METHOD statement to create private methods in the interface class. The private method can be called from the interface method.
IMPLEMENTING BADIs: ACTIVITING IMPLEMENTATIONS
You can click the Activate icon to activate the implementations of a Business Add-In. Whenever the BAdIs are called; the methods in the implementation are executed. However, if the user deactivates the implementation, the methods will no longer be called.
BUSSINESS ADD-INS: MENU EXITS (OVERVIEW)
Menu enhancements can be created using Business Add-Ins. As a user, you can add Customer Fcn function in the menu options. However, the menu enhancements must be pre-planned and should be implemented inside the BAdI implementation.
BUSSINESS ADD-INS: MENU EXITS (SAP PREPARATION)
As shown here, function codes of menu enhancements begin with a plus sign ’+’. The added menu item is displayed only if the implementation is active.
BUSSINESS ADD-INS: MENU EXITS (FUNCTION CODE PROCESSING)
The corresponding code for the menu option is declared inside the CASE statement. However, the function code should begin with the plus sign ‘+’.
BUSSINESS ADD-INS: MENU EXITS (RESTRICTIONS)
The function codes specified in a menu exit for a BAdI are available for single use. You can avoid conflicts between different BAdI implementations by ensuring they are neither filter-dependent nor reusable.
EXTENDIBLE FILTER TYPES: PREREQUISITES
The filter type property of a BAdI has an extendible attribute. This attribute can be utilized if the domain of extendible filter type has these properties:
DEFAULT IMPLEMENTATION
If an active implementation is present, it is executed. However, if an active implementation is unavailable a default implementation is executed. The default implementation is created by the enhancement provider.
COMPARISON WITH OTHER ENHANCEMENT TECHNIQUES
Business Add-Ins are an extension of conventional enhancement techniques. BAdIs are both filter specific and reusable as compared to customer exits. It is possible to append fields on screens with restrictions using BAdIs.
NAMING CONVENTIONS (BADI DEFINITION)
As a user, you must comply with these naming conventions for BAdI definitions:
NAMING CONVENTIONS (BADI IMPLEMENTATIONS)
You must comply with these naming conventions for BAdI implementations:
Small works electrician for houses and flats in Bristol and Bath.
ReplyDeleteSource: Electrician Bristol
CoachTube provides online tutorial programs to understand how exactly to trainer soccer having prime basketball training films by foremost experts.
ReplyDeleteSource: Football coaching Videos
The Functions look for Start your Squarespace in to the stratosphere - SpaceDevs.
ReplyDeleteSource: Squarespace Plugins
A round of applause for your blog.Really thank you! Fantastic. convertmilitarytime
ReplyDeleteThank you because you have been willing to share information with us. we will always appreciate all you have done here because I know you are very concerned with our. Managed IT Services Canada
ReplyDelete