Create HR case using Request catalog item topic block
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thursday
Hello,
I am facing issue with the OOB Request Catalog item (LLM) Topic Block, I have a requirement where I need to create a case from VA with one particular record producer.
In order to achieve this , I have created a custom topic and included a OOB topic block "Request Catalog Item(LLM) but with this topic block, when I click on the submit for the first time, it fails to create a case and again it gives the options to submit, add attachments, Make changes when I again click on Submit it successfully creates the case.
This is the script in oob topic block for creating the HR case,
(function execute() {
var itemJson = JSON.parse(vaVars.itemJSON);
var variablesObj = {};
var attachmentIds = [];
for (i = 0; i < itemJson.variables.length; i++) {
variablesObj[itemJson.variables[i].name] = itemJson.variables[i].value;
if (itemJson.variables[i].type === 33)
attachmentIds.push(itemJson.variables[i].value);
}
vaVars.variables = JSON.stringify(variablesObj);
var reqObject = {
"sysparm_id": itemJson.sys_id,
"sysparm_action": 'execute_producer',
"variables": variablesObj,
"engagement_channel": 'va',
"contact_type": 'virtual_agent'
}
vaVars.status = "error";
var response = new sn_sc.CatItem(itemJson.sys_id).submitProducer(reqObject);
if (response) {
vaVars.status = "success";
vaVars.record_id = response.sys_id;
vaVars.record_table = response.table;
// add attachment to record
var mediaLinksFormAttachment = vaVars.media_links_form_attachment.split(',');
for (var i in mediaLinksFormAttachment)
vaSystem.attachToRecord(mediaLinksFormAttachment[i], response.table, response.sys_id);
// move attachment variable to record
// ONLY try to move attachments if we have valid files to move
if (attachmentIds && attachmentIds.length > 0) {
var gr = new GlideRecord('sys_attachment');
gr.addQuery('sys_id', 'IN', attachmentIds);
gr.query();
while (gr.next()) {
gr.setValue('table_name', 'ZZ_YY' + response.table);
gr.setValue('table_sys_id', response.sys_id);
gr.update();
}
}
}
})()
Can someone please check and help me on this?
There is also one more issue, with "contact_type": 'virtual_agent' , after creating the case the source field still updates with self service , how to update it with virtual agent.
Can someone please check and help me on this?
There is also one more issue, with "contact_type": 'virtual_agent' , after creating the case the source field still updates with self service , how to update it with virtual agent.
0 REPLIES 0