Sample implementation for Badi CRM_IC_INBOX_BADI
Hi,
In our project we are going to extend Inbox Search with some custom fields in Search box.
But I have no idea about what should I write inside the BADI which works in background to take care of the searching.
I need all help that can be used for this implementation. Some questions are,
1. Do i need to alter Get_Query_Result method?
2. What should be the implementation inside of the other methods like BEFORE_SEARCH, AFTER_SEARCH?
3. Do I need to redefine any other methods.
4. Most imp, instead of implementing BADI, is there any other way around to provide solution to do this?
Hi Omkar,
Please go through the below Link :
http://scn.sap.com/thread/1631361
Thanks & Regards,
Akshay Ruia
Similar Messages
-
How to create implementation for BADI BADI_SD_SALES_ITEM
Hi all,
When i try to create a implementation for BADI it erorrs out saying "its for intenal use". Is there any way i can still go ahead and create a implementation for this BADI BADI_SD_SALES_ITEM.
Thanks in advance.Hello Jayakumar,
The BADI <b>BADI_SD_SALES_ITEM</b> is designed as internal BADI; the implementation can only be done, if the BADI is set to external. The property of a BADI is stored in the table <b>sxs_attr</b>. The flag <b>internal</b> must be cleared to use the BADI as external. The following short program will show you an example:
report z_xpra_upd_badi_def.
data: gt_prot type table of sprot_u,
gs_prot type sprot_u,
gv_simulate type xflag.
* Constant Definitions for Protocoll:
constants:
gc_error_fatal value 'E', " Error message with stop_upgrade
gc_error value 'P', " Error message: no prod use!
gc_success value space, " Success
gc_info value space, " Info
gc_warning value 'W', " Warning
gc_lv_error type n value 2, " Level for type 'E'
gc_lv_add_error type n value 2, " Level for additional info
gc_lv_warning type n value 2, " This could be either 2 or 3
gc_lv_success type n value 3, " Success only at 3
gc_lv_info type n value 4, " Info-messages only at 3 or 4
gc_lv_debug type n value 4. " Additional info for yourself
start-of-selection.
gv_simulate = space.
perform bc_action using 'BADI_SD_SALES_ITEM'
gv_simulate.
* Finally, the transport protocol will be added:
call function 'TR_APPEND_LOG'
tables
xmsg = gt_prot
exceptions
others = 5.
call function 'TR_FLUSH_LOG'.
* END OF PROGRAM
*& Form bc_action
* Function description/flow
* Used global variables:
* Read/Write
form bc_action using li_badi_def type sxs_attr-exit_name
li_simulate type xflag.
data: ls_sxs_attr type sxs_attr.
select single * into ls_sxs_attr
from sxs_attr client specified
where exit_name = li_badi_def.
if sy-subrc = 0.
if not ls_sxs_attr-internal is initial.
if gv_simulate is initial.
clear ls_sxs_attr-internal.
update sxs_attr client specified
from ls_sxs_attr.
endif.
if sy-subrc = 0.
perform bc_append_log using gc_lv_success
gc_success
'5@'
'000'
li_badi_def
text-001
sy-dbcnt
space.
else.
perform bc_append_log using gc_lv_error
gc_error
'5@'
'000'
li_badi_def
text-002
sy-subrc
space.
endif.
else.
perform bc_append_log using gc_lv_success
gc_success
'5@'
'000'
li_badi_def
text-003
space
space.
endif.
else.
perform bc_append_log using gc_lv_success
gc_success
'5@'
'000'
li_badi_def
text-004
space
space.
endif.
endform. "ACTION
*& Form bc_append_log
* Function description/flow
* Used global variables:
* Read/Write
form bc_append_log using li_level type sprot_u-level " Level
li_severity type sprot_u-severity " Severity
li_ag type sprot_u-ag " Message-ID
li_msgnr type sprot_u-msgnr " Messagenumb
li_var1
li_var2
li_var3
li_var4.
clear gs_prot.
gs_prot-level = li_level.
gs_prot-severity = li_severity.
gs_prot-langu = sy-langu.
gs_prot-ag = li_ag.
gs_prot-msgnr = li_msgnr.
gs_prot-newobj = space.
gs_prot-var1 = li_var1.
gs_prot-var2 = li_var2.
gs_prot-var3 = li_var3.
gs_prot-var4 = li_var4.
append gs_prot to gt_prot.
endform. " bc_bc_append_log
This report can be used as <b>XPRA</b> run; for this you need to assign this report in a transport with property object type <b>XPRA</b>. After importing the transport the report will be started automatically.
Please handle this proposal solution carefully.
Best regards,
Kurt. -
Issues while creating implementation for BADI "ME_PROCESS_PO_CUST"
Hi Group,
I have issues while creating implementation for BADI "ME_PROCESS_PO_CUST".
I tried to create implementation for the above mentioned BADI but, I was getting an error like this:
"Interface implementation IF_EX_ME_PROCESS_PO_CUST does not exist".
I want to implement this BADI and so, ideas/views at the earliest will be appreciated.
Please let me know how to overcome this error.
Thanks,
Vishnu.Hi,
Have you activated the class which is implementing the interface? (in transaction SE19 you should see class name)
Best regards,
Wojciech -
Implementation for BADI - /SAPAPO/ADVX
Hi,
I have created and activated an implementation for the BADI /SAPAPO/ADVX for the method USER_EXIT_MACRO. But this implementation is not triggering when i execute a macro in Transaction /SAPAPO/SDP94. Could you please let me know how to achieve this? (I am implementing this BADI to display the Units in SUOM instead of Base UOM).
Do we have any other BADI for changing the stock from UOM to SUOM?
Thanks,
RajinikanthHello Experts,
I have created one Z class in which i am using the methods of BADI /sapapo/advx , i have hard coded my macro id ,layout id and view id so that it will execute my code on execution of that particular macro.now my problem is how to read the data for particular keyfigure from the internal tables of this interface.i am not getting how to read te data and process it.
please help me on this.
Regards,
Saurabh Kulkarni -
Please can you give me sample code for badi
Dear Freinds
i have tried writing coding for the badi HRPAD00INFTY, but iam not able to get, my requirement is when the user enters for the ansal amount that amount
should be divided by 12 and should be defaulted for basic pay (p9008-bet01) based on the wage type (p9008-lga01=MFPY),
i have calculated the value as , but now i have to assign the value to p9008-bet01.
please let me know how i should code.
i am giving the code which is have written can you please let me know where i am wrong
method IF_EX_HRPAD00INFTY~AFTER_INPUT.
data: wa_pa0008 type pa0008.
select Single * from pa0008 into wa_pa0008 where pernr = NEW_INNNN-pernr .
if wa_pa0008-lga01 = 'MFPY'.
new_innnn-bet01 = wa_pa0008-ansal / 12 -
here iam not able to assign
endif.
endmethod.
regards
syamlaHi pranesh
thanks for replying , but the only problem is i have to default the value
for bet 01 from ansal
ie from p0008-ansal to q0008-bet01.
then only the method
CALL METHOD cl_hr_pnnnn_type_cast=>prelp_to_pnnnn
EXPORTING
prelp = new_innnn
IMPORTING
pnnnn = wa_0008. " wa_9008
will trigger for me and th wa_0008 will be filled up.
since when i say create 0008 , then if i entering for ansal then i asking for entering
value for q0001-bet01 , since the wage type for which i have to default the bet01
will be there on the screen before only, so the screen expects that i have to enter the value for amount bet01, so that measn bet01 becomes mandatory,
the method will work for me if iam able to make the bet01 being filled automatically from the calcualtion ( as per my requiremnt) i.e ansal/100.
regards
shanti -
Need sample code for Using BADI ME_PROCESS_REQ_CUST
Dear all,
Initially my requirement is to Validate the Document Type of Purchase Request ion as per material.
I have created a implementation for BADI : ME_PROCESS_REQ_CUST .
im new to OOPS-ABAP, so pls send *sample code for how to use these methods PROCESS_ITEM,
like declarations, assignment of data into internal table for further validation*.
Regards,
NIranjan.GHi,
get the item data ....
*DATA : lt_item TYPE MEREQ_ITEM,
ls_item liek line of it_item*
CALL METHOD im_item->GET_DATA
RECEIVING
RE_DATA = lt_item .
you will get the data in lt_item.. table
Thanks,
Shailaja Ainala. -
Sample Code for CRM enhancement in BADI
hi,
can anybody please give me sample code for BADI for CRM enhancement.
i have added couple of z field in a extract structure. now i have to write code in BADI to populate those fields.
please do not send code for user exit.
Regards
SubrataHi Aviral,
Please consider below thread :
http://scn.sap.com/thread/2069370
Best regards - Christophe -
Filter for BAdi CRM_ORDER_STATUS does not work in WebUI
Hello,
we have made an implementation for BAdi CRM_ORDER_STATUS for our sales cycle.
In detail:
The BAdi implementation shall be triggered if the user sets a special user status within an opportunity.
Therefor we have used the standard filter functionality provided by this BAdi (giving the correct header status profile and user status).
Using transaction CRMD_ORDER in SAP GUI, creating an opportunity and setting the special user status -> the BAdi implementation is triggered as expected.
But: If we are using the WebUI the done BAdi implementation is triggered at every roundrip caused by creating/editing an opportunity and not only at setting the user status.
Does anybody of you made similar experiences with using BAdis in WebUI (SAP CRM 7.0)?
Cheers,
André
**EDIT***
It´s possible coding the filter within the BAdi implementation.
But we prefer using the provided SAP standard.
Edited by: Andre Schillack on Apr 23, 2009 8:47 PMHi Andre,
I just checked my system CRM2007 and below is what I found in WebUI mode:
During the build of DDLB for Status field, it calls method cl_crm_uiu_status_info=>get_status_info. What it does is:
1. It derives all status codes for the user status profile (based on customizing)
2. And then for each status code, it triggers the BADI based on filter value. In the BADI, customer can decide whether the particular status (filtered value) is allowed to see in the DDLB.
Since it is building the DDLB for Status field every time there is change on the opportunity and therefore DDLB method calls the BADI every time to build the Status code list.
If you want to do further processing based on status change in the method BEFORE_CHANGE, you can try the following code.
if is_status_wrk-active_old = 'X' and
is_status_wrk-user_stat_proc = 'CRMACTIV' and
is_status_wrk-status = 'E0002'.
Do something
endif.
I hope I have not confused you.
I feel that this is standard behaviour in WebUI. You may want to check with SAP OSS also.
Regards,
Paparao Undavali -
Dear all,
I am an SAP PP trainner in ISPL. I have an idea for doing a sample implementation in PP only. So I dont know which datas from other modules needed to complete this sample implementation for SAP PP.
Kindly guide me....\@Jeyakanthan A: sir actually i have a plan to switch to ABAP in future as now as a fresher i have got an opportunity to start with SAP -PP. So this is the reason i want to install it on my system and practice it at home. Pls suggest if this is possible.?
-
Transaction code against used for BADI BAPI Details
Hi Gurus,
How to find in Particular transaction Active BAPI and BADI used Details.
Pls, Advise me.
Regards,
Jeevan.Hi Jeevan,
Your question is not clear. Please elaborate more on the requirement. As far as I understand BAPI are independent of any transaction and those are mainly used for communication between SAP and Non-SAP system.
BADI's are transaction dependent. You can use SE18/19 to find out active implementation for BADI.
Thanks,
Augustin. -
BADI FTR_CUSTOMER_EXTENT Implementation for Facility creation - TM_61
Hello Experts
I am trying to add new tab in the create facility transaction and I feel that the right BAID to do this is FTR_CUSTOMER_EXTENT. I am not able to update the new values in the screen to the database table. I check in the forum and there are many questions for the same but there is no clear answer for the same. Request your help in letting me know how this can be achieved.
I have also checked the same Function Group FTR_CUSTOM_BADI_SAMPLE but still I am not clear as to how I can achieve this.
Thanks in advance
Vijay VHello Claudia,
I finally solved the problem, and I hope my solution may suite your problem.
The bigger problem I had was pass the data from the screen to the BADI itself, so I created a function group following the FTR_CUSTOM_BADI_SAMPLE in which I developed the objects.
Those are the steps I followed:
I enhanced the structure VTBFHA with the custom field I needed;
I created an implementation for the FTR_CUSTOMER_EXTENT
in EVT_APPLICATION_START method I called a function module (copied from the FTR_CUSTOM_BADI_SAMPLE_START) in which I started the subscreen I draw in new tab. (Please note that by doing this I now have the interface if_open_trtm_customer_data always at hand). Follow the instruction of the sample code or the http://scn.sap.com/thread/1534252 thread)
in the PBO of the subscreen I retrivied the custom data via GET_CUST_DATA of the IF_OPEN_TRTM_CUSTOMER_DATA interface and pass the data in my screen fields. In order to do that I called a function module developed in the same function group, so that the interface is ready to be used.
in the PAI of the subcreen, once the data is entered I pass the new data via SET_CUST_DATA of the IF_OPEN_TRTM_CUSTOMER_DATA interface, again developing a FM within the function group of the EVT_APPLICATION_START custom function module I used.
I am sure there must be a better solution, but it owrked pretty fine for me, so I hope this my help you as well.
Moody -
Hi,
My requirement is to <b>add a new field</b> at header level in transaction code <b>MIGO</b>. No new fields at item level is required
To achieve above task i have implemented the BADI <b>MB_MIGO_BADI</b>. As per documentation of this BADI, copied the sample implementation.
This sample code gives one field (Number) at header level and at item (Detail)level a screen with new tab with three fields ( namely <b>Quantity , Unit of Measure and Text</b>).
Now i have commented the new screen at item level created by this BADI. Still the fields in the commented screen validation is taking place.
Even though the screen is commented at item level still the fields validation has taken place. I dont want these iteme level validations also. how do it ?
Can you please give us the solution to above requirement.
Regards
Badari Talanki
Message was edited by: Badari narayana TalankiHi,
Can you please post the details of the BADI definition (Definition name), so that it would be helpful for the forum to answer the query.
Rgds, -
Problem in creating new implementation for filter dependent badi
Hi Experts,
I want to use badi NOTIF_EVENT_POST.It is a filter dependent badi. It is asking filter type while implementing thro se19. Could anyone pls tel me how to create new implementation for the filter dependent badi. Existing filter type is QMART. is there any problem if i change the filter type?
Thanks in Advance!Hi ,
NOTIF_EVENT_POST is filter dependent and filter values are based on QMART value in table TQ80. You need to specify the filter value ie : QMART value before implimentation , before that check all active implimentations for the same , if u have to impliment on same filter value , you need to deactivate the one which is implimented on same filter value .
You are not supposed to change the filter type.
Regards,
Vamsi
Edited by: CH. VAMSHI on Sep 29, 2009 11:58 AM -
Unable to create the implementation for BBP_PD_DOWNLOAD badi
Hi ,
Iam trying to create a new implementation for this BADI BBP_PD_DOWNLOAD as zbbp_pd_download but when iam trying to activate it .iam getting a message that already active implementation is there and i cannot create a new implementation unless i deactivate the other one.since it is a standard one i cannot deactivate it .
Has any one used this earlier . any inputs on this wil be of great help .
Thanks in advanceHi
<u>You can create any number of Customer Implementations, provided only one is active at a time.</u>
<b><u>Here are the steps -></u></b>
Either Using SE18 / SE19 Transaction, or
After you call the IMG activity, the system displays a dialog box where you enter a name for the implementation.
If implementations of this Business Add-In have already been created, the system displays them in a dialog box. You then choose one of them by choosing Create, and continue as follows:
1. In the dialog box, enter a name for the implementation of the Add-In and choose Create. (Say ZBADI)
The system displays the initial screen for creating Business Add-In implementations.
2. On this screen, enter a short description for you implementation in the Implementation Short Text field.
3. If you choose the Interface tab, you will notice that the system has filled in the Name of the Implementing Class field automatically, by assigning a class name based on the name of your implementation.
4. Save your entries and assign the Add-In to a package.
5. To edit a method, double-click its name.
6. Enter your implementation code between the method <Interface Name>~<Name of Method>. and endmethod. statements.
7. Save and activate your code. Navigate back to the Change Implementation screen.
Note: You can also create an implementation for an Add-In and not activate it until later. If you want to do this, do not carry out the following step:
8. Choose Activate.
When the application program is executed, the system carries out the code in the method you wrote.
Regards
- Atul -
Which table if for BADI and its implementation
Which table if for BADI and its implementation
I want to know which implementations have already been created and actived for one BADI.Hi
check the tables for BADI
SXC_ATTR
SXC_ATTRT
SXC_CLASS
SXC_COCO
SXC_EXIT
SXC_FCODE
SXC_FCODET
SXC_IMPSWH
SXC_SCRN
SXC_TABLE
SXC_TABLET
Regards
Anji
Maybe you are looking for
-
My wife and I share a computer for our itunes accounts. How can we copy our music libraries to each others accounts without erasing the original library? We want to merge our songs.
-
Exporting to PDF from browser is showing junk data
Hi Ted, I am using cross tab in my report and when value 2 has to be displayed for a column, i have to show 'Tick' mark. It is displaying properly when i use <font face="Bookshelf Symbol 7">p</font>. It is showing tick mark. Even when i export direct
-
Hi all, I have a minor problem in that since installing 10.5 all my iTunes tracks are read only, if I want to change an album or track name I can't. This is only on the tracks that were on my Mac prior to the upgrade, everything that I have put since
-
[SOLVED]Dependency cycle detected
Just activated the multilib repositories. After that i tried to to install Infinality Bundle for 32-bit but confronted with a dependency cycle warning. What is this?: # pacman -S infinality-bundle-multilib :: There are 3 members in group infinality-b
-
PowerBI Analysis Services Connector Error 403
Hi all, I have a problem with the configuration of PowerBI Analysis Services Connector. I fill all fileds but i have an error in the last step. Error description: "The remote server forward an error: Forbidden (403)" I don't understand this error bec