Dynamic removing of Value Nodes

Hi,
in my application I create Value Nodes and Value Attributes dynamically.
How can I remove this Value Nodes and Attributes again dynamically?
Regards,
Eva

Eva,
The only way is to completely reset context:
wdContext.reset(false);
This will remove all dynamically created nodes / attributes. You have to recreate structure afterwards (obviously, without node you were actually "removing")
Valery Silaev
EPAM Systems
http://www.NetWeaverTeam.com/

Similar Messages

  • Binding value nodes to component in a view

    Hi,
          What is the use of these value nodes and value attributes? How can I bind them to, say a inputfield in my view? Can any change to the value node dynamically affect the inutfield?

    Thanks to Peter Conrad for the answer. The answer's in a different post. I have included his reply below.
    From a binding perspective there's no difference between value or model nodes/ attributes. you can always bind using the syntax
    //<contextnode/attribute to the value attribute of the tag.
    And yes, for accessing the value the SET_<attribute> and GET_<attribute> methods should be used in this case.
    Peter
    Edited by: Arun Prakash Karuppanan on May 15, 2008 10:24 PM

  • Dynamically removing context attribute

    Hi all,
    does anybody know a better way of getting rid of dynamically created attributes than using the IWDContext.reset() functionality?
    Best regards,
    Christian

    Hi,
    We had the similar requirement .We have mailed to Uwe regarding this.Please find the reply below .
    there is currently no way to remove a single attribute in NW04. There is only the possibility to reset the metadata to the state that has been declared in the design time. This can be achieved using IWDContext.reset(boolean), reachable via wdContext.getAPI(). The method removes all attributes and nodes, that have been added at run time ("dynamically"), via one of the add…Attribute or add…Child methods of IWDNode. So, if you have added the root attribute at runtime, this method will remove it, but it removes all other dynamically added attributes and nodes, too.
    NW05 will allow to remove single attributes and child nodes, but still only if they have been dynamically added before.
    Regards
    Anil

  • 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

  • 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

  • Can not input data when removed the value for seleciton condition

    Dear Experts,
    We met a very strange issue for the IP.
    We create a aggregation level and relatd query for user to key in data.
    We have a filter in the aggregation level.
    It will set value for A,B,C,D
    When user opent he report, system will require user to key in the value for A,B,C,D.
    Now we found that if we key in value for B, cell is input ready.
    If we removed the value in for the B in the selection condition (I mean the value of B is empty, this means tha all the value of B will display in the report), we can not key in data.
    Could you kindly let me kow the reason?
    Thanks and best regards
    Alex yang

    Dear Experts,
    Many thanks for your information.
    I know the principle for the IP.
    But I think you may misunderstanding this issue due to my incorrect explaination.
    First, we think the aggreagtion level is ok. This is due to that for the B in my example, we set its as column value in the query.
    This is means for each record in the IP query, it has only one B value to reflect it.
    But strange things is that if we set fixed value for B, IP input is ok.
    If we removed fixed value for B, IP function is error.
    Now, we will test if we key in multi value for B whether IP input function is ok or not.
    Any update, I will inform you.
    Thanks and best regards
    Alex yang

  • Removing duplicate values from selectOneChoice bound to List Iterator

    I'm trying to remove duplicate values from a selectOneChoice that i have. The component binds back to a List Iterator on the pageDefinition.
    I have a table on a JSF page with 5 columns; the table is bound to a method iterator on the pageDef. Then above the table, there are 5 separate selectOneChoice components each one of which is bound to the result set of the table's iterator. So this means that each selectOneChoice only contains vales corresponding to the columns in the table which it represents.
    The selectOneChoice components are part of a search facility and allow the user to select values from them and restrict the results that are returned. The concept is fine and i works. However if i have repeating values in the selectOneChoice (which is inevitable given its bound to the table column result set), then i need to remove them. I can remove null values or empty strings using expression language in the rendered attribute as shown:
    <af:forEach var="item"
    items="#{bindings.XXXX.items}">
    <af:selectItem label="#{item.label}" value="#{item.label}"
    rendered="#{item.label != ''}"/>
    </af:forEach>
    But i dont know how i can remove duplicate values easily. I know i can programatically do it in a backing bean etc.... but i want to know if there is perhaps some EL that might do it or another setting that ADF gives which can overcome this.
    Any help would be appreciated.
    Kind Regards

    Hi,
    It'll be little difficult removing duplicates and keeping the context as it is with exixting standard functions. Removing duplicates irrespective of context changes, we can do with available functions. Please try with this UDF code which may help you...
    source>sort>UDF-->Target
    execution type of UDF is Allvalues of a context.
    public void UDF(String[] var1, ResultList result, Container container) throws StreamTransformationException{
    ArrayList aList = new ArrayList();
    aList.add(var1(0));
    result.addValue(var1(0));
    for(int i=1; i<var1.length; i++){
    if(aList.contains(var1(i)))
         continue;
    else{
    aList.add(var1(i));
    result.addValue(var1(i));
    Regards,
    Priyanka

  • How to remove null values from list?

    I had created a list in forms 6i and I am getting list values at run time using add_list_item function. The problem is I am getting null value at end of the list. In the property pallet I kept required yes and set the initial value but it is not removing null value. Can any one help me. Thank you.......

    Hello
    Sorry mis-read question on first reply.
    1. Have you set a default value?
    2. Is this default value still in your list?
    3. What happens if you default the list's value to a value you know exists after you have populated it?
    Cheers
    Q
    Message was edited by:
    Q_STEPHENSON

  • Removing Null values from character string

    Hi All,
    Can i remove NULL values (hexadecimal - 0000) from character string. I am uploading a file from presentation layer (shared server) and getting NULL values in many fields which i want to remove.
    please assist.
    Thanks for you help..
    Regards,
    Mohaiyuddin

    Hi,
    Most likely, nobody needed it, but if anybody in future will need the solution for related problem  - here's solution:
    data: lv_nullchar type xstring value '0'.
    shift lv_xstring right deleting trailing lv_nullchar in byte mode.
    shift lv_xstring left deleting leading lv_nullchar in byte mode.
    This hack deleting null chars in lv_xstring at end file and at begining of file. Works perfect for me, where i also worked with files.

  • Remove null values from query

    Hi All;
    Below is my query and the output and i need to remove null values from the output
    Any help regarding same is much appreciated
    Thanks
    ; WITH CTE AS
    select a.opportunityid,a.new_entrypoint_displayname,c.parentcustomerid,c.contactid,c.fullname,a.new_mainprogramme_idname,
    a.new_subprogramme_idname,
    a.owneridname,
    a.new_dateofapplication,count(appt.activityid) as NoOfAppointments,
    ap.scheduledstart,
    ap.scheduleddurationminutes
    from opportunity a
    left join contact c on (c.contactid = a.parentcontactid)
    inner join activitypointer ap on ( ap.regardingobjectid = c.contactid )
    inner join appointment appt on (appt.activityid = ap.ActivityId)
    where
    appt.new_didmeetingtakeplace = 1
    and appt.statecode = 1 and
    (a.SCRIBE_DELETEDON is null and c.SCRIBE_DELETEDON is null and ap.SCRIBE_DELETEDON is null and appt.SCRIBE_DELETEDON is null)
    group by a.opportunityid,a.new_entrypoint_displayname,c.parentcustomerid, c.contactid,c.fullname,a.owneridname,
    a.new_mainprogramme_idname,a.new_subprogramme_idname,
    a.new_dateofapplication,ap.scheduledstart,
    ap.scheduleddurationminutes
    union
    select a.opportunityid,a.new_entrypoint_displayname,c.parentcustomerid,c.contactid,c.fullname,
    a.new_mainprogramme_idname,a.new_subprogramme_idname,a.owneridname,
    a.new_dateofapplication,count(appt.activityid) as NoOfAppointments,
    ap.scheduledstart,
    ap.scheduleddurationminutes
    from opportunity a
    left join contact c on (c.contactid = a.parentcontactid)
    inner join activitypointer ap on (ap.regardingobjectid = a.opportunityid)
    inner join appointment appt on (appt.activityid = ap.ActivityId)
    where
    appt.new_didmeetingtakeplace = 1
    and appt.statecode = 1 and
    (a.SCRIBE_DELETEDON is null and c.SCRIBE_DELETEDON is null and ap.SCRIBE_DELETEDON is null and appt.SCRIBE_DELETEDON is null)
    group by a.opportunityid,a.new_entrypoint_displayname,c.parentcustomerid,c.contactid,a.owneridname,
    a.new_mainprogramme_idname,a.new_subprogramme_idname,
    c.fullname,a.new_dateofapplication,
    ap.scheduledstart,
    ap.scheduleddurationminutes
    CTE2 As
    select opportunityid,parentcustomerid,new_entrypoint_displayname,contactid,fullname,
    new_mainprogramme_idname,new_subprogramme_idname,cte.owneridname,
    ac.new_businessstartdate,new_dateofapplication,(NoOfAppointments),
    case when ac.new_businessstartdate > = CTE.scheduledstart
    then (CTE.scheduleddurationminutes) end as PreStartHours,
    case when ac.new_businessstartdate < CTE.scheduledstart
    then (CTE.scheduleddurationminutes) end as PostStartHours
    pp.new_outputs,
    case when po.new_outputsname = 'Pre Start Assist'
    then 'Yes' else 'No' end as Precheck,
    case when po.new_outputsname = 'Business Assist'
    then 'Yes' else 'No' end as Buscheck
    from CTE
    join account ac on (ac.accountid = CTE.parentcustomerid)
    join dbo.new_programmeoutput as po on (CTE.opportunityid = po.new_relatedopportunity)
    join dbo.new_programmeprofile pp on (
    po.new_mainprogrammeid = pp.new_mainprogrammeid and
    po.new_subprogrammeid = pp.new_subprogrammeid
    and pp.new_claimstartdate = po.new_claimdate
    and pp.new_outputsname = po.new_outputsname)
    where (ac.SCRIBE_DELETEDON is null)
    group by opportunityid,parentcustomerid,new_entrypoint_displayname,contactid,fullname,ac.new_businessstartdate,new_dateofapplication,NoOfAppointments,
    scheduledstart,new_mainprogramme_idname,new_subprogramme_idname,cte.owneridname,scheduleddurationminutes
    select opportunityid,parentcustomerid,new_entrypoint_displayname,contactid,fullname,
    new_mainprogramme_idname,new_subprogramme_idname,cte2.owneridname,
    new_businessstartdate,new_dateofapplication,(NoOfAppointments),
    PreStartHours, PostStartHours,po.new_programmeoutputid,
    case when (new_outputsname) = 'Pre Start Assist'
    then 'Yes' else 'No' end as Precheck,
    case when (new_outputsname) = 'Business Assist'
    then 'Yes' else 'No' end as Buscheck --po.*
    from cte2
    left join dbo.new_programmeoutput as po on (cte2.opportunityid = po.new_relatedopportunity)
    where po.new_claimmonthidname is not null and po.statuscode_displayname = 'claimed'
    group by opportunityid,parentcustomerid,new_entrypoint_displayname,contactid,fullname,
    new_mainprogramme_idname,new_subprogramme_idname,cte2.owneridname,
    new_businessstartdate,new_dateofapplication,(NoOfAppointments),
    PreStartHours, PostStartHours,po.new_programmeoutputid,new_outputsname
    --where new_claimmonthidname is not null --and CTE2.PreStartHours is not null and CTE2.PostStartHours is not null
    Pradnya07

     i need to remove null values from the output
    Hello,
    What exactly do you mean with "remove", to filter the rows out from result set or to replace the null value by an other value e.g. 0? This can be done with the
    ISNULL function:
    ISNULL(case when ac.new_businessstartdate > = CTE.scheduledstart
    then (CTE.scheduleddurationminutes) end, 0) as PreStartHours, ...
    Olaf Helper
    [ Blog] [ Xing] [ MVP]

  • How to hide a single value node hierarchy in the query designer

    Hi,
    I would like to perform a calculation  in the infocube. It concern  a count "Nb of different customers" with the following hierarchy : Country / region / City.
    This KF would be read at the same time by city, region and country, and  certain customers exist in 2 different region, and I have to count them only once by country.
    To do this, I added a new record (at the country level when loading infocube) to deduct a number of customers in doubloons.
    This line added contain only a country code and the number of cutomers in doubloons (- 23 when I have 23 cutomers in doublons) with revrese sign.
    Now, I would like to use this value (-23) to have a right Nb of different customers by country, without showing the not assigned line in the report hierarchy.
    How can I hide, in the query designer or the WAD, a single value node from hierarchy (NOT assigned) but take in account the value (-23) at the country level ?
    Is there another solution (more simple) to perform this in the infocube ?
    For information,
    1) The infocube is loaded once per month, and the KF (Nb of different customers" is also performed by month.
    2) I can't perform this in the report (performance problem with calculated KF).
    thx.

    Hi,
    the short answer is "you can't", the longer is: The ADF Faces tree component is stamped for better performance. This stamping means that nodes are not rendered as JSF objects but copies of an existing component (just with a changed value). For this reason the nodes don't issue their own query for data and thus cannot be refreshed individually
    Frank

  • Remove Blank Values from Slicer in Power View

    Hi all,
    I am trying to create a power view report from a power pivot data model. After creating the model when I try to use the slicer in power view I am seeing the Blank record. Then I checked that dimension in model where I don't have any blank value in there.
    Also I checked in fact table where it has a relationship with that dimension and I don't see any blank value there as well.
    I am currently blocked with this issue. Experts please jump in and give some ideas how to remove blank value from there.
    Thanks

    As MM-99 already stated correctly, the BLANK-member is created if there is one or more non-matching row in your fact-table that does not exist in the dimension-table
    maybe you have some issues with upper and lower case?
    or maybe there are some whitespace characters contained in the text?
    to identify the issues you may want to create a calcuated column in your fact-table as =RELATED('DimTable'[MyKeyColumn])
    then you can filter on that column and see if any blank values appear
    hth,
    gerhard
    Gerhard Brueckl
    blogging @ http://blog.gbrueckl.at
    working @ http://www.pmOne.com

  • How do remove commitment value in the PO ? any SAP note avl?

    Hi,
    Project (WBS)releated service PO (Account assignment category P and Item category D), in which SES,GR,IR have been completed for entire Project services for the year 2005,PO history also updatd for SES, GR,IR in the 2005 only.But Now system is showing still commitment value in the PO for the year 2009?.
    Henece how do remove the inconsistency of the  commitment value in the PO for the year 2009?. (i.e value is comming from COOI table entry).Is there any SAP NOTEs are available for this case?
    Note:
    But this case no PR has been refered in the PO. PO has been directly created, and PO  QTY,Value changes have not been done after SES,GR,IR completion.
    But still system  commitment value is showing in the PO for the year 2009, so HOW do remove the value?
    i am looking suitable answers.
    Regards,
    kumar

    Hi,
    Pre-requisites for a commitment update are:                                                                               
    o  In transaction OKKP, the commitment management indicator must be              
           active for the given controlling area in the current fiscal year.                                                                               
    The controlling area is the highest organizational unit in Controlling,              
    however this area is missing from the accounting data of the PO.                                                                               
    o  The accounting objects must be active for commitments:                                                                               
    -  Work orders: The commitment management indicator must be set               
              in transaction KOT2 for the given order type.                                                                               
    -  Cost centers: In transaction KS02, in register "Control", the              
              commitment update indicator must NOT be set.                                                                               
    -  Projects: see note 47992                                                                               
    o  In transaction CUNI, the unit of measurements used at item level              
           must be set to value based commitment.                                                                               
    Please check the following notes 152571, 634298, 459509 and            
    772206 carefully and also 165823. 
    Please check also if the "delivery complete" indicator is set in the PO item (see note 735404).
    Usually for service POs the "Delivery completed" indicator will be   
    hidden and this indicator is fully controlled by the "final entry    
    sheet" indicator in ML81N. You must allow to set this indicator trough a field selection customizing for your PO item.
    Regards,
    Edit

  • Create Value node instance from structure at runtime

    Hi,
    I have a requirement where an internal table is given with some details.
    Now I need to add each row of this internal table as one entity into a collection.
    For this I need to create value node instance for each entry of the table and then
    lr_collection->if_bol_bo_col~add( lr_entity ).
    this to add to the collection.
    Please tell me how to convert this one row of this table into entity.
    Regards,
    pooja

    Try it like this:
    DATA: lt_data type table of ty_line.
    DATA: ls_data type ty_line.
    For the value nodes we need an data object
    DATA: lr_line_ref type ref to ty_line.
    The value node which should be added
    DATA: lr_value_node type ref to cl_bsp_wd_value_node.
    First create the reference structure
    CREATE DATA lr_line_ref.
    *Loop over you itab
    LOOP AT lt_data into ls_data.
    Create the value node based on the ref line
    CREATE OBJECT lr_value_node
    EXPORTING iv_data_ref = lr_line_ref.
    Now set the data from the internal table
    lr_value_node->set_properties( ls_data ).
    Now add the created value node to the collection
    lr_collection->if_bol_bo_col~add( lr_value_node ).
    ENDLOOP.

  • How can we use C# to read dynamic parameter's value list from .rpt?

    I'm using Cystal Report 2008. We know starting from CR XI we can create dynamic parameters, the list of items of this kind of parameter are fetching from database. So in general the SQLs to get the list of values for dynamic parameters are stored in the .rpt.
    In Crystal Report Designer, if I preview a report with dynamic parameters, it will first query the database and then show the input dialog with list of values from database for user to choose. My question is can we implement the same thing by our C# code? I'm planning to use C# code to read this dynamic parameter's value list from .rpt and render them on the web page. Then pass back the user selected values to the .rpt to run the report after user make the choice. I didn't find any APIs can do this. Is it possible?
    Thanks in advance!!

    Hi,
    Can you explain a bit in detail, I have similar scenario. I am using the following code but not getting the Column name for dynamic parameter list.
    foreach (ParameterFieldDefinition prm
                              in reportDocument.DataDefinition.ParameterFields)
                    try
                        string vParameterFieldName;                   
                        *vParameterFieldName = prm.ParameterFieldName.ToString();*
    Shakeel

Maybe you are looking for

  • How can I install ipad apps on iphone 6 plus?

    How can I install ipad apps on iphone 6 plus?

  • How to edit a column in web dynpro table

    Hi All, i am facing problem in editing a single column in my table. on selecting a row and clicking of a button the complete row is appearing as editable , i am using read only property for this , but i am unable to keep some rows as editable and som

  • Skype camera is not working

    Skype camera not working

  • Creating Web Galleries in Aperture 3

    Does anyone know of any third party web gallery plug-ins for Aperture? The standard templates are very limiting and I need to add logos and far more information than is currently supported. Currently I am exporting the jpegs from Aperture and importi

  • I have CS5 a client uses CS5.5 please help...

    I have CS5 but my new client uses CS5.5 is there any way to open their files in CS5 or is there any way they could save it another way on their machine so I can open it in CS5. I do not want at all to upgrade to CS5.5 right now. Is there any other wa