I'm not exactly sure how to approach this problem. I am hoping it can be solved with calculated columns or thru a workflow. If it can only be accomplished with some advanced technique beyond the browser or SharePoint designer, I would appreciate being told that too.

My custom task list has about 30 list items. The tasks span about a 3 month time period. Predecessors are set on the tasks. They all have a start date and a due date. I have a calculated Duration column. There is a % complete or status column that I'd like to take into consideration so that completed items are not updated with a new start or due date.

I envision that if the start date of an item in the task list is changed. all items not completed who are predecessors would be updated with new start and due dates of the same duration. (It would also be ok if the updates had to be based on the due date instead of the start date if that made it easier to accomplish this need).

How can this need be accomplished? Thank you in advance.

2 Answers 2


I think an event receiver with an itemUpdated handler attached to your task list is the way to go.

Here's a link on the MSDN that'll get you started if you are new to event receivers.

  • Thank you for the reply and link. event receivers and visual studio are beyond my current knowledge - but I appreciate the advice.
    – Sue White
    Jan 17, 2014 at 1:31
  • @SWhite always remember to upvote answers if you find them of any value
    – MdMazzotti
    Jan 17, 2014 at 9:28
  • I'm not able to upvote, but I do believe your reply was most useful. I've read that SP2013 now provides capabilities to help manage projects that go beyond document management, so I will see if this is one of those capabilties.
    – Sue White
    Jan 22, 2014 at 2:09

I believe this could be done in a SPD workflow. I'm unsure how your users are changing the start date on their tasks but I’m assuming it triggers the "when task complete event" in the task behaviour. I'd compare the current start date to the old start date (could be saved into a variable at task creation) if they are not equal then use "Update list Item". Change the list to "Association: Task List" add the field "Start Date" and set it to whatever it should be changed to (Current Task: Start Date?). Then under "find the list item" select "predecessors" as the field and then.. erm.. this form as the value? I'm not sure what value would belong in here, I’d assume either Current Task: ID or Current Task: Task Name.

I can't currently do any testing on this approach but It should be doable, or at least give you a path to look into.

Good Luck!

  • thank you for the reply. so far it is just a task list and the user manually changes the start date. It is tedious for them to have to manually change all of them - hence my hope for an automated solution. I appreciate you pointing me further down the path.
    – Sue White
    Jan 17, 2014 at 1:33
  • @Ryan The problem is the way the sub tasks are saved. If there are more than one, they appear as a semicolon separated string. If you try to lookup a task by ID, based on the value saved in the Predecessors field, you'll only get the first one listed. Also, you have a sort of recursion issue to take into account (eg. what happens if a subtask has subtasks itself?)
    – MdMazzotti
    Jan 17, 2014 at 9:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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