Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

The background is that I am trying to migrate surveys from 2007 to 2010 using web services (See my other post if you know of a better way to do this)

I've got it pretty much working except for the branching logic. I think the problem is that, when I copy the column definitions, the Name attribute is not being set by me but rather is computed from the current display text. As a consequence, the Name attribute can be different to the StaticName and some of my branching logic is broken. I am assuming here that the Name attribute is being used as the JumpTo reference though I would have thought StaticName woudl be a better choice here.

Can anyone tell be how I can update the Name attribute (using web services) once it has been set? Alternatively, how can I ensure that the value I give for Name is the one that is used when the column is created?

Thanks

share|improve this question

2 Answers 2

up vote 4 down vote accepted

I don't think it is possible to change the internal column name of a field after it has been created (only display name). You'll need to specify the name before it is created in SharePoint.

What we normally do is create the column name with only alphanumeric characters (less than 32 characters) and then rename it. For example, if my survey field is called "What is your name?" we'd create the column Whatisyourname.

share|improve this answer

Once a column is created, the static name stays the same for the life of the column. The only way to "rename" it would be to delete it and recreate with the new name. You can change the Display Name all you want, but the static name will always be the original static name for the column.

This particularly becomes an issue when people change the use/names of columns in a tool over time. Two or three iterations later the name of the column is far from intuitive from the content the column actually contains. My approach would be to create a new column, then copy the contents of the old column to the new one (via web service, PowerShell, Feature, etc.), then delete the old one.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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