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.

Given inbound script is not working

keval3
Tera Contributor

(function runAction( /*GlideRecord*/ current, /*GlideRecord*/ event, /*EmailWrapper*/ email, /*ScopedEmailLogger*/ logger, /*EmailClassifier*/ classifier) {

 

    // Implement email action here

gs.info("GBSMDM inbound action");

    createRequest();

 

    function createRequest() {

        var userSysid;

        var reqgroup;

        var plant;

        var sub = email.subject.toString().toLowerCase();

        var urg = sub.indexOf('urg');

        gs.info(urg + " is the urgency");

 

 

        var gr = new GlideRecord('sys_user');

        gr.addQuery('email', email.from);

        gr.query();

        if (gr.next()) {

            userSysid = gr.sys_id;

        }

 

        var cart = new Cart();

        // add in cart, substitute your catalog item sys_id

        var item = cart.addItem('49dd78a3db427c50eeb8026dd3961902');

        gs.info("item"+item);

        cart.setVariable(item, 'description', email.body_html);

        gs.log("test");

        cart.setVariable(item, 'contact_type', 'email');

        cart.setVariable(item,'sub_heads','nurture_business');

        cart.setVariable(item,'requested_for','3336eb92dba9dc10a73ddf0bd39619bd');

        cart.setVariable(item,'sub_activities_vs','depot_update');

        cart.setVariable(item,'company','upl sas');

        cart.setVariable(item, 'subject', email.subject);

        cart.setVariable(item,'head_email',email.recipients);

        var rc = cart.placeOrder();

 

        //gs.info('ASK HR : - '+ rc.sys_id);

        // update shortdescription as Subject in RITM & task and set Requested group in RITM

        var ritm = new GlideRecord('sc_req_item');

        ritm.addQuery('request', rc.sys_id);

        ritm.query();

        if (ritm.next()) {

 

            if (urg == -1) {

                ritm.short_description = email.subject;

            } else {

                ritm.short_description = 'URGENT ' + email.subject;

            }

 

            ritm.watch_list = email.copied;

 

            ritm.update();

        }

 

        var sctask = new GlideRecord('pm_project_task');

        sctask.addQuery('parent', ritm.sys_id);

        sctask.query();

        if (sctask.next()) {

            if (urg == -1) {

                ritm.short_description = email.subject;

            } else {

                ritm.short_description = 'URGENT ' + email.subject;

            }

            sctask.watch_list = email.copied;

            sctask.update();

        }

        // add attachment to RITM

        var emailRec = new GlideRecord("sys_email");

        emailRec.addQuery("uid", email.uid);

        emailRec.orderByDesc("sys_created_on");

        emailRec.query();

        if (emailRec.next()) {

            GlideSysAttachment.copy("sys_email", emailRec.sys_id, "sc_req_item", ritm.sys_id);

        }

 

    }

})(current, event, email, logger, classifier);

 

1 REPLY 1

Kieran Anson
Kilo Patron

The CartAPI is deprecated, you should be using the CartJS API to create requests https://developer.servicenow.com/dev.do#!/reference/api/xanadu/server/sn_sc-namespace/c_CartJSScoped