A business add-in has two important attributes that you must define:
Reusable
Filter-dependent
If you want the business add-in to support multiple parallel implementations, select Reusable. The sequence in which the implementations will be processed is not defined. Even if the business add-in does not support multiple use, you can still have more than one implementation for it. However, only one implementation can be active at a time.
If you make a business add-in filter-dependent, you can make calls to it depending on certain conditions. You must specify the filter type in the form of a data element. The value table of the domain used by the data element contains the valid values for the implementation.
When the enhancement method is called, a filter value must be passed to the interface.
You can include function codes in a Business Add-In definition (similarly to menu exits in customer exits). To do this, enter the program name and function code, and a short description in the relevant fields.
Restrictions:
It is not currently possible to create BAdIs that consits only of menu enhancements (function codes).
If you use menu enhancements, you cannot reuse a BAdI or make it filter-dependent.
The system proposes a name for the interface and the generated class. You can, in principle, change the name of the interface to anything you like. However, your BAdI will be easier to understand if you retain the proposed name.
The name of the generated class is composed as follows:
Namespace prefix
CL_ (to signify a class in general)
EX_ (stands for "exit")
Name of Business Add-In
If you double-click on the interface name, the system switches to the Class Builder, where you can define the interface methods.
A BAdI interface can have several interface methods.
You can use all of the normal functions of the Class Builder. For example, you can:
Define interface methods
Define interface parameters for the methods
Declare the attributes of the interface
If the business add-in is filter-dependent, you must define an import parameter flt_val for each method. Otherwise, you define the interface parameters you need for the enhancement.
Once you have finished working on your interface, you must activate it. This generates the adapter class for the Business Add-In.
If you change the interface, the adapter class is automatically regenerated.
You can also generate the adapter class explicitly at any time by choosing Utilities -> Regenerate from the initial screen of the Business Add-In maintenance transaction.
To call a business add-in method in an application program, you must include three statements in the program:
Declare a reference variable (1) with reference to the business add-in interface (in our example, "exit_ref").
Call the static method GET_INSTANCE of the service class CL_EXITHANDLER (2). This returns an instance of the required object. This involves an implicit narrow cast, so that only the interface methods of the object with the reference variable "exit_ref" can be addressed.
You can now call all of the methods of the business add-in. Make sure you specify the method interfaces correctly.
If your Business Add-In is filter-specific, you must pass an appropriate value to the parameter flt_val.
Business add-ins are a natural extension of the conventional enhancement technique. They have taken over the administration layer from customer exits, along with the availability of the various enhancement components.
They adopted the idea of reusability from Business Transaction Events, and have been implemented using a consistent object-oriented approach.
The object-oriented implementation provides previously unavailable opportunities. For example, it would be possible to enhance the object "Document". It would be possible to provide a new instance of the enhancement for each individual document.
The components in parentheses in the graphic have not yet been implemented:
Screen enhancements
Table enhancements
These enhancement components are planned for later releases. There will then also be a migration tool for converting previous enhancements into the new form.
Saturday, March 15, 2008
BADI
Labels:
BADI'S IN ABAP
Subscribe to:
Post Comments (Atom)
Blog Archive
-
▼
2008
(300)
-
▼
March
(84)
- BADI
- WHAT IS THE DIFFERENCE BETWEEN BADI'S AND USER EXI...
- Performance and scalability in SAP?
- What is the relationship between ALE and middlewar...
- . Why does SAP uses ALE instead of database replic...
- Which kind of interfaces do ALE business processes...
- Synchronous vs. asynchronous links in SAP?
- Which ALE services are available and what do they do?
- Which ALE business processes are available in SAP?
- What is the relationship between ALE and Middlewar...
- When should ALE be used?
- What are the benefits of ALE In SAP?
- What is ALE In SAP?
- INTERNAL TABLES IN ABAP
- BUFFERING IN SAP ABAP
- LOCKS IN SAP ABAP
- INTRODUCITON TO SCREEN PROGRAMMINGN SAP
- SCREEN ELEMENTS FOR OUTPUT IN SAP
- SCREEN ELEMENTS FOR INPUT AND OUTPUT IN SAP
- SUBSCREEN TABSTRIPS IN SAP
- SCREEN ELEMENTS ANDTABLE CONTROLS:
- CONTEXT MENUS ON SCREENS IN SAP
- LISTS IN SCREEN PROGRAMMING IN SAP
- What is an add-on project in sap?
- What is a function module exit in sap?
- What is a screen exit in sap?
- What are the various types of customer exits ?
- when do you opt for modification in sap?
- What are the advantages of enhancements IN SAP?
- What are the disadvantages of modification ?
- What is SSCR ?
- What is customer development ?
- What are the different types of enhancements ?
- Why do you need enhancements ?
- What is customizing ?
- What are the different ways in which you can make ...
- What are user exits?What is involved in writing th...
- RFC In R/3
- SAP ON SCRIPTS1
- ACCESSING BAPI USING VB PPT FREE DOWNLOAD
- ABAP VALIDATIONS PPT
- ABAP WORK BENCH PPT FREE DOWNLOADS
- Working with eCATT (Extended Computer Aided Test T...
- MM01 Upload using BAPI
- How can I Increase WebDAV Performance?
- The process of uploading data with a CATT
- CATT
- Can I also execute work items with external progra...
- Can I set deadlines for the latest processing of w...
- How can users be automatically notified that new w...
- What does the substitute rule system look like in ...
- What options do I have as a user to configure the ...
- What is the Workflow basic Customizing?
- How do you debug a background workflow process?
- How do I transport workflow definitions and agent ...
- What is the difference of between an e-mail and a ...
- How are the responsible agents determined?
- How is an event triggered from the application and...
- What is a work item (important terms)?
- What is a workflow? What is a single-step task?
- How can I make sure that user's access their tasks...
- How do I trigger a workflow with an e-mail?
- How can I configure the workflow so that when the ...
- How can I configure the workflow so that different...
- How do I send reports?
- How do I send really complex mails from the workflow?
- How do I send a complex text from the workflow?
- How do I send a standard text as an e-mail from wo...
- What is the difference between sending a mail to a...
- What differences are there between a work item and...
- How can I get the workflow initiator information i...
- What is Wf-XML used for?
- What open interfaces are supported in sap?
- How are workflows triggered in sap?
- How can I check the status of a workflow in sap
- What deadlines can be monitored? in sap
- What happens when a deadline is missed?
- How do I choose who to distribute the tasks to? in...
- What workflow reporting is available and is it use...
- How are users notified about their work pending? i...
- What do customers say are the strengths of SAP Web...
- What are typical costs saved by workflow? in sap
- How do I calculate the cost saved by workflow? in sap
- How do I convince my company to use workflow? in sap
-
▼
March
(84)
1 comment:
HI ,
Increase your revenue 100% of your blog by converting into free website.
Convert your blog "yourname.blogspot.com" to www.yourname.com completely free.
Become proud owner of the (.com) own site .
we provide you free website+ free web hosting + list of your choice of
scripts like(blog scripts,CMS scripts, forums scripts and many scripts)
all the above services are absolutely free.
You can also start earning money from your blog by referring your friends.
Please visit www.hyperwebenable.com for more info.
regards
www.hyperwebenable.com
Post a Comment