I have a text field with a user's full name (John Smith) and a people or group field. When trying to set the people or group field to the text field value I am getting an error "The workflow could not update the item, possibly because one or more columns for the item require a different type of information."
I remember doing this in SharePoint Designer. Do I have to do anything special to make it work in Nintex Workflow?
You are trying to move the name in the text field column to the person or group column?
SharePoint adds -1;#i:0#.w| or something weird like that to usernames. try appending -1;#i:0#.w|[domain]\ before the username and see if that works?
That shouldn't [updated from "won't"] work as the Person format is made up of an ID (from the Site User List) as well as the account name. There's an article that describes how you'd do it in code (Quick Tip: Using the SharePoint ‘Person or Group’ field in code - The SharePoint Guys - Site Home - ... ), but I haven't figured out an equivalent in Nintex Online.
[Update 10-Mar-2016: This article hints that SharePoint - and not the layer2 product - will correct the ID for you if you set the ID to -1 and pass in a valid username: http://www.layer2solutions.com/en/community/FAQs/BDLC/Pages/How-to-pull-external-data-to-SharePoint-... Still need to test to confirm.]
I've also tried a lookup from the User Profile service - Nintex supports a lookup if you have or can derive the email address - but this doesn't quite get you a Person type either, though it is a good way to get at Profile properties.
To repeat: The goal is to convert a Text name into a Person type in order to assign a Task.
Sorry if I'm missing something - how would this help me convert a text string ("Marian Hatala") into a Person type (which internally has a the pattern "3;#contoso\mhatala")? This looks like a way to use the People Picker in a Nintex Form, not a way to convert a type in a Nintex Workflow.
the point is your should use user's login name for that purposes.
let me point out that in general user's display/full name (ie. your text string) IS NOT user's unique identifier, you might have several "John Smith"-es (or "Marian Hatala"-es ) in your directory.
furthermore (you do not express it explicitly), if your text field is manually typed in by users, consider user mistakes, typos, swapping first and last name, etc...
but to the point, on the link I provided, there is depicted a principle how to do that and there is used user's login name to uniquely identify the user of interest.
it's not documented, however, in my tests it worked correctly even if I supplied user's display name (user's display name is label property in 'value' input parameter/object).
but as I mentioned above be aware of the fact that if you do not provide unique user's display name, you might get collection of users that satisfy your supplied criteria.
have a look on difference, when I supplied unique display name
and when I supplied non unique display name
note as well, the search by user's display name seems to look for substring, so you might be returned users you even not expected.
depends on your needs, it might or might not be acceptable for you.
Thanks for the response Marian, but until you can show me a conversion from Text to Person in a Nintex workflow, it's of no help. I have a unique - let's call it the Display Name - coming in from Salesforce as a text string, and I need to assign Tasks to these people. There is no initiation form, data comes in, workflow kicks off, and tasks need to be assigned. There are 40 people in the organization, requiring unique "display names" is not the issue. Whether we were starting from a unique account name, email address, or this display name, the goal is to convert it to a Person to whom a Workflow Task can be assigned. So once again, unless I'm missing something really obvious here, how does this Nintex Forms solution answer the Nintex Workflow question?
I'll add that as a workaround I've built a list of Name-Person pairs to use as a lookup. It works, but now the list needs to be maintained and that should not be necessary when all the required info is already available in the site.