Finding out BADI's for a Transaction
Hi,
I want to find out the Badi's for a Particular Transaction. Is there any Specific Method for finding out the Badi's for a Transaction.
Hi Krish,
Check out this Prgm and execute it ...
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.
Similar Messages
-
To find out BADI implementation for a standard transaction
Like for User Exit is there any standard code to find the BADI implemetation for a Transaction Code.
If so please paste the code.Hi pagal,
The following is the code for the report program which lists Userexits and BAdi's for a given Tcode...
Regards
Karthik D
<b>P.S.: Reward Points if this is Helpful</b>
*& Report ZDK_FIND_BADI
REPORT ZDK_FIND_BADI.
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. -
Help needed to find out BADI's for Transaction "PECM_CHANGE_STATUS"
Hi folks,
I was told to use BADI "HRECM00_ACTIVATION" and code in the Method "CALC_SAL_ADJUSTMENT" within it. After coding and executing my Transaction "PECM_CHANGE_STATUS" it does'nt stop at the method (inspite of keeping a breakpoint).
So, after suggestions from some of you folks i tried the below 2 methods to find out the relavant BADI's
1) First way, putting a breakpoint at "CALL METHOD cl_exithandler=>get_class_name_by_interface" via SE24 and found only one BADI in exit_name which is "HRPAD_SUBTY_CHECK".
2) Other way i checked the Package of suggested BADI "HRECM00_ACTIVATION" , which i found as "PAOC_ECM_ADM_BL". ANd when i go to SE80, for this package when i check the Enhancements section->Classic BADIs. i found about 15 BADI's ..Is this the right way to check for a BADI ? If not, how to know the relavant BADI's for my transaction "PECM_CHANGE_STATUS"
Awaiting for response. Thanks!Hi,
1. The BADI "HRECM00_ACTIVATION" does exist in this transaction, did you activate the implementation after writing the code? The method is called in the FM HR_ECM_CALC_SAL_ADJUSTMENT. You can try executing with breakpoint at the FM HR_ECM_CALC_SAL_ADJUSTMENT.
2. You can try using the program in the code gallery to find user exit/Badi. Link: [Badi/exit finder|https://wiki.sdn.sap.com/wiki/display/Snippets/ToFindoutUserexitsandBAdI%27s%28New+format%29].
3. In case you are working on ECC 6.0 the first point ( "CALL METHOD cl_exithandler=>get_class_name_by_interface" ) mentioned by you might now return all the BADIS, as SAP has introduced a new method by which BADIS are invoked. You can try searching for Kernel Badi in SAP Help.
Regards,
Sai -
How to find out the Tcodes for the exits
Hi All,
how to find out the Tcodes for the exits. i have a list of exits (customer, user, badi ). i need to find out what are the Tcode affected by this exits.
Customer Exits: EXIT_RFEBBU10_001
EXIT_RFEKA400_001
EXIT_RFFOEXIT_100
User-Exits: USEREXIT_DELETE_DOCUMENT
USEREXIT_FIELD_MODIFICATION
USEREXIT_MOVE_FIELD_TO_VBAK
USEREXIT_PRICING_PREPARE_TKOMP
BADI: CUSTOMER_ADD_DATA_CS
HISTORICAL_VALUES
MD_ADD_ELEMENTS
MD_CHANGE_MRP_DATA
MD_PIR_FLEX_CONS
MD_PLDORD_POST
ME_REQ_POSTED
NOTIF_EVENT_SAVE
Can anyone help on this <urgency factor removed>.
Regards
Ksihore
Edited by: Suhas Saha on Feb 20, 2012 12:58 PMi have just started reading about all these-user exits ,customer exits etc.
i have read somewhere that:call to customer exits are triggered by function modules exits.
the structure of function modules are like this:
EXIT_RFEBBU10_001
MEANS
Keyword EXIT followed by program name fllowed by three digits.
and the call is like this:
call customer function 0001.
From above we can conclude that this customer exit must be used in program RFEBBU10.
GOTO SE38 andenter prog name RFEBBU10.check for above function module.
for the rest i stick to the same method for user exits and BADI that we can findthe corresponding TCODES
using Where used lists.
please Tell me if i m wrong! -
How do i complain about having no use of iphone whilst transferring data & waiting for updates and used a big chunk of my mobile intenet allowance as had it plugged into laptop all day!-therefore to find out if eligable for compensation?.
Nothing is ever as easy as it should be, though I've no idea what you were doing that took so long. Takes at most 5 mins to insert a SIM card, choose a language and activate the phone. At that point it is working. Another 5-10 mins should get you connected to your email account. You can add media & apps when you're not busy doing something else, and the phone can still make & receive calls while you're doing that!
The web is geared towards always on all you can eat broadband. If you run mobile broadband with a data cap or escalating charges then you need to manage the usage carefully, it is nobody else's problem.
Sorry if I've come over a trifle harsh on your first visit here, but these forums are for users to help each other resolve technical issues. However badly your first day setting things up went there is nothing to be done about it now, A little research, or a chat with a knowledgeable friend or colleague, or getting the phone set up at the store would have made it easy. Chalk it up to experience and move on.
tt2 -
How to find out Authorization Object for Plant
Hi,
I have to implement an Authorization check for Plant in My Report Program.
Is there any transaction which can help me to find out Authorization Object for any field like Material and plant?
Thanks,
MamtaUsing SU21 u can create Authorisation Object.
The ABAP command AUTHORITY-CHECK is used for performing authorizaton checks in programs.
check f1 help on AUTHORITY-CHECK for the syntax.
check these links
link:[http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a92195a9-0b01-0010-909c-f330ea4a585c;jsessionid=(J2EE3417500)ID1605942050DB11298929682009193279End] -
How to find out the infoProvider for a given dimension table?
Experts:
In RSA1, I want to find out the infoProvider for a given dimension table.
But I am not sure how to display the tables linked to a given infoProvider.
Could you provide a way to display all tables linked to a given infoProvider?
Thanks a lot!See, The dimension table starts with Dcubename1 and incremental Dcubename2 .... so on
Ex.ZSD_C01 is your cube name
Dim tables starts for this is /BIC/DZSD_C011 /BIC/DZSD_C012 ...
Goto - LISTSCHEMA - derive cube name from given dim table and enter cube name - execute - will show you all the tables -
How to find out the description for the given field?
Hi All,
How to find out the description for the given field?
I mean ETTYP Desription is VTEXT. This we can find in TVEPT Table. So, How canwe find this?
Thanks in Advance
Sri...Hi Avi,
If i want to disply the fields like AUART and 'Description of AUART',
Suppose based on my query i will take AUART from T184 table. And the description of AUART is available in TVAKT table.
my question is if i have given T184-AUART and how do u find out AUART Description ?(How do u know which table is having Description of AUART)?
Thanks in Advance
Sri... -
URGENT: How to find out the Tables for Routines in BW.
Hi BW Gurus,
How to find out the Tables for Routines in BW.
I have this routine id <b>45XFAEI7LKIFIRDUKQG127YWW</b> and it is in inactive state and i want to activate it.
thanks in advance,
points will be rewarded.
Regards,
Maruthi.Hi Maruthi,
Check table RSUPDROUT using the routine id as input for the field CODEID. You will get the technical name of the update rule.
Cheers,
Praveen. -
How to find out the link for the tables for sub contract PO
Dear All,
How to find out the link for the tables for sub contract PO, I am looking for the fields Material, Unit, Batch no., quantity.
Please provide the solution for the Table related to ABAP.
Thanks,
V.V.Hi,
Make use of the table EKKO, EKPO...
For subcontract please select the option in EKPO-PSTYP.
Regards
GK. -
Pl find out the reason for VC Cycle error for vendor 105191
I had checked entire cycle of Valuation Class(MM42), Tax Code(ME12), validity period, MC Code
in the contract as per the proforma invoice 12738 for vendor 105191 - VC Parties, found ok.
Pl find out the reason for VC Cycle error for vendor 105191
" Unable to create consignment commision - FI/CO"
" Interface : inconsistent FI/CO line item data"I've used the CS6 AUTOMATE|PHOTOMERGE command many times. Today I ended up with the Error 22 message. After reading your message I did a search on my Win7 Pro 64 bit machine and got a number of hits for "scriptingsupport.8li".
1 for CS6 (on my machine)
2 for CS5 (no longer on my machine)
2 for Elements 8 (no longer on my machine but I DO have Elements 10 & 11 on it)
2 for CS# (no longer on my machine)
QUESTION: Should I delete some of these and which? Will deletion(s) suffice? -
Need a BADI/ exit for MIGO transaction
Hi,
I need a BADI / exit for tha transaction MIGO. My requirement is before displaying the materials in the item tab, check whether the user has authorization for that material or not. If he has no authorization, give error message. This should be done for all types of documents.
Please let me know if you need more information.
thanks,
Kishorehi,
You can have the authorization for the inventory management via authorisation..
Check the path: SPRO --> MM --> Purchasing --> Inv. management nad physical inventory --> Authorization management --> Maintain roles and assign users....
Regards
Priyanka.P -
I purchased an itunes gift card for my nephew. I received a confirmation that the credit card had been debited, however he never received a code to activate his gift. Where can I find out the code for my gift voucher?
If you purchased your gift using iTunes, you can resend it. Just follow these steps to resend an unredeemed gift to any address:
http://support.apple.com/kb/HT1541 -
Find out Account Group for already created customer
Hi,
How do i find out Account Group for already created customer?
Is there any Tcode to find that?
Thanks in advance.
SwethaHii
Please check it in XD03 got to sales area tab under billing document tab u will find the account assignment group. -
How to find out responsibility attached for particular user through query
hi
How to find out responsibility attached for particular user through query
Regards
9841672839Hi,
Following sql will help you find the responsibilities associated with the users in oracle applications.
SELECT frt.RESPONSIBILITY_NAME, furg.end_date
FROM
fnd_user_resp_groups furg,
FND_RESPONSIBILITY fr,
fnd_responsibility_tl frt,
fnd_user fu
WHERE fu.user_name = ‘&&username’
AND fu.user_id = furg.user_id
AND furg.responsibility_id = fr.RESPONSIBILITY_ID
AND frt.responsibility_id = fr.RESPONSIBILITY_ID
ORDER BY 1
Cheers...
Maybe you are looking for
-
Using an event in table maintenance view to populate a field
I have a table maintenance view, and I would like to populate one field of the table with derived data. I am trying to do this by coding a routine for one of the events, but so far no luck. I have been able to chege the data in the TOTAL table, but s
-
I haven't updated my 1st Gen Touch yet from 3.0. Is anyone using a 1st Gen Touch AND a Mac experiencing any problems updating to 3.1.2? Or have things gone smoothly for you? Thanks
-
No messages available in RWB monitoring in SAP Pi
Hi Expert, We are facing a peculiar problem only for JDBC receiver scenarios. The flow of the messages are as below: ECC -> PI -> Oracle database Messages processes successfully from ECC to Oracle and these messages are visible in SXMB_MONI but not i
-
Timeout parameter in Mail communication channel?
Dear All, Can someone tell me if there is a option to put a timeout parameter in Mail PI channel like it is in File channel? One of my FTP channel used to stop polling abruptly, but using this parameter I fixed this problem completely. Now facing a s
-
Archiving - Permission denied - cannot be open write program
Hi, Gurus I executed a write program (SARA) and the result is partialy ok , as you can see below ( the job log and spool.) Questions: 1.- there is not an archive file in C? 2.- Permission denied --> Message BA161 I checked object config,file and logi