Background Script: Query reference field to update another reference field

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-15-2022 09:15 PM
Hello Community,
Looking for help on a multi table query.
- Table 1 has a reference field, u_field_A
- Table 1 has a second reference field, u_field_B (Table 2)
- Table 2 has a reference field, u_field C (Table 3)
- If u_field_A is empty, then query u_field_B.u_field_C
- if u_field_C is not empty, update u_field_A with u_field_C.
Thank you,
Desmo
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-15-2022 09:24 PM
What is the challenge here?
First of all your query is not very clear what exactly you are trying to achieve.
Also at least start with something, or you are looking for a ready-made solution for this?
Aman Kumar

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-15-2022 09:25 PM
Here's something for reference:
10+ Tips for writing a quality community question
Aman Kumar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-15-2022 09:33 PM
var gr = new GlideRecord('table1');
gr.query();
while (gr.next()){
if (gr.getValue(' u_field_A') == ''){
if (gr.getValue('u_field_B.u_field_C') != ''){
gr.setValue('u_field_A', gr.getValue('u_field_B.u_field_C');
gr.update();
}
}
}

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-15-2022 10:23 PM
Hi Suvro,
Line 10 had a missing closed parenthesis. Resolved error. After running the script, there were no results / total number of records updated. Simply shows "Script execution history and recovery available here".
var gr = new GlideRecord('table1');
gr.query();
while (gr.next()){
if (gr.getValue(' u_field_A') == ''){
if (gr.getValue('u_field_B.u_field_C') != ''){
gr.setValue('u_field_A', gr.getValue('u_field_B.u_field_C'));
gr.update();
}
}
}