Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am trying to create a workflow on SharePoint 2007 that should go like so:

  1. User adds a new item in the "Faults" list. When creating it, he ticks the boxes for whatever departments needs to address the fault.

  2. The appointed representative of each selected department is assigned a task to check the new item.

  3. The represenative marks the task as complete.

  4. All tasks are completed and the workflow is finished.

The problem: if I create a workflow in SharePoint Designer 2007 and create multiple steps checking to see "if X department was ticked then assign task to user", it will wait until the first department marks their task as complete before it assigns a task to the next department. I need all departments to be assigned the task at the same time.

Other options I have considered:

  • If department X was ticked then add the representatives' username to a variable named "userX". Repeat with department Y and variable "userY", and then Z with variable "userZ". Finally, assign a task to userX, userY and userZ. I had hoped it would ignore the blank variables, but instead it assigns a task to nobody and the workflow never finishes.

  • Having the user assign the item to users instead of departments is not possible since they can't be expected to know the appointed representatives of every department.

  • I can create a task through the "Create List Item" action, but the workflow is marked finished after creating the tasks, even through the tasks are not complete.

Does anyone have any ideas?

share|improve this question
    
This really belongs on SharePointOverflow.com –  Muhimbi Jul 8 '10 at 15:24
add comment

1 Answer

up vote 0 down vote accepted

If anyone is interested, here is the solution I eventually used:

First step of the workflow:

if [department checkboxes] contains "Department 1"
    store "user1" in [Variable:assignedTo]

One step each for other departments:

if [department checkboxes] contains "Department X"
and [Variable:assignedTo] is empty
    store "userX" in [Variable:assignedTo]
else if [department checkboxes] contains "Department X"
and [Variable:assignedTo] is not empty
    store "[Variable:assignedTo]; userX" in [Variable:assignedTo]

And finally,

assign "Task" to [Variable:assignedTo]

Hope this helps somebody.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.