Difficulty in updating the list object values

I have created a list with Objects(MyVertex). I am trying to update the list based on the condition . Instead it adds duplicate values. The simple logic is (if the object is already in the list )only update the values or add to the list (Object) Please help me how can I correct my code.
public static void updateResult(MyVertex c)
          Iterator it2=result.iterator();
          while(it2.hasNext())
               //System.out.println( "Result to be added : "+c.getName());
               j=(MyVertex)it2.next();
               if(j.getName().equals(c.getName()))
                    j.setWeight(c.getWeight());
                    break;
               //System.out.println( "Result item name : "+j.getName());
          result.add(c);
     }Thanks a lot .

Thank you all for your immediate reply. It has solved half of my problem.Now It is not adding all "c" ,but it still not updating the value if the matching found.
public static void updateResult(MyVertex c)
          Iterator it2=result.iterator();
          while(it2.hasNext())
               //System.out.println( "Result to be added : "+c.getName());
               j=(MyVertex)it2.next();
               if(j.getName().equals(c.getName()))
                    j.setWeight(c.getWeight());
                    flag=true;
                    return;
               //System.out.println( "Result item name : "+j.getName());
          if(!flag)
          {result.add(c);}
     }

Similar Messages

  • Update the authorization object value for more than 1000 role

    I need to remove one of the activity value (06) from authorization object S_SCD0.
    I do a search and found out that there are more than 1000 roles which having the activity value = 06 for authorization object S_SCD0.
    However, I don't think I can create a SCAT script to update all these 1000 roles and I believe its going to be a very tedious if I am going to manually change it one-by-one. Hence, I am wondering is there any standard program/function which I can use to automate the above changes for all these 1000 over roles.
    Kindly advise.
    Thanks

    Direct update the table is the easiest way, but should be discourage for the obvious reason.
    Should take a step back, take a long term view, when you need to update 1000 roles, maybe a role redesign might be needed. For example, if you can change the role model to derive role model, once update to the parent role will take care of all the child role.
    Thanks,
    Lye

  • Update existing list item value in sharepoint using web service code

    I have the below code which I am trying to run for updating the list item value. "Settings" is the list name and the item in this list is having index of 1.
    Main()
            ListsSoapClient client = new ListsSoapClient();           
            client.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
            client.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
            string strListName = "Settings";          
            client.Open();          
            XElement listData = client.GetList(strListName);  
            string listID = listData.Attribute("ID").Value;
            string version = listData.Attribute("Version").Value;
            // string version = listData.Attribute("View").Value; Doesnt work
            // Method 1 : Make the call to SharePoint
            var listItems = client.GetListItems(strListName, null, null, null, null, null, null);
            List<XElement> results = listItems.Descendants().ToList();
            XElement updateItem = results[1];
            updateItem.SetAttributeValue("ows_Value", "value to update");
            client.UpdateListItems(strListName, updateItem); //Didnt work
            // Method 2 : Make the call to SharePoint
            string strBatch = "<Method ID='1' Cmd='Update'>" +
                            "<Field Name='ID'>1</Field>" +
                            "<Field Name='Title'>" + "999" + "</Field></Method>";
            XmlDocument xmlDoc = new System.Xml.XmlDocument();
            System.Xml.XmlElement elBatch = xmlDoc.CreateElement("Batch");
            //elBatch.SetAttribute("OnError","Continue"); //Not mandatory ?
            //elBatch.SetAttribute("ListVersion","1"); //Not mandatory ?
            //elBatch.SetAttribute("ViewName", "00F85842-35AD-4AED-8DF7-0F903FB850BE"); is it mandatory ?
            elBatch.InnerXml = strBatch;
            client.UpdateListItems(strListName, XmlElementToXelement(elBatch)); //doesnt work
            client.Close();
       public static XElement XmlElementToXelement(XmlElement e)
            return XElement.Parse(e.OuterXml);
    How do we get the ViewName value of the list using code ? why is it not mandatory in Method 2. At the end of the method1 i am getting the below exception.How do I fix this ?
     Exception of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown.

    you can get view name using below links:
    http://stackoverflow.com/questions/14857811/sharepoint-web-services-getlistitems-view-name
    http://www.a2zmenu.com/Blogs/SharePoint/Get-selected-view-name-of-a-SharePoint-List.aspx
    you can use SPList.getview method.

  • WebPart is raising the following error "Invalid data has been used to update the list item.The field you are trying to update may be read only"

    I have created a farm solution and then i deploy it to SharePoint server, the code looks as follow, and i use it to update a page info values (as the current page values represents old info):-
    [ToolboxItemAttribute(false)]
    public partial class VisualWebPart1 : WebPart
    // Uncomment the following SecurityPermission attribute only when doing Performance Profiling using
    // the Instrumentation method, and then remove the SecurityPermission attribute when the code is ready
    // for production. Because the SecurityPermission attribute bypasses the security check for callers of
    // your constructor, it's not recommended for production purposes.
    // [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Assert, UnmanagedCode = true)]
    public VisualWebPart1()
    protected override void OnInit(EventArgs e)
    base.OnInit(e);
    InitializeControl();
    using (SPSite site = new SPSite(SPContext.Current.Site.Url))
    using (SPWeb web = site.OpenWeb())
    SPList list = web.Lists["Pages"];
    web.AllowUnsafeUpdates = true;
    foreach (SPListItem items in list.Items)
    items["Author"] = "SharePoint";
    items["Created"] = "01/08/2014 01:44 PM";
    items.Update();
    list.Update();
    web.AllowUnsafeUpdates = false;
    protected void Page_Load(object sender, EventArgs e)
    but when i try adding this web part to a page i got the following error:-
    Invalid data has been used to update the list item.The field you are trying to update may be read only
    so can anyone advice?

    i only changed lines bitween 
    web.AllowUnsafeUpdates = true;
    and
    web.AllowUnsafeUpdates = false;
    and other parts of code remains without change
    so it will updates all pages in current web
    yaşamak bir eylemdir

  • Conditionally update the list cell

    Is it possible to update the list cell based on a given condition?
    I was trying something like this, but it turns out that updateItem() is called later (and not when the Listview is updated from the ObservableList which i presumed)
    public class lCell extends ListCell<String> {
    @Override
    public void updateItem(String item, boolean empty) {
                super.updateItem(item, empty);
                label.setText(getItem());//hbox contains image & a label
                System.out.println(item);
                if (item != null && !isCurrentUser)
                  setGraphic(hbox);// Set the list cell as a hbox
                else if (item!=null && isCurrentUser)
                 setText(getItem()); //Set it as the message present in the ObservableList
            }isCurrentUser is a "global" variable which changes it's value in a method (when another user - other than the one currently posting messages -enters the message)
    Is there a way to get an output like:
    <Image> User 1:
    msg1
    msg2
    msg3...
    <Image> User2:
    msg1
    msg2...
    <Image> User1:
    msgs...

    Like you said, I created an object userMessage which has the username and the message. >>
    public class userMessage {
            private static String user;
            private static String message;
            public userMessage(String u, String m) {
            this.user = u;
            this.message=m;
            public static String getUser() {
            return user;
            public void setUser(String user) {
            this.user = user;
            public static String getMessage() {
            return message;
            public void setMessage(String message) {
            this.message = message;
    }And my list cell class looks something like this:
    public class lCell extends ListCell<userMessage> {
    @Override
            public void updateItem(userMessage item, boolean empty) {
                super.updateItem(item, empty);
                if (item != null)
                    StringBuilder sb = new StringBuilder();
                    sb.append(item.getUser()).append(": \n").append(item.getMessage());
                    setText(sb.toString());
    }Q). How do I add a <user name> and a <message> to the list?
    I thought, if i want a new message to be sent, i call a function add() which does the needful.>>
    public void add(String user, String message)
           userMessage um = new userMessage(user, message);
           obs.addAll(um);
    }But it seems like the last known item (object) created over rides all the previous ones.
    so if for example I have:
    add(user1, Hi);
    add(user2, Hi!);
    add(user1, zzz); The list view shows me:
    user1, zzz
    user1, zzz
    user1, zzz
    What do I do to prevent this? Do I have to create a different object every time? :\

  • Need to update the list item in the same sharepoint list with particular condition with Sharepoint Designer 2013.

    Hi All
    I have one sharepoint list with huge data i.e with 20columns and more than 200 records with the fields .
    Suppose lets consider there are A,B,C,D,E,F,G,H columns.
    Now i want to create one form with the fields A,C,E.
    When the user enter the existing data of list for columns A,C..based on C value the E column value should change and update that particular item in the list.
    Please guide me without visual web part can we acheive this by Sharepoint designer 2013 or what would be the preferable solution.
    Please help me on this as it is very urgent from me..
    Thanks in Advance
    Sowjanya G

    Hi,
    According to your post, my understanding is that you wanted to update the list item in the same sharepoint list with particular condition with Sharepoint Designer 2013.
    I recommend to create workflow associated to the list and then start the workflow automatically when an item is changed.
    In the workflow, you can add condition and actions as below:
    If current item: C equal to Test1
         Set E to Test2
    Then the value of the filed E will be changed based on the value of the filed C.
    In addition, if you create the form using InfoPath, you can add rule to the filed C as below:
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Invalid data has been used to update the list item. The field you are trying to update may be read only.

    Trying to follow Serge Luca's Step by Step Tutorial. Creating Workflows for Windows Sharepoint Services and MOSS2007.  http://sergeluca.spaces.live.com/blog/cns!E8A06D5F2F585013!859.entry
    I have an onWorkflowActivated, followed by an ifElse condition and a log to history.
    In the IfElse, each branch has a code segment, that trys to update the status column in the list that the workflow is attached to.
    private void Authorize_ExecuteCode(object sender, EventArgs e)
    // tried serveral methods
    WorkflowProperties.Item["Status"] = "Automatically Approved";
    // tried all of the following (one at a time)
    item.update();
    WorkflowProperties.Item.Update();
    WorkflowProperties.Item.SystemUpdate();
    //tried this as well.
    Microsoft.SharePoint.SPListItem item = WorkflowProperties.Item;
    item["Status"] = "Automatically Approved";
    item.Update() ;
    On the update call I keep getting "Invalid data has been used to update the list item. The field you are trying to update may be read only."
    Could someone explain how to update "Status" column of the list item that the workflow is working on?
    Thank you very much.
    Bill
     

    Hi:
    you can do the following:
    add the following code to the workflow.xml file (under the MetaData section)
    Code Snippet
    <ExtendedStatusColumnValues>
    <StatusColumnValue>Branch1</StatusColumnValue>
    <StatusColumnValue>Branch2</StatusColumnValue>
    </ExtendedStatusColumnValues>
    then add 2 SetState activities one in each branch of the IfElse.
    for the code behind of setState1 (branch1) write the following code:
    Code Snippet
    state = Convert.ToInt32(SPWorkflowStatus.Max);
    for setState2 (branch2) write the following:
    Code Snippet
    state = Convert.ToInt32(SPWorkflowStatus.Max) + 1;
    where state is the variable assigned to the field State in the properties of the SetState(design lever), or instead of state u can use the following code:
    Code Snippet
    ((SetState)sender).State
    where sender is the object sent through the function parameter.
    hope this answered your question
    Best Regards

  • Invalid data has been used to update the list item. The field you are trying to update may be read only (Lookup Field).

    Hi.
    I am getting below error while adding value to look-up field.
    Invalid data has been used to update the list item. The field you are trying to update may be read only.
    I have tried many forums ans post but didn't come to know what's the root cause of issue. I am also posting Code for creating and adding lookup field.
    CAML to create lookup field (It works Fine)
    string lkproductNumber = "<Field Type='Lookup' DisplayName='Product Number' StaticName='ProductNumber' ReadOnly='FALSE' List='" + pNewMaster.Id + "' ShowField='Product_x0020_Number' />";
    Code to insert value to lookup field
    ClientContext client = new ClientContext(SiteUrl);
    client.Load(client.Web);
    client.Credentials = new NetworkCredential(this.UserName, this.Password, this.Domain);
    // Lookup Lists
    List pmList = client.Web.Lists.GetByTitle("Product_Master");
    //List Conatining Lookup Columns
    List piList = client.Web.Lists.GetByTitle("Product_Inventory");
    client.Load(piList);
    query.ViewXml = "<View/>";
    ListItemCollection collection = pmList.GetItems(query);
    client.Load(collection);
    client.ExecuteQuery();
    int prodid=0;
    foreach (ListItem item in collection)
    if (Convert.ToString(item["Product_x0020_Number"]) == ProductNumber)
    { prodid = Convert.ToInt32(item["ID"]); }
    ListItem piItem = piList.AddItem(new ListItemCreationInformation());
    piItem["Product_x0020_Number"] = new FieldLookupValue() { LookupId = prodid };
    piItem.Update();
    client.ExecuteQuery();
    Exception Detail
    Microsoft.SharePoint.Client.ServerException was caught
    Message=Invalid data has been used to update the list item. The field you are trying to update may be read only.
    Source=Microsoft.SharePoint.Client.Runtime
    ServerErrorCode=-2147352571
    ServerErrorTypeName=Microsoft.SharePoint.SPException
    ServerStackTrace=""
    StackTrace:
    at Microsoft.SharePoint.Client.ClientRequest.ProcessResponseStream(Stream responseStream)
    at Microsoft.SharePoint.Client.ClientRequest.ProcessResponse()
    at WebServiceProviders.ClientServices.NewProductInventory() in Z:\.............ClientServices.cs:line 889
    InnerException:
    Quick response is highly appreciated.
    Thanks
    Mehar

    Try some thing like below,
    your data value that needs to be update should be in this format "ID of the lookup";#"Title of the Lookup" 
    For example,
    listItem["Product_x0020_Number"]
    = "1;#iPhone";
    listItem["Product_x0020_Number"]
    = "2;#Mobile";
    Hope this helped you....

  • Sorting the list of value like in BEX but out of crystal report

    All,
    I have created a crystal report base on a BEX query where I have a variable for which  i am filtering base on a field period.fiscalyear.
    for the list of values that prompt you for this variable ...
    l in BEX we can do the sort by either alphabetical ascending order or descending alphabetical order such as:
    here is for ascending
    001.2008
    001.2009
    or by clicking on it we can do the following: (descending)
    012.2009
    012.2009
    however in crystal when refreshing the report in infoview it sorts the list of value base on the month
    something like this :
    JAN 2008 [0FISCPER].[K42008001]
    FEB 2008 [0FISCPER].[K42008002]
    We would like to have in crystal the same behaviour than in BEX,  so in crystal we would like to be able to get the list of values sorted in either ascending order to descending order. is there a way to do so ?
    notes also that we would like to avoid to create the variable in crystal
    Philippe

    Hi,
    in Crystal Reports you have per InfoObject - depending on the definition - the key value, the description and the member unique name. In BW these objects are defined as NUMC in most cases - which means it is a character / string.
    In your example the value is 001.2008 and 001.2009. What you can do in Crystal Reports is to split up the values into year and month and then sort based on the actual numbers.
    Ingo

  • Cannot generate XML for the List of Values (UX 00072)

    Hi,
    I had issues with a .LOV file associated with an object.
    Cannot generate XML for the List of Values (UX 00072)
    [LOV Name] This LOV contains data that does not originate from Corporate Data.
    The object maps to data in a table of the DB that will be populated in the future. The LOV file is "empty", but I have to pass the universe into production waiting for the data.
    This error doesn't permit me to go from Development to Prod.
    Regards,
    Riccardo

    You need to set the display-property="<<Your name property>>" in item-descriptor tag.
    e.g. <item-descriptor name="myItem" display-property="name" />
    Cheers
    R

  • T-Code: Mass to Update the Installation Object?

    T-Code: Mass to Update the Installation Object? 
    When using the TCode Mass I do not see an object listed for the installation.
    Does anyone know how to add it? Could we go to the enhancements for SAPMMSDL and add installation?
    I did not find any user exits for the package MASS.
    Any advice or guidance please?
    I found and read the Cookbook, Mass Changes in IS-U.
    It tells me about mass changes but is any of this available in the TCODE: MASS?
    To put my request in context a bit. I wanted to update EANL and set the field ABLESARTST in MASS for 30k installations.

    Hi James,
    You can also develop a custom program using the FMs ISU_S_INSTLN_PROVIDE and ISU_S_INSTLN_CHANGE.
    You need to first calling FM "ISU_S_INSTLN_PROVIDE" to get the auto object. Then update the field  y_auto-data-ABLESARTST. And call FM "ISU_S_INSTLN_CHANGE" to pass back the data to the system.
    Hope it helps...
    Thanks,
    Amlan

  • Restrict the list of values retrieved by a model driven LOV

    hi all
    i'm try to restrict the list of values retrieved by a model driven LOV just like the article in this link
    http://www.oracle.com/technology/products/jdev/tips/fnimphius/restrictlovlist/restrictlov.html
    and i'm using the jdev11.2 but i always get this error
    java.sql.SQLException: parameter IN or OUT is missing at index 1
    my code is :
    public void SetSchoolLovVar(LaunchPopupEvent launchPopupEvent)
    String var_val=getOt7().getValue().toString();
    System.out.println("++++++++++++++++++++++++++++++++"+var_val);
    BindingContext bctx = BindingContext.getCurrent();
    BindingContainer bindings = bctx.getCurrentBindingsEntry();
    FacesCtrlLOVBinding lov = (FacesCtrlLOVBinding)bindings.get("DeptCode");
    System.out.print("LOVE "+lov);
    System.out.println("+_+_+_+_+__+_+_+__+_+_+_+_+_+_+_+_+_+_________+++++_+_+_"+lov.getName());
    lov.getListIterBinding().getViewObject().setNamedWhereClauseParam("Rejon_For_Prj_Dept",var_val);
    Rejon_For_Prj_Dept is the bind variable of the Lov Query.
    any good idea

    Hi,
    The error might be due to making the bind variable as required but not using it in the vo query. Edit the bind variable and make it as optional by unchecking the required checkbox.
    Sireesha

  • How to get the list of values for a dynamic parameter using Web Services SDK?

    <p>I am struggling to get the list of values for a dynamic parameter of a report.</p><p>I am using Java Web Services SDK ... I tried to use PromptInfo.getLOV().getValues() method but it does not work.</p><p>First of all ... is this possible (to get the list of values for a dynamic param) using Web Services?</p><p>Second of all, if this is possible, how should I do it ... it seems it works fine when running the report from CMC. It asks for DB logon info and after that it provides a list of values.</p><p>Thx </p>

    <p>Your assumption is correct. We are trying to get the LOVs from the Crystal Report. I was not aware that this is not supported by Web Services SDK.</p><p>We used Web Services SDK to integrated the Crystal Reports in our web application. We implemented some basic actions for reports: schedule, view instances, run ad-hoc reports.</p><p>We encountered this problem when trying to run/schedule reports with dynamic parameters (a list of values from DB). We were unable to get the LOVs.</p><p>Please let me know if you can think of an alternative to look at.</p><p>Thanks a lot,</p><p>Catalin </p>

  • Exit CL_HRASR00_POBJ_WF_EXIT triggered exeception for event STATE_CHG and (target) status READY- ERROR EVENT_RAISED - Error updating the process object

    Hi All
    I have set up a simple custom HCM process and Form regarding Infotype TO CREATE AND CHANGE POSITION. I have checked the process and form consistency and it seems fine. Now when I run the process from HRASR_DT it generates a process number but it also gives an error workflow could not start.I get following error (SWIA log - Step history)
    Executing flow work item - Transaction brackets of the workflow has been damaged
    Exception occurred - Error when starting work item 000000007031
    PROCESS_NODE - Error when processing node '0000000014' (ParForEach index 000000)
    CREATE - Error when creating a component of type 'Step'
    CREATE_WIM_HANDLE - Error when creating a work item
    CREATE_VIA_WFM - Exit CL_HRASR00_POBJ_WF_EXIT triggered exeception for event CREATED and (target) status
    EVENT_RAISED - Error updating the process object
    Executing flow work item - Exit CL_HRASR00_POBJ_WF_EXIT triggered exeception for event STATE_CHG and (target) status READY->ERROR
    EVENT_RAISED - Error updating the process object
    Executing flow work item - Transaction brackets of the workflow has been damaged
    Executing flow work item - Work item 000000007031: Object FLOWITEM method EXECUTE cannot be executed
    Executing flow work item - Error when processing node '0000000014' (ParForEach index 000000)
    Points to be noted:
    1) I have searched few SAP notes such as 1384961(Notes for 6.0.4) but our system is in higher level patch 6.0.5
    2) WF-BATCH have SAP_NEW and SAP_ALL authorization.
    Appreciate your valuable suggestions.
    Thanks
    Ragav

    Hi Ragav
    did you try to debug this? maybe something is missing in config of P&F?
    Since you are on 605, the following note would be there in your system....use it to debug:
    1422496 - Debugging background workflow tasks in HCM P&F
    This will help you find the root cause.
    regards,
    modak

  • Master details form: in the details form the List of values is not working

    The master details have an upper form and a lower form OK
    So, the List of values of values in the upper is working fine,
    the lower form or the details form the list of values not working on it and the code is right, and mean not working like when you press on it its not showing any thing
    also is work on a regular form like a tabular form .
    so please help !!!
    Edited by: user8925579 on May 12, 2011 2:28 PM
    Edited by: user8925579 on May 12, 2011 2:37 PM
    Edited by: user8925579 on May 12, 2011 2:37 PM

    SOLVED
         CMC -> Connections
    -     Right click connection name, Click u201CTools > Check Relationshipu201D
    -     In u201CQuery Resultsu201D, Right click Connections, Click u201CUser Securityu201D
    -     Assign Security for u201CEveryoneu201D
    -     UNTICK both Inherit from Parent Folder and Inherit from Parent Group
    -     Assign u201CView on Demandu201D
         CMC -> Universes
    -     Right click u201CUniversesu201D folder, click u201CPropertiesu201D
    -     Under u201CUser Securityu201D, click Everyone and assign security
    -     UNTICK both Inherit from Parent Folder and Inherit from Parent Group
    -     Assign u201CView on Demandu201D

Maybe you are looking for

  • How to use "scope " attrubute in useBean tag

    Can anyone please tell me if I can use the same JavaBean Class to hold information form different pages? well, let me explain exactely what I want to do: I have a Java bean Class that holds a property 'Name': package ContactManager; public class Pers

  • Compaq F730US Memory

    Hi I was just wondering if someone can confirm a memory chip to upgrade to 2GB -   PC2-6400 800MHz 2GB DDR2 SODIMM Dual Inline Laptop Memory Module for Notebooks - 1x 2048MB, 200-pin is what I am looking at for it.  It seems what information I can fi

  • How to display on open dialog in forms9i

    Hi, I have a program that will upload a picture to the database. my problem is, i don't know the command which will display the current directory of the drive so that the user can choose what kind of picture they are going to upload. can you give me

  • Deploy a web service with the deploy tool (J2EE)

    Hi! I want to deploy a web service with the Deploy Tool (J2EE 1.4). (For info, I'm working on Win 2000.) I have the following error when I'm trying to deploy: distribute: C:\monHello2\monApp.ear Deploy action running... Deployment failed on target lo

  • Include directories with files when building Installer

    I want my installer to install the executable in C:\ProductA\SystemTest\Program1 I also want have C:\ProductA\SystemTest\CsvFiles created and have the csv files included. Is this possible? How would I go about doing this? Solved! Go to Solution.