请帮助我如何配置突出显示的点。它将达到 SLA
示例 --- 在“temp”表中如果我们创建出站票证,入站条目响应将在“fact”表中收到。
事实表中的入站响应应该在字符串中获得“Accepted by”的消息(示例字符串是 - “'[xMatters] - xM event ID 1576000 received response Accepted by reddyjej (Work Email)”)。
如果入站响应接受是在出站票创建时间的 3 小时内,那么我们需要将其分配给受尊重的用户(在入站响应接受后)和他的默认分配组。
如果没有在 180 分钟内出现,则被工作笔记接受然后分配给指定的组 BI-ITINF-1TOC //我将它存储在属性中并在代码中使用它。(我需要为此使用业务规则吗?如果是我能怎么做?)
这里`我使用了onAfter Transform脚本。源表是具有入站条目的事实,目标表是具有出站票证的临时表
(function runTransformScript(source, map, log, target /*undefined onStart*/ ) {
// Add your code here
var outbound = target.sys_created_on;
var inbound = source.sys_created_on;
var inboundTime = new GlideDateTime(inbound);
var outboundTime = new GlideDateTime(outbound);
var durCheck = GlideDateTime.subtract(outboundTime, inboundTime).getNumericValue();
gs.info("HJ:outboundTime" + outboundTime);
gs.info("HJ:inboundTime" + inboundTime);
var worknotes = source.task_work_notes;
var n = worknotes.indexOf('Accepted by');
var user = worknotes.substring(n + 12, worknotes.indexOf('(Work'));
gs.info("HJ:user"+user);
gs.info("HJ:durCheck" + durCheck);
if (n >-1 ){ //checking if the worknotes has Accepted by
if (durCheck <= 10800000) { //3hrs in milliseconds
var gr = new GlideRecord("sys_user");
gr.addQuery('user_name', user);
gr.query();
if (gr.next()) {
target.assigned_to = gr.sys_id;
var assignee = gr.sys_id;
}
// target.update();
var grmem = new GlideRecord("sys_user_grmember");
grmem.addQuery('user', assignee);
grmem.addEncodedQuery('group.typeLIKEf7b1ac3adb70ff802d3bff371d9619ad^group.active=true');
grmem.orderByDesc('sys_created_on');
grmem.query();
if (grmem.next()) {
target.assignment_group = grmem.group;
}
// target.update();
} else {
target.assignment_group = gs.getProperty('x_xma_xmatters.xmatters.set.assignment.group');
}
//target.update();
}else if(durCheck >10800000 ){
target.assignment_group = gs.getProperty('x_xma_xmatters.xmatters.set.assignment.group');
}
target.update();
})(source, map, log, target);