Enhancement of BP_ADDR component
Hello,
We are using CRM 2007, for one of the requirement we need to accumudate the source of enquiry creation. So we have selected the data origin field under the View :BP_ADDR. We have enhanced this field to Dropdowon lis box to display all the probable values.
Now under configuration tab, DATAORIGIN_TEXT field is showing as picklist , also implemented/redifne the following methods--
1. GET_I_DATAORIGIN_TEXT to set rv_disabled = 'FLASE'
2. GET_P_DATAORIGIN_TEXT to define the field property as picklist
3. GET_V_DATAORIGIN_TEXT to define values for the field
Now while testing the component using BSP_WD_CMPWB, no changes are reflected.
Please advice, what all the steps required to correct the error & how it will finally be reflected in the Business role while creating the Individual account under 'Account & Product' option.
Thanks & Regards
Deb
Hi Deb,
that's right! Assigning your config key to business role allows you using your own configuration for this business role.
I thought, that you enhanced GET_I_DATAORIGIN_TEXT by redefining the I-GETTER. For me, this means, that the SAP creates a new z-class which inherits the SAP standard class. In this case you have to assign your enhancement set to your client...
Did you set a break-point to your GET_I_DATAORIGIN_TEXT and checked the returning parameter? If rv_disable = "FALSE" and the DDLB is still disabled, this could mean, that the entity belonging to your field is not changeable...
best wishes,
Hakan
Similar Messages
-
Error while enhancing the BP_ADDR component using BSP component workbench
Hi ,
I am trying to enhance the BP_ADDR component using the BSP component workbench. But when I try to regenerate GET_I methods of my context node, I am getting the following error:
"Component GET_ADDRESS_GUID does not exist.
Determination of BOL attributes failed"
Please let me know the reason for this error and how to resolve it.
Thanks
MreddyHi,
You may manually create the Get method for the attribute ADDRESS_GUID in your context node class.
Regards
Prasenjit -
No component usage created in enhanced web dynpro component
Hi experts,
I am facing the following problem:
I'd like to enhance a web dynpro component in order to add a popup window. The popup is triggered by the process_event method. So far everything works just fine.
But the popup needs to know some context attributes from the main component, and I cannot create a component usage in order to set the context mapping.
Does anybody know how to solve this issue?
Thanks and regards
Jan Phillip HöftHi!
Thanks for your answers first of all.
I need the popup to be a stand alone web dynpro component, so I guess the assistant class doesn't do the trick because I can not access it in the popup component.
The popup is called when the business object is saved. So that the user is asked to notify other users that the document has changed. In this popup the user should fill in the message and click a button to send it and close the popup.
So I tried the OBN approach as well but with two problems :
1. I cannot close the popup component by coding (button click) because it has no direct parent component
2. The save event is not run through properly so the document stays locked by the user. But I didn't look into this yet.
So it would be perfect to have an embedded popup component which is based on a stand alone web dynpro application so it can be closed properly but it need at least access to the guid of the main component.
Anybody got an idea for this?
Thanks and regards
Jan Phillip Höft -
Enhancing a standard component - Table Cell Variant
Hi Forum,
I am trying to enhance the standard WD component /SAPSRM/WDC_UI_SC_DOTC_BD view V_SC_DOTC_BASIC in SRM 7.0 .
The requierment that for certain condition the Quantity cell in a row should be read only.
Carried out the following steps:
1. Created an enhancement
2. In the standard table column ITEMS_TABLE_QUANTITY [Columns] , removed the standard inputfield.
3. Added two cell variants ZITEMS_TABLE_QUANTITY_CV1 [CellVariants] and ZITEMS_TABLE_QUANTITY_CV2 [CellVariants] first one contans a text view and second contains inputfield. Variant key for first one is DISPLAY and for second one is EDITABLE.
4. Enhanced the method WDDOMODIFYVIEW with below code:
**Read the ITEMS table
DATA lo_nd_items TYPE REF TO if_wd_context_node.
DATA lt_items TYPE wd_this->elements_items.
DATA ls_item LIKE LINE OF lt_items.
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA ls_context TYPE wd_this->element_context.
DATA lv_disable_quantity TYPE wd_this->element_context-enable_quantity.
DATA lr_table_column TYPE REF TO cl_wd_table_column.
** navigate from <CONTEXT> to <ITEMS> via lead selection
lo_nd_items = wd_context->path_get_node( path = `COMP_CONTEXT.ITEMS` ).
lo_nd_items->get_static_attributes_table( IMPORTING table = lt_items ).
lr_table_column ?= view->get_element( 'ITEMS_TABLE_QUANTITY' ).
LOOP AT lt_items INTO ls_item .
IF ls_item-catalogid EQ 'VEP_Staples_D0'.
lr_table_column->set_selected_cell_variant( value = 'DISPLAY' ).
ELSE.
lr_table_column->set_selected_cell_variant( value = 'EDITABLE' ).
ENDIF.
ENDLOOP.
But even after the condition is true ALL cell i.e. the complete column is DISABLED or when the condition is false the COMPLETE column is enabled instead of enabling disabling ONLY THE SPECIFIC CELL.
Is there a problem with the code in WDDOMODIFYVIEW or something else?
Thanks,
AnubhavHi Saravanan
Under ITEMS node I added one more Node(cv_quantity) and one attribute(cell_variant_quantity) with in this node.
And code in WDDOMODIFYVIEW :
DATA lo_nd_items TYPE REF TO if_wd_context_node.
DATA lt_items TYPE wd_this->elements_items.
DATA ls_item LIKE LINE OF lt_items.
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA ls_context TYPE wd_this->element_context.
DATA lr_table_column TYPE REF TO cl_wd_table_column.
** navigate from <CONTEXT> to <ITEMS> via lead selection
lo_nd_items = wd_context->path_get_node( path = `COMP_CONTEXT.ITEMS` ).
lo_nd_items->get_static_attributes_table( IMPORTING table = lt_items ).
lr_table_column ?= view->get_element( 'ITEMS_TABLE_QUANTITY' ).
DATA lo_nd_cv_quantity TYPE REF TO if_wd_context_node.
DATA lo_el_cv_quantity TYPE REF TO if_wd_context_element.
DATA ls_cv_quantity TYPE wd_this->element_cv_quantity.
IF first_time EQ abap_true.
lr_table_column->set_selected_cell_variant( value = 'EDITABLE' ).<--Initially ALL cells shoud be editable
ELSE.
lr_table_column->bind_selected_cell_variant( path = 'COMP_CONTEXT.ITEMS.CV_QUANTITY.CELL_VARIANT_QUANTITY' ) .
* navigate from <CONTEXT> to <CV_QUANTITY> via lead selection
lo_nd_cv_quantity = wd_context->path_get_node( path = `COMP_CONTEXT.ITEMS.CV_QUANTITY` ).
IF lo_nd_cv_quantity is BOUND.
lo_el_cv_quantity = lo_nd_cv_quantity->get_element( ).
LOOP AT lt_items INTO ls_item .
IF ls_item-catalogid EQ 'VEP_Staples_D0' AND ls_item-number_int IS NOT INITIAL AND ls_item-description IS NOT INITIAL.
lo_el_cv_quantity->set_attribute(
name = `CELL_VARIANT_QUANTITY`
value = 'DISPLAY' ).
ELSEIF ls_item-catalogid NE 'VEP_Staples_D0' OR ( ls_item-number_int IS INITIAL AND ls_item-description IS INITIAL ) ."If the condition is not satisfied OR no item is added to that line
lo_el_cv_quantity->set_attribute(
name = `CELL_VARIANT_QUANTITY`
value = 'EDITABLE' ).
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
Now If I add an item that DO NOT satisfy the comdition to be read only, for that row the quantity is enabled but for all the rows below it quantity cells are DISABLED.
Hope my issue is clear?
Thanks a lot,
Anubhav -
Changes in enhancement to the component configuration not reflected
Hi,
I have created a Z enhancement to a standard OIF component configuration. In the enhancement I have added a button.
When I run the application I am not able to see the button I added. When I select More Field Help on the context menu of the WD application, I see the Z enhancement name in the Configuration ID. This means that the enhancement configuration is getting called but the button is not displayed. The button's visibility and final properties are set to true.
Can anyone help? To my knowledge I do not have to do any other configuration after creating an enhancement. Let me know if I have missed something.
Thanks,
ReenaThe issue is resolved. I noticed that there are 2 variants set for the componont configuration (OIF conf). And the variants are set dynamically at runtime. I was making enhancements to a wrong variant earlier. That was the reason why the changes were not reflected.
Edited by: reenaSDN on Sep 26, 2011 8:09 AM -
IB52 Enhancement - Locating Modified Component
Hello,
I am developing enhancement to IB52 transaction. Whenever user changes business partner of component and click on save. I need to identify which component is modified and update corresponding components contracts business partner. I have modified IBASE_SAVE badi but I could not able to locate which component is modified by user. Is there any other badi and function module which will provide me details of which component is modified by user during IB52 transaction modification?
Regards
Prasad NaikHi Prasad,
Thanks for the time spending on the query.I have a req on Ibase to copy partner number to external id and partner name to description of ibase header for which I am implementing BADI IBASE_SAVE and got all details but unable to find the functionmodule to update the data.
Can u pls help me in this regards as u have worked and solved ur issue.
Its would be gr8 help and appreciated .
Thanking you,
sree. -
Enhancing Standard webdynpro component
Hi friends,
I have never worked on enhancing standard web dynpro components,
Now i have got requirement, In SRM webdynpro component i have to place Custom Label and Custom Hyper Link, when i click on that hyperlink, one pop up window shud be open, can any please guid how to enahnce this standard webdynpro component
Thnx
Kumar SriniHi,
To Enhance any standard compoenent, and specially a "VIEW" just follow the below steps:
1. Go to SE80, Give the Component Name and press Enter
2. Go to the Desired "View"
3. Click enhance button (ICON Like spiral,6th from left to right of Application toolbar)
4. A Pop up will appear asking your Coposite Enhancement name and Enhancement Implementation name. Create "NEW" on both the occasion.
Now for UI Enhancements:
a) Click the "ROOT UI Element container" , right click add the custom UI elements and assign Property values as per your requirement( like binding,text,action etc.,). It is just like adding UI elements in Z-Compoent.
b) Create actions wherevr required
For Coding Level enhancements:
Here, for all the methods which are in the standard compoenent will have "PRE" and "POST" Exits. The difference is "PRE" Exits will render before calling the actual code and "POST" Exit will render after rendering the actual code.
Note: Till Enhancement Pack (EHP3) we had only PRE & POST Exits. And Now on from EHP 4 and More we do have an option "OVER WRITE" Exit.
Apart from Exits, we can create our own Events/event Handlers. These Event Handlers will work only for the enhancements.
We Can write our own logic in the newly created event/event handler.
Regards,
S.Meganadhan -
Enhancing standard ESS Component
Hi Experts,
I am going to make changes in standard ESS component in WD ABAP through enhancement button given on menu by creating an enhancement implementation. I want to know is it the right way to create enhancement and suppose any enhancement package is applied to the system, In that case changes done in current enhancement will remain same after the new enhancement is installed or not.
Please provide answers to my queries.
Thanks and Regards,
Vaibhav Tiwari.thanks vaibhav for reply....
I have a requirement that i need to add some custom(Input ) fields in 'Create Travel Request' view of travel and Expense Page of standard ESS . now the same field was needed in back-end in ECC in t-code TRIP...this i did using append structure in PTK99 and and modifying standard program and screen SAPMP56T 9999 with the guidelines given in SPRO.
now the same thing is to be done in in ESS which is ABAP WD application. WD component name is FITV_FPM, but in this application contains viewContainerUIElements on LAYOUT_VIEW which gets populated dynamically..I can create and Enahancement of this application and put the required field on the view but still after doing this, how to store the these data in back-end??? in back-end this data is stored in PCL1 cluster..
I feel SAP should have given some facility for this in ESS like it has given in ECC... -
Hi All,
I am working on CRM 2007 ICWebclient. I am familiar with CRM 5.0 IC Web, but not with CRM 7.
Now I have a requirement to enhance the sales order component ( items ) or sale order basket.
The steps I need to follow / want to know are
1. I need to find out which is the right component I need to enhance
2. I need to modify the component into z objects and assign the same to the current sales order
Can Anyone briefly explain me these two steps ?. Any help/hint will be highly appreciated (Points).
Thanks, Sudeep..Hi,
These are the steps u need to follow.
1.Come on to the view which u want to enhance in Web UI and chooes any field and press F2 , by this way u can find correct view.
2. Create a Enhancement Set by
SM34--->BSPWDVC_CMP_EXT
3. Assign this assignment set to ur client by
SM30--->BSPWDV_EHSET_ASG
4. Now go to BSP_WD_CMPWB Tcode and chooes your component and enhancement set and press enter
5. Now chooes Enhancement Component , it will ask application name ..give ur gname
6. Now chooew required view from view list --> right click and chooes enhance.
Now waht ever u want u can do with this enhance view.
Regards
Gaurav -
Enhancement proposal - WD4A component editor
I have a small suggestion regarding the creation of assistance classes in WD4A.
Assistance classes created via forward navigation from the WD4A component editor u2013 i.e. typing a new class name in the pertaining input field and answering the following u201DCreate class?u201D popup with u201DYesu201D u2013 creates a new class without the Fixedpoint-arithmetic flag checked.
This can easily be missed and is different from the according function in the Repository Browser, i.e. creating a new class via context menu->create (wich sets the flag)!
As this affects calculations in the coding considerably (a hard to find bug/feature ) I would like to suggest that both class creation behaviors get aligned.
Regards,
Sebastian KampHi,
My Apologies i did not recall what exactly I did for that but I can say you have to append all the structures which are referring in the program for saving the value.
I can tell the different structure which I have modified but I think you need not to modify all of them just a hit and trial.
PTRV_WEB_ITINERARY_INT (Structure)
2. PTRV_UTIL_VERLAUF (Structure)
3. FTPT_REQUEST (Table)
4. PTK05 (Structure)
5 PTRV_WEB_GENERAL_DATA_INT (Structure)
6. HEAD_PERIO (Structure)
7. PTP02 (Structure)
8. PTRV_HEAD (Table)
Thanks
Pradeep. -
Error while enhancing standard component CRMCMP_CND
Hi,
We have one requirement that Phase Id and Offer Id needs to added in the /SAPCND/GCM transaction and the same needs to be disaplay in the web ui. So we added two fields in field catalog after that we made two implementation in /SAPCND/ROLLNAME and CRM_COND_COM_BADI.
Now the funtionality is working fine in the GUI and in WEBUI the field is added but the F4 value is not visible in the new web ui screen.
So I tried to enhance the standard component CRMCMP_CND, in order to retreive the F4 value help. While selecting the context node in the standard view CondRecEditView we are getting the status message u201CError during analysis of method REATE_CONDRECORD of class L_CRMCMP_C_CONDRECEDITV0_CTXT. Message no. BSP_WD_TOOLS031u201D
In standard view itself I am getting this error and while enhancing the component the context node is not converted in to Zclass.
If we try to add attribute from the context node its giving error create_condrecord does not exist error.
So I am unable to proceed further. If any one aware how to solve this issue kindly let me know.Hi,
While enhancing a view of a component only the controller (xx_IMPL) and the context class (xx_CTXT) are extended into Z classes. Context nodes (xx_CNXX) are not automatically extended. You have to do it manually only for the context node(s) you would like to modify. Indeed there is a message that appears when you select the context node but this is not the reason why the CN class is not extended.
What you have to do is to redefine the method CREATE_CONDRECORD in class ZL_CRMCMP_C_CONDRECEDITV0_CTXT and create a new class ZL_CRMCMP_C_CONDRECEDITV0_CN00 that extends CL_CRMCMP_C_CONDRECEDITV0_CN00
In ZL_CRMCMP_C_CONDRECEDITV0_CN00 implement method GET_V_xx for the field you want a search help on
Regards,
Fabian -
Component Enhancement Deletion Problem in WEB UI
Hi All,
I created an enhancement set for component ICMPP_BT_SVT and then I had to delete it. I also deleted the records created by enhancement in tables BSPWD_COMP_EXT and BSPWD_CMP_C_REPL.
But now I am facing exceptions while I run this component. Please tell if I have missed any step for deleting the enhancement for this component.
Please help.
Thanks
VishalIf you want to delete enhancment follow the steps below. It worked fine for me.
First determine the objects (for example, BSP applications, classes, controller and so on) that were created by the enhancement. You can view these objects using the view cluster BSPWDVC_CMP_EXT (SM34): Select the enhancement set, choose "Enhancement Definition" and then "Controller Substitutes".
Then go to the BSP components in the ABAP workbench (SE80) that are used to store the enhancements. Search for the obsolete objects and delete them:
- Search for controller -> Search for and delete controller class
- Delete controller
- If a view exists -> Delete view
Then delete the Customizing entries ("Controller Substitutes") from the view cluster BSPWDVC_CMP_EXT.
If configurations that contain fields from enhancements that are now deleted were created (BSP_WD_CMPWB), these must also be deleted manually. -
Sorting Problem In Enhanced Webdynpro Component
Hi Expert ,
I have one enhanced one webdynpro component . In that i have enhanced some columns in table (Simple not ALV) in Standard Webdynpro View. I have to enable sorting on my fields . It is implemented in standard columns and working fine. But on my fields sorting is not working so please can any one tell me step by step procedure to sort out the solution for this.
Please reply me ASAP.
Thanks in Advance.
Thanks & Regards
RajHi
you need to add code for sorting on your feilds. check for the exits in that component and implement. How to sort on a table is already aviable in SCN. please search forum.
Regards,
Lekha. -
Enhancing standard component with new component usage
Hi!
I try to enhance standard component /SAPSRM/WDC_AOFC_BEV with new component usage (say, SALV_WD_TABLE). It allows me to add new usage, but the usage does not appear in the "Component Usages" tree node.
Is it a bug? Is it possible to enhance a standard component with new component usage?Hi Thomas!
We've been communicating with SAP on this issue for a while and last response we obtained is next:
Dear customer,
the possibility to create external controller usages (as required for
the ALV-usage) is not supported by the Web Dynpro ABAP development
tools. However, you could try a programmatic apporach by adding the
ALV-usage dynamically (e.g. in methods or method exits created within
your enhancement implementation).
See test component WDR_TEST_DYN_ALV_USAGE for details.
What's your opinion on this? Is it really not a bug? -
How to delete a view from a enhanced component?
I wish to know the possibility of deleting a view from a enhanced component.
I have two components IUICMD & IUICMRD. I have enhanced 4 views in the first component IUICMD using enhancement set ZCRM_ENHSET. There is no problem with that. But when i try to use the same enhancement set ZCRM_ENHSET for enhancing the second component IUICMRD, it's enhanceable in enhancement set. But 2 views IUICRMD/Meterreading & IUICMRD/MainVS is also copied to first component and available as enhanceable views in First component.
I want to delete those views from the first component. Let me know How to delete a view from a enhanced component?
Regards,
PrabaharHi Raju,
If you do not need those enhancment views in any of the components ( ie IUICMD & IUICMRD ) , then open the BSP application in SE80 , under controller, there will be files with extension .do as yourviewname.do ...delete those !! These will not dele the Z classes....but just deletes their presence from the BSP...
I would suggest following approch :
1) go to SM34 , open BSPWDVC_CMP_EXT....Select you enhancement set and click on enhancement defination in leftside panel.
2) now select the IUICMRD and CLICK ON CONTROLLER SUBSTITUTION...
3) now you will see all the enhancement available for that component...Delete the entries for those two views from there...
This is just deleting the entries...this does not delete any objects from the system.
4)Now click on Back arrow, and delete the entry for IUICMRD...save.
5) Now open BSPWD_CMP_WD for IUICMRD...you will get the enhance component button... You can now freshly enhance this component..
6) We did not touch to the entries for IUICMD in the BSPWDVC_CMP_EXT...So now if you open the component IUICMD in workbench with you enhancement set...you will see all the enhancement..including those two views which you wanted to delete from IUICMRD.
7) If you want to delete the enhancement for these views...then right click on the enhance views and select Delete enhancement...You will get a popup listing IMPL, CTXT and CN classes, select all Z entries in the pop up and those all will be deleted physically from the system...and thus view enhancement will be rolled back...
All the best !!
Thanks & Regards,
Suchita
If you are not sure, you can create copy of IMPL, CTXT and CN classes in se80 and then proceed for deletion..You can also make copy of entire BSP in se 80 before deletion...
Maybe you are looking for
-
How do I sign, save, and close a completed from in Adobe Reader for iOS?
After completing a PDF form and emailing it from Adobe Reader for iOS, the recipient receives it as a form and can change it. How do I save the form in Adobe Reader for iOS before sending it as an email so that the recipient cannot update it further.
-
How can I have multiple instances of a column that itself holds a foreign key reference?
I am new to Visual Studio so to start learning it I first of all downloaded a sample available at https://code.msdn.microsoft.com/ADPNET-Entity-Framework-2d1160cb and started working around it. Since I have fairly good knowledge of VB6 and SQL it did
-
Missing some entries in trasaction OKB9 after upgrade to ECC 6.0
We're missing some entries in transaction OKB9 after the upgrade to ECC 6.0. Pariculary, a significant number of records in table TKA3C were not copied over to ECC 6.0. Have anyone experience this same problem as well. We're at the early stage of uni
-
Getting around memory limits ?
Unfortunately my mobile doesn't seem to be able to load all the data for my program at one time... I've split it into seperate classes to no avail....I was wondering if there was a way to load and unload classes one at a time to ease the load ? or so
-
Installing airport extreme card in a macbook pro
need help replacing the airport extreme card in my macbook pro. need details on how to do it