- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-15-2024 05:08 AM
There are two cases in which the json return may or may not contain the address_lines.
//With Address Lines
{
"national_ids":[
{
"id":"10406",
"scheme":"APTBEF",
"institution_name":"SOCIETE TUNISIENNE DE BANQUE",
"branch_information":"BOUSALEM",
"address":{
"address_lines":[
"RUE DES JARDINS",
"16"
],
"country_subdivision":"JENDOUBA GOVERNORATE",
"post_code":"8170",
},
"office_type":"DB"
}
]
}
//Without Address Lines
{
"national_ids":[
{
"id":"3000",
"scheme":"BSK",
"institution_name":"SPAREBANKEN SOER",
"address":{
"country_code":"NO",
"country_name":"NORWAY"
},
"office_type":"DB"
}
]
}
Below is my catalog client script that is giving me an error; how can i retrieve address and postcode? which section is wrong?
var gaFields = new GlideAjax('GetSwiftData');
gaFields.addParam('sysparm_name', 'getDetails');
gaFields.addParam('sysparm_countrycode', countrycode);
gaFields.addParam('sysparm_bankId', bankId);
gaFields.getXML(showSWIFTData3);
function showSWIFTData3(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer == 'Invalid Branch parameters') {
//do nothing
} else {
var obj = JSON.parse(answer);
alert(obj);
g_form.setValue('postcode', obj.postcode);
var fulladdress = "";
if (obj.address.address_lines) {
alert('With address line');
for (var i = 0; i < obj.address.address_lines.length; i++) {
fulladdress += obj.address.address_lines[i] + ", ";
g_form.setValue('branch_address', fulladdress);
}
} else {
alert ('no address line');
for (var i = 0; i < obj.address.address.length; i++) {
fulladdress += obj.address.addres[i] + ", ";
g_form.setValue('branch_address', fulladdress);
}
}
}
}
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-15-2024 07:54 AM
Hi @tsoct , Try using below updated code.
var gaFields = new GlideAjax('GetSwiftData');
gaFields.addParam('sysparm_name', 'getDetails');
gaFields.addParam('sysparm_countrycode', countrycode);
gaFields.addParam('sysparm_bankId', bankId);
gaFields.getXML(showSWIFTData3);
function showSWIFTData3(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer == 'Invalid Branch parameters') {
//do nothing
} else {
var obj = JSON.parse(answer);
alert(obj);
var postCode = obj.national_ids[0].id;
var fulladdress= obj.national_ids[0].address.address_lines;
g_form.setValue('postcode', postCode);
g_form.setValue('branch_address', fulladdress);
}
}
Hope this works for you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-15-2024 07:54 AM
Hi @tsoct , Try using below updated code.
var gaFields = new GlideAjax('GetSwiftData');
gaFields.addParam('sysparm_name', 'getDetails');
gaFields.addParam('sysparm_countrycode', countrycode);
gaFields.addParam('sysparm_bankId', bankId);
gaFields.getXML(showSWIFTData3);
function showSWIFTData3(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer == 'Invalid Branch parameters') {
//do nothing
} else {
var obj = JSON.parse(answer);
alert(obj);
var postCode = obj.national_ids[0].id;
var fulladdress= obj.national_ids[0].address.address_lines;
g_form.setValue('postcode', postCode);
g_form.setValue('branch_address', fulladdress);
}
}
Hope this works for you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-15-2024 08:12 AM
Thanks @Ajay61 ,
But I am still getting javascript error and the catalog client script allso alerting:
New client-scripts are run in strict mode, with direct DOM access disabled. Access to jQuery, prototype and the window object are likewise disabled. To disable this on a per-script basis, configure this form and add the "Isolate script" field. To disable this feature for all new globally-scoped client-side scripts set the system property "glide.script.block.client.globals" to false.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-16-2024 01:18 AM
Hello @tsoct ,
You can configure the form layout and update the form with 'Isolate script' field and mark it as false(uncheck).
For more information, refer below article
https://www.servicenow.com/community/developer-blog/isolate-script-in-london/ba-p/2275821