Invalidate concept for value node and model node

Hello everybody,
We have invalidate method for value node and model node.
I want to know basic concept behind this method.
What this method acually does?
Regards,
Bhavik

Hi Pran and all,
I figured out the problem. Input parameters are going multple times. So, depending upon that it gives multiple values.
My scenario is:
Root Node
|_ Input_node1
     |_Attr1
|_ Input_Node2
     |_Attr2
|_Output_node
     |_Result
I am passing values in Attr1 and Attr2 attributes.
For this, first of all, i wrote following code.
In controller, i have initialized Root node:
Root_Node model = new Root_Node();
wdcontext.nodeRoot_Node().bind(model);
In view, I set values for attr1 and attr2 using following code:
Ipublic<View>.IInput_node1Element ele = wdcontext.createInput_node1Element();
ele.setAttr1("<value>");
wdcontext.nodeInput_node1().addElement(ele);
Ipublic<View>.IInput_node2Element ele1 = wdcontext.createInput_node2Element();
ele1.setAttr2("<value>");
wdcontext.nodeInput_node2().addElement(ele);
But this code didnt work. Model was executed without data in this case.
So, i thought that these elements were created at view level only. And corresponding model objects were not created.
So, I have changed code like following way:
I have removed initialization code for Input_Node1 and Input_Node2 from view. Now, I am getting input values in two different value nodes. And before calling custom controller's method to execute model, I am making two ArrayLists and filling data in it. Now, i am passing these ArrayList objects as parameters to controller's method.
In this method, i am setting both values as follows:
wdcontext.currentRoot_NodeElement().modelObject().setInput_Node1(List1); 
wdcontext.currentRoot_NodeElement().modelObject().setInput_Node2(List2); 
Then i am executing my model.
But, When i am setting values for Input_Node1 and Input_Node2 as shown above, values are appended instead of overwritting the value. Because of this appended values, it gives mupltiple results.
Means, Both ways are not proper. What should be the proper and best way to pass values in this case?
Thanks,
Bhavik

