Miles Goodchild

Forum Replies Created

Viewing 15 posts - 1 through 15 (of 20 total)
  • Author
    Posts
  • in reply to: Missed Task Metrics for DCMA #535782

    I am not aware of the DCMA approach however a PM who keeps their plan alive and aligned with the reality that they are currently experiencing is a person to be treasured – it is a shame if some metric is designed to pin a plan to the page and never deviate from it even when you are. Are they constantly over running their estimates? If so consider doing some root cause analysis with them to help them build more realistic plans. IF they’re winning on some and loosing on others then surely this is about right?
    Or am I missing something important?

    in reply to: The MPUG Discussion Forum is Back! #535780

    I see we still have the amazing spam issue 🙁

    I solved it, so I thought I would share it here 🙂 Using VBA and marking the tasks (so you need to set task formatting for marked tasks to see the results):

    Sub find_links_outside_block()
    'Produce by Miles Goodchld 26th Aug 2022
    
    Dim t As Task
    Dim T_pred As Task
    Dim T_succ As Task
    Dim Block_start As Integer
    Dim Block_end As Integer
    Dim Choice As Integer
    
    Block_start = 15
    Block_end = 23
    Choice = 3  '1 = predecessor only, 2=successort only, 3 = both2
    
    Block_start = InputBox("enter the row number of the start of your block", "finding links outside a block of tasks")
    Block_end = InputBox("enter the row number of the end of your block", "finding links outside a block of tasks")
    Choice = InputBox("Select what you want to hightlight:" & vbCrLf & "1 = Only Predesessors" & vbCrLf & "2 = Only Successors" & vbCrLf & "3 = Both", "finding links outside a bloxk of tasks")
    
    For Each t In ActiveProject.Tasks
        If Not t Is Nothing Then
        t.Marked = False
            If t.ID >= Block_start And t.ID <= Block_end Then
                If Choice = 1 Or Choice = 3 Then
                For Each T_pred In t.PredecessorTasks
                    If T_pred.ID < Block_start Or T_pred.ID > Block_end Then t.Marked = True
                Next T_pred
                End If
                If Choice = 2 Or Choice = 3 Then
                For Each T_succ In t.SuccessorTasks
                    If T_succ.ID < Block_start Or T_succ.ID > Block_end Then t.Marked = True
                Next T_succ
                End If
            Else
                'do nothing as outside the block
            End If
        Else
            'do nothing as T is nothing
        End If
    
    Next t
    in reply to: Summary Status #535488

    I don’t see this behaviour in all instances.
    I see it doing this when the sub-tasks in the past have 0% complete. In this instance, there is no work which I think is the key aspect. I suspect this is because the summary task has to deal with summarising milestones without work?
    When any one of the late sub tasks has work assigned – i.e. % complete > 0 the summary shows late as you would expect.

    I would limit your analysis to tasks, get these right and the summaries will follow 🙂

    in reply to: Setting up a task as a buffer #534823

    As David Simon suggests, I always include a contingency or buffer task in the plan as a task. This has a number of benefits:
    1) It makes the contingency clear where as hiding it distributed across tasks is a more covert method and leads to the tasks tending to expand to take their “allotted” time as people forget about the hidden contingency.
    2) Making the contingency clear allows the team to have conversations to decide to consciously consume some of their contingency vs finding faster ways to protect the critical path.
    3) it is much easier to show the contingency and impact of not needing to use us on the POAP – you can colour it a different colour so that it stands out and the audience can see how not needing to consume it could save time on the critical path.
    4) You can elect to hold different lumps of contingency at different points in the plan, maybe where the most risk lies.
    Regards
    Miles

    I have done exactly this, and I outputted to Excel to do so using a pivot table.

    The tricky thing with MSP is that Text1 on your Task side is different to the Text1 on the resource side. So if you were to look at the Resource usage (which would seem to be a sensible place to start) this view can’t “see” the Text1 which you used for the Work Packages.

    SummaryPro

    I am not seeing this. When I set up a resource (Fred) with max allocation in the resource sheet of 75% and apply Fred to a task he is automatically applied at 75% and the work is 3.75d on a 5 d task.

    If I then force Fred to 100% on that task, the task remains at 5d, and the work goes to 5d however Fred is shown as overallocated.

    If I set the task type to fixed work and re-apply Fred to the task (i.e take him off and then put him back on) the work stays at 5d and the duration goes to 6.67 days and his overallocation goes away.

    Maybe have a play with the Task type? Or consider what you’re attempting to have MSP do when you manually overallocated the resource to the task = what would be a good outcome for you in this situation?

    in reply to: Use of Verbs and Nouns #533831

    I completely agree with Ben; the only thing I would add is to expand on the concept of viewing the tasks in isolation; always include a reference to the summary line or “thing” that is being worked on in the task name. For instance, rather than having just “Draft” and “Review” under the heading “Detailed Specification” have “Draft Detailed Spec” and “Review (1) of Detailed Spec”. In this way when you are looking at a filtered list or the task in the Resource Usage view, you don’t need to wonder which document is being drafted or which review the document is undergoing.
    This can be a bit tedious, however it is possible to automate it in Excel by copying and pasting in and out (watch out for all the summary lines suddenly becoming manually scheduled).

    in reply to: Filter to show Summary task #533830

    I’ll try again with the image!
    Complex filter

    in reply to: Filter to show Summary task #533829

    Is this what you need?
    https://imgur.com/VingRdzComplex filter
    The filter is:
    (% complete < 100%) OR (% complete = 100% AND summary = yes)
    To insert the OR between the two sets of conditions, you simply select the AND/OR column and enter OR and then select the row below to start entering the second set of conditions.

    in reply to: Non Working Days Different Colours #533827

    If you apply the holiday to the “standard” calendar, it will display on the Gantt chart in the same colour as the weekends. However, it will only do this when there is a task – making the change to a blank plan doesn’t display the holiday; then when you add the 1st task, the holiday is displayed.

    From the title of the linked page I assume you are attempting to export the notes field from MS Project in bulk? I used a different method using XML. The VBA shown below can be done a lot better without using the “select” approach however I was younger and less experienced then 🙂

    1) Open the MSP file and save as .XML type
    2) In Excel display the Developer ribbon and select Developer / XML / Import
    3) Select the XML file and import
    3) Close the XML file
    4) Trigger the macro below to ensure that each task has it’s notes aligned with it.

    Sub Align_and_sort_by_ID()
    ' Produce by Miles Goodchild, MGC Limited.
    
        'find the last row used and cal it LRall
        Dim LRall As Long
        LRall = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
         
            'select C3 to the end and move it up 1 row to align notes with task name
        Range("C3:C" & LRall).Select
        Selection.Cut
        Range("C2").Select
        ActiveSheet.Paste
        'select task names and notes (B2:last row) to move up to align with task ID
        Range("B3:C" & LRall).Select
        Selection.Cut
        Range("B2").Select
        ActiveSheet.Paste
        'sort on ID to remove all the spaces
        Range("A2:C" & LRall).Select
        ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Add _
            Key:=Range("Table1[ns1:ID]"), SortOn:=xlSortOnValues, Order:=xlAscending _
            , DataOption:=xlSortNormal
        With ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With   
    End Sub

    If at any point you trigger the macro twice, you will need to refresh the data as you will have deleted the top row by accident.

    If a cell displays an infinite number of hash signs, hit F2 to see the contents (it’s too long for excel to display)

    Note you can filter on C:C to remove blanks to display only tasks with Notes.

    You can go on to use this list to produce a report which shows the critical path tasks with their notes or maybe comments about tasks which are due to finish in the next month etc.

    in reply to: How to make resource graph for a whole group? #483976

    I don’t think this is possible. I tend to take the data out of MS Project and into Excel to do this sort of analysis as a Pivot table grouped by month and resource group will quickly give me what I need. It seems to be an oversight by MS as this is something that I have been trying to do for ages and I can’t be the only one who would like to be able to review across a group 🙂
    You can of course have a split-screen with the graph at the bottom and the people at the top and select those who are part of a group and then be able to scroll through the group which could give a quick view but it isn’t quite what you’re after I suspect 🙂

    in reply to: Filtering Work By Year #483975

    The issue here is that each resource only appears once. IF you wanted to have a “year” group and then all the resources being used in that year showing under that group this would violate this rule as a resource used in two years would need to be shown twice which project can not do.
    I have tried to find a way to filter the list however setting up a custom field with the formula year([start]) in the Gantt side doesn’t show up in the resource usage as this is concerned with the resource data and the new custom fields relates to the task side of things. Similarly setting up a custom field in the resource side only looks at the resource data and doesn’t display information on the task (i.e. start and finish dates). A split view doesn’t help (though this is normally an excellent way to see both types of data at the same time).
    The only thing I can suggest is copying the data into Excel and filtering it there.

    in reply to: Assigning resources #483974

    Hi, this is not a great idea as
    1) Project “wants” to sum up from the lower levels
    2) It is unlikely that everyone assigned to the summary task will be working at the same allocation level on all the sub-tasks which will result in people appearing to be busier than they really are.
    3) When someone puts a sub-task summary in and then applies resources to this it will be summed up into the master summary line which may not be visible and will again cause people to look over-allocated.
    4) I don’t know what impact this would have on levelling if you chose to do it but I would expect the results to be sub-optimal.

    What is driving this decision? Is it the ease of only having to add the resources once and all the sub tasks have resources “applied”? If so remember that you can copy resources down using <CTRL><D>…

Viewing 15 posts - 1 through 15 (of 20 total)