Business Rule to make checkbox true

Divya choudhary
Giga Expert

Hi,

We have a Brand table in which I have created a list controller location field to select multiple location in one brand. And we have an application services table which has brand field referencing to brand table and location field referencing to location table and i have created a checkbox in this table.

The requirement is when we add any location in the multiple select field in brand table then it should make checkbox true of the application service related to that brand and location.

Say in Brand : dove we have locations US,Gemany&Australia and if we add any location suppose India to it then in application service table below application service checkbox should be true:

application service: dove.us, brand-dove,location-US

application service: dove.gr, brand-dove,location-Germany

application service: dove.aus, brand-dove,location-Australia

application service: dove.india, brand-dove,location-India

below is the after BR when location changes that i have written but its not working:

(function executeRule(current, previous /*null when async*/ ) {

// Add your code here
var dollar = new GlideRecord('u_cmdb_ci_application_service');
dollar.addQuery(u_brand, current.u_name);
dollar.addQuery(location, current.u_billion_dollar_brand_location);
dollar.query();
while (dollar.next()) {
dollar.u_billion_dollar_brand=true;
dollar.update();
}


})(current, previous);

 

1 ACCEPTED SOLUTION

then try this one 

 

(function executeRule(current, previous /*null when async*/ ) {

// Add your code here
var dollar = new GlideRecord('u_cmdb_ci_application_service');
dollar.addQuery('u_brand', current.sys_id);
dollar.addQuery('location','IN', current.u_billion_dollar_brand_location.toString());
dollar.query();
while (dollar.next()) {
dollar.u_billion_dollar_brand=true;
dollar.update();
}


})(current, previous);

View solution in original post

14 REPLIES 14

yes giving row count as 0

dollar.addQuery('u_brand', current.u_name); also does not give the row count.

 

dollar.addQuery('u_brand', current.u_name);

I checked the log with only brand but its not giving the row count for this as well.

In Brand table we have Field "u_name" which contains the brand name and in application services table there is a reference field "u_brand" referencing to brand table. 

then try this one 

 

(function executeRule(current, previous /*null when async*/ ) {

// Add your code here
var dollar = new GlideRecord('u_cmdb_ci_application_service');
dollar.addQuery('u_brand', current.sys_id);
dollar.addQuery('location','IN', current.u_billion_dollar_brand_location.toString());
dollar.query();
while (dollar.next()) {
dollar.u_billion_dollar_brand=true;
dollar.update();
}


})(current, previous);

This woks!! Thank you so much 🙂

@Pranesh How can I make checkbox false if I remove any country from location field?