Treatment of "Internal" and "Displayed" Sharepoint Column Names

Jul 22, 2009 at 8:34 AM

When a Sharepoint user adds a  new column to a Sharepoint List, then the ColumnName is Sharepoint internally saved in XML encoded format that will never change nevertheless the user is goint to change the displayed column name aterwards. (e.g. The column that is displayed as “Vorbestehende Risikofaktor” is internally saved as “Vorbestehende_x0020_Risikofaktor” that will always remain as such, even when the user changes the column name to something completely different (e.g.  “Risiko”) anytime afterwards).

The bad thing here is, that this internal name is never visible again in the Sharepoint GUI.

Only when retrieving such Schema Data via Sharepoint WebService API then the “Name” attribute always refers to this internal XML encoded Sharepoint name (in our example “Vorbestehende_x0020_Risikofaktor”)

So the question here is how this is addressed by the Slam.config’s “Name” attribute in the <Field Name=”myColumnName” …> section. Does “Name” refer to the currently actual display name (that might change over time) or the internal/inner Sharepoint name or, even both (looking for one and looking for the other when not found) ?

Reference to the static, internal Sharepoint name would allow us to keep post-slammed reporting independent from whichever colum names the user is going to choose after the slam.config gets live.



Jul 22, 2009 at 4:36 PM
Edited Jul 22, 2009 at 4:36 PM

Name can be either Display Name or the Internal Name.  An easy way to get the internal name of a field is to go to List settings, mouse over a Column name in the Columns area and look at your browser's status bar.  The last piece of the query string of the column's link is Field=xxxxxx.  The name is always the internal name.

Jul 23, 2009 at 8:54 PM

Great Tip! Has helped a lot. Thanks.

Kind Regards