FI : Automatic Program User Exit
RFFOX900 Framework for user exit RFFOX900 (in program RFFOM100) >>>EXIT_RFFOEXIT_900
I have tried using this user exit to add some data, but when it is activated I lose the original output data and only get the new data line.
How to add or modify fields of the Program RFFOM100 so as to send flat file to RBI for electronic clearing system(ECS) payment. I need to generated the flat file in the RBI prescribed format. i checked up the user exit EXIT_RFFOEXIT_900 documentation but couldn't able to get idea of what the user exit do?
Please help out how to generate Payment media according ot our requirement.
Thanks
Suri.,
Electronic payments to and from 3rd parties in the UK are made via the Banks Automated Clearing System . This development enables the BACS file for e.g (ap1.bac or ar1.bac)in case of UK or the EMTS file in case of Ireland created by SAP to be routed via MQ series onto REIMS and then immediately onto BACS for UK and onto a secured directory available to the ADDS computers for Ireland. As all flat file interfaces must be subject to interface controls, a header and footer record will have to be added to each file and to do this a wrapper program is created, where the interface control parameters will be passed to identify the interface being run and interface being run.
You need to create a wrapper program to handle this type of interaces where you input the company code, External partner , Interface ID and the flat file.
Similar Messages
-
Program/User exit to maintain the number ranges at plant level
Hi Everybody,
Could u please tell me program/user exit to maintain the number ranges at plant level.
Thanks & Regards,
PiyushHi
Do you want to maintain all the number range Objects
For Material Master you can use the enhancement MGA00002
For PO Nu,ber ranges you can use the enhancement MM06E003
Thanks & Regards
Kishore -
User include structure and routines/program/user exits
Hello Gurus,
following is the step for modify the field catalog in material determination .
Modify the field catalog (OV26)
1. Add the new field to the user include structure:
o Header data KOMKDZ
o Item data KOMPDZ.
2. Add coding to the routines for assigning values to the new fields in order processing in program MV45AFZA. Use user exits:
o USEREXIT_MOVE_FIELD_TO_KOMKD (header fields)
o USEREXIT_MOVE_FIELD_TO_KOMPD (item fields)
3. Add the new field to the field catalog (Customizing activity Basic Functions  Material Determination  Maintain prerequisites for material determination  Maintain field catalog).
Will you please tell me what the step 1 and step 2 mean ? and what 's the user include structure and USEREXIT_MOVE_FIELD_TO_KOMKD/USEREXIT_MOVE_FIELD_TO_KOMPD and program MV45AFZA ?
thanks very much!Hi,
KOMKD is cummunication header and KOMPD is communication item which are actually contained in KOMGD structure. So automatically when you add a field to either of header or item it becomes a part of KOMGD. And moreover KOMGD contains all the fields of KOMKD and KOMPD which are required for materail determination.
USEREXIT_MOVE_FIELD_TO_KOMKD
Use this user exit to include or assign values to additional header fields in the communication structure KOMKD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination" .
USEREXIT_MOVE_FIELD_TO_KOMPD
Use this user exit to include or assign values to additional item fields in the communication structure KOMPD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination ".
regards
sadhu kishore -
F110 - Automatic Payment (User Exit, BTE, BADI)
I have requirement after generating payment document by F110 automatic payment. I need to send data to other system.
How to get all payment documents? Can I use a BTE, User Exit or BADI? Kindly help me.Hi ,
You can create a DMEE or genrate Idoc to another system .
If you want to send excel file then you can create a dmee file in transaction DMEE with same formt provided by bank/ another system .
many Thanks -
Automatic posting (user-exit, BADI, BTE...)
Hello, saperos (as we are known in Spain).
We have a requirement from our customer in order to post automatic documents (with call transaction or BAPI) just after the posting of another. I have doubts about the mechanism to do this, maybe a BADI, BTE...? The full business process is like this:
1) Post of down payment.
2) Post of invoice (same vendor). Just after this document is saved, we need to post "automatically" a clearing document to the previous down payment (F-54).
Do you know about a user-exit, BADI or BTE to do this?
Thanks in advance.Try using BADI 'AC_DOCUMENT'. Trnasaction SE18.
Regards,
Vishal Thakur. -
Mark a user status in production order automatically through user exit.
Hi all,
I have a requirement....I have a user profile which has got 4 status one of them is MFAR.
I need to check this status through an exit automatically so that it appears in the status line
and does not allow for goods receipt at the time of order creation through CO01 .
I have earlier tried with EXIT_SAPLBSVA_001 but this is only for formatting the text line whether I want to display that status.So it is not working for my case.
I could not find any exit for checking the checkbox for user status MFAR.
Thanks and Regards
SwetaHi Anup,
Have you used this exit for the purpose I mentioned as this is not just a simple header field it is status.
How do I mark any user status as active through this exit. Can you give any idea?
Thanks and Regards
Sweta -
ME21N, User Exit/customize program
Please , advice is it possible to check, whether the is customize program/user exit, in ME21N, When user save ME21N, some funny stuff happened, how to check whether there is a customize program/user exit when save ME21N, please advice
hi,
you can try transaction SMOD
and see if there are any active user exits for the following:
AMPL0001 User subscreen for additional data on AMPL
LMEDR001 Enhancements to print program
LMELA002 Adopt batch no. from shipping notification when posting a GR
LMELA010 Inbound shipping notification: Transfer item data from IDOC
LMEQR001 User exit for source determination
LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
LWSUS001 Individual customer source determination in Retail
M06B0001 Role determination for purchase requisition release
M06B0002 Changes to comm. structure for purchase requisition release
M06B0003 Number range and document number
M06B0004 Number range and document number
M06B0005 Changes to comm. structure for overall release of requisn.
M06E0004 Changes to communication structure for release purch. doc.
M06E0005 Role determination for release of purchasing documents
ME590001 Grouping of requsitions for PO split in ME59
MEETA001 Define schedule line type (backlog, immed. req., preview)
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEVME001 WE default quantity calc. and over/ underdelivery tolerance
MM06E001 User exits for EDI inbound and outbound purchasing documents
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into PO
MM06E008 Monitoring of contr. target value in case of release orders
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound processing
MMAL0004 ALE purchasing info record distribution: Inbound processing
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
MM06E011 Activate PReq Block
good luck
Shachar -
Need All Sales Order user exit
Neeed all Sales Order user exits
Hi,
Check these Exits and their corresponding Programs
User Exits In Sales Document Processing
This IMG step describes additional installation-specific processing in sales document processing. In particular, the required INCLUDES and user exits are described.
Involved program components
System modifications for sales document processing affect different areas. Depending on the modification, you make the changes in the program components provided:
MV45ATZZ
For entering metadata for sales document processing. User-specific metadata must start with "ZZ".
MV45AOZZ
For entering additional installation-specific modules for sales document processing which are called up by the screen and run under PBO (Process Before Output) prior to output of the screen. The modules must start with "ZZ".
MV45AIZZ
For entering additional installation-specific modules for sales document processing. These are called up by the screen and run under PAI (Process After Input) after data input (for example, data validation). The modules must start with "ZZ".
MV45AFZZ and MV45EFZ1
For entering installation-specific FORM routines and for using user exits, which may be required and can be used if necessary. These program components are called up by the modules in MV45AOZZ or MV45AIZZ.
User exits in the program MV45AFZZ
The user exits which you can use for modifications in sales document processing are listed below.
USEREXIT_DELETE_DOCUMENT
This user exit can be used for deleting data which was stored in a separate table during sales document creation, for example, if the sales document is deleted.
For example, if an additional table is filled with the name of the person in charge (ERNAM) during order entry, this data can also be deleted after the sales order has been deleted.
The user exit is called up at the end of the FORM routine BELEG_LOESCHEN shortly before the routine BELEG_SICHERN.
USEREXIT_FIELD_MODIFICATION
This user exit can be used to modify the attributes of the screen fields.
To do this, the screen fields are allocated to so-called modification groups 1 - 4 and can be edited together during a modification in ABAP. If a field has no field name, it cannot be allocated to a group.
The usage of the field groups (modification group 1-4) is as follows:
Modification group 1: Automatic modification with transaction MFAW
Modification group 2: It contains 'LOO' for step loop fields
Modification group 3: For modifications which depend on check tables or on other fixed information
Modification group 4: is not used
The FORM routine is called up for every field of a screen. If you require changes to be made, you must make them in this user exit.
This FORM routine is called up by the module FELDAUSWAHL.
See the Screen Painter manual for further information on structuring the interface.
USEREXIT_MOVE_FIELD_TO_VBAK
Use this user exit to assign values to new fields at sales document header level. It is described in the section "Transfer of the customer master fields into the sales document".
The user exit is called up at the end of the FORM routine VBAK_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBAP
Use this user exit to assign values to new fields at sales document item level. It is described in the section "Copy customer master fields into the sales document".
The user exit is called up at the end of the FORM routine VBAP_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBEP
Use this user exit to assign values to new fields at the level of the sales document schedule lines.
The user exit is called up at the end of the FORM routine VBEP_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBKD
Use this user exit to assign values to new fields for business data of the sales document. It is described in the section "Copy customer master fields into sales document".
The user exit is called up at the end of the FORM routine VBKD_FUELLEN.
USEREXIT_NUMBER_RANGE
Use this user exit to define the number ranges for internal document number assignment depending on the required fields. For example, if you want to define the number range depending on the sales organization (VKORG) or on the selling company (VKBUR), use this user exit.
The user exit is called up in the FORM routine BELEG_SICHERN.
USEREXIT_PRICING_PREPARE_TKOMK
Use this user exit if you want to include and assign a value to an additional header field in the communication structure KOMK taken as a basis for pricing.
USEREXIT_PRICING_PREPARE_TKOMP
Use this user exit if you want to include or assign a value to an additional item field in the communication structure KOMP taken as a basis for pricing.
USEREXIT_READ_DOCUMENT
You use this user exit if further additional tables are to be read when importing TA01 or TA02.
The user exit is called up at the end of the FORM routine BELEG_LESEN.
USEREXIT_SAVE_DOCUMENT
Use this user exit to fill user-specific statistics update tables.
The user exit is called up by the FORM routine BELEG-SICHERN before the COMMIT command.
Note
If a standard field is changed, the field r185d-dataloss is set to X. The system queries this indicator at the beginning of the safety routine. This is why this indicator must also be set during the maintenance of user-specific tables that are also to be saved.
USEREXIT_SAVE_DOCUMENT_PREPARE
Use this user exit to make certain changes or checks immediately before saving a document. It is the last possibility for changing or checking a document before posting.
The user exit is carried out at the beginning of the FORM routine BELEG_SICHERN.
User exits in the program MV45AFZA
USEREXIT_MOVE_FIELD_TO_KOMKD
Use this user exit to include or assign values to additional header fields in the communication structure KOMKD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination".
USEREXIT_MOVE_FIELD_TO_KOMPD
Use this user exit to include or assign values to additional item fields in the communication structure KOMPD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination".
USEREXIT_MOVE_FIELD_TO_KOMKG
Use this user exit to include or assign values to additional fields in the communication structure KOMKG taken as a basis for material determination and material listing. This is described in detail in the section "New fields for listing/exclusion".
USEREXIT_MOVE_FIELD_TO_KOMPG
Use this user exit to include or assign values to additional fields in the communication structure KOMPG taken as a basis for material determination and material listung. This is described in detail in the section "New fields for listing/exclusion".
USEREXIT_REFRESH_DOCUMENT
With this user exit, you can reset certain customer-specific fields as soon as processing of a sales document is finished and before the following document is edited.
For example, if the credit limit of the sold-to party is read during document processing, in each case it must be reset again before processing the next document so that the credit limit is not used for the sold-to party of the following document.
The user exit is executed when a document is saved if you leave the processing of a document with F3 or F15.
The user exit is called up at the end of the FORM routine BELEG_INITIALISIEREN.
User-Exits in program MV45AFZB
USEREXIT_CHECK_XVBAP_FOR_DELET
In this user exit, you can enter additional data for deletion of an item. If the criteria are met, the item is not deleted (unlike in the standard system).
USEREXIT_CHECK_XVBEP_FOR_DELET
In this user exit, you can enter additional data for deletion of a schedule line. If the criteria are met, the schedule line is not deleted (unlike in the standard system).
USEREXIT_CHECK_VBAK
This user exit can be used to carry out additional checks (e.g. for completion) in the document header. The system could, for example, check whether certain shipping conditions are allowed for a particular customer group.
USEREXIT_CHECK_VBAP
This user exit can be used to carry out additional checks (e.g. for completion) at item level.
USEREXIT_CHECK_VBKD
The user exit can be used to carry out additional checks (e.g. for completion) on the business data in the order.
USEREXIT_CHECK_VBEP
This user exit can be use to carry out additional checks (e.g. for completion) on the schedule line. During BOM explosion, for example, you may want certain fields to be copied from the main item to the sub-items (as for billing block in the standard system).
USEREXIT_CHECK_VBSN
You can use this user exit to carry out additional checks (e.g. for completion) on the serial number.
USEREXIT_CHECK_XVBSN_FOR_DELET
In this user exit, you can enter additional criteria for deletion of the serial number. If the criteria are met, the serial number is not deleted (unlike in the standard system).
USEREXIT_FILL_VBAP_FROM_HVBAP
You can use this user exit to fill additional fields in the sub-item with data from the main item.
USEREXIT_MOVE_FIELD_TO_TVCOM_H
You can use this user exit to influence text determination for header texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.
USEREXIT_MOVE_FIELD_TO_TVCOM_I
You can use this user exit to influence text determination for item texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.
User-Exits for product allocation:
The following user exits all apply to structure COBL, in which the data for account determination is copied to item level.
USEREXIT_MOVE_FIELD_TO_COBL
Option to include new fields in structure COBL.
USEREXIT_COBL_RECEIVE_VBAK
Option to assign values from the document header to the new fields.
USEREXIT_COBL_RECEIVE_VBAP
Option to supply values from the item to the new fields.
USEREXIT_COBL_SEND_ITEM
A changed field can be copied from the structure into the item. You could use the user exit to display a certain field in the account assignment block (see also MV45AFZB).
USEREXIT_COBL_SEND_HEADER
A changed field can be copied from the structure to the header (see source text MV45AFZB)
USEREXIT_SOURCE_DETERMINATION
You can use this user exit to determine which plant will be used for the delivery. In the standard system, the delivering plant is copied from the customer master or the customer-material info record. If you want to use a different rule, then you must enter it in this user exit.
USEREXIT_MOVE_FIELD_TO_ME_REQ
With this user exit you can include additional fields for the following fields:
EBAN (purchase requisition)
EBKN (purchase requisition-account assignment)
USEREXIT_GET_FIELD_FROM_SDCOM
Option to include new fields for the variant configuration. Fields that are included in structure SDCOM can be processed and then returned to the order.
USEREXIT_MOVE_WORKAREA_TO_SDWA
You can use this user exit to format additional work areas for the variant configuration. You will find notes on the user exit in MV45AFZB.
User-Exits for first data transfer:
The following user exits can only be used for the first data transfer.
Note
Only use the user exits if the names/fields do NOT have the same name.
USEREXIT_MOVE_FIELD_TO_VBAKKOM
Option to include additional fields in structure VBAKKOM (communiction fields for maintaining the sales document header)
USEREXIT_MOVE_FIELD_TO_VBAPKOM
Option to include additional fields in structure VBAPKOM (communication fields for maintaining a sales item)
USEREXIT_MOVE_FIELD_TO_VBEPKOM
Option to include additional fields in structure VBEPKOM (communication fields for maintaining a sales document schedule line)
USEREXIT_MOVE_FIELD_TO_VBSN
You can use this user exit to include fields in structure VBSN (scheduling agreement-related change status).
USEREXIT_MOVE_FIELD_TO_KOMKH
You can use this user exit to include new fields for batch determination (document header).
USEREXIT_MOVE_FIELD_TO_KOMPH
You can use this user exit to include new fields for batch determination (document item).
USEREXIT_CUST_MATERIAL_READ
You can use this user exit to set another customer number in the customer material info record (e.g. with a customer hierarchy)
USEREXIT_NEW_PRICING_VBAP
Option for entry of preconditions for carrying out pricing again (e.g. changes made to a certain item field could be used as the precondition for pricing to be carried out again). Further information in MV45AFZB.
USEREXIT_NEW_PRICING_VBKD
Option for entry of preconditions for carrying out pricing again (e.g. changes to the customer group or price group could be set as the preconditions for the system to carry out pricing again). Further information in MV45AFZB.
User-Exits in Program MV45AFZD
USEREXIT_CONFIG_DATE_EXPLOSION
The BOM is exploded in the order with the entry date. You can use this user exit to determine which data should be used to explode the BOM (explosion with required delivery date, for example).
User exits in the program FV45EFZ1
USEREXIT_CHANGE_SALES_ORDER
In the standard SAP R/3 System, the quantity and confirmed date of the sales document schedule line is changed automatically if a purchase requisition is allocated, and it or the sales document is changed (for example, quantity, date).
If you want to change this configuration in the standard system, you can define certain requirements in order to protect your sales orders from being changed automatically. Use this user exit for this purpose. Decide at this point whether the schedule lines are to be changed.
User-Exits in Program RV45PFZA
USEREXIT_SET_STATUS_VBUK
In this user exit you can you can store a specification for the reserve fields in VBUK (header status). Reserve field UVK01 could, for example, be used for an additional order status (as for rejections status, etc.).
The following workareas are available for this user exit:
VBUK (header status)
FXVBUP (item status)
FXVBUV (Incompletion)
USEREXIT_SET_STATUS_VBUP
In this user exit you can you can store a specification for the reserve fields for VBUP (item status).
The following workareas are available for this user exit:
FXVBAP (Item data)
FXVBAPF (Dynamic part of order item flow)
FXVBUV (Incompletion)
USEREXIT_STATUS_VBUK_INVOICE
You can use this user exit to influence billing status at header level.
User exits in the screens
Additional header data is on screen SAPMV45A 0309, additional item data on screen SAPMV45A 0459. These screens contain the Include screens SAPMV45A 8309 or SAPMV45A 8459 as user exits.
Fields which are also to be included in the sales document for a specific installation should be included on the Include screens for maintaining. If an application-specific check module is needed for the fields, this can be included in the Include MV45AIZZ. The module is called up in the processing logic of the Include screens.
For field transports, you do not have to make changes or adjustments.
Example
A new field, VBAK-ZZKUN, should be included in table VBAK.
If the check is defined via the Dictionary (fixed values or check table) the field must be included with the fullscreen editor in the Include screen SAPMV45A 8309. In this case, no change has to be made to the processing logic.
User Exits in Program MV45AFZ4
USEREXIT_MOVE_FIELD_TO_KOMK
You can use this user exit to add or edit additional header fields in the communication structure - KOMK- for free goods determination. For more information, see the New Fields for Free Goods Determination IMG activity.
USEREXIT_MOVE_FIELD_TO_KOMP
You can use this user exit to add or edit additional item fields in the communication structure KOMP for free goods determination. For more information see the New Fields for Free Goods Determination IMG activity.
User Exits in the SAPFV45PF0E and SAPFV45PF0C Programs
EXIT_SAPFV45P_001
You can use this user exit to decide whether intercompany billing data is used in the profitability segment for cross-company code sales, or whether the data comes from external billing (external customer, sales data from the selling company code.
Reward points if helpful.
Regards
Ravi -
User exit/BADI in MIRO that would trigger invoice quantity block.
Hi,
Is there a way to enchance MIRO so that an invoice quantity block will be set automatically through user exit/BADI?
My requirement is that if an invoice is to be posted onto a PO line using an IO, the invoice needs to be processed onto the PO line up to the total of the PO line. And if the invoice goes above the PO line and there is still some budget on the IO, the invoice should get a quantity block.
Also, the quantity block should be set before posting the invoice.
Thanks.Hi,
Exit Name Description
LMR1M001 User exits in Logistics Invoice Verification
LMR1M002 Account grouping for GR/IR account maintenance
LMR1M003 Number assignment in Logistics Invoice Verification
LMR1M004 Logistics Invoice Verification: item text for follow-on docs
LMR1M005 Logistics Inv. Verification: Release Parked Doc. for Posting
LMR1M006 Logistics Invoice Verification: Process XML Invoice
MRMH0001 Logistics Invoice Verification: ERS procedure
MRMH0002 Logistics Invoice Verification: EDI inbound
MRMH0003 Logistics Invoice Verification: Revaluation/RAP
MRMN0001 Message output and creation: Logistics Invoice Verification
Badi Name Description
INVOICE_UPDATE Business Add-In: Logistics Invoice Verification
INVOICE_UPDATE Transfer Invoice Receipt to Records Management
INVOICE_UPDATE Event manager communication from invoice processing
INVOICE_UPDATE Rückantwort ins CRM aus der Lieferantenrechnung
INVOICE_UPDATE Implementierung, um S1NVEXC zu übermitteln
INVOICE_UPDATE Save FI Document Type for Principle of Prudence
INVOICE_UPDATE Vendor Evaluation Based on Documents from IV
Check this badi's and user exits.
Hope this helps.
Regards,
Qamar. -
Shipment cost - change customization of item categories via user exit
hey ,
is it possible to manpiulate the item categories customization to open manually/ automaticly via user exit
even if i customized them to open manually ?
for example :
if the shipment type is X - open manually , else automaticly .
Regards
ASA .
Edited by: ASA MOKED on Dec 23, 2009 11:38 AM -
Can I create new IDOC segmemnt in user exit( edidd structure ) forcefully ?
RFFOEDI1 is the standard driver program which call the below user exit zxf08u06...
Am programing user exit ZXF08U06...
In user exit zxf08u06, actually edidd structue contains all the segments...
In user exit zxf08u06, I am reading each segment which are in edidd structure, pulling required data from database and passing this data into this segment, so that this data appears in the IDOC's segments (we02).
Now I need to create one new segment which is not there in edidd structure.
Still I inserted this new segment and updated data. This new is coming in IDOC out put But IDOC was crested with error . Am I not supposed to create new segment whcih was not there in edidd structure forcefully ?
MUCH THANKS IN ADVENCE.Hi
Go thru the bellow links
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400365
http://www.thespot4sap.com/Articles/SAP_ALE_IDOCS.asp
Thanks
Sunil -
hi all ,
i want to learn user exits , how to use them and what are the uses of user exit ... can any one tell me the best link or documentation to learn user exits from the basics..
it will be great favour and person will be rewarded with points
Thanks and regards
nikesh kumarcheck the foll link,
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
also refer
http://www.sap-img.com/abap/what-is-user-exits.htm
Creating menu exits
http://help.sap.com/saphelp_nw04/helpdata/en/c8/19762743b111d1896f0000e8322d00/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/83/7a18cbde6e11d195460000e82de14a/frameset.htm
For screen exits.
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
chech these links for user exists its usefull
http://www.allsaplinks.com/user_exit.html
http://help.sap.com/saphelp_47x200/helpdata/en/dd/561602545a11d1a7020000e829fd11/frameset.htm
http://www.sap-basis-abap.com/sapab013.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
refer
just refer to the link below for step by step procedure with screen shots
http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g
Check this link:
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975e643b111d1896f0000e8322d00/frameset.htm
http://help.sap.com/saphelp_47x200/helpdata/en/52/670ba2439b11d1896f0000e8322d00/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/fc/eb2d40358411d1829f0000e829fbfe/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/10/e7dbde82ba11d295a40000e8353423/content.htm
http://fuller.mit.edu/tech/dialog_programming.html
http://sap.mis.cmich.edu/sap-abap/abap09/index.htm
http://sap.mis.cmich.edu/sap-abap/abap09/sld011.htm
Also, refer this:
Overview
R/3 provides three "customization spots" that allow you to enhance FI/CO features without modifying the standard code. Although often collectively referred to as "user exits," two of the three have different names. SAP Enhancements are used to expand the standard functionality within SAP. Enhancements use function modules and are called from the standard SAP code. Each module in the system has a set of delivered enhancements that help companies expand the standard functionality where they need it. Enhancements were new in release 3.0.
The Open FI Interfaces or Business Transaction Events are also used to expand the standard functionality within SAP. These events are defined in the IMG. Business Transaction Events were new in release 4.0. They are not available for all modules and are not called on all integrated transactions into FI as of release 4.5B. This will change with each release and should be retested.
The older User Exits in FI/CO are "Z" programs that are defined in table T80D for client-dependent user exits, and in table T80I for client-independent user exits. These are also used to expand the standard functionality within the FI/CO modules. These User Exits have been available since the early releases of SAP. All of these FI/CO User Exits are listed in this document in the Configuring User Exits (Older). The list is included because these User Exits are not a part of the Enhancements or Business Transaction Events and do not have an Info System for searching.
Benefits Standard SAP functionality can be enhanced without modification to the standard code.
Upgrades do not erase the functionality and it does not have to be re-transported or re-entered into the system. The enhancements should be thoroughly tested when upgrading to ensure the system will still work as implemented.
Configuring SAP Enhancements
Basic Steps in Configuring an Enhancement
Find the appropriate Enhancement.
Enter the ABAP code in the "Z" program within the function module.
Create a project.
Add the Enhancement to the project.
Activate the project.
Example Business Scenario for Enhancements
Company A has a requirement to validate all customer master records created with a U.S. address. The U.S. entity reports on the industry field on the customer master. This is only a U.S. requirement and should not be required for the other countries, so the field status would not work. To accomplish this requirement, Company A will need to set up an Enhancement for the customer master transaction. The necessary steps are detailed below with screenprints. This example was configured in a 4.6C system.
Detailed Steps
1. Tools ABAP Workbench Utilities Enhancements Definition Utilities List Enhancements
2. Do not execute this without any parameters! There are too many Enhancements and it will probably time out. Youre searching for a customer master exit. Enter mast in the short text (see Figure 1). Youll start there. Searching for an exit can be tricky, so make sure you try several things before giving up.
3. Execute the search.
Start Your Search for a Master Exit Here
4. Look through the list until you find the Enhancement for User exits: Customer Master Data.
5. Double-click on the enhancement SAPMF02D. This will take you to the details of the Enhancement and list the function modules included in the Enhancement.
6. To continue, double-click on the function module EXIT_SAPMF02D_001
7. This will take you to the source code for the function module. Click on the Import tab to review the tables/fields that are available for the Enhancement
The Tables That Are Available for the Enhancement
8. To view the tables/fields that can be changed in the function module, click on the Export and Changing tabs. For this function module, these tabs are empty because you can only validate data. You cannot change any fields in this enhancement.
9. Return to the Source Code tab.
10. Scroll down until you see the Include statement in the program. The "Z" program listed after the Include is where your code will be written
Your Program Will Begin After the Include Statement
11. Double-click on the Include. You will be prompted to create the include. Click on Yes to create.
12. At this point you will be prompted to enter a development class and to create a transport request. If you do not know which development class to use, please contact your technical team.
13. Enter the following ABAP code into the program
User exit to ensure that all US customers have a group key
entered on the customer master.
if i_kna1-land1 = 'US' and
i_kna1-brsch = ' '.
message e001(F2).
endif.
The ABAP Code You Need to Enter
14. Note that the table name matches the table name in the import tab tables.
15. In this example you are using the standard message class F2 with message number 001. Normally, you will create your own message within your own message class. All customer message classes must begin with a "Z" and are created in transaction SE91.
16. Save the program.
17. The next step is to create the project. Go to transaction code CMOD or follow menu path: Tools ABAP Workbench Utilities Enhancements Project Management.
18. Enter the project name; begin the name with a "Z."
19. Click on the Create button.
Click on Create After You Type in the Project Name
20. Enter in a description for the project.
21. Click on the Enhancement Assignments button.
22. You will be prompted to save the enhancement. Click on Yes.
23. At this point you will be asked for a development class and to create a transport for the project. You may use the same one created when adding the ABAP code to the function module.
24. Enter the name of the enhancement SAPMF02D (see Figure 6).
Enter the Name of the Enhancement Here
25. Save the project.
26. Back out of the enhancement assignment.
27. Activate the project by hitting the Activate button.
The SAP Enhancement is ready to be tested! Try creating a customer with U.S. as the country and a blank group key. Be sure to test one with a group key to make sure the message is not displayed in error as well.
Configuring Business Transaction Events
Basic Steps in Configuring an Event
Make sure the application is active for Business Transaction Events.
Copy the sample interface function module into a "Z" function module.
Enter the ABAP code into the source code section of the new "Z" function module. You may choose to create a "Z" program to enter the code into and then insert the "Z" program into your function module source code.
Activate the function module.
Assign the function module to the event, country and application.
Example Business Scenario for Business Transaction Events
Company A would like to copy the group key field from the vendor master into the allocation field on all the line items within a vendor invoice and payments, including the vendor lines. This requirement assumes only one vendor is posted to in a document.
To accomplish this requirement, Company A will use the Business Transaction Event 1130, Post Document: SAP Internal Field Substitution.
1. IMG Menu Path: Financial Accounting Financial Accounting Global Settings Use Business Transaction Events Environment Infosystem (Processes).
2. Find the correct Business Event. You are updating a field, so you select the Processes Info System instead of the Publish and Subscribe Info System.
3. Execute the search with the defaults.
4. Find the correct interface for updating a document: Post Document: SAP- Internal Field Substitution
Find the Correct Interface for the Business Event
5. Put your cursor on the event and click on the Sample Function Module button.
6. You are now in transaction SE37 Function Builder. This is the function module (sample_process_00001130) you will need to copy into a "Z" name function module for your coding
Figure 8. This Is the Function Module You Need to Copy Your "Z" Name Function Module
7. Click on the Copy button.
8. Enter the "Z" function module name in the To Function Module field
9. Enter a Function Group. If you need to create a "Z" function group, go to transaction code SE37 and follow menu path: Go to Function Groups Create Group. A function group is a logical grouping of function modules, and the ABAP code is generated for function groups. You will be prompted for a development class and transport when creating the function group.
Enter Your "Z" Function Module Name Here
10. In Function Builder (transaction SE37), enter the new "Z" function module. Click on the Change button.
11. The system will default into the source code screen where you may enter your ABAP code.
12. Notice the tables available for the code. Additional tables may be declared if necessary.
13. Enter the following source code
tables: lfa1.
data: z_groupkey like lfa1-konzs.
z_groupkey = ' '.
loop at t_bseg.
check for vendor lines. If one is found, read the vendor master and
retrieve the group key field.
if t_bseg-koart eq 'K'.
select single konzs from lfa1 into z_groupkey
where lifnr = t_bseg-lifnr.
endif.
Move the group key field into all line items allocation field.
loop at t_bsegsub.
t_bsegsub-zuonr = z_groupkey.
modify t_bsegsub index sy-tabix.
endloop. "t_bsegsub
endloop. "t_bseg
The Screen Where You Enter Your Source Code
14. Save the function module.
15. Back out to the main Function Builder screen by clicking on the green arrow button.
16. Activate the function module by clicking on the Activate button
. Activate the Function Module from This Screen
17. Assign the function module to the event in the IMG: Financial Accounting Financial Accounting Global Settings Business Transaction Events Settings Process Function Modules of an SAP Appl.
18. Hit enter past the warning messages that this is SAP data.
19. Click on the New Entries button.
20. Enter the process for your interface. In your example it is 00001130.
21. Enter the country the interface is valid for. If it is valid for all countries, leave this field blank.
22. Enter the application the interface should be called for. If it should be called for all applications, leave this field blank. Please note that not all integrated transactions are programmed to go through these interfaces! You will need to test to find out!
23. Enter the new "Z" function module
Enter Your New "Z" Function Module Here
24. Save the settings. At this point you will be prompted for a CTS number for the configuration change.
25. The Business Transaction Event is complete! You are ready for testing.
Configuring User Exits (Older)
Basic Steps in Configuring an User Exit
Create a "Z" program for the User Exits and enter the necessary ABAP code.
Enter the new program name into table T80D.
Configure the application to call the User Exit.
List of User Exits
Variable Field Movements
Substitutions in FI, CO, PCA
Validations in FI, CO, PCA
Rollups in SPL
Fixed Field Movements in SPL
Cost Center Summarization on Detail Screen
Sets Formula Variables
Example Business Scenario for User Exits
Company A would like to add a "Z" field in the Special Purpose Ledger to capture a Business Unit field for reporting. They have used all the standard SAP fields such as Business Area and Profit Center. The field will only be used for reporting and is only needed in the Special Purpose Ledger. You created a special ledger table (ZZSPL1) with field Z_BUNIT and need to populate this field based on a combination of G/L account, fund and functional area.
To accomplish this requirement, Company A will use the Variable Field Movement User Exit. To make maintenance easier, table ZZBUSUNIT was created with the G/L account, fund and functional area fields as key fields, and the business unit field as a non-key field. You generated the table maintenance so the table could be updated using transaction SM30. SAP users update the business unit determination rules in table ZZBUSUNIT by entering the G/L account, fund and functional area, and then the business unit that combination should be posting to. The User Exit will read table ZZBUSUNIT using the G/L account, fund and functional area from the posting transaction and determine the business unit. The steps for using the user exit are detailed below. This example was created on a 4.6C system.
1. Copy the delivered template User Exit program RGIVU000_TEMPLATE into a "Z" program. Follow menu path Tools ABAP Workbench Development ABAP Editor (transaction code SE38). In early releases, the delivered program was RGIVU000.
2. You will be prompted for a development class and a transport. Please check with the technical team for the correct development class.
3. At the initial ABAP Editor screen, enter your new "Z" program name, select the Source Code button and click on Change
To Enter Your New Code, Select Source Code and Click on the Change Button
4. Enter the following code in the User Exit (Figure 14):
FORM E01_MVC USING FROM_FIELD TO_FIELD.
to_field = 'CORP'. "Set a default business unit.
read table zzbusunit to determine the business unit field.
select single z_bunit from zzbusunit into to_field
where hkont = accit_glx-hkont and
geber = accit_glx-geber and
fkber = accit_glx-fkber.
ENDFORM.
Figure 14. Enter Your New Code at This Screen.
5. Activate the program by clicking on the Activate button.
6. Change the configuration in the User Exit table to point to your new "Z" program.
7. Follow the IMG menu path: Financial Accounting Special Purpose Ledger Basic Settings User Exits Maintain Client Specific User Exits.
8. The entry to maintain is application area GIMV: Variable Field Movement. Enter your "Z" program
Enter Your "Z" Program in the Application Area GIMV: Variable Field Movement
9. Save the changes.
10. The final configuration step is to assign the User Exit in the variable field movement for your special ledger table. In the IMG: Financial Accounting  Special Purpose Ledger  Basic Settings  Master Data  Maintain Field Movements. Field movements control how the fields in a special ledger table are populated. They can be populated straight from other fields in a posting or through User Exits.
After You Assign the Business Unit Field and the G/L Account, the Exit Field Should Contain U01.
11. Assign the business unit field as a receiver and the G/L account as the sender. The Exit field should contain U01 (see Figure 16).
12. The User Exit number U01 calls User Exit E01_MVC form in the "Z" program.
13. Save the field movement.
14. You are ready to test your User Exit!
Reward points if useful. -
Report, back ground job, user exit, function module used
I have more than 100 Z program and report painter program, user exit, function module for one country, inside this country, there are many company code, for a specific company code, I want to know which Z program/CMOD user exit/function module/back groundjob is used in this company code, any table or transaction can do?
also can we find all z tables used in this company code?May be this url can help you http://it.toolbox.com/wiki/index.php/Find_data_in_your_SAP_system_and_know_which_tables_do_what
-
Calling a driver program by submit in user exit for PGI
Hi Gurus,
I have a question regarding post goods issue (PGI) for transaction vl01n,vl02n and vl06g.
earlier i have created a smartofrm and a driver program for sending the form output attachment in a mail after delivery posting manually.
for this i have created a smartform and driver program in which all the logic to attach and mail send is written on delivery posting.
but now customer want this fucntionality on Post goods issue (PGI), when user go to trasaction vl01n ,vl02n and vlo6g and pressing PGI button,
then mail should be sent automatically with for output attachment.
i have found a user exit which is being triggerd on PGI press MV50AFZ1 in which implemented the implecit enhancement in perform
user_exit_save_document_prepeare with below code.
ENHANCEMENT 1 ZPGI_MAIL_SEND. "active version
DATA c_zlf TYPE likp-lfart.
IF sy-ucomm = 'WABU_T' and xlikp-lfart = c_zlf.
SUBMIT ZSD_DECLARATION_CONFORMITY AND RETURN.
ENDIF.
ENDENHANCEMENT.
After going to transaction vl02n i am putting unposted delivery number and clicking on PGI button.
in debugging its going to condition check for ucomm for PGI buttion and delivery type.
if condtion is fullfiled and curser going further on submit statement, but without executing the driver program ZSD_DECLARATION_CONFORMITY it coming out of enhancement.
its not performing the task which is develped in the driver program.
Please help me with the submit statement structure if i am missing any or other solution for my problem.
Br,
SuryaHi Team,
I have used the perform.
ENHANCEMENT 1 ZPGI_MAIL_SEND. "active version
DATA c_zlf TYPE likp-lfart.
IF sy-ucomm = 'WABU_T' and xlikp-lfart = c_zlf.
Perform entry( ZSD_DECLARATION_CONFORMITY )using return screen.
ENDIF.
ENDENHANCEMENT.
Now i am able to communicate with my program.
Thanks,
surya -
User Exit to call program to create IDocs.
Hi All,
For any creation/changes of material master using MM01/MM02 (after save ) one of the user exit will trigger.
From the user exit, I have to call the custom program to create MATMAS IDOCs.
if any failures in changes/creation of material master. It has to roll back eveything created by program.
Please let me know how to achieve this with out calling an event.
Thanks - VinayThere are a number of standard methods to automatically create the IDOC. You can activate the change pointers and depending on need, use BD64 to create a distribution model, and create the necessary WE20 setups to create the outbound IDOC.
If you have to process the IDOC using custom logic, you can define that as well - although it's not clear why you need a custom generating program. You can insert code into one of the IDOC user-exits to manipulate the content if needed. Also, don't overlook the pre-delivered stuff from SAP that provides filtering out of segments and the like.
There are a few good SAP PRess books about doing ALE distribution -- if this is an unfamiliar area, it's worth the cost to buy one -- if you spend any time around IDOCS, you'll appreciate it.
Maybe you are looking for
-
Hi All, Can the system deactivate general ledger account so the account can no longer be posted to but still used in financial reporting? Thanks Sap Guru
-
Questions re: Bridge CS3
I am new into using Bridge even though I have it for a while. I am trying to solve these problems: 1. How come some files do not have thumb nail previews, but when I play them in the monitor windows, they play fine. Just no thumb nail preview? 2. Is
-
Dear All, What is the Meaning of Sales Order Outbond Delivery. Regards
-
I need to exclude links to their extension, for example if they are. Eps exclude it and. Jpg include it , someone knows if could do with regular expressions or some other method? Thanks in advance.
-
Photoshop archaeology -- when was the 1TB disk size limitation removed?
I've just joined a photo lab as IT manager. They are running a mixture of Photoshoop versions and have some horrible operational hacks to get around the 1TB drive size limiation in PS 7. We're a small shop and can't afford to upgrade all of our Photo