Step 1 is to remove the Skillsets already associated with the ProfileID, if any from ProfileSkillSets list. Here we are comparing ProfileID against the EditForm1’s last submitted Record’s ID. It is useful to delete the records, when you are editing an existing Profile and updating the skillsets.

Step 2 is to write all the new Skillsets selected, into the ProfileSkillSets list, for the newly created Profile. The formula ForAll consists of two parts. First part is the table to be acted upon. Second part is the formula to evaluate for all records on the table. Here is the link for more documentation on using ForAll. In this scenario, we are filtering the checked items on the gallery in the first part. In the second part, we are using a Patch to create new records on ProfileSkillsets list, for each checked item in the first part.

Navigate back to BrowseScreen1 once the form data is submitted and is successful.

Step 6: Run the application and create new Profiles.

Fill in the data on the form and submit the form using the Submit Icon on right top.

You will be navigated to the Browse screen with new Profile created. Check the data written back onto your SharePoint lists as well.

Step 7: Display Skillsets on all screens

BrowseScreen1:

Click the edit icon on the gallery and insert a new label. Set the Text property to the following formula.

In this code, we are checking if each Skillset listed in the gallery is already added in the ProfileSkillSets list, for the selected ProfileID. This code is written on the Default property of the checkbox. Hence, if the expression evaluates to true, then the checkbox will be marked as Checked, making it easier for the user to edit the skillsets.

Your application is ready with a multi-select pattern! Do reach out to me with any questions or suggestions.