Task splitting - a process, not a parameter?

G

G Lykos

Greetings! This is to check my understanding from observation of how task
splitting works. (1) It would appear that when a task is split, which can
only be done graphically, Project moves the work for the assigned resources
from the start of split out to the end of the split-off portion of the task
as you pull the split over. This achieves the same result as manually
zeroing out a resource's work in the middle of a task assignment and moving
it to the end. (2) Different than (for example) a delay, there is no
parameter to record a split point or duration. As a result, in order to
adjust a split, you must grab the task bar and move it, or fiddle with the
daily work assignments. Also, there isn't a parameter that can be tested to
check for a split.

Does this sound about right?

Thanks,
George
 
G

G Lykos

Jan, would you please expound upon your comment - what split values can be
read in VBA? Please offer a description of the imagined algorithm. Also,
is there a status parameter than indicates whether an assignment has been
split?

Thanks,
George
 
J

Jan De Messemaeker

Hi George,

Split Parts of a task can be read using the SplitParts method.
You can read the help through the object browser.
To help you onthe way, here is the help on the SplitParts Object (which has
a count, a start and a finish property) - go on reading I comment on
asignment splist below-

SplitPart Object, SplitParts Collection Object






Represents a task portion. The SplitPart object is a member of the
SplitParts collection.

Using the SplitPart Object

Use SplitParts(Index), where Index is the task portion index number, to
return a single SplitPart object. The following example lists the start and
finish times of each task portion of the task in the active cell.

Dim Part As Long, Portions As String

For Part = 1 To ActiveCell.Task.SplitParts.Count
With ActiveCell.Task
Portions = Portions & "Task portion " & Part & ": Start on " & _
.SplitParts(Part).Start & ", Finish on " & _
.SplitParts(Part).Finish & vbCrLf
End With
Next Part

MsgBox Portions
Using the SplitParts Collection

Use the SplitParts property to return a SplitParts collection. The following
example returns the number of task portions for each task in the active
project.

Dim T As Task

For Each T In ActiveProject.Tasks
If Not (T Is Nothing) Then
MsgBox T.Name & ": " & T.SplitParts.Count
End If

Next T
Use the Split method (Task object) to add a SplitPart object to the
SplitParts collection. (The Split method creates a split in a task.) The
following example creates a split in the task from Wednesday to Monday.

ActiveCell.Task.Split "10/1/97", "10/6/97"
-------------------------------------------------

There is no method for asignment splist but they can be discovered by
looking for zero-work periods using the timescaledata method and the
timescalevalues object.

Hope this helps,
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top