- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 07:44 AM
HI ServiceNow Experts ,
I am working on a Requirement for Notifications .
Problem :
Incident and Incident alert notifications are received by all the End users in the organization .
So when a End user opens a incident , he gets a notification and Click on the " View Incident " link , he is able to view the incident .
When another End user Clicks on the same " View Incident " link , he is not able to view the incident . He is getting a error - """"Record Not Found"" .
WorkAround :
1. Deactivated all the ACL's on the Incident and Incident Alert tables and tested - No luck
2. Activated them back and added the end user role for all the ACL's - No Luck .
3. Searched in the all the scripts - Business Rules , Client scripts , Script Includes , to see , if they have a Info message - No luck .
Please share your insights on this problem .
Thank You
Solved! Go to Solution.
- Labels:
-
Team Development
-
User Interface (UI)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:25 AM
Shyam,
Try disabling only this read ACL and on the new read ACL use the custom role. Next, the below BR script needs to be copied and edited to allow the custom role query rights. Please remember to disable the OOB BR.
if (!gs.hasRole("itil") && !gs.hasRole("XYX") && gs.isInteractive()) {
var u = gs.getUserID();
var qc = current.addQuery("caller_id", u).addOrCondition("opened_by", u).addOrCondition("watch_list", "CONTAINS", u);
gs.print("query restricted to user: " + u);
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:02 AM
Shyram,
The below ACL allows customers, users with no roles in your system, read access to the incident form. If your intention is to allow every customer read access to all incidents you will need to in-activate this ACL. Create a new role; i.e. "incident_readers" assign to all customers; then create a new read ACL, on the Incident table, then add the new custom role.
Thanks,
Derrick Johnson
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:09 AM
Hi djohnson,
Thanks for your reply . But that was the first workaround I did as I already mentioned .
I deactivated it and tested - It dint work .
I added the role and checked - It dint work
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:25 AM
Shyam,
Try disabling only this read ACL and on the new read ACL use the custom role. Next, the below BR script needs to be copied and edited to allow the custom role query rights. Please remember to disable the OOB BR.
if (!gs.hasRole("itil") && !gs.hasRole("XYX") && gs.isInteractive()) {
var u = gs.getUserID();
var qc = current.addQuery("caller_id", u).addOrCondition("opened_by", u).addOrCondition("watch_list", "CONTAINS", u);
gs.print("query restricted to user: " + u);
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:40 AM
Hey djohnson,
I highly doubt , you are reading my mind( just kidding ) . I just did disable the business rule and it worked . The other user is able to see the Incident form .
Now i have to try putting all the ACL's to stay the same as it was before and test it .
And then if everything is good , I would definitely mark the answer correct and close the thread .
I also wanted to do this for change and problem notifications . Guess there should be some Business rules for these too .
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2018 08:50 AM
Awesome 🙂 There are read ACLs on both the Change and Problem tables that will require modification(s). I do not know of any BRs that may further restrict read access for these tables.