I have an extremely odd security issue that I am hoping someone has an idea about. I am BAFFLED and would appreciate any suggestions.
An HR user transferred from one team to another. Her security roles were changed for the new team. She can do all the things she needs to, except 1. When working her Inbasket, some fields do not appear for term actions. They do not appear when opening the inbasket item (which is the Employee.Terminate form), but they DO appear if she goes to resources and chooses the terminate action. All of her teammates CAN see these fields in the inbasket item. The issue is boiling down to a custom condition we have that restricts these fields unless the Actor has one of 4 roles (which she does), using a custom relation to ActorRole. The condition works fine from Resources/Terminate, but not from the Inbasket but ONLY FOR HER, again, others can see these fields. I have gone so far as to strip all her security yesterday, then we had a planned downtime last night so all systems were rebooted, and added them back this morning. No change.
She has access to PFIQueue and PFITask, and appropriate rights to the inbasket she is in. The custom relation/condition do not exist in these business classes, but her teammates see these fields in the inbasket. When opening an item from this inbasket, the displayed form is Employee.Terminate.
I would think if I needed to add the condition or relation to PFIQueueTask, her teammates would also not be able to see the fields. But they can.
I have compared her security roles to that of her teammates, and while there are some variations, there is one other person with identical roles. She can see the fields. Examples are in the included PDF.
Obviously we have cleared her cache for all time, restarted the browser, rebooted and tried a different computer that she had never used before. The problem follows her.
The Employee.Terminate form was last edited in July of 22. The LPL with condition, where you can see her lose fields is below:
visible when (IsCMCCompany1)
header4 of "EnterTheTerminationInformation"
visible when (IsHRStaff)
single column
RelationshipStatus
The LPL of the condition is (from the Employee business class, last edited in 2020):
IsHRStaff
when (first CMCHR exists
or first CMCITERPAnalyst exists)
And the LPL of the CMCHR relation is (from the Employee business class, I saved a change to it a few days ago just to see if that made a difference). She has the second role:
one-to-many relation to ActorRole
Field Mapping uses ByActorAndRole
related.Actor = actor
Instance Selection
where (related.ActorRole.Role = "Admin_ST"
or related.ActorRole.Role = "TM_GHRDataManagementNOHR"
or related.ActorRole.Role = "TM_GHRHRAdmin"
or related.ActorRole.Role = "TM_GHRBenefitsNOHR")
.[View:/cfs-file/__key/communityserver-discussions-components-files/60/ScreenShots.pdf:320:240]