In this scenario the business requirement is to prevent notes being changed or updated on a Case after it has been closed. New notes can be added, but old notes cannot be updated.
North52 Decision Suite Solution
The North52 Decision Suite solution works like this,
- A Formula of type 'Validation' is created on the Note entity
- Event is set to 'Update' (formula will only trigger on updates, not on newly created notes)
- Source Property is set to 'All Properties'
Note: You can find the Case Status Reason Codes via the Source Tab. Expand Related (N:1) for Incident and select Attributes and then Status Reason. In this example we will prevent changes to the notes if the Case is marked as either Cancelled, Problem Solved or Information Provided.
North52 Decision Suite Steps
The following set of steps outline how to create this Formula
- Create a formula of type 'Validation' on the Notes entity
- Set the Source Properties as 'All Properties'
- Copy and paste the formula below into the formula canvas
- Save and test!
If([annotation.objecttypecode] = 'incident' and In([annotation.objectid.statuscode.?], 6, 1000, 5), ThrowError('This Case is closed - you must reopen it before attempting to update any notes!'), 'NoOp' )
Wizard - ThrowError
Please see below the wizard you can use to create the ThrowError() function call used in this formula.
Note you will need to either type or paste in the following.
This Case is closed - you must reopen it before attempting to update any notes!
Did you know?
xCache helps you manage environment specific configuration
North52's Decision Suite component xCache allows you to set up environment specific data to allow you to use different values for different instances. Your advanced business rules logic could be the same, however you need to use specific reference values for a particular instance.
For example, credentials for a web service used in your Formula - you will likely use different keys/URLs for your Dev, Test and Production instances. Store these in xCache and let the North52 business rules engine apply the correct ones at runtime!