<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: BADI in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/badi/m-p/2652388#M611491</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINING THE BADI&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) execute Tcode SE18.&lt;/P&gt;&lt;P&gt;2) Specify a definition Name : ZBADI_SPFLI&lt;/P&gt;&lt;P&gt;3) Press create&lt;/P&gt;&lt;P&gt;4) Choose the attribute tab. Specify short desc for badi.. and specify the type : &lt;/P&gt;&lt;P&gt;multiple use.&lt;/P&gt;&lt;P&gt;5) Choose the interface tab&lt;/P&gt;&lt;P&gt;6) Specify interface name: ZIF_EX_BADI_SPFLI and save.&lt;/P&gt;&lt;P&gt;7) Dbl clk on interface name to start class builder . specify a method name (name, &lt;/P&gt;&lt;P&gt;level, desc).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method level desc&lt;/P&gt;&lt;P&gt;Linese;ection instance methos some desc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt; place the cursor on the method name desc its parameters to define the interface.&lt;/P&gt;&lt;P&gt;Parameter type refe field desc&lt;/P&gt;&lt;P&gt;I_carrid import spfli-carrid some&lt;/P&gt;&lt;P&gt;I_connid import spefi-connid some&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;9) save , check and activate&amp;#133;adapter class proposed by system is &lt;/P&gt;&lt;P&gt;ZCL_IM_IM_LINESEL is genereated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IMPLEMENTATION OF BADI DEFINITION &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) EXECUTE tcode se18.choose menuitem create from the implementation menubar.&lt;/P&gt;&lt;P&gt;2) Specify aname for implementation ZIM_LINESEL&lt;/P&gt;&lt;P&gt;3) Specify short desc.&lt;/P&gt;&lt;P&gt;4) Choose interface tab. System proposes a name fo the implementation class. &lt;/P&gt;&lt;P&gt;ZCL_IM_IMLINESEL which is already generarted.&lt;/P&gt;&lt;P&gt;5) Specify short desc for method&lt;/P&gt;&lt;P&gt;6) Dbl clk on method to insert code..(check the code in &amp;#147;AAA&amp;#148;).&lt;/P&gt;&lt;P&gt;7) Save , check and activate the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some useful URL&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt" target="test_blank"&gt;http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf" target="test_blank"&gt;http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc" target="test_blank"&gt;http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc" target="test_blank"&gt;http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf" target="test_blank"&gt;www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now write a sample program to use this badi method..&lt;/P&gt;&lt;P&gt;Look for &amp;#147;BBB&amp;#148; sample program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#147;AAA&amp;#148;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_flights type sflight,&lt;/P&gt;&lt;P&gt;it_flights type table of sflight.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;format color col_heading.&lt;/P&gt;&lt;P&gt;write:/ 'Flight info of:', i_carrid, i_connid.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select * from sflight&lt;/P&gt;&lt;P&gt;into corresponding fields of table it_flights&lt;/P&gt;&lt;P&gt;where carrid = i_carrid&lt;/P&gt;&lt;P&gt;and connid = i_connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at it_flights into wa_flights.&lt;/P&gt;&lt;P&gt;write:/ wa_flights-fldate,&lt;/P&gt;&lt;P&gt;wa_flights-planetype,&lt;/P&gt;&lt;P&gt;wa_flights-price currency wa_flights-currency,&lt;/P&gt;&lt;P&gt;wa_flights-seatsmax,&lt;/P&gt;&lt;P&gt;wa_flights-seatsocc.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#147;BBB&amp;#148;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZBADI_TEST *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZBADI_TEST .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: spfli.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: wa_spfli type spfli,&lt;/P&gt;&lt;P&gt;it_spfli type table of spfli with key carrid connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Initialise the object of the interface.&lt;/P&gt;&lt;P&gt;data: exit_ref type ref to ZCL_IM_IM_LINESEL,&lt;/P&gt;&lt;P&gt;exit_ref1 type ref to ZIF_EX_BADISPFLI1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1.&lt;/P&gt;&lt;P&gt;select-options: s_carr for spfli-carrid.&lt;/P&gt;&lt;P&gt;selection-screen end of block b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;select * from spfli into corresponding fields of table it_spfli&lt;/P&gt;&lt;P&gt;where carrid in s_carr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;loop at it_spfli into wa_spfli.&lt;/P&gt;&lt;P&gt;write:/ wa_spfli-carrid,&lt;/P&gt;&lt;P&gt;wa_spfli-connid,&lt;/P&gt;&lt;P&gt;wa_spfli-cityfrom,&lt;/P&gt;&lt;P&gt;wa_spfli-deptime,&lt;/P&gt;&lt;P&gt;wa_spfli-arrtime.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hide: wa_spfli-carrid, wa_spfli-connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at line-selection.&lt;/P&gt;&lt;P&gt;check not wa_spfli-carrid is initial.&lt;/P&gt;&lt;P&gt;create object exit_ref.&lt;/P&gt;&lt;P&gt;exit_ref1 = exit_ref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call method exit_ref1-&amp;gt;lineselection&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_carrid = wa_spfli-carrid&lt;/P&gt;&lt;P&gt;i_connid = wa_spfli-connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear wa_spfli. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u can find BADI's in different ways...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1&amp;gt;First go to any transaction-&amp;gt;iN THE menu bar SYSTEM-&amp;gt;STATUS-&amp;gt;Get the program name -&amp;gt;double click-&amp;gt;u will go to the program attached to the tcode.Now search term will be CALL CL_EXITHANDLER.Now u will get list of BADI'S available..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2&amp;gt;Goto SE24-&amp;gt;Give class name as CL_EXITHANDLER-&amp;gt;Display-&amp;gt;double click on get_instance mathod-&amp;gt;Now u will go inside the method-&amp;gt;Now put break point on the cl_exithandler.Now go to any transaction code and pass dat..U will see that it will be stopped on the break point which u set on the cl_exithandler...In the exit name u can find list of badi's attached to the tcode..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are multiple ways of searching for BADI.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using CL_EXITHANDLER=&amp;gt;GET_INSTANCE&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using SQL Trace (TCODE-ST05).&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using Repository Information System (TCODE- SE84).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System-&amp;gt;Status. Double click on the program name. Once inside the program search for &amp;#145;CL_EXITHANDLER=&amp;gt;GET_INSTANCE&amp;#146;.&lt;/P&gt;&lt;P&gt;Make sure the radio button &amp;#147;In main program&amp;#148; is checked. A list of all the programs with call to the BADI&amp;#146;s will be listed.&lt;/P&gt;&lt;P&gt;The export parameter &amp;#145;EXIT_NAME&amp;#146; for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter &amp;#145;INSTANCE&amp;#146; will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Start transaction ST05 (Performance Analysis).&lt;/P&gt;&lt;P&gt;Set flag field "Buffer trace" &lt;/P&gt;&lt;P&gt;Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)&lt;/P&gt;&lt;P&gt;Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session. &lt;/P&gt;&lt;P&gt;Push the button "Deactivate Trace".&lt;/P&gt;&lt;P&gt;Push the button "Display Trace".&lt;/P&gt;&lt;P&gt;The popup screen "Set Restrictions for Displaying Trace" appears.&lt;/P&gt;&lt;P&gt;Now, filter the trace on Objects: &lt;/P&gt;&lt;P&gt;&amp;#149; V_EXT_IMP &lt;/P&gt;&lt;P&gt;&amp;#149; V_EXT_ACT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Push button "Multiple selections" button behind field Objects &lt;/P&gt;&lt;P&gt;Fill: V_EXT_IMP and V_EXT_ACT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.&lt;/P&gt;&lt;P&gt;So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Go to &amp;#147;Maintain Transaction&amp;#148; (TCODE- SE93).&lt;/P&gt;&lt;P&gt;Enter the Transaction VD02 for which you want to find BADI.&lt;/P&gt;&lt;P&gt;Click on the Display push buttons.&lt;/P&gt;&lt;P&gt;Get the Package Name. (Package VS in this case)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to TCode: SE84-&amp;gt;Enhancements-&amp;gt;Business Add-inns-&amp;gt;Definition&lt;/P&gt;&lt;P&gt;Enter the Package Name and Execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here you get a list of all the Enhancement BADI&amp;#146;s for the given package MB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplese way for finding BADI is &lt;/P&gt;&lt;P&gt;1. chooes Tcode Program &amp;amp; package for that Tcode.&lt;/P&gt;&lt;P&gt;2. Go to Tcode se18&lt;/P&gt;&lt;P&gt;3. Press F4&lt;/P&gt;&lt;P&gt;4. search by package or by program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and &lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Prabhu&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if it is helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 17 Aug 2007 07:17:41 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-08-17T07:17:41Z</dc:date>
    <item>
      <title>BADI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/badi/m-p/2652387#M611490</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  How can i create a screen exit using BADI ? explain&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASHOPK KUMAR&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Aug 2007 07:09:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/badi/m-p/2652387#M611490</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-17T07:09:28Z</dc:date>
    </item>
    <item>
      <title>Re: BADI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/badi/m-p/2652388#M611491</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINING THE BADI&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) execute Tcode SE18.&lt;/P&gt;&lt;P&gt;2) Specify a definition Name : ZBADI_SPFLI&lt;/P&gt;&lt;P&gt;3) Press create&lt;/P&gt;&lt;P&gt;4) Choose the attribute tab. Specify short desc for badi.. and specify the type : &lt;/P&gt;&lt;P&gt;multiple use.&lt;/P&gt;&lt;P&gt;5) Choose the interface tab&lt;/P&gt;&lt;P&gt;6) Specify interface name: ZIF_EX_BADI_SPFLI and save.&lt;/P&gt;&lt;P&gt;7) Dbl clk on interface name to start class builder . specify a method name (name, &lt;/P&gt;&lt;P&gt;level, desc).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method level desc&lt;/P&gt;&lt;P&gt;Linese;ection instance methos some desc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt; place the cursor on the method name desc its parameters to define the interface.&lt;/P&gt;&lt;P&gt;Parameter type refe field desc&lt;/P&gt;&lt;P&gt;I_carrid import spfli-carrid some&lt;/P&gt;&lt;P&gt;I_connid import spefi-connid some&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;9) save , check and activate&amp;#133;adapter class proposed by system is &lt;/P&gt;&lt;P&gt;ZCL_IM_IM_LINESEL is genereated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IMPLEMENTATION OF BADI DEFINITION &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) EXECUTE tcode se18.choose menuitem create from the implementation menubar.&lt;/P&gt;&lt;P&gt;2) Specify aname for implementation ZIM_LINESEL&lt;/P&gt;&lt;P&gt;3) Specify short desc.&lt;/P&gt;&lt;P&gt;4) Choose interface tab. System proposes a name fo the implementation class. &lt;/P&gt;&lt;P&gt;ZCL_IM_IMLINESEL which is already generarted.&lt;/P&gt;&lt;P&gt;5) Specify short desc for method&lt;/P&gt;&lt;P&gt;6) Dbl clk on method to insert code..(check the code in &amp;#147;AAA&amp;#148;).&lt;/P&gt;&lt;P&gt;7) Save , check and activate the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some useful URL&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt" target="test_blank"&gt;http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf" target="test_blank"&gt;http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc" target="test_blank"&gt;http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc" target="test_blank"&gt;http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf" target="test_blank"&gt;www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now write a sample program to use this badi method..&lt;/P&gt;&lt;P&gt;Look for &amp;#147;BBB&amp;#148; sample program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#147;AAA&amp;#148;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_flights type sflight,&lt;/P&gt;&lt;P&gt;it_flights type table of sflight.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;format color col_heading.&lt;/P&gt;&lt;P&gt;write:/ 'Flight info of:', i_carrid, i_connid.&lt;/P&gt;&lt;P&gt;format color col_normal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select * from sflight&lt;/P&gt;&lt;P&gt;into corresponding fields of table it_flights&lt;/P&gt;&lt;P&gt;where carrid = i_carrid&lt;/P&gt;&lt;P&gt;and connid = i_connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at it_flights into wa_flights.&lt;/P&gt;&lt;P&gt;write:/ wa_flights-fldate,&lt;/P&gt;&lt;P&gt;wa_flights-planetype,&lt;/P&gt;&lt;P&gt;wa_flights-price currency wa_flights-currency,&lt;/P&gt;&lt;P&gt;wa_flights-seatsmax,&lt;/P&gt;&lt;P&gt;wa_flights-seatsocc.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#147;BBB&amp;#148;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZBADI_TEST *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZBADI_TEST .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: spfli.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: wa_spfli type spfli,&lt;/P&gt;&lt;P&gt;it_spfli type table of spfli with key carrid connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Initialise the object of the interface.&lt;/P&gt;&lt;P&gt;data: exit_ref type ref to ZCL_IM_IM_LINESEL,&lt;/P&gt;&lt;P&gt;exit_ref1 type ref to ZIF_EX_BADISPFLI1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1.&lt;/P&gt;&lt;P&gt;select-options: s_carr for spfli-carrid.&lt;/P&gt;&lt;P&gt;selection-screen end of block b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;select * from spfli into corresponding fields of table it_spfli&lt;/P&gt;&lt;P&gt;where carrid in s_carr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;loop at it_spfli into wa_spfli.&lt;/P&gt;&lt;P&gt;write:/ wa_spfli-carrid,&lt;/P&gt;&lt;P&gt;wa_spfli-connid,&lt;/P&gt;&lt;P&gt;wa_spfli-cityfrom,&lt;/P&gt;&lt;P&gt;wa_spfli-deptime,&lt;/P&gt;&lt;P&gt;wa_spfli-arrtime.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hide: wa_spfli-carrid, wa_spfli-connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at line-selection.&lt;/P&gt;&lt;P&gt;check not wa_spfli-carrid is initial.&lt;/P&gt;&lt;P&gt;create object exit_ref.&lt;/P&gt;&lt;P&gt;exit_ref1 = exit_ref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call method exit_ref1-&amp;gt;lineselection&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_carrid = wa_spfli-carrid&lt;/P&gt;&lt;P&gt;i_connid = wa_spfli-connid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear wa_spfli. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u can find BADI's in different ways...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1&amp;gt;First go to any transaction-&amp;gt;iN THE menu bar SYSTEM-&amp;gt;STATUS-&amp;gt;Get the program name -&amp;gt;double click-&amp;gt;u will go to the program attached to the tcode.Now search term will be CALL CL_EXITHANDLER.Now u will get list of BADI'S available..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2&amp;gt;Goto SE24-&amp;gt;Give class name as CL_EXITHANDLER-&amp;gt;Display-&amp;gt;double click on get_instance mathod-&amp;gt;Now u will go inside the method-&amp;gt;Now put break point on the cl_exithandler.Now go to any transaction code and pass dat..U will see that it will be stopped on the break point which u set on the cl_exithandler...In the exit name u can find list of badi's attached to the tcode..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are multiple ways of searching for BADI.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using CL_EXITHANDLER=&amp;gt;GET_INSTANCE&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using SQL Trace (TCODE-ST05).&lt;/P&gt;&lt;P&gt;&amp;#149; Finding BADI Using Repository Information System (TCODE- SE84).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System-&amp;gt;Status. Double click on the program name. Once inside the program search for &amp;#145;CL_EXITHANDLER=&amp;gt;GET_INSTANCE&amp;#146;.&lt;/P&gt;&lt;P&gt;Make sure the radio button &amp;#147;In main program&amp;#148; is checked. A list of all the programs with call to the BADI&amp;#146;s will be listed.&lt;/P&gt;&lt;P&gt;The export parameter &amp;#145;EXIT_NAME&amp;#146; for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter &amp;#145;INSTANCE&amp;#146; will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Start transaction ST05 (Performance Analysis).&lt;/P&gt;&lt;P&gt;Set flag field "Buffer trace" &lt;/P&gt;&lt;P&gt;Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)&lt;/P&gt;&lt;P&gt;Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session. &lt;/P&gt;&lt;P&gt;Push the button "Deactivate Trace".&lt;/P&gt;&lt;P&gt;Push the button "Display Trace".&lt;/P&gt;&lt;P&gt;The popup screen "Set Restrictions for Displaying Trace" appears.&lt;/P&gt;&lt;P&gt;Now, filter the trace on Objects: &lt;/P&gt;&lt;P&gt;&amp;#149; V_EXT_IMP &lt;/P&gt;&lt;P&gt;&amp;#149; V_EXT_ACT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Push button "Multiple selections" button behind field Objects &lt;/P&gt;&lt;P&gt;Fill: V_EXT_IMP and V_EXT_ACT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.&lt;/P&gt;&lt;P&gt;So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Go to &amp;#147;Maintain Transaction&amp;#148; (TCODE- SE93).&lt;/P&gt;&lt;P&gt;Enter the Transaction VD02 for which you want to find BADI.&lt;/P&gt;&lt;P&gt;Click on the Display push buttons.&lt;/P&gt;&lt;P&gt;Get the Package Name. (Package VS in this case)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to TCode: SE84-&amp;gt;Enhancements-&amp;gt;Business Add-inns-&amp;gt;Definition&lt;/P&gt;&lt;P&gt;Enter the Package Name and Execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here you get a list of all the Enhancement BADI&amp;#146;s for the given package MB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplese way for finding BADI is &lt;/P&gt;&lt;P&gt;1. chooes Tcode Program &amp;amp; package for that Tcode.&lt;/P&gt;&lt;P&gt;2. Go to Tcode se18&lt;/P&gt;&lt;P&gt;3. Press F4&lt;/P&gt;&lt;P&gt;4. search by package or by program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and &lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Prabhu&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if it is helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Aug 2007 07:17:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/badi/m-p/2652388#M611491</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-17T07:17:41Z</dc:date>
    </item>
  </channel>
</rss>

