To understand the function of Check In & Check Out of records.
To see how join permissions work and how exclusive check outs perform based upon different users and roles assigned to them.
When data is to be modified, it is always safer to maintain a lock over it so that others are not able to modify it at the same time. It acts as a kind of locking mechanism and guarantees consistency.
Checked Out records should become read only for other users.
Only the owner of the check out should have the permission to allow others to join the check out. Any of the joined users may check in the data back.
MDM Repository Users with their Roles
Suppose we have following Users with their roles assigned
Working with Check-Outs
Exclusive check-out Grants join permissions to no other roles or users( by default, no other users can join the check-out)
Non-Exclusive Check-Out Grants join permissions to the everyone role (by default, all users can join the check-out)
Create the necessary users in Console with the above mentioned roles so that behavior of Check Ins & Check Outs can be assessed over various users.
Login through any user (say Pooja) and check out a few records by selecting some of them through Ctrl+Click and then right click -> Check In/Out Exclusive.
The records get a yellow mark prepended to them to show that they are checked out.
Now login through a different user (say Anuj) and try to modify the checked out records. You would get an invalid invitation message.
Now check out a few other records through user Anuj in the non-exclusive mode.
User Pooja can join the checkout easily and does not get any non-invited user message.
Working with Join permissions
Any user, who has committed records for check out, can allow users to join the check out based on the Join permissions that are modifiable only by him even if he has checked out records in exclusive mode.
Login through user Pooja, select two records and click join permission as shown below
Modify join permission by adding Anuj in Permitted users and adding Default in Permitted roles.
Login through user Anuj and try to join check out those records which are checked out exclusively through the login Pooja and whose join permissions are modified as in above steps.
Now you will be able to join the check-out.
Once the other user joins the check out, he/she can modify the records based on the permissions available to him/her in the Console.
In continuation with above scenario
If in the Console, for default role the access is set to read only for a particular field (Here MAKTX_MaterialDescription) then the user Anuj will be able to join the Check-Out but will not be able to modify the value of Material Description.
If anyone will try to modify the record he/she will get the error as
Working with Check Ins
Once the modification of the records is done, the owner of the check-out can check in the records back to the repository for normal access.
Note: Users who have joined the check out cannot check in the records back into the repository.