CRM 2013 – Business Rules work in pairs because the condition is AND and not IF

CRM 2013 brought in a new features called business rules, if you want to read more about business rules click on one the articles below

CRM 2013: Understanding Portable Business Logic

Become a Pseudo-Developer with Business Rules in CRM 2013

Business Rules in Microsoft Dynamics CRM 2013

A quick summary of business rules is they allow you to do client side validation without using Javascript, which allows non developers to create, edit and maintain them.

As an added bonus they also work on CRM tablet.

In some ways they are like mini workflow, except workflows run at entity level, Business rules run at field level and are triggered by field events.

Business rules are easy to create and they have two parts

Condition (The IF)

Action  (error message, set field value, enable/disable field, show/hide field or section, set requirement level of field)

Here is a screenshot of a business rule

Business Rules 1

  • Validate data and show error message
  • Set field value
  • Enable or disable field
  • Show or Hide a field
  • Set field requirement levels

Limitation

When creating a business rule to hide a field/enable a field, you test it and and it works, suddenly you realize the field is not being enable/disabled, the opposite action does not occur.

The reason for this and the reason business rules currently work in pairs because business rules condition logic only has AND logic and not IF.   This may change in the future but it’s a limitation at the moment, which can catch people out.

An example is if you created business rule to check if Account Name has a value, when the field contained a value you could show the Account number field

If the person then deleted value in the account name the account number field would still be visible because it had not been hidden again

Business Rules 1

 

In this case you would need to write another business rule to hide the Account Number if the Account Name doesn’t contain data.

 

So remember in most cases you will need a pair of business rules to undo the actions of another business rule