Hello,
Please see responses below.
1. We need to restrict one use to have only one item/record, so there is no duplicate records for any user. Can I set this up in SharePoint, like set user's name/email as unique value ('person' field type from 365 User AD profile)?
-Michael: Yes absolutely, in the Canvas App you can specifically pull up the currently logged in users Email/Information based on the User() function.
Then just make sure that ALL Patch statements (updates to the list) have a filter that essentially says "Where Email = User().XXX whether its user name or email etc.
2. We want each user to update/edit their own records instead of others' records. I think this can be set up in SharePoint's item settings. Will this restriction automatically apply in the Power App tool?
-Michael: I am going to answer and then suggest what you want to do. Yes, if they only have access to 1 row based on security, then when they query they will only get that row or none, or an error based on what you allow them to do.
But you should make sure that in any UI, just as with #1 Patching/Updating, you should ONLY query rows based on the Column User Email or whatever you decide so it's always just that row.
If you have another list that is linked to the Primary, and it has multiple rows, just make sure to only query the ones they can see.
3. If a user left the organization, I would like the SharePoint List and App to automatically exclude/delete their items / records. How can this be achieved, either in SharePoint list or Power App?
How. Thats not possible. Let me explain. SharePoint can't do that itself, neither can a Power App, but you could do it with a Power Automate flow. You'd have to either have a reoccurring job that runs every night, looking for people to update, is probably the best way. Easy to do, just not with the previous 2 you asked about.
4. I would like a user who just joined our organization/have an email account to be automatically notified (through) to fill in the form? Is this possible to set up in the SharePoint List?
Hi, again SharePoint won't, but you could use Power Automate to look for new people and notify them sure.
Cheers
If you like my answer, please Mark it as Resolved, and give it a thumbs up, so it can help others
Thank You
Michael Gernaey MCT | MCSE | MCP | Self-Contractor| Ex-Microsoft
https://gernaeysoftware.com
LinkedIn: https://www.linkedin.com/in/michaelgernaey