Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

How would you add this assignment rule of vulnerable response in a ATF Test Step

Community Alums
Not applicable

Hi,

Can you please help me add this assignment rule to a ATF Test Step.

 

filter.PNG

 

var defaultGroup = '8373bea18721c1109f887487cebb35f9'; //UNIX Support
current.assignment_group = getSupportGroup() || defaultGroup;

function getSupportGroup() {
    var answer = current.cmdb_ci.support_group;
    var gr = new GlideRecord('cmdb_rel_ci');
    gr.addQuery('child', current.cmdb_ci.toString());
    gr.addQuery('type.name', 'Depends on::Used by');
    gr.addQuery('parent.sys_class_name', 'cmdb_ci_service_auto');
    //gr.addEncodedQuery('parent.sys_class_name=cmdb_ci_query_based_service^ORparent.sys_class_name=cmdb_ci_service_auto');
    gr.query();
    if (gr.next()) {
        answer = gr.parent.support_group.toString();
    } else {
        var map = new GlideRecord('svc_ci_assoc');
        map.addQuery('ci_id', current.cmdb_ci.toString());
        map.query();
        if (map.next()) {
			answer = map.service_id.support_group.toString();
        }
    }
    return answer;
}

 

Regards

Suman P.

2 REPLIES 2

luffy3478
Tera Guru

add a server step and write similar script and add output variable to that step with required assignment group

sekhar kurumoju
Mega Guru
//
(function(outputs, steps, params, stepResult, assertEqual) {
    var current = new GlideRecord("incident");
    current.get(steps("a0d7fdbb93d502106eb932ddfaba10bf").record_id);

    var defaultGroup = '8373bea18721c1109f887487cebb35f9'; //UNIX Support
    current.assignment_group = getSupportGroup() || defaultGroup;

    function getSupportGroup() {
        var answer = current.cmdb_ci.support_group;
        var gr = new GlideRecord('cmdb_rel_ci');
        gr.addQuery('child', current.cmdb_ci.toString());
        gr.addQuery('type.name', 'Depends on::Used by');
        gr.addQuery('parent.sys_class_name', 'cmdb_ci_service_auto');
        //gr.addEncodedQuery('parent.sys_class_name=cmdb_ci_query_based_service^ORparent.sys_class_name=cmdb_ci_service_auto');
        gr.query();
        if (gr.next()) {
            answer = gr.parent.support_group.toString();
        } else {
            var map = new GlideRecord('svc_ci_assoc');
            map.addQuery('ci_id', current.cmdb_ci.toString());
            map.query();
            if (map.next()) {
                answer = map.service_id.support_group.toString();
            }
        }
        return answer;
    }


    outputs.table = 'sys_user_group';
    outputs.record_id = "answer";

})(outputs, steps, params, stepResult, assertEqual);