
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 05:26 AM
Here's an example:
function get_BCP_Site_Data(userLocation_sysID)
{
var siteDATA = [];
var gr = new GlideRecord('u_bcpa_sites');
gr.addQuery('u_active', true);
gr.addQuery('u_location', userLocation_sysID);
gr.query();
if (gr.next())
{
siteDATA.push({
city:gr.u_city.toString(),
state:gr.u_state.toString(),
zip:gr.u_zip.toString()
});
}
return siteDATA;
}
Above, I'm only exampling 3 fileds, city, state and zip. However, I have about 75 more I need data from.
Is there any way to get all the fields without explicitly referencing each field?
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 06:37 AM
Or... here's the ES5 way to do it to get dynamic array keys:
function get_BCP_Site_Data(userLocation_sysID)
{
var siteDATA = [];
var gr = new GlideRecord('u_bcpa_sites');
gr.addQuery('u_active', true);
gr.addQuery('u_location', userLocation_sysID);
gr.query();
if (gr.next())
{
var fields = new GlideRecordUtil().getFields(gr);
var fieldName = '';
for (var i = 0; i < fields.length; i++)
{
var obj = {};
fieldName = fields[i];
var thetop = fieldName;
obj[fieldName] = gr.getDisplayValue(fieldName);
siteDATA.push(obj);
}
}
return siteDATA;
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 05:38 AM
Hi David,
You can try the below code and see if it works..
function get_BCP_Site_Data(userLocation_sysID)
{
var siteDATA = [];
var gr = new GlideRecord('u_bcpa_sites');
gr.addQuery('u_active', true);
gr.addQuery('u_location', userLocation_sysID);
gr.query();
while(gr.next())
{
siteDATA.push(gr.getValue("sys_id"));
}
return siteDATA;
}

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 06:06 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 06:12 AM
Got it.
function get_BCP_Site_Data(userLocation_sysID)
{
var siteDATA = [];
var gr = new GlideRecord('u_bcpa_sites');
gr.addQuery('u_active', true);
gr.addQuery('u_location', userLocation_sysID);
gr.query();
if (gr.next())
{
var fields = new GlideRecordUtil().getFields(gr);
var fieldName = '';
for (var i = 0; i < fields.length; i++)
{
fieldName = fields[i];
siteDATA.push({
field_name: fieldName,
value: gr.getDisplayValue(fieldName),
label: gr[fieldName].getLabel()
});
}
}
return siteDATA;
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2017 06:15 AM
Great!!!!