CJ20n - User Exit to pass partner details
Hello,
I am working on screen exit in transaction CJ20n. My requirement is to add partner details(SP, SH, BP,PY) fields to the new screen at the wbs element level. Values for these partners needs to be fetched from partner tab which user will maintain at the project definition level.
I am searching for an exit which will help me to fill the partner details.
Please do help me out in this regard.
Thanks,
Why not use append structure to the header table and store your custom screen values ?
regards,
Sandeep Josyula
Reward if found helpful
Message was edited by: Sandeep Josyula
Similar Messages
-
User exit to change partner for inbound delivery creation
Hello,
I have a requirement to change the partner number for
the inbound delivery creation.
I only see the USEREXIT_MOVE_FIELD_TO_LIKP but I am not sure if this is
the right user exit for this requirement.
Is there the user exit for modifying partner in the inbound delivery?
Thanks in advance,HI
There is a program with which you can find the available exits as per your requirement. You have to execute the same and give your transaction code. Hope this helps...
*& Report ZFINDUSEREXIT
report zfinduserexit.
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).
<b>Do reward if useful...</b>
Regards
Dinesh -
PO User Exit which pass PR Number
Dear All
Is there any PO user exit which can pass the PR number while creating a PO by adopting a PR number.
Requirement is to check PR amount before saving the newly created PO. If possible also specify the PR field in user exit.
ThanksHi,
Try User Exit MM06E005,Implemente EXIT_SAPMM06E_012
PR number is passed in field TEKPO-BANFN.
Regards
Pole -
Hi All,
Please let me know which User exit can be used for T-Code CJ20N as I have to change projrct description (PRPS-POST1) and Investment profile (PRPS-IMPRF) on the basis of Project definition (PROJ-PSPID).
I am not able to get any user exit for the same.Any i/ps will be appriciated.
Thanks
RagHi ,
Try with User Exit
CNEX0003 PS: Customer specific fields standard project definition
CNEX0006 PS customer specific fields project definition -
User exit for add partner in delivery document when execute then tx-vl06
Hi,
I try to add new partners in delivery document when I execute the transaction vl06. For this, I use the user exit MV50AFZ1 where I implement the code that add new registers in table XVBPA. This solution doesn't work because it doesn't add new partners in delivery document.
CLEAR XVBPA.
XVBPA-MANDT = '010'.
XVBPA-VBELN = LIKP-VBELN.
XVBPA-POSNR = '000000'.
XVBPA-PARVW = 'ZC'.
XVBPA-PERNR = '00000045'.
XVBPA-ADRNR = '0000000000'.
XVBPA-LAND1 = 'ES'.
XVBPA-ADRDA = 'D'.
APPEND XVBPA.
CLEAR XVBPA.
XVBPA-MANDT = '010'.
XVBPA-VBELN = LIKP-VBELN.
XVBPA-POSNR = '000000'.
XVBPA-PARVW = 'SP'.
XVBPA-LIFNR = '0000000491'.
XVBPA-ADRNR = '0000083037'.
XVBPA-LAND1 = 'ES'.
XVBPA-ADRDA = 'D'.
APPEND XVBPA.
Please, anybody knows others solutions.
Thanks for your help.
Xevi G.Hi Ram Ki,
It doesn't work. When I execute the transaction vl06g, the flow doesn't pass for this user exit.
Thanks for your comment.
XeviG. -
User-exit for pass user value to item of po during creating me23n
does anyone know user-exit for change data field of item level of PO when creating ME23N?
I tried EXIT_SAPMM06E_012, but did not save with my value.Check include
LV69AFZZ
Check this BADI
ME_PROCESS_PO
ME_PROCESS_PO_CUST
Thanks
Arghadip -
Passing Multiple Single values in User Exits
Hello All,
I have a requirement where in, a user could enter either a single value, multiple single values or a combination of a range and single values.
This set of values need to be passed on to a variable with in a user exit. I have been able to get either one single value to pass or one single range. I am unable to pass on multiple single values or a combo of a range and single value from the user entry.
I would appreciate if anyone could help me with the structure of the code to pass multiple single values or combo.
I was wondering if I would need to pass the values into an internal table first and then pass it to the user exit variable. However, as I am not a strong ABAP resource, I am struggling.
Any and all help is deeply appreciated.
Warm regards
SunilHello Marc,
There are two requirements which I was trying to address.
1. IN few queries, the users enter either a range of profit centers or multiple single values in the pop-up window. I need to pass those values from that variable to an variable of type USer Exit to derive partner profit center values with in the query.
For this I have been able to pass values for either a single value or a single range. I am unable to pass on values for multiple single values or a combo of a range and single values.
2. I am trying to create a query for the top 5 customers to be used in the Corporate Performance Monitor. However, when I am trying to use the variable of type "replacement path", the system does not allow me to release it for OLE DB for OLAP.
To obviate this problem, I was hoping to create a variable of typeUSer Exit" and then pass the values from the variable of type "replacement path" to this variable.
Is it a workable solution? I was hoping that the method to pass the values in both the above scenarios might be similar.
Please guide me.
Warm regards
Sunil -
User exit IPRM0002 for preventive maintenance
user exit IPRM0002 for preventive maintenance
has anyone used this user exit? or BADI: BAdI: IPRM_MCP_SCHE_CHANGE ?
I seem to have some difficulty in knowing how to use these....
I need to basically be able to influence a calling date for next PMorder to be opened but documentation is not explanatory and, even if I do know what these exit/badi are used for, i do not understand how to use the parameters provided.
can anyone help?Hi,
I dont think you would be able to test the exit if you dont implement them for the user exits simply passing the parameters wont help,actually there is a process of implementing a USER-EXIT i suppose u would already be familiar to it, I order to activate the exit you have to create a project in CMOD transaction and assign the enhancement to that and then also create the include that is avaliable inside the FM and there you would be able to put your code.
For the BAPIs ,yes the control should go inside the BADI once you put a breakd point inside the right method but there to you need to implement the BADI and then you can put your code in the method for the effects to take place and you can test.
The detail process of implementation are already avaliable on SCN, It seems that you dont have developer authorizations so i would suggest to take help from some one who has, Best of Luck:).
Regards,
Himanshu -
How can we find the list of user exits for a transaction
hi all
iam new in user exits please send the basic details
how can we find the list of user exit for a perticular transaction and how can we determine that a particulr user exit is used for a field
regards
jagadishhi,
check the below links for userexits
http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm
FAQ's
http://http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.ficoexpertonline.com/downloads/User%20ExitsWPedit.doc
http://www.easymarketplace.de/userexit.php
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
1. what is the defference between enhancement and user-exits?
http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
Re: difference between user exits & customer exits
Some Questions ! Plz help...
http://searchsap.techtarget.com/expert/KnowledgebaseAnswer/0,289625,sid21_gci1190924_tax299358,00.html?bucket=ETA
2. Difference between CMOD and SMOD?
http://www.sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm
http://www.sap-img.com/abap.htm
http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/diff-between-cmod-and-smod-236095
http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/diff-between-cmod-and-smod-236107
check these links..
http://www.sapgenie.com/abap/tips_and_tricks.htm
http://www.sap-img.com/abap/field-exits-smod-cmod-questions-and-answers.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
passing selet-option variable to subrouine...
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
if u want to find the function exit
then check the below code
REPORT ZV_FIND_EXIT 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.
or
1. in se11, goto table MODSAP
View table contents
2. in Type field, enter 'E' (for function exit)
3. For that tcode, u should know the program name.
eg. SAPLLMOB
4. then type SAPLLMOB and execute
or
REPORT z34331_user_exit .
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
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : field1(30).
DATA : v_devclass LIKE tadir-devclass.
SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
SELECTION-SCREEN SKIP.
PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN END OF BLOCK a01.
START-OF-SELECTION.
Validate Transaction Code
SELECT SINGLE * FROM tstc
WHERE tcode EQ p_tcode.
Find Repository Objects for transaction code
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 = enlfdir-area.
MOVE : tadir-devclass TO v_devclass.
ENDIF.
ENDIF.
Find SAP Modifactions
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.
Take the user to SMOD for the Exit that was selected.
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.
Regards,
Naveen -
User exit: save PM order
Dear all,
I'm looking for an user exit that will be actived during order save. However, it seems most exits just for check, I can not change any data.
The requirement is: if user save certain order, then field function area 'CAUFVD-FUNC_AREA' is filled automatically. This fiels in the order header.
Thanks,
BenHi,
Orders
User Exits BBPK0001
Description Exit for determining the external procurement profile
User Exits CNEX0013
Description Default item category for component assignment
User Exits CNEX0026
Description Customer enhancement for general inspection of material
User Exits CNEX0027
Description Customer enhancement: Plant, storage loc. finding for comp.
User Exits CNEX0037
Description Check new component
User Exits COCCA002
Description Customer Functions for Organizational Authorization Checks (SETTLEMENT)
User Exits COI20001
Description Changing of person found
User Exits COI20002
Description Alternative procurement of HR availability data
User Exits COOM0001
Description Customer Functions for Overhead Percentages
User Exits COOPA_01
Description Customer check modules for internal orders
User Exits COOPA002
Description Customer function for master data maintenance - internal orders
User Exits COOPA003
Description User-Defined Fields in the Order Master
User Exits COOPA004
Description Customer function: Print order master data
User Exits COPCP005 (see: 1, )
Description Material Costing: User exit for material valuation (strategy U)
User Exits CY190001
Description Capacity Planning: Change order operation
User Exits COZF0001
Description Change purchase req. for externally processed operation
User Exits COZF0002
Description Change purchase req. for externally procured component
User Exits CYPP0001
Description Change sequence criteria and sequencing
User Exits ICSV0001
Description Display of geographic location data
User Exits ICSV0002
Description Automatic task determination for service notifications
User Exits ICSV0003
Description Partner selection
User Exits ICSV0004
Description Check PM object and display object information
User Exits ICSV0005
Description Determining reason for rejection - resource-related billing
User Exits ICSV0008
Description Validation of additional partner types
User Exits IWMI0001
Description User exits for SM/PM IDOCs
User Exits IWO10001
Description Create a PM sub-order
User Exits IWO10002
Description Customer check for order release
User Exits IWO10004
Description Customer check for order completion
User Exits IWO10005
Description Customer specific determination of profit centre
User Exits IWO10006
Description FCode exclusion through customer enhancement
User Exits IWO10007
Description Customer enhancement - permits in the order
User Exits IWO10008
Description Customer enhancement: Determination of tax jurisdiction code
User Exits IWO10009
Description Customer Check for 'Save' Event
User Exits IWO10010
Description Customer enhancement for determining WBS element
User Exits IWO10011
Description Customer enhancement for component selection
User Exits IWO10012
Description Priority handling on central header
User Exits IWO10015
Description F4 Help for user fields on operation
User Exits IWO10016
Description Customer enhancement to check operation user fields
User Exits IWO10017
Description Determine external order number by customer logic
User Exits IWO10018
Description User fields on order header
User Exits IWO10020
Description Automatically include task list
User Exits IWO10021
Description Automatic task list transfer when creating order from notification
User Exits IWO10022
Description Determine calendar from user exit
User Exits IWO10023
Description Service order: Change header data for advance shipment document
User Exits IWO10024
Description Service order: Changes to items for advance shipment
User Exits IWO10025
Description Finding responsible cost centre
User Exits IWO10026
Description User check on setting status 'Do not perform'
User Exits IWO10027
Description User exit: Generate user-defined settlement rule
User Exits IWO10029
Description Inclusion of bill of material in PM/SM order
User Exits IWO10030
Description Predefining the fields for the profitability segment
User Exits IWO10031
Description Hide personnel number in PM/SM order
User Exits IWO10033
Description Customer-Specific Authorization Check PM/CS Order
User Exits IWO10034
Description Operation status based on the status of capacity requirements
User Exits IWO20001
Description User exit to pass routing/task list to order
User Exits IWOC0003
Description PM/SM authorization check of ref. object and planner group
User Exits M06B0002
Description Change communication structure for purchase requisition release
User Exits MGA00003
Description Material Master (Industry and Retail): Number Display
User Exits PPCO0001
Description Application development: PP orders
User Exits PPCO0005
Description Storage location/backflushing when order is created
User Exits PPCO0023
Description Checks changes to components
regards,
Venkatesan Anandan -
Enhancement / user exit for one time customer
Hi,
We need to upload address of one time customer when creating external billing documents.We are NOT creating billing document through sales orders . So I cannot do it manually. I have populated the Post Code and the city in the RV60AFZB but it doesnot flow to ACCFI structure, anybody has worked on this or has encountered and solved this problem before ??
Regards,
NarayaniHi,
There are user exits to pass data to FI structures as well,
EXIT_SAPLV60B_001: Change the header data in the structure acchd
EXIT_SAPLV60B_002: Change the customer line ACCIT
EXIT_SAPLV60B_006: Change the control line ACCIT
EXIT_SAPLV60B_004: Change a GL account item ACCIT
This might help you. If not please explain in detail about your requirement.
Regards,
Shashwath -
User Exit Problem in Sales Order
Hello All,
This problem is related to Sales Order.I want the system to forcibly consider another line item and calculate its pricing while saving the sales order at the last moment.
For Example in the sales order I am giving 1st Line Item Material A of quantity 10 and Unit of Measurement BT (Bottle).Then when I am pressing the save button I want the User Exit of Material B as 2nd line item to be populated at that very moment which will be forcibly included and pricing will be calculated in that sales order.The user exit should work at this level.
Now considering the above scenario please suggest solutions in SD / ABAP regarding the successful running of User Exit in the Sales Order are required to attain my requirement.
Looking forward to some valuable suggestions.
Thanks & Regards
PriyankaHi priyanka,
though ur requirement is a bit complex i suggest userexits in this kind of scenarios wont help..rather an additonal program needs to be inserted in the standard sales order program..but for ur reference i am sending the list of all the user exits used in price determination. and the requirements fullfilled by them.... .hope it may help u....and cater to ur requirements....
User Exits For Price Determination
u2022 USEREXIT_PRICING_PREPARE_TKOMK (module pool SAPLV60A, program RV60AFZZ)
This user exit allows you to copy additional fields for pricing in the TKOMK communication structure (header fields), which have not been provided in the standard SAP system. These fields can also be used for pricing in the billing document.
This user exit is described in detail in the "New fields in pricing" section.
u2022 USEREXIT_PRICING_PREPARE_TKOMP (module pool SAPLV60A, program RV60AFZZ)
This user exit allows you to copy additional fields for pricing in the TKOMP communication structure (item fields), which have not been provided in the standard SAP system. These fields can also be used for pricing.
This user exit is described in detail in the "New fields in pricing" section.
u2022 USEREXIT_FIELD_MODIFICATION (module pool SAPMV61A, program MV61AFZA)
You can use this user exit to adjust the display of individual lines in the condition screen by changing the display attributes of the screen fields. This does not include the display of subtotals.
This user exit is also used in order processing.
u2022 USEREXIT_FIELD_MODIFIC_KZWI (module pool SAPMV61A, program MV61AFZB)
You can change the display of subtotals in the condition screen by changing the display attributes of the screen fields.
This user exit is also used in order processing.
u2022 USEREXIT_FIELD_MODIFIC_KOPF (module pool SAPMV61A, program MV61AFZB)
You can adjust the display of subtotals in the condition screen to your requirements by changing the display attributes of the screen fields.
This user exit is also used in order processing.
u2022 USEREXIT_FIELD_MODIFIC_LEER (module pool SAPMV61A, program MV61AFZB)
You can adjust the display of blank lines in the condition screen to your requirements by changing the display attributes of the screen fields.
This user exit is also used in order processing.
u2022 USEREXIT_PRICING_CHECK (module pool SAPMV61, program MV61AFZA)
You can install additional checks to the standard checks of condition lines (e.g. maximum/minimum value).
u2022 USEREXIT_PRICING_RULE (module pool SAPLV61A, program RV61AFZA)
In the standard SAP system, it is predefined which condition categories and classes can be copied or recalculated per pricing type. You can change the predefined standard procedure for each pricing type.
u2022 USEREXIT_CHANGE_PRICING_RULE (module pool SAPMV61A, program MV61AFZA)
You can use this user exit to change the pricing type that has been predefined in the copying control table in billing.
u2022 USEREXIT_XKOMV_BEWERTEN_INIT (module pool SAPLV61A, program RV61AFZB)
This field is used in the formulas and therefore initialized before the loop for the pricing procedure starts.
u2022 USEREXIT_XKOMV_BEWERTEN_END (module pool SAPLV61A, program RV61AFZB)
Within a loop for the price components during pricing, specific values can be transferred into the communication structures in pricing to be further processed.
u2022 USEREXIT_XKOMV_ERGAENZEN (module pool SAPLV61A, program RV61AFZB)
In change mode, you can change the dynamic part of the condition record (KONVD) that is always redetermined (i.e. it is not stored in database table KONV).
u2022 USEREXIT_XKOMV_ERGAENZEN_MANU (module pool SAPLV61A, program RV61AFZB)
You can use this user exit to change the ready-for-input fields of the manually entered condition record in add mode in the condition screen.
u2022 USEREXIT_XKOMV_FUELLEN (module pool SAPLV61A, program RV61AFZB)
This user exit is always called up during a redetermination of all or individual price components. You can change the work fields of the condition line. However, this only applies to conditions that have been determined via a condition record.
u2022 USEREXIT_XKOMV_FUELLEN_O_KONP (module pool SAPLV61A, program RV61AFZB)
This user exit is always called up during a redetermination of all or individual price components. You can change the work fields of the condition line. However, this only applies to conditions that have been determined via a condition record. This may include subtotals, manually entered conditions or conditions that have been calculated with a formula.
u2022 USEREXIT_PRICING_COPY (module pool SAPLV61A, program RV61AFZA)
You can change the KONV fields for copied price components. -
How to activate or deactivate a user-exit based a specific condition
hi all,
i want to activate or deactivate(make it trigger) a particular user-exit based in a condition.
can i do that. if yes please tell me how.
can we use COMMIT in user-exits or BADI's.
Thanks & Regards,
Saroja.Hello Saroja
The solution provided by Rich should be used for testing purposes only in the the reverted sense:
IF ( syst-uname ne '<specific user>' ).
RETURN.
ENDIF.
" Execute user-exit for specific user
However, for serious programming you should use a a better strategy. In principle, user-exits are either ON or OFF and, if they are ON, they are ON for <b>all </b>user which is usually not intended.
The following example shows a (possible) strategy how to execute user-exits based on specific conditions.
The SAP extension CATS0001 contains the component EXIT_SAPLCATS_001 with the following interface:
FUNCTION EXIT_SAPLCATS_001.
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(SAP_TCATS) LIKE TCATS STRUCTURE TCATS
*" VALUE(SAP_PERNR) LIKE CATSFIELDS-PERNR
*" VALUE(SAP_DATELEFT) LIKE CATSFIELDS-DATELEFT
*" VALUE(SAP_DATERIGHT) LIKE CATSFIELDS-DATERIGHT
*" VALUE(SAP_DATEFROM) LIKE CATSFIELDS-DATEFROM OPTIONAL
*" VALUE(SAP_DATETO) LIKE CATSFIELDS-DATETO OPTIONAL
*" TABLES
*" SAP_ICATSW STRUCTURE CATSW
*" SAP_ICATSW_FIX STRUCTURE CATSW OPTIONAL
INCLUDE ZXCATU01.
ENDFUNCTION.
The include ZXCATU01 contains only the following coding:
CALL FUNCTION 'Z_EXIT_SAPLCATS_001'
EXPORTING
sap_tcats = sap_tcats
sap_pernr = sap_pernr
sap_dateleft = sap_dateleft
sap_dateright = sap_dateright
SAP_DATEFROM = SAP_DATEFROM
SAP_DATETO = SAP_DATETO
tables
sap_icatsw = sap_icatsw
SAP_ICATSW_FIX = SAP_ICATSW_FIX.
This function module is just a copy of the exit function module in the customer namespace.
Let us assume that your condition at which the user-exit should be executed is that the employee (SAP_PERNR) belongs to a specific controlling area. Thus, we make another copy of the original exit function module and call this fm within the "general" customer-specific exit function module:
FUNCTION z_exit_saplcats_001.
*"*"Local Interface:
*" IMPORTING
*" VALUE(SAP_TCATS) LIKE TCATS STRUCTURE TCATS
*" VALUE(SAP_PERNR) LIKE CATSFIELDS-PERNR
*" VALUE(SAP_DATELEFT) LIKE CATSFIELDS-DATELEFT
*" VALUE(SAP_DATERIGHT) LIKE CATSFIELDS-DATERIGHT
*" VALUE(SAP_DATEFROM) LIKE CATSFIELDS-DATEFROM OPTIONAL
*" VALUE(SAP_DATETO) LIKE CATSFIELDS-DATETO OPTIONAL
*" TABLES
*" SAP_ICATSW STRUCTURE CATSW
*" SAP_ICATSW_FIX STRUCTURE CATSW OPTIONAL
" User-Exit specific for employees (SAP_PERNR)
" belonging to controlling area 1000
CALL FUNCTION 'Z_EXIT_SAPLCATS_001_1000'
EXPORTING
sap_tcats = sap_tcats
sap_pernr = sap_pernr
sap_dateleft = sap_dateleft
sap_dateright = sap_dateright
sap_datefrom = sap_datefrom
sap_dateto = sap_dateto
TABLES
sap_icatsw = sap_icatsw
sap_icatsw_fix = sap_icatsw_fix.
" User-Exit specific for employees (SAP_PERNR)
" belonging to controlling area 2000
CALL FUNCTION 'Z_EXIT_SAPLCATS_001_2000'
EXPORTING
sap_tcats = sap_tcats
sap_pernr = sap_pernr
sap_dateleft = sap_dateleft
sap_dateright = sap_dateright
sap_datefrom = sap_datefrom
sap_dateto = sap_dateto
TABLES
sap_icatsw = sap_icatsw
sap_icatsw_fix = sap_icatsw_fix.
ENDFUNCTION.
Finally, within the specific exit function module we define the condition when the exit should be executed:
FUNCTION z_exit_saplcats_001_1000.
*"*"Local Interface:
*" IMPORTING
*" VALUE(SAP_TCATS) LIKE TCATS STRUCTURE TCATS
*" VALUE(SAP_PERNR) LIKE CATSFIELDS-PERNR
*" VALUE(SAP_DATELEFT) LIKE CATSFIELDS-DATELEFT
*" VALUE(SAP_DATERIGHT) LIKE CATSFIELDS-DATERIGHT
*" VALUE(SAP_DATEFROM) LIKE CATSFIELDS-DATEFROM OPTIONAL
*" VALUE(SAP_DATETO) LIKE CATSFIELDS-DATETO OPTIONAL
*" TABLES
*" SAP_ICATSW STRUCTURE CATSW
*" SAP_ICATSW_FIX STRUCTURE CATSW OPTIONAL
IF ( <user BELONGS to CONTROLLING area 1000> ).
" execute user-exit
ELSE.
RETURN.
ENDIF.
ENDFUNCTION.
The alternative would be to place the entire coding including the conditions in the include ZXCATU01. However, in this case you can test the user exit <b>only in the context of the transaction</b> in which the user-exit is passed.
Using the strategy I have devised you are able to test the user-exit in general and the specific user-exits <b>independent </b>of the transaction. For example, if you are already working on 6.40 or higher then you could use ABAP Unit Testing for this purpose.
The same logic can be applied for BAdI where we can have only a single active implementation.
Finally, I hope to convince that it makes sense to spend some time into a reasonable strategy for implementing user-exits.
Regards
Uwe -
Sending mail to external mailid from user exit EXIT_SAPLEBNF_005
Hai ALL,
iam facing problem with sending mail to external id from user exit exit_saplebnf_005 , this user exit for ROLE Determination of releasing of PO .
in this user exit i passed a user name for this role from one z table.
through workflow the mails are send to workplace of resposible person maintained in ztable.
now user requirement is they want some intimation in their outlook for they got mail in workplace .
can anybody help me.
Thanks .
sushmita.kthey can either define automatic forwarding in their SAP office to external e-mail OR they can set their external e-mail as preferred method of communication and they should receive mail to their external mailbox assuming that sending to external mail is supported in your system (check with BASIS folks).
-
User exit overlooked when Inbound ORDERS is triggered immediately
If I set the ORDERS Idoc for 'Trigger Immediately' in WE20, the user exit EXIT_SAPLVEDA_011 is overlooked but when I set it up for 'Trigger by background process', the user exit is passed through.
does anyone have an idea why this could be happening?
I cannot put the stop sign and debug, since the Idoc comes via RFC, and thus it is impossible to debug in case of 'Trigger Immediately'.Hi,
the exit function is called at the end of processing FM 'IDOC_INPUT_ORDERS'. There is definitely no difference between immediate or delayed background processing. Your question could be answered if we know the coding of include ZXVEDU13. If it is used for the designed purpose, it should do nothing if the error table DERRTAB is empty.
You can code an endless loop in the include:
data wait type c value 'X'.
while wait is not initial.
endwhile.
Then process your Idoc. In SM50 you can send the process to debug mode. Clear field WAIT in debugger and step through to see whats happening and why.
Reards,
Clemens
Maybe you are looking for
-
Spry tabbed panels, all content showing on one page, please help?
Hi there, I'm developing a website for my friend and i'm using DW CS5 spry tabbed panels. Everything looks great in DW but when i load the page to the server all of the content shows as one page and i can't navigate through tabs.http://dndperspective
-
CST or VAT determination automatically in sales order
Dear all, I want to determine the CST or VAT both in a single sales order for different Items based on plant regions and customer region. for more details let me give you an example. I have, 2 plants - A(Maharashtra), B(Delhi) C
-
Is JMF need to install in all clinet if i want to run .mp3 file?
we developed web based media player.but it payer .avi and .wav format only ,i cannot play .mp3 player in client side.if i installed jmf in client all format is playing. i copied all jar files mp3 plugin into client without jmf installation but it not
-
This website sucks. Either it doesn't show you what you need (world plan usage in our case) or they change the website and you can't find the page anymore. Plus our internet is ridiculously slow. I end up using my jetpack just so we can get online. H
-
"java.sql.SQLException: Ref cursor is invalid" - Please help
Hi everyone, I'm really having problem. I'm surrently calling a PL/SQL stored procedure from Java but I'm getting the following error: java.sql.SQLException: Ref cursor is invalid The procedure has 2 normal IN parameters and 1 ref cursor OUT paramete