Similar Messages

  • How to have a tree view for value node..

    Hi all,
    I need to display a tree view for a value node in web ui  just like a model node, for a custom view in a pop up. Please guide me  how to do this or let me know the process steps.
    Thanks in advance.

    Hi All,
    while debugging I found that in class CL_BSP_WD_CONTEXT_NODE_TREE , the method GET_T_TABLE the below code is not triigerring for the child node attributes ( to trigger the get method of attribute for value node).
    this call method is not triggering at all only for first coulmn its triggering ..
      LV_TN ?= ME->NODE_MAPPER->GET_NODE_OBJECT( <LINE>-NODE_KEY ).
        CONCATENATE 'GET_' COMPONENT INTO LV_METHOD.
        TRY.
            CALL METHOD LV_TN->(LV_METHOD)
              EXPORTING
                ATTRIBUTE_PATH = ''
              RECEIVING
                VALUE          = VALUE.
          CATCH CX_ROOT INTO LV_ERROR.
    I created the GETTER method inthe class CN01 and CN02. But those methods are not triggered in CALL METHOD LV_TN->(LV_METHOD). Even that class CN02 is having the  same methods. Those methods are already Implemented. May I know what was the reason Why those methods are not triggered ( getter method ). With out that Method data will not display in the Tree view. Can anybody tell me the reason why it is not happenning?
    .Please find the below .HTM code  as well.
    <chtmlb:configTree
                          actionsMaxInRow       = "5"
                       id             = "Table1"
                       nodeTable      = "<%= ZTREEVIEW->node_tab %>"
                       table          = "//ZTREEVIEW/Table"
                       noFrame        = "FALSE"
                       personalizable = "TRUE"
                       onCollapseNode = "NODECOLLAPSE"
                       selectionMode  = "MULTILINEEDIT"
                       onExpandNode   = "NODEEXPAND"
                       onRowSelection = "select" />
    Only one column was triggered another column did not get any value becasue of the above method call fail.. We are not restricted anywhere to display one column value in the output.   Even in Debugging I checked that LV_METHOD  is having the method name. CN02 class is also having the  same method, But it is not going into the method. It is coming out side. What could be  the reason I could not able to understnad.
    Please provide me some pointers on the issue....
    Thanks in advance..

  • Method "LOCK" is unknown or PROTECTED or PRIVATE for Value Node

    Hi Experts,
    Please help me to resolve this issue.
    I am unable to lock the entity for Value Node and I doing this because I want to edit my custom view of the assignment Block.
    Actually, I have created a custom view for custom BOL in BP_HEAD Component, Later I have added this view to the AccountDetailsViewSet of the BP_HEAD and Now I have added the Edit Button to my custom View in DO_PREPARE_OUTPUT Method of the view controller.
    And now when I about to write the code it says there is no lock method available for Value Node and also I am unable to edit the view
    Syntax Error: Method "LOCK" is unknown or PROTECTED or PRIVATE.
    DATA: lr_entity     TYPE REF TO CL_BSP_WD_VALUE_NODE.
          lr_entity ?= me->typed_context->Root->collection_wrapper->get_current( ).
          IF lr_entity->lock( ) EQ abap_true.  " I am receiving syntax error here.
            me->view_group_context->set_view_editable( me ).
          ENDIF.
    Thanks,
    Bujji

    Hi Bujji
    It is not possible to use lock on value node entity. If you want to set your view to editable, you can use the logic as seen in the method 'ASSIGN_EDITMODE_2_VIEWS' of the account view set impl class in standard.
    Hope this helps.
    Regards,
    Nisha

  • Tell me the driver for audio for series c500 and model c505tu

    Tell me the driver for audio for series c500 and model c505tu

    Hi: I already gave you the driver above for the PCI simple comms controller. Here is the driver you need for the wireless card... This package contains the Broadcom Wireless LAN Drivers that are required to enable the integrated Broadcom Wireless LAN Adapter in supported notebook models that are running a supported operating system. File name: sp48591.exe You will also need this bluetooth driver for that model wireless card... This package contains software and a driver to support the Broadcom 2070 Bluetooth for supported notebook models that are running a supported operating system. The Broadcom 2070 Bluetooth Driver works together with the Broadcom WLAN Driver that supports the NIC in your notebook to enable Bluetooth connections. This package also provides additional Bluetooth Profiles. File name: sp50180.exe

  • Value Mapping and Dynamic Value Mapping

    Hi Experts,
    Could you please give a example for Value Mapping and Dynamic Value Mapping?
    Regards
    Sara

    Sara,
    I am assuming that you are going to use the Receiver JDBC adapter to select the data from the database.
    In this case, take a look at this blog of mine to understand how te dataypes should be created for the request and response JDBC Select Query.
    /people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
    The only difference would be that in the mapping when you create the Request Message for the JDBC adapter, the columns you create would be determined from the Source,
    i.e, if value = 1 , only the required Columns should be mapped as Blank constants,
    likewise for the other requirement.
    the columns you do not want to select you should not create them in theoutput of your request mapping.
    Regards
    Bhavesh

  • Regarding  Exception handling for  Value mapping

    Hi
    We have a requirement for resending the message (using  SXMB_MONI)for Value mapping and other message mapping related errors . Is there any others way we could achieve this , Any help on this is appreciated ?
    Thanks in advance,
    Jishi

    Hi Jishi,
    I don't think that SXMB_MONI is the solution.
    If you have a mapping error this can belong to two things:
    a) either your mapping is wrong
    b) or your message is wrong.
    In case a) you have to correct your mapping
    In b) The sending system must look what happend.
    In my opinion in both cases (a & b) the process must be restartet from the source system. That's the way we do it.
    Additionally we send a information message in the exception branch to the sending system
    Regards Mario

  • Invalidation of model and value nodes

    Hii,
    I have a RFC which fetch values for me after giving  some input values.The code for fetching is
    ResultNode : model node containing values fetched from RFC execution.
    OutputDetailsNode : value node for populating the fetched values to the table in View.
    OutputDetailsNode.invalidate();
    wdThis.wdGetTdc_DataCustController().execute_zsm_actual_allocation_input();
    if(ResultNode.size()!=0)
           wdComponentAPI.getMessageManager().reportSuccess(""ResultNode.size() "resultnode's size");
           for(int i=0;i<ResultNode.size();i++)
              ResultElement = ResultNode.getT_ResultElementAt(i);
              OutputDetailsElement = OutputDetailsNode.createCtx_vn_OutputDetailsElement();
              OutputDetailsElement.setTeam(ResultElement.getTeam());
              OutputDetailsElement.setESA(ESA);
              OutputDetailsElement.setUtilization(utilization);
              OutputDetailsElement.setPercent_Sum(Percent_Sum);
                  OutputDetailsElement.setPercent_Alloc(percent_alloc);
              OutputDetailsNode.addElement(OutputDetailsElement);
         if(BapiNode.size()!=0)
                 for(int i =0;i<BapiNode.size();++i)
               BapiElement = BapiNode.getBapiReturn_T_MessageElementAt(i);
                                             wdComponentAPI.getMessageManager().reportSuccess(""
                             BapiElement.getMessage_V1()""+BapiElement.getMessage_V2());
                   OutputDetailsNode.invalidate();
                   BapiNode.invalidate();
                   //ResultNode.invalidate();          
    The problem lies : When at cases ResultNode size is 0, that is it does not fetch any values and BapiNode prints the message
    "Data does not exist" ....after that when it is expected to fetch values, evrytime the ResultNode size prints to 0 and no
    data is displayed.....
    invalidating both ResultNode and OutputDetailsNode did not help.
    Please do suggest.

    Hi,
    u can write like this na,
    OutputDetailsNode.invalidate();
    wdThis.wdGetTdc_DataCustController().execute_zsm_actual_allocation_input();
    if(ResultNode.size()!=0)
    wdComponentAPI.getMessageManager().reportSuccess(""ResultNode.size() "resultnode's size");
    for(int i=0;i<ResultNode.size();i++)
    ResultElement = ResultNode.getT_ResultElementAt(i);
    OutputDetailsElement = OutputDetailsNode.createCtx_vn_OutputDetailsElement();
    OutputDetailsElement.setTeam(ResultElement.getTeam());
    OutputDetailsElement.setESA(ESA);
    OutputDetailsElement.setUtilization(utilization);
    OutputDetailsElement.setPercent_Sum(Percent_Sum);
    OutputDetailsElement.setPercent_Alloc(percent_alloc);
    OutputDetailsNode.addElement(OutputDetailsElement);
    }else{
    // here give error message.
    use external debugging to know the rfc returns the value or not ?
    why you using the bapinode to check the no data exists ?
    Regards,
    ramesh

  • Model and Value node data in one form...?

    Hello,
    I have a requirement where the adobe form is expected to have model data available and then in the same form teh user provides data, which is maintained in value node.
    Now the problem we are facing is, we are unable to maintain both value node and model node(i.e,attributes) under one type of node.(Invalid node type error appears when tried to place both attributes under one node).
    How do we provide them to data source, as it takes only one node.
    Thanks & Regards,
    Sharath

    Hi,
    you could try to add a some calculated attributes in the node which is bound to the interactive form. In the getter and setter methods of these calculated attributes you can read and set the value of your model attributes.
    Regards
    Sebastian

  • Difference between value node,model node and recursion node?.

    Hi all,
    this is to ask you the difference between modal node, value node and recurrsion node?
    please explain
    Anhitya Kashyap

    hi Anhit,
    node can be classified as a value node or model node. The difference between value nodes and model nodes is that a value node can store the data itself, whereas the model node only references an external model object that stores the data.
    more on nodes check this
    http://help.sap.com/saphelp_webas630/helpdata/en/b8/cd96edb9c8794aa362e6e8b4236a1f/frameset.htm
    thanks,
    Saloni

  • Webdynpro : How to SKIP the values of the Model Node.

    Hi
    i imported a WSDL into my WDJ application.
    where on context mapping, i mapped the MODEL with my CONTROLLER.
    I would like to SKIP couple of Attributes and Model node
    In WEBSERVICE navigator, i have the check box as SKIP, so using that i can skip in Navigator ,
    But how to do the same in WEBDYNPRO Coding.
    Say for Example
    Context
    ----------ModelNode1
    ----------ModelNode2
    ----------ModelNode3
    ----------======ModelAttribute1      NULL
    ----------======ModelAttribute2      SKIP
    ----------======ModelAttribute3      SKIP
    i know how to set the value if it need to set it to null
    wdcontext.nodelModelNode3.currentModelNode3element.setModelAttribute1("null")
    similaraly  can anyone tell me how to set the SKIP for other 2 attributes......
    Thanks

    Hi Chintan
    Thanks for your response....
    fine ... i understood your solution....
    but , my problem goes and makes me dizzzy
    i have 10 mandatory filed in my Webservice..
    i passed all the 10 mandatoy fileds and get perfect Response In WEBSERVICE Navigator....
    i tried passing the same value via WDJ application as show below
    since i have a node element with cardinalith 0..n
    I set the value those i passed in Webservice Navigator.....
    wdContext.nodeRequest_getSubmitRequest().
                     nodeRequestDetails().nodeRoles().invalidate();
           IPrivateOne_AppView.IRolesElement RoleE = wdContext.createRolesElement(new ComplexType_RoleData());
         RoleE.setRoleId("BASIC");
         RoleE.setSysId("R3");
         wdContext.nodeRequest_getSubmitRequest().
                   nodeRequestDetails().nodeRoles().addElement(RoleE);
    But Here ,I get a Error Message Saying  :Error in Submiting Request :  No role seleced for the request.
    so , i even checked whether the node is populated with rite value by printing them after executing the WSDL.
         wdContext.currentRequest_getSubmitRequestElement().modelObject().execute();
              MsgManger.reportSuccess( "After Push_execute_WSDL");
    MsgManger.reportSuccess( " COntroller getRoleId -- "+wdContext.nodeRequest_getSubmitRequest()
                        .nodeRequestDetails().nodeRoles().currentRolesElement().getRoleId().toString());
              MsgManger.reportSuccess( " COntroller getSysId -- "+wdContext.nodeRequest_getSubmitRequest()
                        .nodeRequestDetails().nodeRoles().currentRolesElement().getSysId().toString());
    Output
    After Push_execute_WSDL
    COntroller getRoleId -- BASIC
    COntroller getSysId -- R3
    Kindly let me know wat could be wrong........
    The MOST wired thing is
    if i didnt set and Role , SysId in webservice navigator , then Error thrown at Webservice Navigator is
    Error in Submiting Request : RoleId is mandatory,SysId is mandatory null
    on following same thing , if i didnt set Role and SysID in WebDynpro then, i get error as
    Error in Submiting Request :  No role seleced for the request.
    How is this possible....
    any help on this would be appreciated...
    Thanks

  • How to populate a Value Attribute of a Value Node inside Model Node

    Hello
    I have my context like this.
      Context
    ..          - ModelNode
    ....                      - Model Attr1
    ....                      - Model Attr2
    ....                      - Model Attr3
    ....                      - Model Attr4
    ....                      - Value Node
    ......                                  |
    ......                                   - Value Attr1
    Model Node is of Cardinality 0..N
    Value Node is of Cardinality 1..1
    I want to create multiple records in my Model Node and one record for every Model Node in Value Node.
    How to do this?
    All good suggestions are welcome.
    Regards,
    Shubham

    Hi Shubham,
    With your context structure the code will be
    for(int i = wdContext.nodeModelNode().size()-1 ; i>=0 ; i--)
        IPublic<comp name>.IModelNodeElement ele =   wdContext.nodeModelNode().getModelNodeElementAt(i);
        IPublic<comp name>.IValNodeElement valEle = wdContext.nodeModelNode().nodeValNode().createValNodeElement();
        valele.setValAttr("");
        ele.nodeValNode().addElement( valEle);
    Your val node should be non singleton (singleton property = false)
    Regards,
    Jaydeep

  • Value Nodes vs. Model Nodes

    Hi,
    why model nodes have to be initialized via Service Controller and needs to be bound to a model class instance and value nodes don't need that?
    Thank you,
    Pietro

    Hi Pietro,
    A model node is similar to value node in respect to it's API.
    The main diff are:-
    Value node
    1.It maintains it's own elemnet collection,each element holding the actual runtime data.
    2.While creating new element for a value node ,the node can create element object using metadata stored within it.
    3.the children of a value node only be value nodes or value atrributes.It can't be a mix value and model nodes or attribute if the 
       parent is a value node.
    Model Node
    1.The element collection maintains by a model node is simply a collection of reference to model object instances.
    2.Actual runtime data is stored in model object, not in model node's element collection.
    Hope this will help you. if you want more check this.
    http://help.sap.com/saphelp_webas630/helpdata/en/b8/cd96edb9c8794aa362e6e8b4236a1f/frameset.htm
    Thanks & Regards,
    Bhargava.

  • Problem while copying from model node to value node!!

    Hi All,
    I am trying to copy the contents of model table to newly created value table. For this i have written following code -
    IWDNode targetnode = wdContext.nodeZhress_Firstday_Service_ValueNode();
    IWDNode sourcenode = wdContext.nodeOutput().nodeT_Zhress_Firstday_output();
    WDCopyService.copyElements(sourcenode,targetnode);
    tagetnode is the node which is created in root context and sourcenode is the node which the node that shows the output when RFC runs.
    After that by using copyService i m trying to copy from source to targetnode.
    This target node is also binded to table, for getting the output.
    When i copied the things from source to target it's size is equivalent to source node but its not getting any data from source node and showing blank in the table.
    When i have tried to get whats it showing, its showing me        null .
    Please help me on this problem.
    Regards,
    Roshan Gupta

    hi
    check out this threads
    Re: WDCopyService - copy model node to Value node
    WDCOPYSERVICE
    Value of attribute not copied after WDCopyService.copyElements
    Regards,
    Gopi

  • How to populate value of a Z table which is a value node for the context?

    Hi,
    My requirement is to display the content of a z table onto a webpage, for this a have create a z component having a tableview with value node (Z table) assigned.
    In output its showing the table with table columns name. But how to display the content of that table?
    Regards,
    Payalg

    The get_xxxX methods should be automatically created and there is no need to add any code .. it generally has this kind of code.
        DATA: current TYPE REF TO if_bol_bo_property_access.
        DATA: dref    TYPE REF TO data.
        value =
    CNODE1 not bound'."#EC NOTEXT
        if iterator is bound.
          current = iterator->get_current( ).
        else.
          current = collection_wrapper->get_current( ).
        endif.
        TRY.
            dref = current->get_property( 'FIELD1' )."#EC NOTEXT
          CATCH cx_sy_ref_is_initial.
            RETURN.
        ENDTRY.
        IF dref IS NOT BOUND.
          value = CNODE1/FIELD1 not bound'."#EC NOTEXT
          RETURN.
        ENDIF.
        TRY.
            value = if_bsp_model_util~convert_to_string( data_ref = dref
                                        attribute_path = attribute_path ).
          CATCH cx_bsp_conv_illegal_ref.
            FIELD-SYMBOLS: <l_data> type DATA.
            assign dref->* to <l_data>.
          please implement here some BO specific handler coding
          conversion of currency/quantity field failed caused by missing
          unit relation
          Coding sample:
          provide currency, decimals, and reference type
          value = cl_bsp_utility=>make_string(
                             value = <l_data>
                             reference_value = c_currency
                             num_decimals = decimals
                             reference_type = reference_type
              value = '-CURR/QUANT REF DATA MISSING-'.
          CATCH cx_root.
            value = '-CONVERSION FAILED-'.                  "#EC NOTEXT
        ENDTRY.

  • How to compare the value node of a for-each-group with other for-each-group

    Hello!
    I have a report in Oracle BI Publisher (10.1.3.2) with several data set. My XML schema is something like
    <DATA>
    <PARAMETERS>
    <MY_PARAMETERS>
    <A_ID>12345</A_ID>
    <DESCRIPTION>ABC</DESCRIPTION>
    <VALUE>111111</VALUE>
    </MY_PARAMETERS>
    <MY_PARAMETERS>
    <A_ID>12345</A_ID>
    <DESCRIPTION>DEF</DESCRIPTION>
    <VALUE>222222</VALUE>
    </MY_PARAMETERS>
    <MY_PARAMETERS>
    <A_ID>67890</A_ID>
    <DESCRIPTION>ABC</DESCRIPTION>
    <VALUE>333333</VALUE>
    </MY_PARAMETERS>
    </PARAMETERS>
    <NAMES>
    <MY_NAMES>
    <A_ID>12345</A_ID>
    <NAME>ASDF</NAME>
    </MY_NAMES>
    <MY_NAMES>
    <A_ID>67890</A_ID>
    <NAME>EFGH</NAME>
    </MY_NAMES>
    </NAMES>
    <VALUES>
    <MY_VALUES>
    <A_ID>12345<A_ID>
    <VALUE>10987</VALUE>
    <DESCRIPTION>ASDFG</DESCRIPTION>
    </MY_VALUES>
    <MY_VALUES>
    <A_ID>12345<A_ID>
    <VALUE>26385</VALUE>
    <DESCRIPTION>EFGHI</DESCRIPTION>
    </MY_VALUES>
    <MY_VALUES>
    <A_ID>67890<A_ID>
    <VALUE>24355</VALUE>
    <DESCRIPTION>ASDFG</DESCRIPTION>
    </MY_VALUES>
    </VALUES>
    </DATA>
    I'm trying to build a rtf template in Word using this XML schema. The "A_ID" nodes in each group in my data have the same value. I want for each "A_ID" take the respective values in /DATA/VALUES/MY_VALUES.
    <?for-each-group:MY_PARAMETERS;./A_ID?>
    <?for-each:current-group()?>
    <?choose:?><?when: DESCRIPTION='ABC'?>
    <?VALUE?>
    <?end when?><?end choose?>
    <?end for-each?>
    <?for-each:current-group()?>
    <?choose:?><?when: DESCRIPTION='DEF'?>
    <?VALUE?>
    <?end when?><?end choose?>
    <?end for-each?>
    <?/DATA/NAMES/MY_NAMES/VALUE?>
    <?for-each-group:/DATA/VALUES/MY_VALUES;./A_ID?>
    <?for-each:current-group()?>
    <?choose:?><?when: DESCRIPTION='ASDFG'?>
    <?VALUE?> <---------------- I obtain for this node the '24355' and '10987' values
    <?end when?><?end choose?>
    I want to know how to obtain only '24355' value, this is, the value for A_ID (/DATA/VALUES/MY_VALUES) = A_ID (/DATA/PARAMETERS/MY_PARAMETERS).
    Can someone help me?

    CREATE OR REPLACE TRIGGER "TEST_TRG"
       BEFORE UPDATE OF "STATUS"
       ON "TABLE1"
       FOR EACH ROW
    BEGIN
       IF (:NEW.status = 'HOLD')
       THEN
          INSERT INTO table2
                      (status
               VALUES (:NEW.status
       END IF;
    END;You should learn how to write PL/SQL code.
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.apress.com/9781430235125
    http://apex.oracle.com/pls/apex/f?p=31517:1
    http://www.amazon.de/Oracle-APEX-XE-Praxis/dp/3826655494
    -------------------------------------------------------------------

Maybe you are looking for

  • HOW CAN I SEE THE ENTIRE STRUCTURE WITH FINDER?

    Hi Folks, I need an help. How can I see everything in my hdd, the exact content of it, using Finder and not an 'easy view'? For example, in the hdd root there are folders like 'tmp', 'var', 'usr' and so on but I can't see them from Finder just using

  • Upgraded my iTunes & now it won't open at all

    I just upgraded my iTunes to 9.02 from a really old version, about 10 minutes ago. I am fairly certain I followed all the steps correctly. I now cannot open iTunes at all from the table at the bottom of my desktop. The icon is there but it will not o

  • Connecting mini to 2nd gen nano

    I've had an ipod mini4gb for many years now. Bought myself a second hand 2nd gen nano with no leads. I used my ipod mini wall charger to charge it no problem. When i put the usb lead from my ipod mini into the nano and then into the pc it lights up b

  • Does the MacBook 2015 support target disk mode?

    Will the new MacBook support using the only port it has USB-C to thunderbolt for target disk mode booting? thanks

  • Can' t login to app store and itunes

    i have tried to login my apple account for itunes and app store but i encounter error to login for both. This issue happened after i updated my IOS.