BAPI in a User-Exit
Hello,
I need to cancel some other corresponding documents when I cancel a Billing document, for which I will be using a BAPI. I want the BAPI to commit only if the cancellation process is successful. Does a commit statement for BAPI's execute at the end of the cancellation process so that I do not have to use 'BAPI_TRANSACTION_COMMIT' in my User Exit code. Otherwise if the cancellation process fails then the corresponding documents would be cancelled but the Billing document would not.
Any help would be appreciated.
Thanks,
Alam.
Hi
If your are Using SD BAPI say for example --> BAPI_SALESORDER_CHANGE
you need to fire an explicit BAPI_TRANSACTION_COMMIT .
Please note :
The BAPI does not run a database Commit, which means that the application must trigger the Commit so that the changes are read to the database. To do this, use the BAPI_TRANSACTION_COMMIT BAPI.
Similar Messages
-
Standard Function Modules, BAPIs, BADIs and User Exits in OM
How do I check what are the Standard Function Modules / BAPIs in OM or any HR sub modules like PA, Comp, TEM etc..
use Tcode <b>BAPI</b> and navigate to relevant module.
for FM go to se37 and search with HR* or RH* -
When bapi perform, user exit perform or not
Hi,
TCODE VA01,
i am going to use BAPI(SD_SALESDOCUMENT_CREATE) in order to create or change sales order .
but there is user exit on VA01, so i want to know if user-exit execute or not when i use BAPI on abap code.
thanks
venjamin.Hi,
As far as i remember bapi will execute the user exit as once i tried to call the bapi in the user exit and in turn the bapi called back the user exit again. at that i used the same said bapi "SD_SALES_DOCUMENT_CREATE". and hence i changed my code accordingly
Regards
Satya -
List of BAPI, BADI, User Exits
Hi !
I need to get the following points for my boss:
1.) A list of the BAPIs that are IN USE at our system.
2.) A list of BADIs that are IN USE at our system.
3.) A list of User Exits that are IN USE at our system.
Any idea / Transactioncodes etc. where I can get these informations?
Please help me out, I've got no clue from BAPI, BADIs and User Exits.
Thanks and best regards,
MatthiasHello Stangl,
I can give the list of BAPI ,BADI and USER EXITS.
but i will not give
there simple way to find all these things.
for BAPIS
suppose u want know the related BAPIS to the program u have to do
system->status->program name->attributes->package..take the package name goto tcode SE80 and give the package name u willl find the FM in
all the FM starts with Bapis those bapi FMs.
For BADIs
system->status->program name->attributes->package..
se18->F4->package name - u will get the realated BAIDs
For user exits
system->status->program name->attributes->package..
SMOD->F4->package name - u will get the realated user exiits.
If use ful reward points
santhosh -
Help with BDC, user exits and BAPI
Hello all:
1) I posted a question before about BDC documentation and people sent me lot of helpful material. Thanks to all of them. I am very new to ABAP coming from VB background and wondering if someone can tell me how to practice one simple BDC program starting from scratch. What do I first need to do to get started? I have Mini WAS 6.20 test version and like to practice BDC programming.
2) What are user exits and BADI and can anyone provide some documentation and sample code if possible.
Thanks everyone in advance.
--Mithun.Hai Mithun Dha
Go through the following Documentation & Example Code
Just check these links.
Diff. between LSMW & BDC?
BDC SESSION
CALL TRANSACTION
CALL DIALOG
What is BDC or batch input
The Batch Input is a SAP technic that allows automating the input in transactions. It lies on a BDC (Batch Data Commands) scenario.
BDC functions:
E BDC_OPEN_GROUP : Opens a session group
E BDC_CLOSE_GROUP : Closes a session
E BDC_INSERT : Insert a BDC scenario in the session
E The ABAP statement "CALL TRANSACTION" is also called to run directly a transaction from its BDC table.
It runs the program RSBDCSUB in order to launch automatically the session. The session management is done through the transaction code SM35.
The object itself is maintanable through the transaction SE24.
BDC methods:
Method
Description
Parameters
OPEN_SESSION
Opens a session
SUBRC (Return Code ? 0 OK)
SESSIONNAME (Session to be created)
CLOSE_SESSION
Closes a session
None
RESET_BDCDATA
Resets the BDC Internal Table...
None. Normally, for internal purposec
BDC_DYNPRO
Handles a new screen
PROGNAME (Name of the program)
DYNPRONR (Screen Number)
BDC_FIELD
Puts a value on the screen
FIELDNAME (Name of the field)
FIELDVALUE (Value to be passed)
CONSTRUCTOR
Constructor - Initializes NO_DATA
NODATA (No data character). The constructor is called automatically when the object is created.
RUN_SESSION
Launches a session with RSBDCBTC
None
CALL_TRANSACTION
Calls a transaction with the current BDC Data
MODE (Display Mode)
UPDATE (Update Mode)
TCODE (Transaction to be called)
BDC_INSERT
Inserts the BDC scenario in the session
TCODE (Transaction to be called)
BDC techniques used in programs:
1) Building a BDC table and calling a transaction,
2) Building a session and a set of BDC scenarios and keeping the session available in SM35,
3) Building a session and lauching the transaction right after closing the session.
BDC using Call Transaction
BDC using Call transaction involves calling an SAP transaction in back ground from within the ABAP
program. The process involves building an Internal BDC table containing the screen information needed to
execute the required transaction and then passing this to the Call transaction command (See code example).
The full procedure for creating a BDC program is as follows:
What is the difference between batch input and call transaction in BDC?
Session method.
1) synchronous processing.
2) can tranfer large amount of data.
3) processing is slower.
4) error log is created
5) data is not updated until session is processed.
Call transaction.
1) asynchronous processing
2) can transfer small amount of data
3) processing is faster.
4) errors need to be handled explicitly
5) data is updated automatically
BATINPUT/DIRECT INPUT
A: Batch-inputs can not be used to fill the "delivery due list" screen because it is not a dynpro. This is a standard SAP report. A SAP report (check with "System -> Status") may be called using SUBMIT sentence with the appropriate options . It is preferred to call a report than create a Batch-input program.
GO THROUGH THIS LINK
http://www.guidancetech.com/people/holland/sap/abap/zzsni001.htm
check with this code
include bdcrecx1.
tables : mara.
data : begin of it_mara occurs 0,
matnr like mara-matnr,
mbrsh like mara-mbrsh,
mtart like mara-mtart,
maktx like makt-maktx,
meins like mara-meins,
end of it_mara.
start-of-selection.
perform upload_data.
perform open_group.
loop at it_mara.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
it_mara-matnr.
perform bdc_field using 'RMMG1-MBRSH'
it_mara-mbrsh.
perform bdc_field using 'RMMG1-MTART'
it_mara-mtart.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'=BU'.
perform bdc_field using 'MAKT-MAKTX'
it_mara-maktx.
perform bdc_field using 'BDC_CURSOR'
'MARA-MEINS'.
perform bdc_field using 'MARA-MEINS'
it_mara-meins.
perform bdc_field using 'MARA-MTPOS_MARA'
'NORM'.
perform bdc_transaction using 'MM01'.
endloop.
perform close_group.
*& Form upload_data
text
--> p1 text
<-- p2 text
FORM upload_data .
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'c:\mat_bdc.txt'
FILETYPE = 'ASC'
TABLES
DATA_TAB = it_mara.
IF SY-SUBRC = 0.
SORT IT_MARA BY MATNR.
ENDIF.
ENDFORM. " upload_data
flat file structure is
PRANIT_011 CCOUP This is Testing material kg
PRANIT_012 CCOUP This is Testing material kg
PRANIT_013 CCOUP This is Testing material kg
PRANIT_014 CCOUP This is Testing material kg
PRANIT_015 CCOUP This is Testing material kg
when your selecting views
this particular material will belongs to Po/Sales or some other areas .
when you select basic 1 --it gives description
select basic 2 -- it gives tax ,amount, base unit of measurement
BDC TO BAPI
The steps to be followed are :
1. Find out the relevant BAPI (BAPI_SALESORDER_CHANGE for VA02).
[for VA01 use BAPI_SALESORDER_CREATEFROMDAT2]
2. Create a Z program and call the BAPi (same as a Funtion module call).
2. Now, if you see this BAPi, it has
-> Importing structures.
eg: SALESDOCUMENT: this will take the Sales order header data as input.
-> Tables parameters:
eg: ORDER_ITEM_IN: this will take the line item data as input.
Note :
Only specify fields that should be changed
Select these fields by entering an X in the checkboxes
Enter a U in the UPDATEFLAG field
Always specify key fields when changing the data, including in the checkboxes
The configuration is an exception here. If this needs to be changed, you need to complete it again fully.
Maintain quantities and dates in the schedule line data
Possible UPDATEFLAGS:
U = change
D = delete
I = add
Example
1. Delete the whole order
2. Delete order items
3. Change the order
4. Change the configuration
Notes
1. Minimum entry:
You must enter the order number in the SALESDOCUMENT structure.
You must always enter key fields for changes.
You must always specify the update indicator in the ORDER_HEADER_INX.
2. Commit control:
The BAPI does not run a database Commit, which means that the application must trigger the Commit so that the changes are read to the database. To do this, use the BAPI_TRANSACTION_COMMIT BAPI.
For further details... refer to the Function Module documentation for the BAPi.
For User Exits
User Exits
Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
It is determined be SAP where the sub screen will be displayed.
The syntax is: CALL CUSTOMER-SUBSCREEN
The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project,
and the project has been activated.
Note:
Function codes are only processed in the main screens flow logic
You are not allowed to enter a name for the subscreens command field
You are not allowed to define GUI stauses
You are not allowed to enter a value for Next screen
The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules.
These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD.
When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next
time you display the calling screen
The developer must create the subscreen and the corresponding PBO and PAI modules
How to identify screen exits
Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
MENU EXITS
Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu
entries in the GUI interface. The developer can add his/her own text and logic for the menu.
Function codes for menu exits all start with "+"
Example
We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
run report ZTEST.
Goto transaction SE43 Area Menu Maintenance
In Area Menu Paramenter type 'S000' (S triple Zero)
Select Change and ignore all the warning screens
Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01
Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
USER EXITS
User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule.
The code for the function module is writeen by the developer. You are not writing the code directly in the function module,
but in the include that is implemented in the function module.
The naming standard of function modules for functionmodule exits is: EXIT_<program name><3 digit suffix>
The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
Example:
The program for transaction VA01 Create salesorder is SAPMV45A
If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
CALL CUSTOMER-FUNCTION '003'
exporting
xvbak = vbak
xvbuk = vbuk
xkomk = tkomk
importing
lvf_subrc = lvf_subrc
tables
xvbfa = xvbfa
xvbap = xvbap
xvbup = xvbup.
The exit calls function module EXIT_SAPMV45A_003
2. How to find user exits
Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements.
Enter the exit name and press enter.
You will now come to a screen that shows the function module exits for the exit.
3. Using Project management of SAP Enhancements
We want to create a project to enahance trasnaction VA01
Go to transaction CMOD
Create a project called ZVA01
Choose the Enhancement assign radio button and press the Change button
In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only
be used i 1 project. If the enhancement is allready in use, and error message will be displayed
Press Save
Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
Now the function module is displayed. Double click on include ZXVVAU04 in the function module
Insert the following code into the include: E_KUNNR = '2155'.
Activate the include program. Go back to CMOD and activate the project.
Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
Have look at this links
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
http://www.sapgenie.com/abap/ole.htm
http://help.sap.com/saphelp_46c/helpdata/en/59/ae3f2e488f11d189490000e829fbbd/frameset.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
Creation of Field Exits
Step by step procedure for creating Field Exits
There are eight steps to creating a field exit:
Step 1: Determine Data Element
Step 2: Go To Field Exit Transaction
Step 3: Create Field Exit
Step 4: Create Function Module
Step 5: Code Function Module
Step 6: Activate Function Module
Step 7: Assign Program/Screen
Step 8: Activate Field Exit
Step 1: Determine Data Element
- Before you can begin adding the functionality for a field exit, you must know the corresponding data element.
- An easy way to determine the data element associated to a particular screen field is to:
Go the appropriate screen.
Position the cursor in the appropriate field.
Press eF1f for field-level help.
Click on the eTechnical infof pushbutton (or press eF9f) on the help dialog box.
On this Technical Information dialog box, the data element will be specified if the field is 'painted' from the ABAP/4 Dictionary.
Step 2: Go To Field Exit Transaction
- The transaction to create field exits is CMOD.
- You can use the menu path Tools -> ABAP/4 Workbench -> Utilities -> Enhancements -> Project management.
- From the initial screen of transaction CMOD, choose the Text enhancements -> Field exits menu path.
- After choosing this menu path, you will be taken to the field exits screen. From here, you can create a field exit.
NOTE : Even though you use transaction CMOD to maintain field exits, you do not need to create a project to activate field exits.
Step 3: Create Field Exit
- From the field exit screen of transaction CMOD, choose the Field exit -> Create menu path.
- After choosing this menu path, a dialog box will prompt you for the appropriate data element .
- Enter the data element name and click the eContinuef pushbutton.
- Now, you will be able to create the function module associated to the data elementfs field exit.
Step 4: Create Function Module
- You will automatically be taken to the Function Library (SE37) after entering a data element name and clicking the eContinuef pushbutton.
- In the eFunction modulef field, a function module name will be defaulted by the system based on the data element specified. This name will have the following convention:
FIELD_EXIT_<data element>
- You can add an identifier (an underscore followed by a single character ).
- The first function module for a data elementfs field exit must be created without an identifier.
- To create the function module, click on the eCreatef pushbutton, choose menu path Function module -> Create, or press eF5f.
- After choosing to create the function module, you will get the warning: "Function module name is reserved for SAP". This message is just a warning so a developer does not accidentally create a function module in the field exit name range. By pressing eEnterf, you will be able to go ahead and create the function module.
- Before coding the function module, you will have to specify the function modules attributes -- function group, application, and short text.
Step 5: Code Function Module
- From the function modulefs attributes screen, click on the eSource codef pushbutton or choose the Goto -> Function module menu path to the code of the function module.
- Here you will add your desired functionality for the field exit.
- Remember that field exitfs function module will have two parameters -- one importing parameter called "INPUT" and one exporting parameter called "OUTPUT". These parameters will be set up automatically by the system.
- You must remember to assign a value to the OUTPUT field. Even if the value does not change, it must be moved from the INPUT field to the OUTPUT field.
Step 6: Activate Function Module
- After coding the function module, you must remember to activate it.
- Use the Function module -> Activate menu path to activate the function module.
- At this point, you can return to the field exit transaction.
- You should be able to 'green arrow' back to this transaction.
- When you return to the field exit transaction, you will see an entry for the newly created field exit.
- At this point, the field exit is global. That is, it applies to all screens that use a particular data element. On any screen that uses the data element, the corresponding field exit function module will be triggered, once it is active.
- Also, the field exit will not be triggered yet because it is inactive.
Step 7: Assign Program/Screen
- This step is only needed if you want to make a field exit local.
- To make a field exit local, select the field exit and click on the eAssign prog./screenf pushbutton.
- In the dialog box , indicate the appropriate program name and screen number.
This information indicates that the field exit is local to the specified screen in the specified program.
- In the dialog box, you determine which function module gets executed for the field exit by specifying the identifier in the eFld. Exitf field.
- If this field is left blank, the function module triggered will be 'FIELD_EXIT_<data element>'.
- If a single-character identifier is entered into the field, the function module triggered will be 'FIELD_EXIT_<data element>_<identifier>'.
Step 8: Activate Field Exit
- The field exit must be active for it to be triggered by the system.
- Activate the field exit by choosing the Field exit -> Activate menu path.
- After assigning the field exit to a change request, its status will change to eActivef and it will be triggered automatically on the appropriate screen(s).
NOTE : In order to activate the field exit the profile parameter abap/fieldexit = YES must be set on all application servers
Thanks & regards
Sreenivasulu P -
Bapi enhancement using user/customer exits
It is necessary to have access to all calls and purchase orders to be able to maintain the control of the ERS procedure centrally in the TBB system for the functionality u201CBestellselektionu201D [purchase order selection],. Without delay, all necessary purchase order and call data is provided for the table 'ERS' u201Crealtimeu201D via the interface from SRM. It must be ensured that this table is always filled for SRM scopes synchronous with the SAP standard tables (EKKO, purchase order header data, EKPO purchase order item data, EKAN vendor address, EKPA partner roles etc.). For this purpose, efforts are made to load this table during each creation or change of a purchase order. On the ERP side, the u201EBAPI_PO_CREATE1u201C, which is called by SRM via RFC in the ERP, serves the purpose of creating purchase orders. The BAPI_PO_CHANGE is used for changes in the purchase orders. These BAPIs can be enhanced by the Customer exits EXIT_SAPL2012_003 respective EXIT_SAPL2012_004. With the help of the exits, a function module is called, which then provides the customer-specific fields of the table 'ERS'
i want to enhance bapi using customer /user exit
so how shall i proceed with this requirement ??
how sahll i code the include for this req???
i m using the functions ::
1] EXIT_SAPL2012_003
2] EXIT_SAPL2012_004
so how can i enhance the bapi using user exits..
I want to transfer the data from SRM system to TBB system with the customizzed table filled with this data at ERP ie TBB side .. so plz reply how shall i proceed ???Thanks Naresh, it helped...
Can you please help on the below:
1. For outbound Sales order IDoc- CRMXIF_ORDER_SAVE_M01,need BADIs for modification of the IDoc before it gets generated.
2. Need program to generate output as outbound IDoc- CRMXIF_ORDER_SAVE_M01 for sales order conformation/acknowledgement.
3. Need a BADI after the EDI Sales order is saved.
Thanks in advance
Vijay -
BAPIs,BADIs AND Usre exits
Hi all,
I wants to learn <b>BAPIs,BADIs and User exits</b> so please help me in finding the right material to learn these thing with practicle knowledge
Thanks,
GirishHai Girish
Check the following Documents
what is BAPI?
BAPI stands for Business API(Application Program Interface).
I have answered this question before..
A BAPI is remotely enabled function module ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
You can make your function module remotely enabled in attributes of Function module but
A BAPI are standard SAP function modules provided by SAP for remote access. Also they are part of Businees Objest Repository(BOR).
Please check out this thread..
Re: bapi
Also refer to the following links..
www.sappoint.com/abap/bapiintro.pdf
www.sap-img.com/bapi.htm
www.sap-img.com/abap/bapi-conventions.htm
www.planetsap.com/Bapi_main_page.htm
www.sapgenie.com/abap/bapi/index.htm
Checkout !!
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
User Exits
Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
It is determined be SAP where the sub screen will be displayed.
The syntax is: CALL CUSTOMER-SUBSCREEN
The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project,
and the project has been activated.
Note:
Function codes are only processed in the main screens flow logic
You are not allowed to enter a name for the subscreens command field
You are not allowed to define GUI stauses
You are not allowed to enter a value for Next screen
The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules.
These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD.
When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next
time you display the calling screen
The developer must create the subscreen and the corresponding PBO and PAI modules
How to identify screen exits
Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
MENU EXITS
Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu
entries in the GUI interface. The developer can add his/her own text and logic for the menu.
Function codes for menu exits all start with "+"
Example
We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
run report ZTEST.
Goto transaction SE43 Area Menu Maintenance
In Area Menu Paramenter type 'S000' (S triple Zero)
Select Change and ignore all the warning screens
Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01
Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
USER EXITS
User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule.
The code for the function module is writeen by the developer. You are not writing the code directly in the function module,
but in the include that is implemented in the function module.
The naming standard of function modules for functionmodule exits is: EXIT_<program name><3 digit suffix>
The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
Example:
The program for transaction VA01 Create salesorder is SAPMV45A
If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
CALL CUSTOMER-FUNCTION '003'
exporting
xvbak = vbak
xvbuk = vbuk
xkomk = tkomk
importing
lvf_subrc = lvf_subrc
tables
xvbfa = xvbfa
xvbap = xvbap
xvbup = xvbup.
The exit calls function module EXIT_SAPMV45A_003
2. How to find user exits
Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements.
Enter the exit name and press enter.
You will now come to a screen that shows the function module exits for the exit.
3. Using Project management of SAP Enhancements
We want to create a project to enahance trasnaction VA01
Go to transaction CMOD
Create a project called ZVA01
Choose the Enhancement assign radio button and press the Change button
In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only
be used i 1 project. If the enhancement is allready in use, and error message will be displayed
Press Save
Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
Now the function module is displayed. Double click on include ZXVVAU04 in the function module
Insert the following code into the include: E_KUNNR = '2155'.
Activate the include program. Go back to CMOD and activate the project.
Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
Have look at this links
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
http://www.sapgenie.com/abap/ole.htm
http://help.sap.com/saphelp_46c/helpdata/en/59/ae3f2e488f11d189490000e829fbbd/frameset.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
BADI'S
http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
Thanks & Regards
Sreenivasulu P
Message was edited by: Sreenivasulu Ponnadi -
How to Suppress billing using user exit EDMSUBI
Dear ALL,
Could anyone let me know how to use this user exit EDMSUPBI. Basically my requirements is to suppress billing for certain meter readings during upload of reading using meter reading upload BAPI.
This user exit gets triggered during the above mentioned meter reading upload event. But I would like to know how to pass the parameters to enable the suppress billing order functionality.
There are no export or import parameters in this user exit. Whereas the user exit has the following tables
XT_EABL
XT_EABLG
XT_ETRG
YT_SUPPR_ETRG
YT_DEACT_EABL
Let me know how to pass the paramets such that the suppress billing order functionality is enabled
WIth Regards
Balaji.JIf you still care:
You will have to access the mtr_obj in memory to get informations.
DATA:
ls_obj TYPE ISU17_METERREAD.
import xy_obj TO ls_obj
FROM memory id 'ISU_MR_EXIT_SAPLEL01_015'.
Cheers. -
What is difference between User Exits and BAPI
hello sap gurus
what is difference between User Exits and BAPIshttp://www.sap-img.com/abap/what-is-user-exits.htm
www.****************
Where as this customer exits are again divided into:
1. Menu Exits.
2. Field Exits.
3. Screen Exits.
4. Function module exits.
These all the things comes under Enhancements.
User exits
1.A user exit is a three character code that instructs the system to access a program during system processing.SXX: S is for standard exits that are delivered by SAP.
XX represents the 2-digit exit number.UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number
2.USER EXITS are FORMS and are called by SAP standard programs
using PERFORM.
3.Inside the form (user exit) you can read and change almost
any global data from host program.
4. User exits are more flexible because you have more information to use in your code but on the other hand , it is very easy to manipulate erroneously global data and lead the standard program to a dump or even to make database inconsistent.
5.While changing User-exit,Access Key is required,
BAPI is nothing function module but which is remote enabled, means you can access this fm through other SAP or non-SAP system by assingning to business object,which we can crea in SWO1 transaction.
more details see WWW.****************
reward if helpful -
Payment program F110: User Exit/BAPI to block/unblock payments
Hi!
I need to block some documents when the payment occurs (F110)
and in the end I need to unblock then. Seams to me than I have to modify the value of field BSEG-ZLSPR.
The problem is that I try to find some User Exit ou BAPI by various ways
but I find none.
Can anyone help me?
Thanks a lot.
RuiThanks Savitha.
I will analyse your suggestion.
What I need is:
1-Enter t-code F110
2-Fill the necessary fields and click in Proposal to execute the proposal.
3-If everything id ok, the user clicks in Payments to execute the payment.
This is the normal execution.
What I need in the step 3 <b>in the beginning</b>, block some payments
(based in some parameters) this to prevent of executing the marked payments.
And <b>in the end</b> unblock the blocked payments (return to original situation)
Can you give me any more suggestion?
Thanks!
Rui -
How to handle user exits while using BAPI
HI experts can any one help me on how to handle user exits while using BAPI. Do we need to handle it explicitly or standard BAPI will take care of it??.
Regards,
Hari KrishnaIf you have added some fields using append structures for screen enhancements, then you have to use appropriate user exits to fill these data while calling BAPI. Some BAPIs have EXTENSION structures to fill the custom data which can be processed using user exists or enhancements.
Regards
Vinod -
Bapi or user-exit to create warning in invoice
Hi,
I was askes to create a warning whenever someone pushes delete within an invoice (mir7). The problem is that our users are not aware, that they are really going to delete not only the marked position within the invoice but the whole invoice.
I´ve tried to find a bapi or user-exit to place my coding but so far was unsuccessful, can anyone tell me if there is a badi or user-exit?Hi Ute!
Try BADI INVOICE_UPDATE (hope this is defined in your release).
It's help says:
"You can use the business add-in (INVOICE_UPDATE) to further process the following functions or, if necessary, forbid them:
Creating invoices (invoices, credit memos, subsequent debits, subsequent credits) in Logistics Invoice Verification
Parking documents in Logistics Invoice Verification, and making changes to these documents, for example, deleting them"
-> Exactly what you are looking for.
Regards,
Christian -
Implement HR User Exits using BAPI's
Hi,
Please help me to implement User exits in HR Payroll (PBAS0001) using Bapisits BADI not BAPI.
useful tcodes : Se18/19/80
Regards
Prabhu -
User Exit or BAPI for Auto Backflush
Hi,
We have a requirement like-
In backflush transaction (MFBF) for finish good we have many dependant materials that also need to be backflushed individually. To avoid this manual backflushing one by one we want to automate the process with the help of user exits available in SAP.
Is there any User-Exits or BAPI by which we can acheive the above process automatically. Need some examples
Thanks & Regards
AKHi,
For MFBF there are sollowing user-exits....
XMRM0001 - Backflushing in Repetitive Manufacturing.
PTRM0001 - For lead column in REM planning Table.
SAPLRMPU - Customer Exit for Article Staging.
Reward points if useful....
Regards
AK -
User Exits & BAPI in MIRO transaction.
Hi all,
We have a scenario as below.
We are raising PO (Say PO No.1) with upper delivery tolerance as 10% at item level. The quantity upto 10% tolerance level is received via movement type 101.
The quantity received above 10% but upto 20% is received via separate movement type say Z01 & PO No. 2 is getting created automatically.
The quantity received above 20% is received via separate movement type say Z02 & PO No. 3 is getting created automatically.
Now consider that Rs. 500 received through 101 movement. Rs. 200 received through Z01 movement & Rs. 100 received through Z02 movement.
Now our requirement is as below.
1. At the time of MIRO, user will give PO No. 1 as input. System should through throw message to select PO No. 2 & PO No. 3 also.
2. Following entries should get passed.
101 movement : Vendor A/C Cr. 500
GR/IR A/C Dr. 500
Z01 movement Vendor A/C Cr. 200
GR/IR A/C Dr. 200
Z02 movement Provisional GL A/C Cr. 100
GR/IR A/C Dr. 100
As regards the Z02 movement, we are passing it via GL account tab in MIRO transaction.
After the above entries are passed, system should also raise a debit note for 50% amount of Z01 movement as below.
Provisional GL A/C Cr. 100
Vendor A/C Dr. 100
Can any one suggest suitable user exits/BADI/BAPI to satisfy above requirement.
ShripadHi
1. In my opinion, there is no mechanism by which you can tag PO 1/2/3... So, while entering PO1 in MIRO, I dont think there is any mechanism by which you can get a message for Po 2 and 3
You can still try your hand at BAPI_ACC_INVOICE_RECEIPT_POST.... Or go to T code BAPI and explore the right BAPI
2. Regarding other requirements of Z02 and Z01, you can create a Z t code using a BDC for F-02 or BAPI_ACC_DOCUMENT_POST
br, Ajay M
Maybe you are looking for
-
Garageband was not able to install the new sounds
I'm on an iMac 21.5-inch (mid 2011) running Yosemite; 2.5 GHz Intel Core i5; 4GB memory. A few months ago, I uninstalled GarageBand. Now I'm trying to reinstall it. I can get GarageBand 6 reinstalled, but I would like to get working with the latest v
-
HP Officejet 7500A Wide Format - Can't reset the paper size - won't print!!!
I have a new HP Officejet 7500A Wide Format All-in-one printer. I love it and have had no problems with it...until now. The other day I went into Photoshop and printed a 4x6 photo and now my printer will not allow me to print on 8.5X11. I have che
-
Multiple Screens and Variables?
Is there a way/place to store variables so that other screens can write and read the variables? Essentially I am building an HTML/JS app that has multiple pages and I am assuming screens are the way to go. Am I approaching this wrong? Is there a bett
-
Why can't I select imessages and email them?
I used to be able to select from an imessage string and forward the string as an email. Now it appears to "go" but doesn't appear in my email account. What can I do?
-
I want to create a photo gallery, that allows users to purchase certain images. There is a open-source project called 'gallery' (http://gallery.menalto.com). It has everything I am looking for, but it is too time consuming to keep the site updated. I