Implications if I change install status values in Business Application form

dvass0107
Tera Contributor

Hi All,

I need your opinion, if I change install status dropdown values in Business Application form as below, will it change the across CMDB tables whereever Install status is used?

What are the implications?

Install StatusChanges wantedDescription
ImplementingPendingNot currently deployed or used in our production environment, and/or are getting ready to be implemented. This status will also be used for those items that we are evaluating (e.g., demo or POC). 
In ProductionActive - InvestingCurrently deployed or used in our production environment which have no plans to being retired
Under evaluationActive - Deprecating Currently deployed or used in our production environment which have  plans to be retire in the future
RetiredRetiredFormerly deployed or used in our production environment, but are no longer being used. 
Pilot/ cancelledCancelledPreviously pending reviewed/considered technologies but were never placed into production for broad use
1 ACCEPTED SOLUTION

AJ-TechTrek
Giga Sage
Giga Sage

Hi @dvass0107 ,

 

1. How Install status Works in ServiceNow
* Field: install_status (dictionary defined on cmdb_ci).
* Type: Choice field (shared across all CI classes inheriting from cmdb_ci).
* Scope: Global — meaning any change to the choice list (labels or values) applies across ALL CMDB tables that inherit from cmdb_ci.
* Usage:
* Discovery uses it (Active, Retired).
* CMDB Health depends on it.
* Workflows, lifecycle management, and integrations often key off it.

 

2. If You Change the Values as Proposed
Your mapping proposal:

 

Current New Description
Implementing Pending Pre-production / demo / POC
In Production Active – Investing Currently in production, no retirement planned
Under evaluation Active – Deprecating In production, but planned for retirement
Retired Retired No longer used
Pilot / Cancelled Cancelled Never went into production

 

Implications:
1. All CMDB Classes Affected
Every table that inherits from cmdb_ci (servers, databases, network gear, applications, etc.) will show your new choice labels.


2. Discovery & Integrations Impact
* Discovery usually sets install_status → e.g., Active or Retired.
* If you rename "In Production → Active - Investing", Discovery might not recognize the mapping unless you keep the underlying choice values the same.


3. Workflows / Scripts / Reports
* If someone wrote scripts like if (ci.install_status == 1) or filtering reports by In Production, your renaming may break them.
* Anything hard-coded to text labels will definitely break.
* Anything using choice value (1, 6, 7, etc.) will still work.


4. CMDB Health Dashboard
* It classifies CIs based on Install Status (e.g., Active vs Retired).
* You may need to reconfigure CMDB Health settings if you deviate from OOB labels.

 

3. Best Practices / Recommendations


Do NOT change OOB values directly unless absolutely necessary.
Instead:
* Keep OOB values (In Production, Retired, etc.) untouched.
* Add custom choice labels or use choice overrides at the Business Application form level if you need user-friendly names.
* Alternatively, use UI Policy or Dictionary Override so Business Application users see "Active – Investing" but the underlying system value stays In Production.
If you must change:
* Ensure choice values (integers like 1, 2, 3, …) remain unchanged.
* Only change the labels.
* Do a search across scripts, reports, Discovery patterns for "In Production" / "Retired" / etc. to ensure nothing breaks.


Document the changes clearly for all downstream consumers of CMDB (Ops, ITAM, Discovery, APM, etc.).

 

Recommended Approach
1. Leave OOB Install Status as-is.
2. Use a business-friendly field (e.g., u_business_status) on Business Application for "Active - Investing", "Active - Deprecating", etc.
3. Map your new field to OOB Install Status via Business Rules.
This way, you don’t break Discovery, CMDB Health, or integrations, but still give business users the statuses they want.

 

Please appreciate the efforts of community contributors by marking appropriate response as Mark my Answer Helpful or Accept Solution this may help other community users to follow correct solution in future.
 

Thank You
AJ - TechTrek with AJ - ITOM Trainer
LinkedIn:- https://www.linkedin.com/in/ajay-kumar-66a91385/
YouTube:- https://www.youtube.com/@learnitomwithaj
Topmate:- https://topmate.io/aj_techtrekwithaj (Connect for 1-1 Session)
ServiceNow Community MVP 2025

