Monday, April 14, 2008

Defining a BADI

An application developer who wishes to have a Business Add-In in a particular program defines the interface for an enhancement in the Business Add-In Builder. In the following step, he or she programs the interface call in the application program at the appropriate place. Customers can then select the add-in and implement it according to their needs.

Procedure
1. From the SAP menu, choose Tools ® ABAP Workbench ® Utilities ® Business Add-Ins (transaction SE18).

We would like to explain the procedures using an application program as an example. There is a string conversion in the program. You want the add-in users to determine themselves how their strings are to be converted. The application developer defines an enhancement. It consists of an interface with a method. A changing parameter is used to pass on the string.

Option: Within SAP
Meaning: If the customer selects this option for an Add-In, he or she has no option for creating his or her own implementations for this Business Add-In or for using them. In the input help, Business Add-Ins with this flag are not displayed. For more information on the checkbox Within SAP, refer to the section Definition of a Business Add-In in the Enterprise Core.

Option: Multiple Use
Meaning: The Business Add-In can be set for multiple use. For more information, refer to the section Multiple-Use Business Add-Ins.

Option: Filter-Dependent

Meaning : The implementation of a Business Add-In is dependent on a particular filter value.For more information, refer to the section Multiple-Use Business Add-Ins.
None of the above options is selected.

2. Enter a name with a maximum of 20 characters for the Business Add-In.




3. Choose Create.
4. On the following screen, enter a short text as the description for the Business Add-In.In this example, we are dealing with a simple enhancement.


Under the FCodes tab, you can create Menu Enhancements, and under the Subscreens tab you can create Screen Enhancements.

5. Choose the Interface tab. The interface name is generated automatically and can be changed here.

6. Double-click the interface name field. The system branches to the Class Builder.

7. Confirm that you want to save the entries you have made. Assign a package to the Business Add-In.

8. Use the Class Builder to assign a method to the interface.


9. Now define a parameter with the following attributes:


10. Save and activate your entries. Use the pushbutton Back to navigate back to the Business Add-In definition.

You can now continue with the definition of the Business Add-In by executing activation in the Class Builder.
A table control now appears on the definition screen for the Business Add-In. It displays the method you have created for the interface.
When you maintain the interface methods, the corresponding executing class is generated. The generated code cannot be altered in the initial expansion phase.

11. Save your entries and use the Documentation pushbutton to create a description for your new Business Add-In. Remember that this documentation is very important for users to be able to understand the purpose behind the Add-In. For more information, read the section Documentation of a Business Add-In.

Choose Goto -> Default Coding / Sample Coding if you wish to create default coding and/ or sample coding for the Business Add-In. The default implementation is executed only if no other active implementation is available. This applies also to filter-dependent Business Add-Ins.

When you create default or sample coding, do not forget to save your entries. In this way, the connection between the class and the implementation is set up.

No comments:

Blog Archive