- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2016 10:23 AM
<g:evaluate var="jvar_gr" object="true">
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('group','8e136dbe4fe6560093f3e0024210c786'); // To get users from this group
gr.query();
while(gr.next()){
var jobCR3= new GlideRecord('sysapproval');
jobCR3.addQuery('document_id','361c4b074f2e560093f3e0024210c7ea');
jobCR3.addQuery('approver',gr.user); // To select the approval user who are from above group.
jobCR3.addQuery('state','approved');
jobCR3.orderBy('sys_created_on');
jobCR3.query();
}
jobCR3;
</g:evaluate>
<j:while test="${jvar_gr.next()}">
<p>${jobCR3.getDisplayValue('approver')}</p>
</j:while>
I am getting result as 1 user. But I should get 2 users. When I run same script in background script I am getting result as 2 users (which is correct).
Script ran in background script:
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('group','8e136dbe4fe6560093f3e0024210c786');
gr.query();
while(gr.next()){
var jobCR3= new GlideRecord('sysapproval');
jobCR3.addQuery('document_id','361c4b074f2e560093f3e0024210c7ea');
jobCR3.addQuery('approver',gr.user);
jobCR3.addQuery('state','approved');
jobCR3.orderBy('sys_created_on');
jobCR3.query();
while(jobCR3.next()){
gs.print(jobCR3.getDisplayValue('approver'));
}
}
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2016 11:14 AM
Actually, you'll probably want this:
<g:evaluate object="true">
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('group', '8e136dbe4fe6560093f3e0024210c786'); // To get users from this group
gr.query();
</g:evaluate>
<j:while test="${gr.next()}">
<g:evaluate object="true">
var jobCR3 = new GlideRecord('sysapproval');
jobCR3.addQuery('document_id', '361c4b074f2e560093f3e0024210c7ea');
jobCR3.addQuery('approver', gr.user); // To select the approval user who are from above group.
jobCR3.addQuery('state', 'approved');
jobCR3.orderBy('sys_created_on');
jobCR3.query();
</g:evaluate>
<j:while test="${jobCR3.next()}">
<p>${jobCR3.approver.getDisplayValue()}</p>
</j:while>
</j:while>
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2016 11:55 AM
Hey David, is there any way to get the result as shown below:
If I get result as: user1, user2, user3
Can we assign each user to different variable: u1 = user1; u2 = user2; u3= user3
So that we can print in UI page as
Name of user1 = ${u1} ,
Name of user2 = ${u2},
.
.
.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2016 10:58 AM
Sure:
XML:
<g:evaluate object="true">
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('group', '8e136dbe4fe6560093f3e0024210c786'); // To get users from this group
gr.query();
</g:evaluate>
<div id="jvars"></div>
<script>
var userArray = [];
var count = 0;
var myKey = "u";
addLateLoadEvent(function()
{
setJVAR_values(userArray);
});
</script>
<j:while test="${gr.next()}">
<g:evaluate object="true">
var jobCR3 = new GlideRecord('sysapproval');
jobCR3.addQuery('document_id', '361c4b074f2e560093f3e0024210c7ea');
jobCR3.addQuery('approver', gr.user); // To select the approval user who are from above group.
jobCR3.addQuery('state', 'approved');
jobCR3.orderBy('sys_created_on');
jobCR3.query();
</g:evaluate>
<j:while test="${jobCR3.next()}">
<script>count++; myKey = ("u" + count.toString()); var obj = {}; obj[myKey] = "${jobCR3.approver.getDisplayValue().toString()}"; userArray.push(obj);</script>
</j:while>
</j:while>
CLIENT SCRIPT:
function setJVAR_values(userArray)
{
var u = "";
var str = '';
// console.debug('userArray: ' + JSON.stringify(userArray));
for (var i = 0; i < userArray.length; i++)
{
u = 'u' + (i+1).toString();
str += '<j:set var="jvar_' + u + '" value="' + userArray[i][u] + '"></j:set>';
}
gel('jvars').innerHTML = str;
}
Then you can use ${jvar_u1} and ${jvar_u2}, etc...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-08-2022 04:18 AM
Hi i was trying to print somthing similar, but i was not able to print all the users like ${jvar_u1} etc
can you please help me with that
how can i get data from <j:set> tag to print on the UI page?