how to make field mandatory when group name.manger,members added have changes

raj765_32
Tera Contributor

Hi can anyone pls help me with scenario for,

 

when a field in group table 

"Name"

"Manager"

"Group Members'

 

are updated. i have to make a field "Worknotes" mandatory in group table

i have written a before business rule with an update option and written the below code:

 

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

if(current.name.changes() || current.manager.changes() || current.sys_user_grmember.changes())

if(current.u_work_notes.isNil){

gs.addErrorMessage("Please fill data in worknotes field");
current.setAbortAction(true);
}

})(current, previous);
 
whenever changes are made for the above two fields record is getting saved but i dont want record to be saved unless worknotes field is filled and the above code is not working when group members are added or removed.
 
Please help me with this

 

2 ACCEPTED SOLUTIONS

SN_Learn
Kilo Patron
Kilo Patron

Hi @raj765_32 ,

 

Please try the below:

SN_Learn_0-1722229387632.png

 

In Advance section:

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

    if (current.u_work_notes.isNil()) {
        gs.addErrorMessage("Please fill data in worknotes field");
        current.setAbortAction(true);
    }

})(current, previous);

 

This will work for both the fields 'Name' and 'Manager' but not for Group members because that is not a field rather it is a separate table. So, we need to write a business rule on that table separately.

 

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.

View solution in original post

Go with 3 checkbox as true, then it will also consider when you are removing user:

SN_Learn_0-1722235780863.png

 

 

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.

View solution in original post

21 REPLIES 21

this is not working for group members

@raj765_32 ,

 

Could you please share your setup of business rule and what is not working, the users are getting added?

 

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.

i have kept before business rule, insert and update and sys_group member table and the below code:

 

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

var grp = new GlideRecord('sys_user_group');
if (grp.get(current.group)) {
if (gs.nil(grp.u_work_notes)) {
gs.addErrorMessage("Please fill data in worknotes field");
current.setAbortAction(true);
}
}
})(current, previous);
 

Hi @raj765_32 ,

 

I have tried the same in PDI and it is not adding user in the group.

 

Business Rule on [sys_user_grmember], before insert+update

 

From the group, adding member using 'edit' or 'new' button. No user added.

Please show the screenshots of the issue from your end.

 

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.

when i add or remove users worknotes should display mandatory like which we did in name or manager