Self Service List View

kchorny
Tera Guru

I have (with a lot of help from the community) created the ability for customers to see all incidents for their company in Self Service.   I did this by creating an Application module called Company Incidents that is a List of Records link type.   The ability to display these incidents is dependent on membership of a security group, Customer Managers.  


Issue # 1.   I want to display some different columns for these folks, so I created a list view called Manager View and set that as the View name in the Company Incidents module definition.   This doesn't seem to be working, though - the list still displays in Self Service view.   I tried creating a view rule as well, still no luck.   It forces the view for me, but not for self-service users.

Issue # 2. I want to show who opened the incident in the list view (ideally in Manager View if I could get #1 fixed).   In the incident form, there's a field that references the User table and consolidates First Name and Last Name to display full name in the Incident caller_id field.   However, when I add the caller_id column (to the self-service view, as that's the only one I can get to display ATM), it displays as blank to the self-service user.   I figured they probably don't have permission to see those fields, so I created read ACLs on the First Name and Last Name fields of the sys_user table.   But they are still blank in the list view.

Ideas for either?

Thanks!

Karla

6 REPLIES 6

manikorada
ServiceNow Employee
ServiceNow Employee

Karla,



For your issue # 1, there is a Global Business rule 'incident functions' ("https://<<instance_name>>.service-now.com/nav_to.do?uri=sys_script.do?sys_id=68c334efc0a80164016c1bce9b634660"). This business rule is forcing the ESS users to go to Self Service view always. You can change this to something like:


function incidentGetViewName() {


  if (gs.hasRole("itil"))


        return;


  if (view.startsWith("ess"))


        return;


  if (view == "sys_ref_list")


        return;


if (view == "list_view") // list_view is the view name


        return;



  answer = "ess";


}



For your Issue # 2, I would check if the User has read access to 'caller_id' field which is on the Incident table and also have access to Full Name field on the 'sys_user' table.


Thank you, I was able to force the manager_view.   However, I built the ACLs as you suggested (I didn't even know there was a field containing the full name!) and that part still isn't working.   But I'm getting closer!


manikorada
ServiceNow Employee
ServiceNow Employee

Karla,



Try to see if there is any Query business rule on 'sys_user' which may be restricting.


Also, when you login as the Test user, from the left navigation type 'sys_user.list' to see if the User is able to read the data in User table.


Here's the only query business rule on sys_user.   br.JPG



sys_user.list - all results are hidden.   I'm not sure what else to do...