TMW: refreshing the employee list inside user exit
Hi everybody,
We are using TMW in a project where the employee selection is based on relations in OM.
Since those relations will change a lot in background the employee list in TMW needs to be refreshed regularly.
Restarting TMW is not an option.
How do i give the TMW application a message that the employee selection needs to be reloaded? I would like to start the message from within the standard user exits (like PT_BLP_TMW_ENR)
Can anyone give me a code example how to do this? How do i find the active TMW instance from within the user exit?
Thanks in advance!
Kr,
Jonathan
Cancelled
Similar Messages
-
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 -
How to find the list of USER-EXITS or BADI for the transaction ABSO
Hi all,
Please help me to find the list of USER-EXITS or BADI for the transaction ABSO & find the exact user-exit which meets the requirement.
Thanks & Regards,
gyanarajHi,
Copy the problem in SE38 and Execute it
Enter the Tcode u want
this will the list of Userexits and badis
TABLES: TSTC,
TADIR,
MODSAPT,
MODACT,
TRDIR,
TFDIR,
ENLFDIR,
SXS_ATTRT ,
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,
P_PGMNA LIKE TSTC-PGMNA .
DATA: WA_TADIR TYPE TADIR.
START-OF-SELECTION.
IF NOT P_TCODE IS INITIAL.
SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE.
ELSEIF NOT P_PGMNA IS INITIAL.
TSTC-PGMNA = P_PGMNA.
ENDIF.
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 in ('SMOD', 'SXSD')
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:/(105) SY-ULINE.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
Sorting the internal Table
sort jtab by OBJECT.
data : wf_txt(60) type c,
wf_smod type i ,
wf_badi type i ,
wf_object2(30) type C.
clear : wf_smod, wf_badi , wf_object2.
Get the total SMOD.
LOOP AT JTAB into wa_tadir.
at first.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/1 SY-VLINE,
2 'Enhancement/ Business Add-in',
41 SY-VLINE ,
42 'Description',
105 SY-VLINE.
WRITE:/(105) SY-ULINE.
endat.
clear wf_txt.
at new object.
if wa_tadir-object = 'SMOD'.
wf_object2 = 'Enhancement' .
elseif wa_tadir-object = 'SXSD'.
wf_object2 = ' Business Add-in'.
endif.
FORMAT COLOR COL_GROUP INTENSIFIED ON.
WRITE:/1 SY-VLINE,
2 wf_object2,
105 SY-VLINE.
endat.
case wa_tadir-object.
when 'SMOD'.
wf_smod = wf_smod + 1.
SELECT SINGLE MODTEXT into wf_txt
FROM MODSAPT
WHERE SPRSL = SY-LANGU
AND NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
when 'SXSD'.
For BADis
wf_badi = wf_badi + 1 .
select single TEXT into wf_txt
from SXS_ATTRT
where sprsl = sy-langu
and EXIT_NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED ON.
endcase.
WRITE:/1 SY-VLINE,
2 wa_tadir-OBJ_NAME hotspot on,
41 SY-VLINE ,
42 wf_txt,
105 SY-VLINE.
AT END OF object.
write : /(105) sy-ULINE.
ENDAT.
ENDLOOP.
WRITE:/(105) SY-ULINE.
SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No.of Exits:' , wf_smod.
WRITE:/ 'No.of BADis:' , wf_badi.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'No userexits or BADis exist'.
ENDIF.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'Transaction does not exist'.
ENDIF.
AT LINE-SELECTION.
data : wf_object type tadir-object.
clear wf_object.
GET CURSOR FIELD FIELD1.
CHECK FIELD1(8) EQ 'WA_TADIR'.
read table jtab with key obj_name = sy-lisel+1(20).
move jtab-object to wf_object.
case wf_object.
when 'SMOD'.
SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
when 'SXSD'.
SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20).
CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
ENDCASE. -
hi all,
can anyone let me know the list of User Exits that are available in BW 3.50 as early as possible.
Thanks in advance
ManicksHi,
go thru this previous thread
Re: Regarding the user exits
-Shreya -
How to find T-codes for a list of User exits
Hi All,
We have been provided with the list of user exits found in the system. I need to find the T-codes where these user-exits have been used.
Can anyone provide pointers for this?
Thanks and Regards,
Sridevi Sridharuse logic of the program....
*& Report ZCG_USER_EXIT_FIND
*& Utility program to find out the User Exits within a transaction
REPORT ZCG_USER_EXIT_FIND.
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. -
How to access the global data in user exit.
Hi All,
How to access the global data in user exit.
the question is that when we were writing a code in the FM. i need to read data from the standard program like newly created documen and this document number need to be accessed in my program.
this document number is not imported to the FM i needed to access for frther proceed.
Thanks in advance.Hi,
See the below PDF file by Jeff Goldstein. There you can find all the details about accessing data outside of the exit.
[SAP User Exits and the People Who Love Them|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/208811b0-00b2-2910-c5ac-dd2c7c50c8e8]
This will help you to solve your problem.
Regards
Karthik D
Edited by: Karthik D on Dec 2, 2008 4:18 PM -
Coming back to the Transaction from a User Exit
Hi,
I perform some checks in a User-Exit before saving a transaction & throw an error message if something is not proper. But, the transaction terminates after that. I need to give the user an option to make changes in the transaction. eg, if user exit checks if a certain field should not be empty, the user should have an option to enter the field after the user exit throws the message. How can i go back to the same screen from the exit to achieve the same.
Thanks in advance.
Bikash
This was for a general scenario wherein after an error message triggered by an Exit is displayed, the transaction just terminates.
Message was edited by: Bikash AgarwalHi,
If you give error message, it will leave the current transaction.
Instead try using some POPUP function module, which will have options 'OK' and 'CANCEL'.
If user presses 'OK', then allow user to do modifications and if he presses 'CANCEL', then write LEAVE PROGRAM to come out of transaction.
Hope it helps.
Regards,
Shashank -
RSS Reader - refresh the Feeds list?
I'm using the Spry RSS example. I want to refresh the Feeds
list (on the left side of the page) every 5 seconds. I've added the
following line...
dsCategories.startLoadInterval(5000); // Start loading data
every 5 seconds.
I can see the browser making the data call every 5 seconds,
however the Feeds list on the page doesn't update. Any
ideas?I've tried chaining the data sets and it still doesn't work.
When the page first loads, I see the GET to
"/getFeedList?alert=dsFeeds". However, when I call
dsFeeds.loadData() I never see the HTTP request taking place. I
should see the GET to "/getFeedList?alert=dsFeeds" again, but I
never do.
Here's my code...
var d = new Date();
var dsFeeds = new
Spry.Data.XMLDataSet("../getFeedList?alert=dsFeeds&cachebuster="
+ d.getTime() , "Feeds/Feed", { sortOnLoad: "Label" , useCace:
false });
var dsCategories = new Spry.Data.XMLDataSet(null ,
"Feeds/Feed/Category", { distinctOnLoad: true, sortOnLoad:
"Category", useCache: false });
var dsChannel = new
Spry.Data.XMLDataSet("../getRSS?id={dsFeeds::Handle}&alert=dsChannel&cachebuster="
+ d.getTime() , "//channel" , { useCache: false });
var dsArticles = new
Spry.Data.XMLDataSet("../getRSS?id={dsFeeds::Handle}&alert=dsArticles&cachebuster="
+ d.getTime() , "//item" , { sortOnLoad: "pubDate" ,
sortOrderOnLoad: "descending" , useCache: false });
dsArticles.setColumnType("pubDate", "date");
function updateCategories(notificationType, notifier, data)
if (notificationType != "onPostLoad")
return;
var doc = dsFeeds.getDocument();
if (doc)
dsCategories.setDataFromDoc(doc);
dsFeeds.addObserver(updateCategories);
setTimeout(function() { dsFeeds.loadData(); }, 5000); -
Whats the exact differnrce between User-Exit and BADI ?
Hi All,
Can any one tell me whats the exact difference between User-Exit and BADI ?
Even in User Exit also we write our code and the same in BADI also. Can any one plse elaborate wats the exact difference between these ...
Thanks & Regards,
Anil Kumar.BADI is the Object oriented concept of USER-EXIT
chk this
http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
Message was edited by:
Chandrasekhar Jagarlamudi -
What is the Difference 'VOFM' and 'User-Exit' ?
What is the Difference 'VOFM' and 'User-Exit' ?
If you need to implement any of these User exits, you first create a project for the user exit, then assign the user exit(s) to your project. Then you write the coding for the user exit, and finally activate the project.
For general information about user exits, in the R/3 Library, go to Basis components and look at the Enhancements section. In addition there is detailed information about each user exit that you can access when you assign it to your project (see below).
Activities
Start by creating your project.
1. Enter a name for your project.
2. Select Modification -> Create.
3. Enter a short text for your project and select save.
Next assign the user exit to your project.
4. Select Components.
5. Enter the name(s) of the user exits you want to implement.
6. Select SAP documentation, if you want detailed information on this user exit.
7. Select save.
8. Select back.
Next make your coding modifications.
9. Select enhancement components.
10. Select change.
11. Select the user exit you want to write code for.
12. Select the include zxpbco01.
The system will then prompt you to create this include, and you can continue to write your coding in it.
Next activate your project.
13. Return to the initial screen and select activate project.
Routines
Routines are short sub-programs that carry out various checks during document processing. In the SD module, you can create and process routines for copying requirements, data transfer, requirements and formulas using transaction VOFM. Besides the routines delivered to you with the system, you can create your own individual routines.
Transaction VOFM allows you to follow a standardized procedure for creating routines. The name ranges are predefined for routines delivered to you with the system and for routines created by the customer. This name convention guarantees that your own routines are not overwritten during a Release upgrade.
Copying requirements and data transfer
The routines for coying requirements and data transfer are defined for the document types sales orders, deliveries, billing documents, sales activities, as well as for texts. You specify copying requirements and the data transfers when defining the document flow for each document type. You enter the routines for texts in the access sequences for texts.
o Copying requirements determine which data is copied during the copying of documents. A copying requirement could define, for example, that the same customer must appear in the document header when you copy an inquiry to a quotation.
o Routines for data transfer make a detailed control of the copying of fields possible. A data transfer could define, for example, that particular item fields can only be copied in combination with other particular fields and can only be copied into contracts or credit and debit memos.
Requirements and formulas
Routines for requirements and formulas are used for functions using the condition technique. You enter these routines in the pricing procedure or the condition types. Requirements are also used for statistics.
o A requirement in pricing can determine that an access is dependent on a particular precondition. It can carry out a check of the document currency, for example, and, depending on whether it is a foreign or the local currency, allow or deny the access.
o Formulas are used in pricing to define various factors for pricing. Formulas are defined for scale base value, condition base value, condition amount, group key, and rounding rules. The formula for a rounding rule could define, for example, that all calculated amounts are rounded to two places behind the decimal point during a price change of the condition record. The formula for a condition base value could define, that the header discount is distributed among the order items according to volume an not value of the item, as is the case in the standard SAP R/3 System.
Creating routines
There are two methods to create a routine
1. Creating by overwriting
When using this method, a note appears as a commentary in the routine to be newly created.
2. Creating
When creating a new routine, an ABAP with internal number assignment is created.
You always have to activate a new routine before using it. Each routine for requirements and formulas, copying requirements and data transfers is stored in a separate program. For each new routine an entry is added in table TFRM and TFRMT. For each routine, a long text can be stored as a text module.
Most routines must be changed in client 000. Transaction VOFM can be transported as XPRAs, which means that after the import all routines can be activated.
Name ranges for routines
The standard routines are to be within the number range 001-599 (for 2 digit formula numbers, 01-49)
The user routines are to be within the number range 600-999 (for 2 digit formula numbers, 50-99). -
How to find the structure in this user exit
My requirement is add new field to Delivery due list ALV report(VL10G).For enhance this report i will append one field(LIKP-SDABW) in this structure SHP_VL10_ITEM.This structure is not showing in the include LV50R_VIEWG05
USEREXIT_PREPARE_LAYOUT_FILL .Where i have to find this structure,and internal tables?
Please help me.
Thanks & Regards,
sairamHi Sairam,
Goto the program for transaction VL10G.In that u make a seach for the user-exit
USEREXIT_PREPARE_LAYOUT_FILL.Then write the logic inside tht.U will need an access key for that.
<b>Reward points if it solves ur query or answer is helpful</b>
Thanks
Chinmay -
Read value selected in Dropdown list in user exit
Hello,
I have mulitple variable in my web interface.
The first one is a list of months that the user can change and the others are calculated by user exit.
The problem is that i need the month in the user exit.
When the user has already a variable set for him, with ZGET_VARIABLE_DETAILS, i can have this month.
My problem is when the user changes the month in the web interface.
For exemple, the user has already save the layout with 01.2006, my user exits variables will find 01.2006 and be calculated with that month. After, the user changes the month to 11.2006, the problem, is that ZGET_VARIABLEDETAIL still return 01.2006, and my user exit variable are not anymore correct. But in the interface, the header area show well 11.2006. it's confusing for the user ...
If the user saves, that will set the month variable to 11.2006 and the next refresh will be ok.
Any idea how i can find this 11.2006 ? the current value of the dropdown list ?
Regards,
JarodHello Vlad,
The flag is well to true, and my layouts are well refreshed, but on the resfresh, the user exit variable read the month variables, and then calculation are made.
But on the read of the month variable, even if the dropdown bow has changed, this is still the set value which is read.
It seems that when you change the value in the dropdown, it doesn't set the value. It's only a display, and when you save, it set the value.
The problem is that for my refresh, i need to read the new month, the "displayed" value. In the header are of my layout, it's well the new month, but i cant find it in background for my user exit variable.
Jarod -
TMW: auto loading employee list in time data screen
Hi all,
Within TMW one can have an employee list. I'd like to get the employee selection auto loaded in the time data subscreen. Without double clicking on the employee selection or using the button "copy selected records".
Anyone have an idea how to do this?
Please help!
Kr,
JonathanSakira,
Thanks for the feedback. I don't think i was clear enough, sorry.
The problem i have is in the Time Manager Workplace. There a user gets an employee selection (we are using the multiple persons view btw). If the user wants to register absences for his/her crew he still needs to transfer his crew members to the time data screen.
Standard only the first person of his crew is transfered. It would be really helpfull if his complete crew was transfered automatically. So he starts TMW and can immediately start registering absences for his crew.
BTW thanks for the quick response!
Kr,
Jonathan -
What is the name of the table for finding user exit !
What is the table name to find the user exit !
Hi,
Goto to the table tstc and enter the transaction code for
which u want to find out the User-Exits. Check out the
program name from the result. Goto SE38 and dee that
program in display mode. Then search for the string Call
Cutomer-Funtion. All the result of search are the user
exits defined there for that transaction.
SAP user exits (enhancement names that we see in SMOD transaction) are all stored in the table MODSAP. The field NAME contains the enhancement name and the field MEMBER contains the name of the function module that will be called if the customer enhancement exists and is active. The customer enhancement projects are stored in the table MODACT. There, the NAME field is the name of the project and MEMBER is the name of SAP enhancement (that from the MODSAP).
So, if you are in some include, you can use where-used-list to get to the function module name. Then you find the SAP enhancement name from the MODSAP by supplying the function module. And finally, you find the customer enhancement projects by querying the MODACT with the SAP enhancement in the field MEMBER.
cheers,
vasavi.
kindly reward if helpful. -
Is it possible to define a form (subprocedure) inside a user exit? When I try it complains that I'm trying to define a form inside of a function. Of course I have no choice because the whole user exit is a function. What's the best way to work around this?
i came to know from one of the posts here in SDN, the options are,
1) create a custom function module and call it
2) write ur subroutine in a report prog. and call that subroutine of that report prog.
3) develop a INCLUDE and add it in MAIN prog.
for more info. pls. search in SDN
thanq
Maybe you are looking for
-
Hi All, I'm wondering if I can lock a folder with password on Ipad. I need to distribute a group of Ipads between clients and I don't want they can use apps like iMessage, Mail, Cal and System Preferences. I'm using a third party MDM, but they told m
-
I have created a form in ES2 having two Master pages. The second page of the form must begin on its own page. I also have three fields that are placed on every page and populated with global data. Everything looks great in Design View, but when I
-
Batch - Manf. Date for Batch
Hi All, Our Client is a FMCG Product Based company for each material batch is maintained processed with in the company & Finished good is getting transported form (manufacturing Plant - Hub - WSP - WT) this process will take 30 days it may be part
-
Refresh selectOneChoice ListBinding Conditionally
Hi, I am again asking for help. It stuck me for a while now. Thanks in advance for your inputs. I want 3 list boxes conditionally refreshed depending on a data input. So a data input triggers the refresh of list binding of the dropdown list. The inpu
-
Converting wpd (Wordperfect) to mac format
Ok troops, I'm getting close to convincing the Minister of war and finance (the Mrs) to let me buy a new imac and finally bidding farewell to microsoft and all the crashes etc. My question is, my wife has tons of teaching lessons, exams, notes (yes,