A
Ancient Brit
I've checked the FAQ and I can't find anything that addresses my particular
challenge, so my apologies if this does turn out to be a commonly asked
question.
I've been given an MSP2003 file and asked to create a tracking Gantt view
that can be updated quickly and as required. I'm not an MSP guru but I have a
programming background and I like a challenge
The view has to consist of all milestones (which if that was all it was,
filtering would do it nicely) *and* any and all tasks whose ID appears in the
predecessor cell for each milestone. While each related task ID appears in
the filtered view (in the predecessor cell for the milestone), the ID gives
no indication of the nature of the task, and an appended lookup table would
not be practical (some 400 tasks).
I can't find a simple filtering solution but I can see a possible route
using a macro, and I'd be grateful for constructive feedback on the approach
(or a polite vector if the question's been answered a gazillion times already
).
I'm considering creating an extra column based on Flag1 with content Yes/No
for simplicity. This could be part of the macro but it might complicate
things a little (need to test whether the column already exists, if so is the
content only Yes/No or does it have some other content and how to handle that
as an error, otherwise set all entries to default No).
Stepping through the project, each task is examined.
If it is a milestone, Flag1 is set to Yes.
Then the predecessor entry for that task is examined.
If the cell is empty, the process continues with the next task.
If not empty, the macro will step through the list of IDs in the cell, using
each ID to address the appropriate task and set Flag1 for the task to Yes.
After the last entry in the cell, the macro moves on to the next task, until
the end of the project is reached.
A possible complication is the existence of an embedded project from another
user, where the ID sequence of the host project is interrupted, starts from 1
again for the duration of the embedded project, and then continues where it
left off. This could make identifying the predecessor tasks given an ID a
little difficult. I'm hoping the IDs for the embedded project have some
identifier that distinguishes them!
Finally, I have already identified a way to filter on Flag1=Yes. The
resulting view shows all milestones and all related tasks that are not
milestones, in ID sequence.
Grateful for any feedback.
Peter
challenge, so my apologies if this does turn out to be a commonly asked
question.
I've been given an MSP2003 file and asked to create a tracking Gantt view
that can be updated quickly and as required. I'm not an MSP guru but I have a
programming background and I like a challenge
The view has to consist of all milestones (which if that was all it was,
filtering would do it nicely) *and* any and all tasks whose ID appears in the
predecessor cell for each milestone. While each related task ID appears in
the filtered view (in the predecessor cell for the milestone), the ID gives
no indication of the nature of the task, and an appended lookup table would
not be practical (some 400 tasks).
I can't find a simple filtering solution but I can see a possible route
using a macro, and I'd be grateful for constructive feedback on the approach
(or a polite vector if the question's been answered a gazillion times already
).
I'm considering creating an extra column based on Flag1 with content Yes/No
for simplicity. This could be part of the macro but it might complicate
things a little (need to test whether the column already exists, if so is the
content only Yes/No or does it have some other content and how to handle that
as an error, otherwise set all entries to default No).
Stepping through the project, each task is examined.
If it is a milestone, Flag1 is set to Yes.
Then the predecessor entry for that task is examined.
If the cell is empty, the process continues with the next task.
If not empty, the macro will step through the list of IDs in the cell, using
each ID to address the appropriate task and set Flag1 for the task to Yes.
After the last entry in the cell, the macro moves on to the next task, until
the end of the project is reached.
A possible complication is the existence of an embedded project from another
user, where the ID sequence of the host project is interrupted, starts from 1
again for the duration of the embedded project, and then continues where it
left off. This could make identifying the predecessor tasks given an ID a
little difficult. I'm hoping the IDs for the embedded project have some
identifier that distinguishes them!
Finally, I have already identified a way to filter on Flag1=Yes. The
resulting view shows all milestones and all related tasks that are not
milestones, in ID sequence.
Grateful for any feedback.
Peter