The user exit on the sap post the account document
Dear all.
I use the t-code mb01 or migo to receipt goods for purchase order.When I execute post or save,the sap generate the material document and the account document.The account documents have two item with account 12110000 and account 12010000.And I know this two account was configure in the t-code omwb.
Now my company have a new requirement:
When the sap generate the account documents,I need to write some code to do some judgement and change the account 12110000 to account 35510000 or other account.The logic of the code was complex and it's impossible to do in sap standard configure.So I want to find the user exit on the sap post the account document.In the user exit I would write some code to do some judgement and change the account 12110000 to account 35510000 or other account.
But I can't found the user exit.So I need the experts to give me some reference.
Regard
Yoda
Hi,
You may use ZXF48U01 of EXIT_SAPLF048_001 of enhancement F180A001 for the same.
Please note that control comes here for no of transactions hence you need to specifically check for sy-tcode, for which your 'exit' logic needs o be executed.
I hope this helps,
Regards
Raju Chitale
Similar Messages
-
Finding the user-exits of a SAP transaction code
Hi All,
Can any one tell me how to find the user exits related to particular transaction code?
Regards,
PremDear PremKumar,
*Please Search SDN Before posting any thread the question you have asked is already available since you are new to SDN and for your reference iam pasting the code copy paste the same code and execute and give the TCODE then it will list out all the exits.
*REPORT ZUSEREXIT.
report zuserexit no standard page heading.
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
tables : tstct.
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
parameters : p_tcode like tstc-tcode obligatory.
select single * from tstc where tcode eq p_tcode.
if sy-subrc eq 0.
select single * from tadir where pgmid = 'R3TR'
and object = 'PROG'
and obj_name = tstc-pgmna.
move : tadir-devclass to v_devclass.
if sy-subrc ne 0.
select single * from trdir where name = tstc-pgmna.
if trdir-subc eq 'F'.
select single * from tfdir where pname = tstc-pgmna.
select single * from enlfdir where funcname =
tfdir-funcname.
select single * from tadir where pgmid = 'R3TR'
and object = 'FUGR'
and obj_name eq enlfdir-area.
move : tadir-devclass to v_devclass.
endif.
endif.
select * from tadir into table jtab
where pgmid = 'R3TR'
and object = 'SMOD'
and devclass = v_devclass.
select single * from tstct where sprsl eq sy-langu and
tcode eq p_tcode.
format color col_positive intensified off.
write:/(19) 'Transaction Code - ',
20(20) p_tcode,
45(50) tstct-ttext.
skip.
if not jtab[] is initial.
write:/(95) sy-uline.
format color col_heading intensified on.
write:/1 sy-vline,
2 'Exit Name',
21 sy-vline ,
22 'Description',
95 sy-vline.
write:/(95) sy-uline.
loop at jtab.
select single * from modsapt
where sprsl = sy-langu and
name = jtab-obj_name.
format color col_normal intensified off.
write:/1 sy-vline,
2 jtab-obj_name hotspot on,
21 sy-vline ,
22 modsapt-modtext,
95 sy-vline.
endloop.
write:/(95) sy-uline.
describe table jtab.
skip.
format color col_total intensified on.
write:/ 'No of Exits:' , sy-tfill.
else.
format color col_negative intensified on.
write:/(95) 'No User Exit exists'.
endif.
else.
format color col_negative intensified on.
write:/(95) 'Transaction Code Does Not Exist'.
endif.
at line-selection.
get cursor field field1.
check field1(4) eq 'JTAB'.
set parameter id 'MON' field sy-lisel+1(10).
call transaction 'SMOD' and skip first screen.
Can you closse the thread if your problem got fixed !!!!
Cheers
fareed -
Can i know the user exits which should trigger while saving billing docu
hi,
please can u help me to find out user exits which should trigger while saving billing documents.A couple years ago I downloaded this program, I think from SAPFANS. I don't take any credit for it...Not sure who originally wrote it. Just type in the t-code and hit execute.
*& Report name : Identify and Drill-Down to SAP User Exits. *
*& Program name : ZZ_FIND_USER_EXITS *
REPORT ZZ_FIND_USER_EXITS
NO STANDARD PAGE HEADING
LINE-SIZE 132
LINE-COUNT 65
MESSAGE-ID MM.
D A T A D E F I N I T I O N *
TABLES : TSTC, " SAP Transaction Codes
TADIR, " Directory of Repository Objects
MODSAPT, " SAP Enhancements - Short Texts
MODACT, " Modifications
TRDIR, " System Table TRDIR
TFDIR, " Function Module
ENLFDIR, " Additional Attributes for Function Modules
TSTCT. " Transaction Code Texts
S E L E C T I O N S C R E E N *
PARAMETERS : P_TCODE LIKE TSTC-TCODE OBLIGATORY.
I N T E R N A L S T R U C T U R E S & T A B L E S *
DATA : GT_TADIR LIKE TADIR OCCURS 0 WITH HEADER LINE.
V A R I A B L E S *
DATA :
GV_FIELD1(30) TYPE C,
GV_DEVCLASS LIKE TADIR-DEVCLASS.
C O N S T A N T S *
CONSTANTS:
GC_F LIKE TRDIR-SUBC VALUE 'F',
GC_R3TR LIKE TADIR-PGMID VALUE 'R3TR',
GC_FUGR LIKE TADIR-OBJECT VALUE 'FUGR',
GC_SMOD LIKE TADIR-OBJECT VALUE 'SMOD',
GC_PROG LIKE TADIR-OBJECT VALUE 'PROG'.
R A N G E S *
RANGES:
GR_VKORK FOR WKBP-VKORG.
E V E N T P R O C E S S I N G *
INITIALIZATION.
AT SELECTION-SCREEN.
SELECT SINGLE PGMNA
INTO TSTC-PGMNA
FROM TSTC
WHERE TCODE = P_TCODE.
IF SY-SUBRC <> 0.
MESSAGE E899(MM)
WITH TEXT-E01 " Input Transaction Code is Invalid.
TEXT-E02. " Please Correct !!
ENDIF.
SELECT SINGLE TTEXT
INTO TSTCT-TTEXT
FROM TSTCT
WHERE SPRSL = SY-LANGU
AND TCODE = P_TCODE.
START-OF-SELECTION.
CLEAR GV_DEVCLASS.
SELECT SINGLE DEVCLASS
INTO GV_DEVCLASS
FROM TADIR
WHERE PGMID = GC_R3TR
AND OBJECT = GC_PROG
AND OBJ_NAME = TSTC-PGMNA.
IF SY-SUBRC <> 0.
SELECT SINGLE SUBC
INTO TRDIR-SUBC
FROM TRDIR
WHERE NAME = TSTC-PGMNA.
IF TRDIR-SUBC = GC_F. " Function Group
SELECT SINGLE FUNCNAME
INTO TFDIR-FUNCNAME
FROM TFDIR
WHERE PNAME = TSTC-PGMNA.
SELECT SINGLE AREA
INTO ENLFDIR-AREA
FROM ENLFDIR
WHERE FUNCNAME = TFDIR-FUNCNAME.
CLEAR GV_DEVCLASS.
SELECT SINGLE DEVCLASS
INTO GV_DEVCLASS
FROM TADIR
WHERE PGMID = GC_R3TR
AND OBJECT = GC_FUGR
AND OBJ_NAME = ENLFDIR-AREA.
ENDIF.
ENDIF.
SELECT *
FROM TADIR
INTO TABLE GT_TADIR
WHERE PGMID = GC_R3TR
AND OBJECT = GC_SMOD
AND DEVCLASS = GV_DEVCLASS.
FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
WRITE:/(19) 'Transaction Code - ',
20(20) P_TCODE,
45(36) TSTCT-TTEXT.
SKIP.
IF NOT GT_TADIR[] IS INITIAL.
WRITE:/(95) SY-ULINE.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/1 SY-VLINE,
2 'Exit Name',
21 SY-VLINE ,
24 'Description',
95 SY-VLINE.
WRITE:/(95) SY-ULINE.
SORT GT_TADIR BY OBJ_NAME.
LOOP AT GT_TADIR.
SELECT SINGLE MODTEXT
INTO MODSAPT-MODTEXT
FROM MODSAPT
WHERE SPRSL = SY-LANGU
AND NAME = GT_TADIR-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
WRITE:/01 SY-VLINE,
02 GT_TADIR-OBJ_NAME HOTSPOT ON,
21 SY-VLINE,
22 MODSAPT-MODTEXT,
95 SY-VLINE.
ENDLOOP.
WRITE:/(95) SY-ULINE.
DESCRIBE TABLE GT_TADIR.
SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No of Exits:' , SY-TFILL.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(95) 'No User Exit exists'.
ENDIF.
AT LINE-SELECTION.
GET CURSOR FIELD GV_FIELD1.
IF GV_FIELD1(8) = 'GT_TADIR'.
SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
ELSE.
MESSAGE I899(MM)
WITH TEXT-I01 " Click on the Exit Name to Drill-Down
TEXT-I02. " to SAP Enhancement Information.
ENDIF.
END-OF-SELECTION.
TOP-OF-PAGE.
S U B R O U T I N E S *
E N D O F R E P O R T **************************************** -
Need the user exit/BADI name to display the error msg in PO for net price
Hi
I have the below requirement.
While creating the PO(Purchase Order) with reference to PR(Purchase Requisition),if the net price value
is 0.01 USD then the system will display a pop up a error message that 'This is a free price for PR'.
Can anybody suggest me the User Exit or BADI name so that I can implement my code.
Thanks
PILOTME_CHECK_ALL_ITEMS
ME_CCP_ACTIVE_CHECK
MD_EXT_SUP
ME_DEFINE_CALCTYPE
MD_STOCK_TRANSFER
ME_PROCESS_PO_CUST
These are the BADIs gettting triggered while dragging the PR's to PO creation.
You can check any of these as per your requirement.
Check if the BADI 'ME_PROCESS_PO_CUST' is useful. -
Routine / User exit in SD to create an Accounting Document
Hi Everybody,
Anybody please tell me the Routine / User exit in SD to create Accounting Document from an SD billing document.
Also need the user exit that will split the accounting document into as many documents as required.
The problem I am facing is like the splitter program fails to copy the document header text into all the accounting documents produced as a result of the splitter program. Appreciate your help.
Thanks,
Neethu.Hi Neethu,
Sorry, I don't understand very well your requirements.
Do you have problems with splitting in billing? If yes, see SAP Note 11162 - Invoice split criteria in billing document and search posts with the string ZUKRI.
To change data in the interface to FI from billing, see Note 301077 - User exits for the interface to accounting, but I think that you cannot create new FI documents with these enhancements.
Other question, see SAP Note 36353 - AC interface: Summarizing FI documents, perhaps your problem can be solved with the advices of this note.
I hope this helps you
Regards
Eduardo -
User exit for FB60 after POSTING the Document.
Hi,
I have requirement with FB60 transaction where i have to display the error message to the user if the amount of the invoice is greater than some threshold value( this will be maintained in the custom table) to park the document .
I have created project with enhancement SAPLF051 using the exit EXIT_SAPLF051_002 it is triggering only when parks the document .
But my requirement is i need an enhancement which trigger after user posts the document.
Please help me...
regards
paveee.....Hi
Following are the available user exits for fb60 transaction...
F050S001 FIDCMT, FIDCC1, FIDCC2: Edit user-defined IDoc segment
F050S002 FIDCC1: Change IDoc/do not send
F050S003 FIDCC2: Change IDoc/do not send
F050S004 FIDCMT, FIDCC1, FIDCC2: Change outbound IDoc/do not sen
F050S005 FIDCMT, FIDCC1, FIDCC2 Inbound IDoc: Change FI document
F050S006 FI Outgoing IDoc: Reset Clearing in FI Document
F050S007 FIDCCH Outbound: Influence on IDoc for Document Change
F180A001 Balance Sheet Adjustment
FARC0002 Additional Checks for Archiving MM Vendor Master Data
FEDI0001 Function Exits for EDI in FI
RFAVIS01 Customer Exit for Changing Payment Advice Segment Text
RFEPOS00 Line item display: Checking of selection conditions
RFKORIEX Automatic correspondence
SAPLF051 Workflow for FI (pre-capture, release for payment)
If you still not find appropriate exit, go for badi's...
1)To search for a badi, go to se 24 display class cl_exithandler.
2) double click on method get_instance,
3) get a break point on case statement. execute and start the required transaction in new session.
4)look for variable exit_name. It would show the available badi's.
<b>Please do reward if useful</b>
Regards
Dinesh -
What are the User Exits for Sales Order creation process?
Hi,
what are the User Exits for Sales Order creation process? how can I find them?
thanks in advance,
will reward,
MindaugasPlease check this info:
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.
Regards
Eswar -
To find the User Exits for a particular Transaction.
hi,
I want to find the number of User Exits for a The Transaction MM01 or MM02,
I serched in the forums but could not find satisfactory ans,
I tried with:
T.Code-> System>Status->Prog Name>SE38>find Call Customer-Exit.
But its not helping me,
Please help me.
Thanks and Regards
Suraj S Nair.hi ,
if you are new to user exist use --> follw the below methos to find the user exit for a particular transaction or t-code
create one custom pgm in se38 and execute >selection screenenter t-code and execute it will return all the user exists for a specific transaction..
Finding the user-exits of a SAP transaction code
* Finding the user-exits of a SAP transaction code
* Enter the transaction code in which you are looking for the user-exit
* and it will list you the list of user-exits in the transaction code.
* Also a drill down is possible which will help you to branch to SMOD.
* Written by : SAP Basis, ABAP Programming and Other IMG Stuff
* http://www.sap-img.com
report zuserexit no standard page heading.
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
tables : tstct.
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
parameters : p_tcode like tstc-tcode obligatory.
select single * from tstc where tcode eq p_tcode.
if sy-subrc eq 0.
select single * from tadir where pgmid = 'R3TR'
and object = 'PROG'
and obj_name = tstc-pgmna.
move : tadir-devclass to v_devclass.
if sy-subrc ne 0.
select single * from trdir where name = tstc-pgmna.
if trdir-subc eq 'F'.
select single * from tfdir where pname = tstc-pgmna.
select single * from enlfdir where funcname =
tfdir-funcname.
select single * from tadir where pgmid = 'R3TR'
and object = 'FUGR'
and obj_name eq enlfdir-area.
move : tadir-devclass to v_devclass.
endif.
endif.
select * from tadir into table jtab
where pgmid = 'R3TR'
and object = 'SMOD'
and devclass = v_devclass.
select single * from tstct where sprsl eq sy-langu and
tcode eq p_tcode.
format color col_positive intensified off.
write:/(19) 'Transaction Code - ',
20(20) p_tcode,
45(50) tstct-ttext.
skip.
if not jtab[] is initial.
write:/(95) sy-uline.
format color col_heading intensified on.
write:/1 sy-vline,
2 'Exit Name',
21 sy-vline ,
22 'Description',
95 sy-vline.
write:/(95) sy-uline.
loop at jtab.
select single * from modsapt
where sprsl = sy-langu and
name = jtab-obj_name.
format color col_normal intensified off.
write:/1 sy-vline,
2 jtab-obj_name hotspot on,
21 sy-vline ,
22 modsapt-modtext,
95 sy-vline.
endloop.
write:/(95) sy-uline.
describe table jtab.
skip.
format color col_total intensified on.
write:/ 'No of Exits:' , sy-tfill.
else.
format color col_negative intensified on.
write:/(95) 'No User Exit exists'.
endif.
else.
format color col_negative intensified on.
write:/(95) 'Transaction Code Does Not Exist'.
endif.
at line-selection.
get cursor field field1.
check field1(4) eq 'JTAB'.
set parameter id 'MON' field sy-lisel+1(10).
call transaction 'SMOD' and skip first screen.
*---End of Program
Regards,
Prabhudas -
Accessing Global data in the User exits.
Dear All,
I want to change some fields by using the user exit "EXIT_SAPLPC61_001" for Tcode ( 1KEK ) The fields which I wanted to access are global variables, so I couldnt able to access it .so I used field symbol and did the change ,by calling (SAPLPC61)t_fod[] .
But Once I change the fields and put the record back to its memory , it just posting only 2 records instead of 50 records ..
What I understood while debugging is, it starts the first loop and goes to user exit and change the global variable values , once the value gets changed instead of going to second loop , the loop ends ..
we got fifty records but it just shows only 2 records as posted .
Just throw me some lights on this issue
Thanks
Vivek.Hi VRMan,
I do not think it's possible to use Global Variables or Functional Globals in custom Express VIs. Is there a reason why you might want to use global variables/functional global in Express VI that you've created? Perhaps you want to try just passing data to the Express VI through the connector block.
Regards,
Stanley Hu
National Instruments
Applications Engineering
http://www.ni.com/support -
User exit or BADI available for the CAPP in CA03.
Hi,
I have a requirement to populate the standard CAPP values to the work center activities of the routing only when all the activities are having a blank value.Please see the below paragraph for better understanding.
Currently in SAP when executing CAPP for a work center of the routing it over writes the existing values populated on the routing for the setup,labor,standard labor,man occupation,machine occupation etc whether the values are blank or not. An enhancement needs to be made to only populate operations standards when all the values are blank.
If routing is not populated with setup, machine, labor standards, man occupation, machine occupation and work center is setup for default standards in CAPP, then run the CAPP process to apply standards from work center zcappstds table. The program that is run to apply these standards currently is SAPLCETO. Potentially ca96 and the batch process that updates the material master RCPMAU01 will have to be adjusted as well.
Please help me if anybody knows the user exit/Badi for this requirement.Please reply me soon this is an urgent requirement
thanks in advance,
Samyuktha.I dont have details abt exact user Exit or badi which will suit ur requirement. But below info will give you the way to find out the same.
Have a look at below link,
http://www.erpgenie.com/sap/abap/code/abap26.htm
which gives the list of exits for a tcode
There are multiple ways of searching for BADI.
Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
Finding BADI Using SQL Trace (TCODE-ST05).
Finding BADI Using Repository Information System (TCODE- SE84).
1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for CL_EXITHANDLER=>GET_INSTANCE.
Make sure the radio button In main program is checked. A list of all the programs with call to the BADIs will be listed.
The export parameter EXIT_NAME for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter INSTANCE 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.
2. Start transaction ST05 (Performance Analysis).
Set flag field "Buffer trace"
Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
Push the button "Deactivate Trace".
Push the button "Display Trace".
The popup screen "Set Restrictions for Displaying Trace" appears.
Now, filter the trace on Objects:
V_EXT_IMP
V_EXT_ACT
Push button "Multiple selections" button behind field Objects
Fill: V_EXT_IMP and V_EXT_ACT
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_.
So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
3. Go to Maintain Transaction (TCODE- SE93).
Enter the Transaction VD02 for which you want to find BADI.
Click on the Display push buttons.
Get the Package Name. (Package VS in this case)
Go to TCode: SE84->Enhancements->Business Add-inns->Definition
Enter the Package Name and Execute.
Here you get a list of all the Enhancement BADIs for the given package MB.
Best Regards,
Vibha
*Please mark all the helpful answers -
How does the PRODUCTION SYSTEM take the benifit from the USER EXITS?
how does the PRODUCTION SYSTEM take the benifit from the USER EXITS?
please explainand it is not the production system that benefits. its the company and the people working with SAP that benefits from the user exits which allow SAP to be altered for the company specific situations.
-
Required the transaction code for the user exit
Hi Abap Gurus,
i want to find out the *sap transaction code for which the user exit belongs to from the below code i am getting the enhancement name and the type.
i want to know the transaction code for exit EXIT_SAPLMEKO_002 and EXIT_SAPLFYTX_USER_001
data: begin of it_modsap occurs 0,
name type modsap-name,
typ type modsap-typ,
member type modsap-member,
end of it_modsap.
type-pools:slis.
data:wa_layout type slis_layout_alv.
data:it_sort type slis_t_sortinfo_alv.
data:wa_sort like line of it_sort.
parameters:p_exit type modsap-member.
select * from modsap into table it_modsap where member = p_exit.
read table it_modsap index 1.
select * from modsap into table it_modsap where name = it_modsap-name.
wa_layout-colwidth_optimize = 'X'.
wa_sort-fieldname = 'NAME'.
wa_sort-tabname = 'IT_MODSAP'.
wa_sort-up = 'X'.
append wa_sort to it_sort.
clear wa_sort.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = sy-repid
i_structure_name = 'MODSAP'
is_layout = wa_layout
it_sort = it_sort
tables
t_outtab = it_modsap.HI
The user exit EXIT_SAPLFYTX_USER_001 is trigered for the below transactions and also postings via IDOC.
'ME21' 'ME21N' 'ME22' 'ME22N' 'ME23' 'ME23N' 'ME31L' 'ME31' 'ME32L' 'ME32' 'ME33L' 'ME33' 'ME38' 'ME39' 'VL31N' 'VL32N' 'VL33N'.
This is basically used for tax calculation purposes.
The user exit EXIT_SAPLMEKO_002 is trigerred for multiple transactions of purchansing scenario.
Also use user exit for your business scenario.
Br
Vijay V -
Determine which validation step called the user exit, possible?
Hello all,
We have a a validation with different steps that use the same user exit in their respective check.
My functional analyst asked me if there is a way to programmatically determine in the user exit which step is executing the user exit.
So I am asking the same question here.
As an example:
Validation FI100 has step 001, 002, and 003.
Each of these steps use the user exit U100 from module pool ZGGBR001 in their check.
I haven't found a way in the code of U100 to determine which step called U100.
Does anyone know if this can be done?
I have used the following technique to get a variable from the program's call stack.
data: var_name(30) type c value '(Z_CALLING)VARIABLE' .
field-symbols: <fs> type any.
assign (var_name) to <fs>.
write: / 'Variable from Z_CALLING', <fs>.
But I'm not sure how this might work with validation steps/user exits.
Thanks
BruceVinod,
I did some debugging after I posted my question. I came to the same solution, use FM 'SYSTEM_CALLSTACK'.
VALCHCK_2FI100##001
loop at i_callstack into w_callstack
where EVENTNAME+0(9) = 'VALCHCK_2'.
FI110 is the validation
001 is the step
Thomas,
Thanks for the caveats.
Bruce -
How does the user exit of validation rules get triggered?
SPRO
FinancialAccounting> GL Accounting > Business Transaction > GL posting > Carry out doc settings > Validation in accounting docs
Here you can specify rules and call user exits also.
To add code into the user exit, we have to copy the standard program that contains this user exit and then create a z version?
If so, where do you tell to branch into the custom z program and not the standard program?Go to transation GGB0(Change Validation), Go to Application Area/Time -> Financial Accounting -> Line Item. Create a validation what ever you want and add the steps/rules for that. You have a provision to give Rules/Exits(User Exit).
-
Find the user exit while creation and change of sales order
Hi Team
Below mentioned requirement , in which user exit i have to put below logic while creaion and change of sales order?
u2022 The logic for the user exit to explode should consider the following assumptions and validations
o Customer master to have the entry at KNVV-KVGR1
o Material master to have the entry at MVKE
o UoM in the Sales order item (VBAP- VRKME) should be = Pallets PAL or tonnes (TES)
o Should have more than one line item or number of line items with UoM PAL or tonnes TES should be > 1
for example :-->
Product A with Scales mentioned below
Product A Quantity / Scale UoM Price(£)
0-10 PAL/TES 20
11- 20 PAL/TES 10
21- 30 PAL/TES 5
31-40 PAL/TES 2.5
>41 PAL/TES
Product B with Scales mentioned below
Product B Quantity / Scale UoM Price(£)
0-15 PAL/TES 25
16-20 PAL/TES 20
21- 30 PAL/TES 15
31-40 PAL/TES 10
> 41 PAL/TES 5
u2022 Product A (qty 10PAL) + Product B (qty 15 pal) ordered in a single order with 2 line items.
u2022 The expected results should be
o Product A qty 10 + B qty 15 added = 25Pal
o The system user exit should add the total number of pallets on the order line items and point towards the respective scales, so in this example prices against each line item should be the respective price against 25 Pal = 5£ for product A per pal and £15 for product B.
Thanks in Advance.
Puneet.Hi Team
Below mentioned requirement , in which user exit i have to put below logic while creaion and change of sales order?
u2022 The logic for the user exit to explode should consider the following assumptions and validations
o Customer master to have the entry at KNVV-KVGR1
o Material master to have the entry at MVKE
o UoM in the Sales order item (VBAP- VRKME) should be = Pallets PAL or tonnes (TES)
o Should have more than one line item or number of line items with UoM PAL or tonnes TES should be > 1
for example :-->
Product A with Scales mentioned below
Product A Quantity / Scale UoM Price(£)
0-10 PAL/TES 20
11- 20 PAL/TES 10
21- 30 PAL/TES 5
31-40 PAL/TES 2.5
>41 PAL/TES
Product B with Scales mentioned below
Product B Quantity / Scale UoM Price(£)
0-15 PAL/TES 25
16-20 PAL/TES 20
21- 30 PAL/TES 15
31-40 PAL/TES 10
41 PAL/TES 5
u2022 Product A (qty 10PAL) + Product B (qty 15 pal) ordered in a single order with 2 line items.
u2022 The expected results should be
o Product A qty 10 + B qty 15 added = 25Pal
o The system user exit should add the total number of pallets on the order line items and point towards the respective scales, so in this example prices against each line item should be the respective price against 25 Pal = 5£ for product A per pal and £15 for product B.
Thanks in Advance.
Puneet. -
How user exit is used to populate the Profit center field in Sales order?
Hi All,
Please let me know :
How the user exit is used to populate the Profit center field in the Sales order?
Please gurus answer as quickly as possible as I require this urgently.Hi,
To derive the correct profit center in the Sales Order, you customize in 0KEM.
Trust this helps much and do encourage our efforts!
Cheers!
Maybe you are looking for
-
As far as I know this two bapi used to create accounting document. But how do we use them ? and what's the different between them? The most important thing is in what condition we use which bapi to post accounting doc? Such as there is one requiremen
-
Extract Filter for Photoshop cs6 Mac
Hi I still use the extract filter with Photoshop cs6 and I rely on it for my pet portraits. I currently use it on a PC but am considering changing it to a Mac. Will I still be able to use the Extract filter on the Mac? I really can't get on with R
-
Select column value with variable
I want to select some data from tables . For that , i write this procedure : create or replace procedure find_and_insert colname varchar2(4000); var varchar2(4000); colval varchar2(4000); begin colname := 'COUNTRY_ID';
-
No "trackpad" tab in Bootcamp 2.1 control panel
I want to enable "tap to click" for the trackpad but there is no Trackpad tab in the bootcamp control panel. I see only Startup Disk, Brightness, Remote, Keyboard, and Power. My system is Macbook4,1 early 2008, winxp pro sp3. All bootcamp drivers are
-
Not data has been read from the source datastream
Hi gurus Im trying to read data from datastream but it doesnt work well, I have the method read from dastream and the follow fileds source fiel target field atribute company code company controlling area