0

I am working on a sharepoint server 2013. and i have added a new site column named "Custom Category" with the following 3 choices:-

  1. Manager Info.
  2. client Approval
  3. Order Paid.

and i have many items with their "Custom Category" site column = "Order Paid".. now i wanted to update the text for the "Order Paid" choice to be "Order Delivered". so i went to "Site Settings">>"Site Column">>"Custom Category">>change the option name from "Order Paid" to "Order Delivered". and i chose to update all the list columns.

now i went to the items which have their "Custom Category" value = "Order Paid", and inside the Display form still they got the old value "Order Paid" not the new value "Order Delivered".. and when i try to edit the item i noticed that the item will default to the first choice inside the drop-down which is "Manager Info".. so can anyone advice what is going on ? i mean how i can handle these 2 issues:-

  1. Is it possible to force sharepoint to do the following:- if i change the choice text, to apply the new name inside all the items which have the old name??.... so all the items which have their "Custom Category" = "Order Paid" to get the updated name which is "Paid Delivered".. not sure why this is not the default behavioure..

  2. why inside my edit form all the items which have their "Custom Category"= "Order Paid" will defualt to the first option inside the dropdown??

Can anyone advice on the above please?

2
  • 1
    That is how it works, you'll need to script something to fix it or bulk edit it in datasheet view. It defaults to the first item in the options because the previous value doesn't exist any more. If you want it to auto update, use lookup lists instead of choice columns where updating the lookup field will replicate across to all references. Mar 1, 2017 at 2:17
  • @EricAlexander using scripts to achieve somethings as this will not be an option for site admins which do not have access to the server to run power-shell scripts.. baring in mind that they were expecting this to happen automatically as i also thought !!! second point the only issue of using lookup columns instead of choices is that the lookup columns can not be used inside managed navigation for our lists.. so in some scenarios where we need to enable the managed navigation for some lists, using lookup columns will not be a valid option ...
    – John John
    Mar 1, 2017 at 10:07

1 Answer 1

1

The behavior of choice field work like that only. If you change in choice item it won't change the items which are already added in the list. So you better create lookup column and give reference of lookup column to list so that if you change the value in lookup master list the child list items will change automatically

for your existing scenario use this power shell script to update the existing items with new choice field value

$web = Get-SPWeb http://Yoursite
$list = $web.Lists["ListName"]

foreach ($item in $list.Items)
{
  $value = $item["ChoiceColumnName"]
    If($value -eq "OldValue")
     {
    $item["ChoiceColumnName"] = "NewValue";
    $item.Update();
     }
}
1
  • but the only issue of using lookup columns instead of choices is that the lookup columns can not be used inside managed navigation for our lists.. so in some scenarios where we need to enable the managed navigation for some lists, using lookup columns will not be a valid option ...not sure why sharepoint does not allow using lookups inside the managed navigation...
    – John John
    Mar 1, 2017 at 10:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.