Hi PCP,
If you are ok with the user having to click on a button with his/her name to highlight the line containing the name, then this may work for you.
Here is an example of report just opened by user Christine Fletcher (note that her name is on the top, and if another user had open this same report, the other user's name would have been displayed instead):
After she clicks on the top button, her name is selected according to the dsplay rule:
This is how it works:
I've used two source tables in this example. One source table (EMPLOYEE) contains the list of employees that I used to populate the button bar at the top. The other source table contains the data to be displayed in the list table object.
For the button bar, I've also assigned a character parameter that I've called LoggedUser:
Because display rules depend on numeric values only, I've created a calculated column based on the column Employee Name found in the second table. I've called that new column Flag for Rule, that looks like this:
Then the display rule (I've chosen to highlight the entire row):
Now, to guarantee that the top button bar contains only the name of the user logged in, I had to apply row level security to the EMPLOYEE table. The conditional grant was applied to the Read permission for the SASUSERS group and looked like below. Note that for this to work the user's metadata identity name must match with the value stored in the Employee_Name column. You can use other functions in the exression if needed, such as upcase(), trim(), etc.
If you really want to use their ID's instead of their names, then you could do so by storing their ID's as metadata External Indentities in SAS Management Console:
The permission condition expression would then be something like this (Employee_ID is the column from your table):
SUB::SAS.ExternalIdentity = Employee_ID
I hope it helps.
Best,
Renato
... View more