Why is the OOTB Business Rule on cmdb_ci_server triggered on update instead of insert?

ahmadfaruqu
Tera Contributor

Hi,

I noticed an out-of-the-box (OOTB) Business Rule on the `cmdb_ci_server` table named **"Update Asset fields on change"**. This rule is triggered on update and is applied specifically when the **Asset field** is changed.

I am trying to understand the reasoning behind triggering this BR on **update** instead of **insert**. From my understanding, this kind of logic should typically run during insert when the CI is first linked to an asset.

Is there a specific scenario or reason for applying this BR on change rather than on insert?

Thanks in advance.

ahmadfaruqu_0-1750921971107.png

 

2 REPLIES 2

Maik Skoddow
Tera Patron
Tera Patron

Hi @ahmadfaruqu 

The primary purpose of the rule is to keep CI and Asset data in sync when the relationship between them changes. Triggering on update ensures that whenever the Asset reference is modified (added, changed, or even cleared), the relevant fields on the CI are updated to reflect the current state of the associated Asset. 

On the other side: When a CI is first inserted, it may or may not have the Asset reference populated immediately. In many ServiceNow implementations, the Asset linkage can be established after the initial CI creation, either manually, via discovery, or through integration processes. Therefore, running this Business Rule on insert would not always be effective, as the Asset field might be empty at that moment.

 

Maik

Hi Maik,

 

Thank you so much for the detailed explanation — that makes a lot of sense!

 

You're absolutely right, especially in cases where the CI is created first and the Asset reference is added later through manual updates, discovery, or integrations. I now understand why the rule is focused on the update action — to ensure CI fields remain in sync after the asset link is established.

 

Earlier, I was thinking of enabling this rule for both insert and update to also cover scenarios where the asset is set at the time of CI creation. But based on your point, that may not always be effective since the asset field can be blank at insert.

 

Thanks again for the clarity!

 

Best regards,

Ahmad Faruqui