- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 09:48 AM - edited 07-01-2025 10:03 AM
Hi,
I am trying a simple logic to retrieve values from table but I am not getting expected return.
var machine_name = '';
var serial_number = '';
var reqUser = '';
var grMRVSAnswers1 = new GlideRecord('sc_multi_row_question_answer');
grMRVSAnswers1.addQuery('row_index=' + rowIndex); // There are 3 records in the table for the row id passed
grMRVSAnswers1.query();
while (grMRVSAnswers1.next()) {
if ((grMRVSAnswers1.getDisplayValue('item_option_new') == 'Machine/Asset Names')) {
machine_name = grMRVSAnswers1.value;
gs.print(machine_name); // Getting Expected value : Machine123
} else if ((grMRVSAnswers1.getDisplayValue('item_option_new') == 'Serial Number') ) {
serial_number = grMRVSAnswers1.value;
gs.print(serial_number );//Getting Expected Value : SerialNumber123
} else if ((grMRVSAnswers1.getDisplayValue('item_option_new') == 'Requested For')) {
reqUser = grMRVSAnswers1.value;
gs.print(reqUser);//Getting Expected Value : RK123
}
}
gs.print('reqUser ' + reqUser); //Returned Value : RK123
gs.print('machine_name ' + machine_name);////Returned Value : RK123 ??
gs.print('serial_number ' + serial_number);//Returned Value : RK123 ??
Not sure why are machine names and serial number variables getting override with userid when I am getting correct logs for individual if-else statement. What am I missing here ?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 10:06 AM
Hi Ruchi,
It seems the issue is with the ServiceNow API itself, or maybe it's the default functionality.
You can stringify it to get the exact result, something like
machine_name = String(grMRVSAnswers1.value);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 09:56 AM
Hi @Ruchi Kumari1 ,
Correct this line in your code which is in first else if block.
gs.printserial_number );//Getting Expected Value : SerialNumber123
If my response helped, please mark it as correct.
Regards,
Mohd Arbaz.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 10:02 AM
Hi @mohdarbaz , It's a typo in the question. Please ignore that.
In actual script, it's correctly added. Hence, getting the expect log as I mentioned.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 10:06 AM
Hi Ruchi,
It seems the issue is with the ServiceNow API itself, or maybe it's the default functionality.
You can stringify it to get the exact result, something like
machine_name = String(grMRVSAnswers1.value);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2025 10:11 AM
@Manoj89 , Thanks for the response. Strange but this worked !