Query knowledge articles based on Qwnership groups
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-10-2024 05:04 AM
I am trying to retrive the list of knowledge articles owned by the support groups the logged in user is part of,
but I am getting an empty result. Please correct my mistake
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-10-2024 05:18 AM
getMyGroups returns an iterator, so you have to cast it to an array and then join it to use it in your query. See the documentation for an example.
See more of my content here.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-10-2024 05:39 AM
Hi,
Maybe, try with encoded query? Below code worked for me.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-10-2024 05:49 AM
Hi @DivyaNarayG
try the below code.
var ka_group = gs.getUser().getMyGroups();
var gr = new GlideRecord('kb_knowledge');
gr.addQuery('ownership_group',ka_group.join()) ;
gr.query();
while(gr.next())
{
gs.print(gr.article_id);
}
Thanks
dgarad
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-11-2024 08:41 AM
Hi @DivyaNarayG ,
I tried this in my pdi the below code is working i have made few changes to your code,
var groupMember = new GlideRecord('sys_user_grmember');
groupMember.addQuery('user',gs.getUserID());
//var arr = [];
groupMember.query();
while(groupMember.next()){
//arr.push(groupMember.getValue('group'));
var gr = new GlideRecord('kb_knowledge');
gr.addQuery('ownership_group',groupMember.getValue('group')) ;
gr.query();
while(gr.next())
{
gs.info(gr.number + ' ' + 'Ownership group: ' + gr.getDisplayValue('ownership_group') ); // gr.number written KB number,u
}
}
Please mark this comment as Correct Answer/Helpful if it helped you.
Regards,
Swathi Sarang