SmartForms Rule Execution in 4.7 versus Previous Versions

My client has just completed upgrading their K2 blackpearl and K2 SmartForms software from version 4.6.11 to 4.7. Here’s something I learned about how SmartForms behavior has changed in version 4’s final minor release.

Given a series of rule actions as follows:

  1. Open a subview
  2. Refresh a list
  3. Call a SmartObject
  4. Execute another rule

In SmartForms version 4.6.11, after the subview in action 1 opened, execution of the remaining actions would suspend until the subview closed; actions 2, 3 and 4 would fire afterwards.

But in SmartForms version 4.7, all actions fire without regard to the state of the subview opened in action 1. That is, the list refresh in action 2 immediately followed the opening of the subview in action 1, and so on.

Unfortunately for my client, this meant that users were seeing all kinds of weirdness in conjunction with the subview opening.

The solution — I found two instances of this on the same form — is pretty simple. I created a rule to capture the “When a subview is closing” event, and re-created actions 2 through 4 there. Finally, I removed actions 2 through 4 from the original rule.

There was something about rule execution in versions prior to 4.7 that allowed SmartForms builders to take this lazy approach… but it’s caught up with them.

SmartForms Rule Execution in 4.7 versus Previous Versions

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s