- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2021 12:05 PM
Hi All,
Please help me here : as of now we are displaying reference field values based on another field . but Now i want to filter Data reference fields records based on two fields from Form.
Script include :
var filterTask1 = Class.create();
filterTask1.prototype = {
initialize: function() {},
getProjects: function(portfolio) {
var prj = [];
var gr = new GlideRecord("task");
gr.addEncodedQuery("sys_class_name=pm_project^ORsys_class_name=dmn_demand");
gr.addEncodedQuery('state=2^ORstate=10^ORstate=8');
gr.addEncodedQuery('ref_pm_project.primary_portfolio=' + portfolio + '^ORref_dmn_demand.portfolio=' + portfolio);
gr.query();
while (gr.next()) {
prj.push(gr.sys_id.toString());
}
var strId = prj.join(',');
return 'sys_idIN' + strId;
},
type: 'filterTask1'
};
Reference Qualifier : javascript: new filterTask1().getProjects(current.u_portfolio);
Issue : Now functionality need to work based on two fields , 1. Category 2. Portfolio
kindly let me know how to fix this one.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2021 12:34 PM
You can add the two fields in the function
example
Script include :
var filterTask1 = Class.create();
filterTask1.prototype = {
initialize: function() {},
getProjects: function(portfolio,task) {
var prj = [];
var gr = new GlideRecord("task");
gr.addEncodedQuery("sys_class_name=pm_project^ORsys_class_name=dmn_demand");
gr.addEncodedQuery('state=2^ORstate=10^ORstate=8');
gr.addEncodedQuery('ref_pm_project.primary_portfolio=' + portfolio + '^ORref_dmn_demand.portfolio=' + portfolio +'^parent=' +task); // add your logic
gr.query();
while (gr.next()) {
prj.push(gr.sys_id.toString());
}
var strId = prj.join(',');
return 'sys_idIN' + strId;
},
type: 'filterTask1'
};
Reference Qualifier : javascript: new filterTask1().getProjects(current.u_portfolio,current.sys_id);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2021 12:34 PM
You can add the two fields in the function
example
Script include :
var filterTask1 = Class.create();
filterTask1.prototype = {
initialize: function() {},
getProjects: function(portfolio,task) {
var prj = [];
var gr = new GlideRecord("task");
gr.addEncodedQuery("sys_class_name=pm_project^ORsys_class_name=dmn_demand");
gr.addEncodedQuery('state=2^ORstate=10^ORstate=8');
gr.addEncodedQuery('ref_pm_project.primary_portfolio=' + portfolio + '^ORref_dmn_demand.portfolio=' + portfolio +'^parent=' +task); // add your logic
gr.query();
while (gr.next()) {
prj.push(gr.sys_id.toString());
}
var strId = prj.join(',');
return 'sys_idIN' + strId;
},
type: 'filterTask1'
};
Reference Qualifier : javascript: new filterTask1().getProjects(current.u_portfolio,current.sys_id);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2021 12:49 PM
Hi Pranav,
thanks for the Logic. i have added two fields .
now data is coming correctly
Thanks again.
