Here's another funny one:
<Task><Name>Summary3</Name><ID>102</ID><Type>2</Type><Summary>1</Summary></Task>
<Task><Name>Task1</Name><ID>103</ID><Duration>12000</Duration><ConstraintType>7</ConstraintType><ConstraintDate>20070928</ConstraintDate><Work>11400</Work><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
<Task><Name>Task2-</Name><ID>104</ID><Duration>12000</Duration><ConstraintType>7</ConstraintType><ConstraintDate>20070928</ConstraintDate><Work>1</Work><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
<Task><Name>Task3-</Name><ID>105</ID><Duration>12000</Duration><ConstraintType>7</ConstraintType><ConstraintDate>20070928</ConstraintDate><Work>1</Work><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
I'd expect the block to end on Sept. 28th, and start 25 work days earlier
(duration = 25 8h days).
However, what actually happens is
Summary: Start = Project Start Date
Task1, Start = 28. September, Finish: 1st of Nov, Constraint = start no
earlier than
Task2, Start = Project Start Date, Finish = 5th of April, constraint =
finish no earlier than
Task3, Start = Project Start Date, Finish = 5th of April, constraint =
finish no earlier than
Where oh where has the logic gone?
Swap out constraint type 7 with 3, same thing happens
If I just add a constraint of type 3 with the same end date, and no
constraint the for the underlying tasks, then all tasks start at my end
date, and the summary and task 1 have a "start no earlier constraint".
With Type 3, and no duration, I still get a "SNE" constraint on task 1, and
a MFO constraint on tasks 2 & 3.. which is still 1 task off (plus the
duration is way off now). I've tried various other things and nothing gets
me where I want to go. The thing that gets me pretty worked up is that if I
take the incorrect first task, change the contraint type, then change the
duration, I get exactly what I want, but no matter what I send via PDS, the
end result is always different from what I want.
In the end, after I don't know how many tries, I've finally achieved what I
set out to.
<Task><Name>Summary</Name><ID>112</ID><Start>20070817</Start><Finish>20070928</Finish><Duration>12000</Duration><Estimated>1</Estimated><Type>2</Type><Summary>1</Summary></Task>
<Task><Name>Task1-</Name><ID>113</ID><Work>11400</Work><Start>20070817</Start><Finish>20070928</Finish><ConstraintType>3</ConstraintType><ConstraintDate>20070928</ConstraintDate><Duration>12000</Duration><Estimated>1</Estimated><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
<Task><Name>Task2</Name><ID>114</ID><Work>1</Work><Start>20070817</Start><Finish>20070928</Finish><ConstraintType>3</ConstraintType><ConstraintDate>20070928</ConstraintDate><Duration>12000</Duration><Estimated>1</Estimated><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
<Task><Name>Task3</Name><ID>115</ID><Work>1</Work><Start>20070817</Start><Finish>20070928</Finish><ConstraintType>3</ConstraintType><ConstraintDate>20070928</ConstraintDate><Duration>12000</Duration><Estimated>1</Estimated><Type>2</Type><OutlineLevel>2</OutlineLevel></Task>
This creates a set of tasks that end on the 28th of September, start 25 work
days earlier, and have a "must finish on" constraint dated September 28th.
For your enjoyment, try leaving out either the Start and/or Finish date and
see what you get... it won't be the same anymore (logically thinking, you'd
expect the start and end date to be discarded because the start date is the
must finish on date - duration, and the finish date is the must finish on
date.
Regards
Stephan