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