- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-14-2015 09:23 AM
I have created a catalog item that is fairly complex with quite a few fields (variables) on it.
Currently, when our approvers click the link to view the service catalog request and all of the requested items, they cannot open up the requested item to see it in all of its glory. Instead, they see "No Preview Available"
All they can do is click on the drill down summary, which is very difficult to read since there is no formatting or layout to it. =(
I know I can try to create a complex approval email with all of the fields in it, but this creates a maintenance nightmare...
Can anyone suggest a better way to allow the approvers to see the (fully formatted) requested item?
Thanks in advance,
- James
Solved! Go to Solution.
- Labels:
-
Service Catalog
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-10-2015 07:36 AM
I have a HI ticket open but they are still looking into it.
For now, I have come up with a temporary solution via ACLs.
I don't know if this is the right way to address the problem or not, but it seems to do the job for now.
I have created two ACLs and a script include:
Script Include:
Name: myWorkflowTools
Script:
var myWorkflowTools = Class.create();
myWorkflowTools.prototype = {
initialize: function() {
},
isUserAnApproverOfReq : function (sysid,userid){
var isApprover = false;
var appr = new GlideRecord('sysapproval_approver');
appr.addQuery('sysapproval', sysid);
appr.addQuery('approver', userid);
appr.query();
if(appr.next())
{
isApprover = true;
}
return isApprover;
},
type: 'myWorkflowTools'
};
ACL #1:
Table: sc_req_item
Operation: read
Script:
var wfTools = new myWorkflowTools();
if(wfTools.isUserAnApproverOfReq(current.sys_id,gs.getUserID())){
answer = true;
} else {
answer = wfTools.isUserAnApproverOfReq(current.request.sys_id,gs.getUserID());
}
ACL #2:
Table: sc_request
Operation: read
Script:
var wfTools = new myWorkflowTools();
answer = wfTools.isUserAnApproverOfReq(current.sys_id,gs.getUserID());
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-31-2015 02:42 PM
At this point, I would suggest to create a incident with Service now to check this issue.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-31-2015 06:40 AM
James-
Did you resolve this? We are experiencing the same issue.
Thanks,
Danielle
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-31-2015 02:34 PM
Hi Danielle,
Not yet unfortunately,
Regards,
- James
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-10-2015 07:36 AM
I have a HI ticket open but they are still looking into it.
For now, I have come up with a temporary solution via ACLs.
I don't know if this is the right way to address the problem or not, but it seems to do the job for now.
I have created two ACLs and a script include:
Script Include:
Name: myWorkflowTools
Script:
var myWorkflowTools = Class.create();
myWorkflowTools.prototype = {
initialize: function() {
},
isUserAnApproverOfReq : function (sysid,userid){
var isApprover = false;
var appr = new GlideRecord('sysapproval_approver');
appr.addQuery('sysapproval', sysid);
appr.addQuery('approver', userid);
appr.query();
if(appr.next())
{
isApprover = true;
}
return isApprover;
},
type: 'myWorkflowTools'
};
ACL #1:
Table: sc_req_item
Operation: read
Script:
var wfTools = new myWorkflowTools();
if(wfTools.isUserAnApproverOfReq(current.sys_id,gs.getUserID())){
answer = true;
} else {
answer = wfTools.isUserAnApproverOfReq(current.request.sys_id,gs.getUserID());
}
ACL #2:
Table: sc_request
Operation: read
Script:
var wfTools = new myWorkflowTools();
answer = wfTools.isUserAnApproverOfReq(current.sys_id,gs.getUserID());
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-10-2015 11:49 AM
I had another call with a ServiceNow technician and it was confirmed that out of the box, it is normal for users to not be able to open the individual requested items or the request record.
Out of the box, the only reason that users can see the request and requested item information on the approval page is due to a variable "g_approval_form_request" which is set on that page and then used by an ACL against the sc_req_item table that allows access to the current user if that variable is set. (In other words, as long as the current user can open/read the approval record, the request and requested item information will also be displayed on that page specifically).
The best fix for this is the fix that I already described earlier via my 2 ACLs and a script include