safe way to deactivate/edit OOB Business rules, client scripts to let them not applicable for our tables

Bhavana Reddy
Mega Guru

Hello Guys,

In our System we have some OOB Business rules which runs on the parent table but we do not want this business rule to run in our Child tables and what is the best suggestion you can provide to us inorder to not let this OOB Business rule run on our Child tables

approach 1: Shall i modify the OOB Business rule and exclude my child table

approach 2: Deactivate the OOB Business rule and create the Custom BR and add the condition to exclude the Child table

 

Guys please suggest me what is the best approach as it should not cause any problems in the future upgrade

1 ACCEPTED SOLUTION

Hi Bhavana,

Surely, so yes you will have a problem during upgrade and that's actually a best practice. What really would happen is since you have modified the OOTB business rule and if there is a change in the code for this BR in future upgrades by ServiceNow, the record will have a conflict kind of stating 'A new version of this code is available' and would come up on skipped logs during upgrade.

 

Now what you would do during upgrade is to compare the code which has come through on the upgrade and what you have currently, if there are certain lines of new code added as a new functionality by ServiceNow then you can either merge it with you current code changes, or skip the code based on your requirements. You can read a bit more here -

https://docs.servicenow.com/en-US/bundle/sandiego-platform-administration/page/administer/platform-upgrades/task/upgrademon-process-skip-list.html

Why this is considered as a best practice is you don't miss out on any new functionality ServiceNow has brought, if you have a chnaged code toh will get to decide if you want to merge the new changes into your modified BR. You wouldn't know if you create a new BR since they wouldn't come up in skipped logs. 

Hope the answer helps, happy to explain more if you have further questions. 

Thanks, Harneet

View solution in original post

9 REPLIES 9

Mohith Devatte
Tera Sage
Tera Sage

Hello,

I would suggest the first approach you mentioned above 

please exclude your child tables in the condition builder

Because touching OOB is always a risk and cloning it is  also a risk. It might cause issue in upgrades or in some other way 

So go with first approach and also check what's the impact on child table when you exclude it just to be on safe side

Please mark my  answer correct if it helps you

Community Alums
Not applicable

Hi @Bhavana Reddy ,

You can set "Active" to "false" (deselect checkbox) and create a copy as well as customized/fixed version of the deactivated BR. That way you will not have troubles with the next Upgrade.

The downside to this approach is that you have no knowledge of whether ServiceNow has updated the disabled BR. Maybe ServiceNow solved exactly the problem you had yourself.

At the end there is not the perfect solution and you have to decide which way to go.

In your case specifically, "Approach 2" should be good for you.

Mark my answer correct & Helpful, if Applicable.

Thanks,
Sandeep

Community Alums
Not applicable

Hi @Bhavana Reddy ,

Any update to this ?Any follow-up required? if not

Kindly mark the answer as Correct & Helpful both such that others can get help.

Thanks,
Sandeep

Harneet Sital
Mega Sage
Mega Sage

Hi Bhavana, 

I would recommend you go with approach 1 here as ServiceNow recommends updating the OOTB components if a change is needed so you can review the changes when an upgrade is happening and there is a change on the same BR you can merge the changes. If you go with approach 2, you have made a copy of the BR and with the upgrade, you are bound to forget to look at the custom BR and you may miss the new features applied on the BR. 

Here is ServiceNow confirming the same approach when you are in this deliemma 

find_real_file.png

Instance Customization FAQ and Guidelines

https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB0553407

What are the best practices for customization?

https://www.servicenow.com/content/dam/servicenow-assets/public/en-us/doc-type/success/quick-answer/...

 

If the answer has helped you, please mark the answer correct/helpful. Thank you.

-Harneet
ServiceNow Certified Technical Architect