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.

did not create or update incident using current Issue

Nikita35
Kilo Guru

hello,

I have written two inbound actions on tables - incident and u_new_call

Please find the script( This is same for both only written on different tables )

current.short_description = 'Callback request submitted via Voicemail';
current.description = 'Please listen to the voicemail.\n\n' + email.body_text + '\n\n Once called change the log type to denote that follow up was made';
current.u_contact_phone_number = findContactPhone(email.subject);
current.contact_type = 'Callback';
current.assignment_group = new ScriptIncludeName().byPassingName('Group name'); // Script include and group name changed with Generic names
current.insert();

function findContactPhone(subjectLine){

var phoneNumber = /\d+/g.exec(subjectLine);
return phoneNumber.toString();
}

Both new call record and incident is not getting created giving below message:

ServiceDesk New Call Callback : did not create or update u_new_call using current

ServiceDesk New Incident Callback : did not create or update incident using current

How can i resolve this issue?

1 ACCEPTED SOLUTION

Hi Nikita,

when match not found it returns null and hence breaking

we can handle this as below

current.short_description = 'Callback request submitted via Voicemail';
current.description = 'Please listen to the voicemail.\n\n' + email.body_text + '\n\n Once called change the log type to denote that follow up was made';

var subjectLine = email.subject;

var phoneNumber = subjectLine.match(/[+](1-)(\([0-9]{3}\)|[0-9]{3}-)[0-9]{3}-[0-9]{4}/);

// check if not null
if(phoneNumber!=null){

current.u_contact_phone_number = phoneNumber[0]; // using the 1st array element

}

current.contact_type = 'Callback';
current.assignment_group = current.assignment_group = new ScriptIncludeName().byPassingName('Group name');
current.insert();

Mark Correct if this solves your issue and also mark 👍 Helpful if you find my response worthy based on the impact.
Thanks
Ankur

 

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

View solution in original post

20 REPLIES 20

Hi Nikita,

seems some issue with the regular expression.

Glad that it worked

Please consider marking reply as Correct & 👍Helpful.

Thanks
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

But how do I fix this issue ?? I commented for testing.

But i need to map the phone number in both.

current.u_contact_phone_number = findContactPhone(email.subject);

function findContactPhone(subjectLine){

var phoneNumber = /\d+/g.exec(subjectLine);
return phoneNumber.toString();
}

Hi Nikita,

what is the format for phone number?

based on that regular expression can be used

Regars
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

here is the format - 

Hi Nikita,

below should retrieve the phone number properly

function findContactPhone(subjectLine){

var phoneNumber = subjectLine.match(/[+](1-)(\([0-9]{3}\)|[0-9]{3}-)[0-9]{3}-[0-9]{4}/);
return phoneNumber[0].toString();

}

Mark Correct if this solves your issue and also mark 👍 Helpful if you find my response worthy based on the impact.
Thanks
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader