Archive for Chris G

author photo

I'm an application developer on Four51's technology team. In addition to working on a variety of features in the COS application, I appear to be the tech team's primary source of donuts and book loans. I was born and raised in upstate New York, but came to Minnesota for college and stayed, picking up a wife, a house in south Minneapolis, an adorable toddler and some cats along the way. When not at work, I enjoy the usual spectrum of geek activities - books, video games, bad TV, cooking, etc.

Advanced Technology: Approval Rules (part one)

When we added approval rules to Four51, the goal was to create a system flexible enough to support complicated business processes, while keeping simple processes simple. I think we did a pretty good job of it, but our documentation mostly covers the advanced side of the system, and can be a little overwhelming if you’re just starting and only care about the basics. So I’ve put together a brief run-through of how approval rules work and some samples. Today, I’ll go over the basics of how it all works. I’ll follow up soon with some samples and a round-up of tips, tricks and common gotchas.

The two sentence summary: At submission time, a standard buyer order can have one or more required approvals attached to it. Until all attached approvals are approved, the order can’t proceed.

That sounds obvious, but how do orders get approvals attached?

At its core the system is pretty simple–Four51 grabs the list of approval rules for the buyer company and looks at each rule on the list. If a rule applies to the submitting user, the order meets all the requirements specified in the rule and the submitting user isn’t one of the approvers, an approval is attached to the order. After the rules are processed, approving parties are notified and pending approvals appear on the order view page. When an order is approved, the process is repeated, with the list checked using the approving user instead of the original submitting user.

Eventually, the order clears the list check with no pending approvals and goes through to the seller. Alternately, the approval is declined and the seller will never see it.

In reality, it’s a little more complicated than that.

Each buyer company actually has two lists of rules, configured under Buyers->Approval Rules. There’s a parallel list and a sequential list. When an order is submitted, every rule on the parallel list is checked. The sequential list, however, is checked only until the first match is found. Because rules following a match will not be evaluated, rule order matters for the sequential list. You only need to care about which list you use if you have a workflow that requires multiple approvers or chains of approval, and I’ll get into why you may need both in a later post. If in doubt, just use the parallel list.

The biggest task in configuring approval rules is figuring out how to break your workflow down into a set of rules. I’ll walk you through this in my next post.

Chris G

VN:F [1.9.0_1079]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.0_1079]
Rating: 0 (from 0 votes)
Google Buzz

Popularity: 14%

  • Share/Bookmark