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 to remove empty space from phone number using script.

Sriharsha3
Tera Contributor

How to achieve this using a transform script before loading of data or a business rule after load/.

Suppose my phone number looks this way from data : +91 9xxxxxxxxx , i need it to transform to +919xxxxxxxxx so there is no inbetween spaces.

 

Thanks

1 ACCEPTED SOLUTION

You can write this in your before script

var number = source.u_number; //Replace u_number with the actual import set column name for phone number

number= number.replace(" ", "");
target.mobile_phone = number;

 

View solution in original post

10 REPLIES 10

Hello, 

I am not getting user data as per contact number passed in URL:it should ignore space,dashes from phone number which is in user table and populating the caller name in incident form as per contact number.  This is URL where passing contact number: Only last value (phone no) will enter and should populate caller name in incident form.

https://XXXX.service-now.com/incident.do?sys_id=-1&sysparam_query=active=true&sysparam_stack=incident_list.do&sysparam_contact_number=+912536363663

Script include:

var CTI_UserDetails = Class.create();
CTI_UserDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {

requestor_info: function() {

var contact = this.getParameter('sysparm_value');
gs.log("contc"+contact);

var user_sysid = " ";
var usr1 = new GlideRecord('sys_user');

usr1.addEncodedQuery("active=true^mobile_phone=" + contact + "^ORphone=" + contact);

usr1.orderByDesc('name');
usr1.query();

if (usr1.next()) {

user_sysid = usr1.sys_id;
usr1.phone = usr1.phone.replace(/[^\d]/g, '');

gs.log("user phon" + usr1.phone);
gs.log("user id" + user_sysid);
}
return user_sysid;
},

type: 'CTI_UserDetails'
});

 

 

Client Script: 

function onLoad() {
//Type appropriate comment here, and begin script below
{

var gURL = new GlideURL();
gURL.setFromCurrent();
var number = gURL.getParam("sysparam_contact_number");

if (number != undefined) {
var user = new GlideAjax("CTI_UserDetails");
user.addParam('sysparm_name', 'requestor_info');
user.addParam('sysparm_value', number);

user.getXML(getval);
} else {
return;
}
}

function getval(response) {

var res1 = response.responseXML.documentElement.getAttribute("answer");
if (res1) {

g_form.setValue('caller_id', res1);
g_form.setValue('u_customer', res1);
g_form.setValue('u_phone', number);
} else {
g_form.addErrorMessage("No information available");
}
}
}

 

Can anyone help me in this, its very urgent requirement.