Custom related list to show catalog ui policies on a variable

Moedeb
Tera Guru

I am wanting to create a related list that I can see any catalog ui policies that a variable has related to it.

 

I have been creating a relationship record as such: 

Name: Catalog UI Policies
Application:Global
Applies to table:Variable [item_option_new]
Queries from table:Catalog UI Policy [catalog_ui_policy]

 

Script:

(function refineQuery(current, parent) {
var records = new GlideRecord('catalog_ui_policy');
records.addQuery('item_option_new', parent.getUniqueValue());
var encodedQuery = records.getEncodedQuery();
if (encodedQuery) {
	current.addQuery('sys_id', 'IN', encodedQuery);
}
})(current, parent);

 

No results are showing. I have tried some other scripts such as:

current.addQuery('sys_id', 'IN', (function() {
    var ids = [];
    var gr = new GlideRecord('sys_ui_policy_action');
    gr.addQuery('variable', current.sys_id);
    gr.query();
    while (gr.next()) {
        ids.push(gr.ui_policy.toString());
    }
    return ids.join(',');
})());

This however shows all ui policies

 

Anyone able to assist?

 

1 ACCEPTED SOLUTION

J Siva
Tera Sage

Hi @Moedeb 
You can acheive this using "Relationships".
Try the below.

Table: sys_relationship

(function refineQuery(current, parent) {
	var id = "IO:"+parent.sys_id.toString();
	current.addQuery("catalog_variable",id);

	// Add your code here, such as current.addQuery(field, value);

})(current, parent);

JSiva_0-1752123482575.png

Output:

JSiva_1-1752123551004.png

Hope this helps.
Regards,
Siva

 

 

View solution in original post

11 REPLIES 11

J Siva
Tera Sage

Hi @Moedeb 
You can acheive this using "Relationships".
Try the below.

Table: sys_relationship

(function refineQuery(current, parent) {
	var id = "IO:"+parent.sys_id.toString();
	current.addQuery("catalog_variable",id);

	// Add your code here, such as current.addQuery(field, value);

})(current, parent);

JSiva_0-1752123482575.png

Output:

JSiva_1-1752123551004.png

Hope this helps.
Regards,
Siva

 

 

@Moedeb 
Have you tried the above?

I am very sorry @J Siva I totally missed your response and it worked perfectly.

Thank you a heap 😁

@Moedeb No worries..

Glad it helped..