Here's my test set up:
CoreBusinessRules.xml
Code: Select all
<Instance>
<Name>MyValidationTest</Name>
<BusinessRule>ValidationTest</BusinessRule>
<BusinessObjectContext>Order</BusinessObjectContext>
<Persist>False</Persist>
<HideFromUser>False</HideFromUser>
<SaveValidationInstance />
<ExcludeIfTemplate />
<InputList>
<Input>
<Order>0</Order>
<Source>IsRush</Source>
</Input>
</InputList>
</Instance>
Code: Select all
internal class ValidationTest : SoftPro.BusinessRules.Base.BusinessRuleBase
{
public ValidationError ExecuteImpl(InputParameterHandle<bool> isRushOrder)
{
return null;
}
}
I set a breakpoint set on ExecuteImpl(). I open an order, check the "Rush order" field on the Express Order Entry screen and save. My custom rule is called. Great! Order is still open, I uncheck the "Rush order" field and save again. Custom rule is not called. Why?!