PCdirector, that is an interesting way of accomplishing said routing. I'm assuming you made it a required field by using modifier on the window? Otherwise, you would have to get a product called "Consulting Toolkit" from Willoware. They have a feature in the toolkit called "Virtual triggers" and they can write triggers to make certain fields required, or hide other fields. I was thinking it would also be useful for defaulting the site ID, since it's very annoying you have to select the site ID on each line if you're doing non-inventoried requisitions.
So, this is what I've learned after doing a few implementations now:
-Department routing is best handled by defining the requesters and the approvers. If you have only 20-30 people who will be using workflow, it's manageable. If you have hundreds of people, FORGET about that option. Here's how it works
-Add workflow step, with condition that says "when requested by = <username>" and then in the approval routing, add that user's manager
-You can add multiple users, just separate each user with an OR
-You CAN use "And" as well as "OR" in the same condition, but you need to specify it for EVERY person, so it looks like this:
WHEN requestedby = rklaproth AND documentamount < 1000 OR
requestedby = bbucher AND documentamount < 1000 OR
requestedby = jsmith AND documentamount < 1000
You can see how that can be a pain if you have a lot of people, but that's the only way I can see making it happen unless you do what PCdirector said and have department be a required field. But what if the user keys their department in wrong? Then we have other issues right?
Also, here are some other nuggets. If you want the manager to approve ALL purchases below $1000 but you STILL want it to go the CFO if it's greater then 1000, you DO NOT want to put the < 1000 in that first condition - you will have NO dollar amounts in the first condition. We always want the users manager to approve, regardless of $ amount...
So for CFO approval it would look more like this
WHEN requestedby = rklaproth OR requestedby = bbucher OR requestedby = jsmith
Route to: Manager
Then you will add another condition UNDER that one (make sure it says "Follows") and you will say:
WHEN requestedby = rklaproth AND amount >= 1000 OR requestedby = bbucher AND amount >= 1000 OR requestedby = jsmith AND amount >= 1000
Route to: CFO
So this way, in that example, everything goes to the manager first, and if it's under $1000 that's the only approval needed, but if it's over $1000 it will also require CFO approval.
I have yet to implement hierarchal approval just because most client's AD is a mess and IT does not want the burden of maintaining the purchase req system. :)
However, I can say that it will work if all setup correctly you do it like this:
NO CONDITION - Route to Manager in AD
Add a step below it for CFO
WHERE DocumentAmount >=1000
ROUTE TO: Skip 1 level manager (or if CFO is 2 levels above, skip 2 levels.. that's the key you have to know how many levels above that manager is, and if the hiearchy is not setup right it WONT work).
Rob