0

I have a PowerApps Canvas app connected to a SharePoint Library, and I am trying to work around the Lookup/People field threshold from SharePoint. So I added the Office 365 Users connector, and a ComboBox (formatted as a Person field). I have a few of these, and basically I want various Approvers to have the option to Reassign to someone. I have a "Reassigned To" people picker from SharePoint that I want to populate with the user selected in the ComboBox. I tried this formula in the Reassigned To people picker's Defaulsselecteditems: {Value: ComboBox1.Selected.DisplayName} . This populates correctly in the form, but doesn't write to SharePoint. How can I accomplish this?

Thank you!

2
  • Are you trying to save data in "Person or Group" type column or text column in library? Commented Apr 26 at 9:33
  • Yes that's what I'm trying to do. It's a way I can "share" the final people column without going over the SharePoint threshold. Basically if an Approver wants to Reassign their task, they select a Toggle, which then Displays the ComboBox (formatted as Person). When they populate a user in the ComboBox, I want my Reassigned To (People picker from SP) to populate with that user identified in the Combobox. If I use something like {Value: Combobox1.Selected.DisplayName}, it populates in the form correctly, but won't write to SP.
    – Quilly
    Commented Apr 26 at 10:13

1 Answer 1

0

The people field in SharePoint has a different structure than a Choice field. To populate the default of a People field, you need to provide the core elements of the People object, which is DisplayName, Claims and Email. You should be able to get these from your selected item in the combobox.

Here is an example of how I populate the current user into a people field. You can use this as a guide and change the User().FullName etc with the respective values of the ComboBox1.Selected.

This goes into the DefaultSelectedItems property of the control.

{ 
  DisplayName:User().FullName,
  Claims:"i:0#.f|membership|" & Lower(User().Email), 
  Department:"",  
  Email:User().Email, 
  JobTitle:"", 
  Picture:""
}

Using Combobox1, you might need:

{ 
  DisplayName:ComboBox1.Selected.DisplayName,
  Claims:ComboBox1.Selected.Claims, 
  Department:"",  
  Email:ComboBox1.Selected.Email, 
  JobTitle:"", 
  Picture:""
}
1
  • If that resolved your issue, please mark the answer as described in the tour. If it didn't, please leave a comment, so I can follow up.
    – teylyn
    Commented Apr 25 at 21:24

Your Answer

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

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