In this business scenario you have a requirement to copy the field 'Standard Cost' from the product entity record on to the 'Quote Product' record whenever the 'Quote Product' is created. This is primarily used for historical reporting purposes where a business user needs to compare the standard cost at that point in time with the Price Per Unit on the actual Quote Product.
North52 Decision Suite Solution
The North52 Decision Suite solution works like this,
- We create a formula of type 'Save - To Current Record' for the 'Quote Product' entity
- The formula will only execute when the record gets created
- It will lookup the 'Standard Cost' field on the product entity using the FindValue() function
- It will place the result into a custom field on the 'Quote Product' called 'Standard Cost'
North52 Decision Suite Steps
- Create a custom field called 'Standard Cost' on the Quote Product entity
- Create a new formula of type 'Save - To Current Record'
- Set the Mode to 'Server Side'
- Set the Event to 'Create'
- Set the Source Entity to 'Quote Product'
- Set the Target Property to 'Standard Cost'
- Copy & paste the formula below into the formula description field & click save
- You are ready to test
if(ContainsData([quotedetail.productid]), FindValue('product', 'productid',[quotedetail.productid],'standardcost'), 'NoOp')
Wizard - FindValue
Please see below the wizard you can use to create the FindValue() function call used in this formula.
Note 1: Equals Value, you will need to go the Explore Tab > Entites > Quote Product > existing product. (value).
Wizard - ContainsData
Please see below the wizard you can use to create the ContainsData() function call used in this formula.
Note 1:The Fields you will need to go the Explore Tab > Entities > Quote Product > existing product (value).
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!