IC Webclient - Creating new context node

I am trying to add a new Myfavorites functionality in AUISearch.htm (Inbox Search View). While creating a new context node under SearchAuiItems using the Wizard the following attributes have been entered:
Attrib. Name - FavoriteName
BOL Entity - BTQueryAUI
BOL Attrib - FAVNAME
and after confirming I get a popup for entering the 'Name of the Derived Class'. When I enter a class (ZXXXX) which isnt existing I get a short dump.
The current ABAP program "CL_BSP_WD_ENHANCEMENT_API=====CP" had to be terminated because one of the statements could not be executed. 
My questions are:
1. Is this the right way of creating a new context node under an existing standard view?
2. Has anyone come across a similar short dump?

It sounds like when it askes for a derived class, that the it wants a class that inherits from some SAP class.  I would assume that this derivied class is something you must create to handle the processing of your additional nodes.

Similar Messages

  • New context node doesn't appear

    Hi,
    I added a new context node using 'Create node' wizard into the ICCMP_BP_DETAIL component for the view ICCMP_BP_DETAIL/BuPaCreate for add to the BP creation the tax number information.
    When I access vía tcode BSP_WD_CMPWB to the view and go to the configuration, the node appears. But when we access to the configuration of the view via Ic Webclient the context node not appears, and it`s not possible to add the field.
    If the field is assigned vía tcode BSP_WD_CMPWB to the view, when we access vía IC Web Client to the view return a short dump.
    The GEt SET methods are also created on the new field but i can't see this field in UI config. I need to use this new field in RESULT list. I have tried using 'Assign to design layer' but it didn't work.
    What could be the problem?

    Hi David,
    You want to add one field right. if this is the case why your creating context node. instead of that create one value attribute under any context node. any how that context node is visible in config level and that field too. you can use that field in your config.
    go through the below doc in that step 1 will explain how to add value attribute under context node.
    http://scn.sap.com/docs/DOC-54345
    Thanks & Regards,
    Srinivas.

  • How to create a context node for "IBHeader" at the view "BuPaIBaseDetail"?

    hi, experts
    for the requirement, i have to get data from a root BO-IBHeader in the view of "BuPaIBaseDetail".But the view already has IBHeader's child object-"IBComponent", whose controller class is "CL_CRM_IC_BUPACONTROLLER_CN08", how can i create the context node for "IBHeader"?
    angerly wait for the answer. thanks a lot

    If you right click on an empty container or a container with an object in it, it has the same available choices to select. However, if you create a blank property node on the block diagram, and wire up the .net object to it, you will see a much different list of properties.
    So, the property node created from right clicking a .NET container will be for that container, even if there is an object inside. To create a property node for the object, you must wire the .NET object to an empty property node on the block diagram.
    Chris Van Horn
    Applications Engineer

  • Error in Workbench when creating new context/events

    Hi experts,
    I am trying to create a custom component. At various stages, I am getting the error - View not copied or enhanced with wizard; processing not possible.
    Currently while creating my context node in custom controller I got the issue(No view in the component has yet been created). I logged off and logged in again and the issue was no more there. I find the same popup when I create events. Sometimes the issue is resolved after logging off but sometimes it doesn't.  Is this a bug in the system or is it just me?
    Thanks,
    Abdullah

    Thanks Robert,
    I am trying to create a Z component.
    Can I get a link which throws more light on why do I need to get out of the component and load it again to avoid this error. In my case I am logging out of CRM and logging in to get the error removed, just getting out of the workbench does not help. I feel it should not happen or the system should prompt to get out of the component when some changes like this happen.
    Regards,
    Abdullah

  • Error creating dynamic context node in Webdynpro for ABAP. Plesae help!

    Hi
       I am getting the following error while creating a dynamic context node with 2 attributes. Please help me resolve this problem.
    Note
    The following error text was processed in the system PET : Line types of an internal table and a work area not compatible.
    The error occurred on the application server FMSAP995_PET_02 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: IF_WD_CONTEXT_NODE~GET_STATIC_ATTRIBUTES_TABLE of program CL_WDR_CONTEXT_NODE_VAL=======CP
    Method: GET_REF_TO_TABLE of program CL_SALV_WD_DATA_TABLE=========CP
    Method: EXECUTE of program CL_SALV_WD_SERVICE_MANAGER====CP
    Method: APPLY_SERVICES of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: REFRESH of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE_DATA of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~UPDATE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_VIEW~MODIFY of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMPONENT~VIEW_MODIFY of program CL_SALV_WD_A_COMPONENT========CP
    My code is like the following:
    TYPES: BEGIN OF t_type,
                CARRID TYPE sflight-carrid,
                CONNID TYPE sflight-connid,
             END OF t_type.
      Data:  i_struc type table of t_type,
      dyn_node   type ref to if_wd_context_node,
      rootnode_info   type ref to if_wd_context_node_info,
      i_node_att type wdr_context_attr_info_map,
      wa_node_att type line of wdr_context_attr_info_map.
          wa_node_att-name = 'CARRID'.
          wa_node_att-TYPE_NAME = 'SFLIGHT-CARRID'.
          insert wa_node_att into table i_node_att.
          wa_node_att-name = 'CONNID'.
          wa_node_att-TYPE_NAME = 'SFLIGHT-CONNID'.
          insert wa_node_att into table i_node_att.
    clear i_struc. refresh i_struc.
      select carrid connid into corresponding fields of table i_struc from sflight where carrid = 'AA'.
    rootnode_info = wd_context->get_node_info( ).
    rootnode_info->add_new_child_node( name = 'DYNFLIGHT'
                                       attributes = i_node_att
                                       is_multiple = abap_true ).
    dyn_node = wd_context->get_child_node( 'DYNFLIGHT' ).
    dyn_node->bind_table( i_struc ).
    l_ref_interfacecontroller->set_data( dyn_node ).
    I am trying to create a new node. That is
    CONTEXT
    - DYNFLIGHT
    CARRID
    CONNID
    As you see above I am trying to create 'DYNFLIGHT' along with the 2 attributes which are inside this node. The structure of the node that is, no.of attributes may vary based on some condition. Thats why I am trying to create a node dynamically.
    Also I cannot define the structure in the ABAP dictionary because it changes based on condition

    Ok, I think I found a bug... It seems for adobe forms in WD4A, the root context node must be 1-1 and you must nest the 1-n node within that... Not sure why, but it worked. So in my case my context would look like this:
    FOO_NODE (1-1)
         Widget (1-N)
              -Widget_info (1-1)
                   *Name
                   *Sku
                   *Description
              -Widget_plant (1-M)
                   *Plant_Code
                   *Plant_State
                   *Plant_City
              -Widget_pic (1-1)
                   *Picture

  • Create dynamic context node

    Hi Experts,
    I have tried the given example for Dynamic Context Node in Webdynpro ABAP
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/4c70444a-0801-0010-7688-9e4bd844b783
    But getting the Error when executing this application
    Note
    The following error text was processed in the system ISP : Adapter error in &VIEW_ELEMENT_TYPE& "TABLENAME" of view "ZWD_SACHIN_DYN_ALV.MAIN_VIEW": Context binding of property VALUE cannot be resolved: Node MAIN_VIEW.1.INPUT does not contain any elements
    The error occurred on the application server usirs254_ISP_01 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: RAISE_FOR of program CX_WDR_ADAPTER_EXCEPTION======CP
    Method: RAISE_BINDING_EXCEPTION of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP
    Method: GET_BOUND_ELEMENT of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP
    Please resolve this issue because when I am mapping the Attribute TableName in the InputGroup, it is throwing above Error.
    Thanks in advance
    Regards
    Sachin

    Hi Sachin,
    I am unable to understand why you are getting an error. I have tried the same tutorial myself and it works fine for me. Make sure that the TABLENAME attribute (which is of string type) is properly binded to the value property of the input field.
    Regards
    Arjun
    Edited by: Arjun Thakur on Mar 17, 2009 1:46 PM

  • Thru code how to create a context node n context attribute for a table

    Hi Friends....i need some clarification...according to my requirement i need 2 create contx node n ctx attribute for a table..i.e through the code(implemention NWDS) means this has 2 b done in dynamically...
          More clearly according to the structure of a table in MySql DB the same table structure  has 2 b designe in my view ..suppose my table(MySql) have 20 col's(name,dept,desig..) n 300 recoreds ..i hav to show that structure in view.
    waiting for reply..frndzzzzzzzz

    Hi Rajeshkelam,
    Take a Value Node say "Employee".
    Create 20 Value attributes (name, dept, desig..) under the Value Node(Employee).
    Then Create a Dynamic Table using the "Employee" Value Node.
    check this threads.
    Dynamic table creation
    Dynamic Table
    Regards,
    Mithu

  • Query in Context Node

    Hi all,
               Can anyone please tell me as to when we go for creating a New Context Node.
    Regards,
    Vijay

    Where to create new context nodes in the component workbench should be clear. The Wizard on view generation or the wizard after right click on context nodes.
    Creating new entries in the context nodes during runtime can be done everywhere. I experienced problems doing it in DO_HANDLE_DATA.

  • How to delete a dynamically created context node ?

    Hi
      I have created a context node dynamically and have added the check boxes to the node.
      But when i am refreshing the page it is giving me the following excepiton:
    com.sap.tc.webdynpro.progmodel.context.ContextException: DataNodeInfo(DwdReportView.Person): duplicate name for attribute attr1
    I am writing the following code in wdDoExit() method so that the node is invalidated  and all dynamically added nodes and attributes are destroyed from the metadata.
    The code  is :
         wdContext.getContext().reset(false);
    or
         wdContext.getContext().reset();
    or
                         wdContext.nodeName().invalidate();
    I have tried all the above mentioned code  snippets but it is still giving me the same exception.
    Please help me  resolve this issue.
    Thanks in advance.
    Regards
    Shaily

    Shally,
    A better forum to place your question is the forum.
    To your question: the wdDoExit() method is only called once i.e. when the view is destroyed from memory. Just like the wdDoInit() mehtod is called only once at initialisation of the view.
    Try refactoring your code, so that upon initialising of your context, the old version of it is removed.
    Hope this helps.
    Regards,
    Alain

  • CRM 7.0 WEB IC - context node values are not seen in webIC

    Hi
    can anyone help me in resolving my problem in CRM WEB IC.
    Actually i have added a new context node Using wizard , by right clicking the context nodes. i have four custom fields in that node, these i have to show on the View Account overview and the context node for this is Account where i have to fetch data based on the BP_number i have in Account, i have to  display custom fields from the context node BALANce which i have created .
    I gave all my coding in do_prepare_output method. But the values are not passing to my custom fields as a result the view in WEB IC dissappears saying
     
    Cannot display view IUICOVW/AccInfo of UI Component IUICOVW
    An exception has occurred Exception Class  CX_SY_REF_IS_INITIAL - Dereferencing of the NULL reference 
    Method:  ZL_IUICOVW_ACCINFO_IMPL=>DO_PREPARE_OUTPUT 
    Source Text Row:  82
    Edited by: nelachinni on Dec 16, 2010 10:04 PM

    Hi,
    Could you please share what are you trying to access at line 82 in do_prepare_output ? sharing code snippet might help in understanding the issue.
    Cheers,
    Sumit Mittal

  • Dynamic creation of context nodes and ui elements

    Hi,
    I have created context nodes dynamically. And i also want to create UI elements dynamically wherein i want to bind the attribute from the context node to it. For example i want to create a drop down by index and bind one of the attributes in the context nodes that i have earlier created dynamically to it.  I do not know how to get the path to the attribute as i get IF_WD_CONTEXTNODE_INFO when i say get_child_node(). And the IF_WD_CONTEXTNODE_INFO does not have any method where in i can get IF_WD_CONTEXT_NODE from where i can get the path by get_meta_path( )
    Here is the code. The problem is to get the path which is the i/p to cl_wd_dropdown_by_idx=>new_dropdown_by_idx( ) method.
    DATA:
            lo_root_ui_elmnt              TYPE REF TO cl_wd_uielement_container,
            lo_drpdwn_by_idx              TYPE REF TO cl_wd_dropdown_by_idx,
            lo_txt_vw                     TYPE REF TO cl_wd_text_view,
            lo_qstn_node                  TYPE REF TO if_wd_context_node,
            lo_optn_node_info             TYPE REF TO if_wd_context_node_info,
            lv_optn_data_source_name      TYPE string,
            lt_child_nodes                TYPE wdr_context_child_map,
            lo_qstn_el                    TYPE REF TO if_wd_context_element,
            lo_optn_el                    TYPE REF TO if_wd_context_element,
            lv_text                       TYPE string,
            lo_qstn_node_info             TYPE REF TO if_wd_context_node_info.
      FIELD-SYMBOLS:
    *                 <ls_qstn>    LIKE LINE OF wd_this->mt_questions.
                    <ls_child_node>         LIKE LINE OF lt_child_nodes.
      lo_root_ui_elmnt ?= io_view->get_root_element( ).
      lt_child_nodes = wd_context->get_child_nodes( ).
    LOOP AT lt_child_nodes ASSIGNING <ls_child_node>.
       lo_qstn_node = <ls_child_node>-node.
        lo_qstn_el = lo_qstn_node->get_element( index = 1 ).
        lo_qstn_el->get_attribute(
              EXPORTING
                name = 'QUESTION_TEXT'
               IMPORTING
                 value = lv_text ).
        lo_txt_vw =   cl_wd_text_view=>new_text_view( view = io_view ).
        lo_txt_vw->set_text( value = lv_text  ).
        lo_qstn_node_info = lo_qstn_node->get_node_info( ).
        lo_optn_node_info = lo_qstn_node_info->get_child_node( 'OPTIONS' ).
    *    lv_optn_data_source_name = lo_optn_node_info->get_meta_path( withoutcontroller = abap_true ).
    *    CONCATENATE lv_optn_data_source_name '.' 'OPTION_TEXT' INTO lv_optn_data_source_name.
        lo_drpdwn_by_idx = cl_wd_dropdown_by_idx=>new_dropdown_by_idx(
                              bind_texts = lv_optn_data_source_name
                              view       = io_view ).
        lo_root_ui_elmnt->add_child( lo_txt_vw ).
        lo_root_ui_elmnt->add_child( lo_drpdwn_by_idx ).
      ENDLOOP.
    Regards,
    Madhura Lobo
    Edited by: Suhas Saha on Aug 2, 2011 11:04 AM

    Hi Madhura,
    Please check this thread and find Baskaran answer...
    create new child-node in supply-function
    Re: Creating Dynamic Node and Table
    Cheers,
    Kris.

  • Help needed for creating new component in web ui

    hi experts,
          i need documentation on the component workbench. i need to cretae a new assignment block in web UI, similar ti the items assignemnt block in opportunity screen.
    Where can i find material to learn how to develop new components using component workbench?
    Thanks,
    Shantanu.

    Hi Shantanu,
    In fact, you need to create a context node. You can create this context node using the wizard. Click with right button in "Context node" of the view and follow the steps.
    Best regards,
    Caíque Escaler

  • Code to create dynamic context elements

    Dear Guys,
    I have create a dynamic text edit using the following code in abap webdynpro.
    I have created a transparent container named PREREPLY set to grid layout and created a context REPLY type string and in WDDOMODIFYVIEW view i have written the following 
    data : lr_container type ref to cl_wd_uielement_container,
             lr_comment type ref to cl_wd_text_edit.
    lr_container ?= view->get_element( 'PREREPLY' ).
    lr_comment = cl_wd_text_edit=>NEW_TEXT_EDIT( BIND_VALUE = 'REPLY'
                                                                                    COLS = 70
                                                                                    ID = 'PREREPLIES2'
                                                                                    STATE = 01 ).
    lr_comment->BIND_VALUE( 'REPLY' ).
    cl_wd_grid_data=>new_grid_data( element = lr_comment ).
    lr_container->ADD_CHILD( lr_comment ).
    i am able to see a new textedit when i run my application.
    Now I want to create the context also dynamically, because i will not know how many text edit will be there. Based on the number of lines in the internal table i want the create the context and textedits dynamically.
    Give me the code to create context dynamically in abap webdynpro.
    Regards,
    Shamila

    Hi Sharmila,
    Just go through this sample code snippet which does the following.
    1) It dynamically creates a context node named CHILD and then creates 4 attributes ATTR1, ATTR2,..
    2) Creates a GROUP UI element with a caption attached to it
    3) Create 4 textEdit UI elements bound to the 4 context attributes created earlier and embed them within the group
    METHOD wddomodifyview.
      DATA: lr_container TYPE REF TO cl_wd_uielement_container,
            lr_group TYPE REF TO cl_wd_group,
            lr_caption_group TYPE REF TO cl_wd_caption,
            lr_textedit TYPE REF TO cl_wd_text_edit,
            lr_node_info TYPE REF TO if_wd_context_node_info,
            lr_node TYPE REF TO if_wd_context_node,
            lr_element TYPE REF TO if_wd_context_element,
            lr_attribute_info TYPE wdr_context_attribute_info,
            content TYPE string,
            attribute_name TYPE string,
         lv_textview_id TYPE string.
      CHECK first_time = abap_true.
      lr_node_info = wd_context->get_node_info( ).
      CALL METHOD lr_node_info->add_new_child_node
        EXPORTING
          name                         = 'CHILD'
          is_mandatory                 = abap_false
          is_multiple                  = abap_true
          is_multiple_selection        = abap_true
          is_singleton                 = abap_false
          is_initialize_lead_selection = abap_true
          is_static                    = abap_false
        RECEIVING
          child_node_info              = lr_node_info.
      lr_container ?= view->get_root_element( ).
      cl_wd_matrix_layout=>new_matrix_layout( container = lr_container ).
      lr_group = cl_wd_group=>new_group( id = 'GROUP' ).
      lr_group->set_width( value = '50%' ).
      cl_wd_matrix_layout=>new_matrix_layout( container = lr_group ).
      cl_wd_matrix_head_data=>new_matrix_head_data( element = lr_group ).
      lr_caption_group = cl_wd_caption=>new_caption( text = 'Group Header' ).
      lr_group->set_header( the_header = lr_caption_group ).
      DO 4 TIMES.
        MOVE sy-index TO attribute_name.
    ** Preparing the data to be displayed in the textEdit i.e, data for context attribute
        CONCATENATE 'This'
                    'is the'
                    'data for textEdit number: '
                     attribute_name  INTO content SEPARATED BY cl_abap_char_utilities=>newline.
        CONCATENATE 'ATTR'
                    attribute_name INTO attribute_name.
    ** Condense the ID to ensure that the format is consistent with SAP standard
        CONDENSE attribute_name NO-GAPS.
    ** Prepare properties of attribute & add to context node CHILD
        lr_attribute_info-name = attribute_name.
        lr_attribute_info-type_name = 'STRING'.
        lr_attribute_info-value_help_mode = '0'.
        lr_node_info->add_attribute( EXPORTING attribute_info = lr_attribute_info ).
        lr_node = wd_context->get_child_node( name = 'CHILD' ).
        lr_element = lr_node->create_element( ).
        lr_element->set_attribute( name  = attribute_name
                                   value = content ).
        lr_node->bind_element( new_item             = lr_element
                               set_initial_elements = abap_false ).
    ** Compute the attribute path dynamically i.e, like CHILD.ATTR1
        CONCATENATE 'CHILD.'
                    attribute_name INTO attribute_name.
        CONDENSE attribute_name NO-GAPS.
        lr_textedit = cl_wd_text_edit=>new_text_edit( cols  = 10
                                                      rows  = 5
                                                      width = '90%'
                                                      bind_value = attribute_name ).
        cl_wd_matrix_head_data=>new_matrix_head_data( element = lr_textedit ).
        lr_group->add_child( the_child = lr_textedit ).
      ENDDO.
    lr_container->add_child( the_child = lr_group ).
    ENDMETHOD.
    Hope that you can manage to go through this & try change it to suit your requirement.
    Regards,
    Uday

  • Cannot remove context node

    Hi!
    I have 2 views and I navigate forth and back. On the second view I am creating a context node dynamically in method HANDLEFROM_INPUT_VIEW. Everything works fine for the first time. However, if I go back from the second view to the first one and then again navigate to the second view, the system attempts to create the new node with the same name like the existing one and I get a short dump (an exception cx_wd_context=>child_already_exist).
    I tried to delete the existing node by using the below code, which I placed in methods WDDOINIT, HANDLEFROM_INPUT_VIEW (before creating the node), ONACTIONBACK and WDDOINIT, but it didn't help. What can I do?
      DATA: lr_info    TYPE REF TO if_wd_context_node_info.
    * delete existing node (if there is one)
      TRY.
        lr_info = wd_context->get_node_info( ).
        lr_info = lr_info->get_child_node( 'DB_TABLE' ).
        lr_info = lr_info->get_parent( ).
        lr_info->remove_child_node( 'DB_TABLE' ).
      CATCH cx_root.
      ENDTRY.
    Thanks in advance!
    KR,
    Igor

    Hi, Lekha,
    I tried with no success. I debugged it and saw a strange result. Here is the new code:
    TRY.
        lr_node = me->wd_context->get_child_node( 'DB_TABLE' ).
        lr_node->invalidate( ).
        lr_info = me->wd_context->get_node_info( ).
        lr_info = lr_info->get_child_node( 'DB_TABLE' ). "test to see is there such node
        lr_info = lr_info->get_parent( ).
        lr_info->remove_child_node( 'DB_TABLE' ).
      CATCH cx_root INTO lr_error.
        l_error_text = lr_error->get_text( ).
      ENDTRY.
    lr_info object seems consistent in debugger, lr_info->get_child_node( 'DB_TABLE' ). returns a valid object, but later the statement lr_info->remove_child_node( 'DB_TABLE' ). fires exception which says: Static Node ZTEST_COMPONENT#OUTPUT_VIEW.CONTEXT Cannot Be Deleted. But I am trying to remove 'DB_TABLE'. Why am I getting message as if I was trying to delete the entire context?
    KR,
    Igor

  • Using One Context Node's Info in the Setter of Another

    I am very new to WebUI.
    I have a view.  In its context, it already uses context node BUILHeader .  I need to create a field based on BP_NUMBER info in BUILHeader and place the derived information on the screen.
    I created a new context node that has a field  DerivedValue in it. I think I am supposed to populate it in it's P_Setter.  How do I make he information from BUILHeader available to my setter.
    I think this is simple, but I'm new. so I need a good code example here.
    Thank you .
    ...Mike

    Hi
    Like Amar pointed out if it is possible pleae make sure that the field is also in BUILHeader context nide itself.
    If you want it to be in different context node then
    you can use me->typed_context -> "<context_node name >"
    create an attribute  "typed_context" pointing to the context class.
    "<context_node name >" --- Here you can replace the any of the context node which is present in your view!! you can use
    this anywhere inside the view. Hence you will be able to access other context nodes as well within the purview of the view.
    Thanks
    Abishek

Maybe you are looking for