I got thrown in to a situation where the customer has a production enviroment and needs to make some changes without losing data.
One part of the problem is changing a sitecolumn (used in CT, 2-3 lists, and multiple web parts as custom property) from a text field to a lookup.
I have tried to set the schemaxml via powershell and push the changes to the lists. I get errors.
I have also tried to update the column in the list with lookup schemaxml.
If i remove the sitecolumn and create a new the webparts stop working, since they need the sitecolumn.
What would be the best solution for solving this?
#Simon if you try to replace column type from text to lookup, you will lose data for sure.
Create extra single line of text column 'Backup' in the list.
Write powershell script to copy the data from current text column to Backup column.
Change type of column from Text to Lookup.
Use Manual or powershell approach to rewrite data in new column.
Delete temporary backup column.
Related
I need to include two list values, [Office] and [Position ID] in a three-state workflow Task Title, which only allows selecting one column via dropdown. SharePoint Designer is not an option. Office is a choice column, while Position ID is single line of text. So, I had the idea to combine the two columns into a calculated column. This works fine for views, and displays as expected. However, when included as a list field in the Task Title of a three-state workflow, SharePoint prepends string;# to the calculated column value. Is there any way to prevent or workaround this? I have tried various concatenation methods within the calculated column formula, but it does not seem to have any effect on the workflow notifications. Any help would be appreciated.
Per my test, I could reproduce your issue:
However this is a hard coded workflow and we cannot change it.
Currently we could only manually remove the string;# via editing the task title in related task list.
I have Spotfire dashboards that use Custom Expressions in their visualisations. The name of a database variable was changed at source in SQL Server, so I replaced the column in my information link with the new column name and reloaded my data.
I was given an option to match 'old column name' to 'new column name', which I did.
My problem is that any Custom Expressions that used this 'old column name' have not updated to the 'new column name' in this process, and consequently there are many errors. This column is used in custom expressions for dozens of KPIs and charts, to manually go through them all will be time consuming.
Does anyone know of a way to update a column name so that it will update every custom expression in a dashboard?
I don't think there is a way to programmatically update all of the expressions. It's frustrating that match columns don't actually update thru all functions in the application. However, you might try adding in a change column names transformation to change the column name back to the old name, and then your calculations would update.
I have an infopath form based on a sharepoint list (worktracker).
In that form there is a repeating section which holds data from a secondary source which is the worktracker list again.
I would like to filter that table using the value in a field on the form - this enables me to run a check on duplicate items on the list by using a calculated checking reference.
I have done this by using conditional formatting to hide the non-matching items but that this killing my form as IE throws tantrum as it takes too long.
Does anyone know another way to do this? I am stuck using IE8 - not my choice!
UPDATE:
So since posting the above, I had since tried using a REST connection which doesn't work as my list is too big. I have also tried using an XML connection to a filtered view and that didn't work either!
Cheers,
In the form, select the value field. Create a rule that sets the secondary data source's query field of the same name to that value. Then query the secondary data source. It will only return the items where the value matches.
In short:
I'm trying to filter an XSLTListViewWebPart based on what is selected in another XSLTListViewWebPart. Using a String field as connection this is working fine. Using a hyperlink field no data is displayed.
In more detail:
I have two lists, say Accounts and Projects. Both have a hyperlink field accountURL.
All accounts have different accountURLs. Different projects can have the same value for accountURL. Both are displayed on a page using the XSLTListViewWebPart.
The simple goal is to filter the Projects list based on which item is selected in the Accounts list using the accountURL field. So I established a web part connection using the acountURL as a filter. Alas, when an item in the Accounts list is selected no items are showwn in the Projects list although I double checked that there are matching values.
When using a string field instead of a hyperlink field for accountURL everything works like a charm. Problem is, I need the hyperlink field.
Is this desired behaviour? Do you have any suggestions for a workaround?
(I already tried converting the hyperlink field to a string field via a calculated column which did not work out either.)
All was and is to be done in the web interface or SP-Designer. Coding a WSP is not an option for this problem. As I'm not quite familiar with the correct terminus technicus I use field and column interchangeably.
All help is greatly appreciated.
Ben
Someone on the Microsoft forum suggested the following workaround which does its job well:
Add a hidden text column to both lists.
Use a workflow which is triggered on item creation and update to copy the value of the hyperlink column to the hidden text column.
Connect both webparts using the hidden column as filter.
Nonetheless, I still wonder whether it is possible to use hyperlink columns or other special columns for filtering. I also had the problem that I cannot use a person column as lookup.
Does anyone know if whether there ist some kind of overview
which column types can be used for filtering/formulas/lookup/...?
Cheers,
Ben
I am trying to merge or copy data from either an excel spreadsheet or another sharepoint list into a master list. The main "item number" column will enforce unique values, but each item will be assigned to multiple "project numbers" using metadata.
Is it possible to tell sharepoint to auto-update the metadata when duplicate items are added to the list? I could probably even edit the metadata manually if it would display the old entry for modification, but the only option I've seen is modify or delete the new item.
Sounds to me(from the description you have given) you are trying to collate several lists in to one and any data within each list you need to merge. Is this correct?
If so you will probably need to do a bit of custom code. Heres a little run through.
Get the list objects of the lists containing your items or grab your items from excel.
Iterate through each of the items in the list(or excel) importing the items over to the Master list.
Just before the above step you will need to check if the unique identifier already exists in the master list. If it does grab that item and update it if it doesn't continue adding the item as normal.
As always i would recommend you have a crack at it yourself. It's far more rewarding to make something work yourself and to be honest to do the above if you can read other peoples code it should take too long to copy(i mean reuse :P) other peoples code off the web to get the desired outcome.
I am not aware of a way you would be able to do this out of the box or via SharePoint designer.
Hope this helps
Truez