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
    Mreddy

    Hi,
    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öft

    Hi!
    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,
    Anubhav

    Hi  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,
    Reena

    The 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 Naik

    Hi 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 Srini

    Hi,
    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...

  • Enhance ICWC 2007 component

    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 Kamp

    Hi,
    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
    Vishal

    If 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
    Raj

    Hi
    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,
    Prabahar

    Hi 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