How to open a catalog item in Now Experience Workspace the way you can in Agent Workspace and Service Operations Workspace

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-05-2022 05:53 AM
Hi Everyone,
I'm continuing my saga in trying to implement the Service Portal catalog in my scoped application's custom Now Experience Workspace. It has been a long journey, and is cataloged here.
No need to go through all of these though, I will explain the situation.
When we implemented Agent Workspace I added some code and fields to the interaction table.
The Interaction type and Catalog Item fields interact with this client script when the record is saved.
function onSubmit() {
if (g_form.getValue('u_interaction_type') != 'request')
return;
var ga = new GlideAjax('interactionRelatedRequest');
ga.addParam('sysparm_name', 'isRelatedRequest');
ga.addParam('sysparm_id', g_form.getUniqueValue());
ga.getXML(function(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer == 'false' || g_form.isNewRecord()) {
var params = {};
params.sysparm_parent_table = "interaction";
params.sysparm_parent_sys_id = g_form.getUniqueValue();
params.sysparm_requested_for = g_form.getValue('opened_for');
g_service_catalog.openCatalogItem('sc_cat_item', g_form.getValue('u_catalog_item'), params);
}
});
Now, the problem I've had up until this point, is that the code works perfectly in Agent Workspace, but will not work in my custom Now Experience Workspace. What it does instead is open the actual catalog item like this:
Over time, I learned that Agent Workspace and Now Experience Workspaces, while they look the same, are very different. I assumed this simply won't work in the new Workspaces.
...However, I was recently informed there is a new Workspace built for ITSM that utilizes the Now Experience Framework. This is the "Service Operations Workspace"
I decided to install this and see how it handles this situation.
... And guess what It Works!
It opens the catalog item using the Service Portal just like Agent Workspace does! This is both exciting and frustrating.
Analyzing the URIs from both apps they seem to be identical:
/x/g/transportation/record/interaction/1d8787b61b81911444b95247624bcbc1/sub/record/sc_cat_item/c3972e2ef95ea400618c92a0dd8b533c/params/extra-params/parent_table%2Finteraction%2Fparent_sys_id%2F-1%2Fsysparm_parent_table%2Finteraction%2Fsysparm_parent_sys_id%2F1d8787b61b81911444b95247624bcbc1%2Fsysparm_requested_for%2Ff50207aa41616000d09e6ea155db82a0
/now/sow/record/interaction/b6ea873a878d5d9074d2b889cebb35aa/sub/record/sc_cat_item/c3972e2ef95ea400618c92a0dd8b533c/params/extra-params/parent_table%2Finteraction%2Fparent_sys_id%2F-1%2Fsysparm_parent_table%2Finteraction%2Fsysparm_parent_sys_id%2Fb6ea873a878d5d9074d2b889cebb35aa%2Fsysparm_requested_for%2F300549f4db87a3005f2e70131f9619d6
...So at this point I am so confused. I have no idea why the above code works in Agent Workspace, works in the Service Operations Workspace, but won't work in my custom workspace. I feel like there is a setting somewhere that needs to be toggled, and I just don't know where it is.
Any ideas?
- Labels:
-
Now Experience UI Framework
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-25-2024 01:22 AM
Hi, I found a solution for you problem. It worked for me 🙂
In your configurable workspace, create a blank and empty variant under record.
Then go to 'sys_ux_screen', and find 'Catalog Item Page SNC'. From here you can just copy paste everything to your own variant which can also be found in 'sys_ux_screen'. Most important thing to copy is the Page Definition on the UX screen.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-18-2024 05:07 PM
@Mark Endsley were you able to got this working? I am having the same issue
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-17-2024 11:09 AM
I was working through figuring out how to get the catalog iframe component as well and just found there is now a Catalog Item component to display items that you just set the sys_id of the item on to render it.