View solution in original post

4 REPLIES 4

AJ-TechTrek
Giga Sage
Giga Sage

Hi @dvass0107 ,

 

1. How Install status Works in ServiceNow
* Field: install_status (dictionary defined on cmdb_ci).
* Type: Choice field (shared across all CI classes inheriting from cmdb_ci).
* Scope: Global — meaning any change to the choice list (labels or values) applies across ALL CMDB tables that inherit from cmdb_ci.
* Usage:
* Discovery uses it (Active, Retired).
* CMDB Health depends on it.
* Workflows, lifecycle management, and integrations often key off it.

 

2. If You Change the Values as Proposed
Your mapping proposal:

 

Current New Description
Implementing Pending Pre-production / demo / POC
In Production Active – Investing Currently in production, no retirement planned
Under evaluation Active – Deprecating In production, but planned for retirement
Retired Retired No longer used
Pilot / Cancelled Cancelled Never went into production

 

Implications:
1. All CMDB Classes Affected
Every table that inherits from cmdb_ci (servers, databases, network gear, applications, etc.) will show your new choice labels.


2. Discovery & Integrations Impact
* Discovery usually sets install_status → e.g., Active or Retired.
* If you rename "In Production → Active - Investing", Discovery might not recognize the mapping unless you keep the underlying choice values the same.


3. Workflows / Scripts / Reports
* If someone wrote scripts like if (ci.install_status == 1) or filtering reports by In Production, your renaming may break them.
* Anything hard-coded to text labels will definitely break.
* Anything using choice value (1, 6, 7, etc.) will still work.


4. CMDB Health Dashboard
* It classifies CIs based on Install Status (e.g., Active vs Retired).
* You may need to reconfigure CMDB Health settings if you deviate from OOB labels.

 

3. Best Practices / Recommendations


Do NOT change OOB values directly unless absolutely necessary.
Instead:
* Keep OOB values (In Production, Retired, etc.) untouched.
* Add custom choice labels or use choice overrides at the Business Application form level if you need user-friendly names.
* Alternatively, use UI Policy or Dictionary Override so Business Application users see "Active – Investing" but the underlying system value stays In Production.
If you must change:
* Ensure choice values (integers like 1, 2, 3, …) remain unchanged.
* Only change the labels.
* Do a search across scripts, reports, Discovery patterns for "In Production" / "Retired" / etc. to ensure nothing breaks.


Document the changes clearly for all downstream consumers of CMDB (Ops, ITAM, Discovery, APM, etc.).

 

Recommended Approach
1. Leave OOB Install Status as-is.
2. Use a business-friendly field (e.g., u_business_status) on Business Application for "Active - Investing", "Active - Deprecating", etc.
3. Map your new field to OOB Install Status via Business Rules.
This way, you don’t break Discovery, CMDB Health, or integrations, but still give business users the statuses they want.

 

Please appreciate the efforts of community contributors by marking appropriate response as Mark my Answer Helpful or Accept Solution this may help other community users to follow correct solution in future.
 

Thank You
AJ - TechTrek with AJ - ITOM Trainer
LinkedIn:- https://www.linkedin.com/in/ajay-kumar-66a91385/
YouTube:- https://www.youtube.com/@learnitomwithaj
Topmate:- https://topmate.io/aj_techtrekwithaj (Connect for 1-1 Session)
ServiceNow Community MVP 2025

Hi AJ,

Thanks for giving the recommended approach, customer is insisting on changing the dropdowns and its order also, so I will create new one and map them to Install Status field.

 

Regards,

Srinivas

Dr Atul G- LNG
Tera Patron
Tera Patron

Hi @dvass0107 

I wouldn’t recommend making changes directly. The reason is that there could be flows or business rules associated with the “On Install” status, and changing it might cause unexpected behavior.

Instead, you can just change the label name so that front-end users see what you want, while the backend retains the OOTB values. This approach will achieve your purpose safely.

*************************************************************************************************************
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.

Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]

****************************************************************************************************************

Dr Atul,

Thank you for your valuable suggetions

 

Regards,

Srinivas