Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Unifying different mistyped resource names in one resource

Status
Not open for further replies.

cris651

Technical User
Sep 12, 2011
3
IT
Hi all,
I need some help: I consolidated three MS Project 2000 files. In the .mpp file, I observed that the same human resource appears under several out-of-standard typing (i.e. "John Smith", "J. Smith" and "Smith"). I created a new, correctly named resource (Smith John) and substitute the wrong aliases with this new. But I'm not able to transfer over him the completed activities! Old aliases still appears in the wiew "Resource usage" as assigned to the activities they completed. I want to tell Project that it was "Smith John", not these other identities, to perform the completed activities!
Any idea? Thank you!
Cris
 


hi,

Bad data is a problem.

I would build a cross reference table that would be used as a lookup for ALL resource ids and have the correct id, like
[tt]
ResID Resource
J Smith John Smith
Smith John Smith
John Smith John Smith
[/tt]
and write a VBA routine to make the corrections in your project. I'd personally build the table in Excel for an easy tool.


Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 
Thank you Skip,
but - since I'm not able to even substitute IDs manually for the past activities - I would write a subsitution routine with same results as the manual operation :(
The problem is to tell Project to re-assign already performed activities.
 


I set up a project with 1 task and one resource, named Skip. This code changes the resource name, FYI.
Code:
    Dim rs As Resource
    
    For Each rs In ThisProject.Resources
        With rs
            Debug.Print .Name
            .Name = "SkipVoght"
        End With
    Next


Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 
@cris651,

Unfortunately, unless all of the actual work is assigned to the same version of "John Smith" you're out of luck. As you have already discovered, Project uses the ResourceID to keep track of resources and assignments. You may alter the name to your heart's content -- but the ID is what really drives who is assigned to ta task.

Is it possible to change the name of the resource who has actuals to the correct name and then ensure that the other tasks are re-assigned to the same resource? The only way to re-assign tasks with actual values but no remaining work loses any actual entered.

I hope this helps.
Julie
 



Hmmmmm?

I assigned Skip to a Task.

I changed Skip to SkipVoght in Resources and the resource assigned to the Task is now SkipVoght.

Via VBA, BTW.

Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 



I ran another test.
[tt]
3 tasks, each with a 'misspelled resource'
Changed the 'misspelled resource' in Resources collection
Observed that ALL 3 tasks now contain the corrected resource
[/tt]
My debug print results
[tt]
Skip Skip SkipVoght
SkipV SkipV SkipVoght
SkipVoght SkipVoght SkipVoght
[/tt]
My Test code
Code:
Sub test()
    Dim rs As Resource, res(2, 1) As String, i As Integer
    
    res(0, 0) = "Skip"
    res(1, 0) = "SkipV"
    res(2, 0) = "SkipVoght"
    res(0, 1) = "SkipVoght"
    res(1, 1) = "SkipVoght"
    res(2, 1) = "SkipVoght"
    
    For Each rs In ThisProject.Resources
        With rs
            For i = 0 To UBound(res, 1)
                If .Name = res(i, 0) Then
                    Debug.Print .Name, res(i, 0), res(i, 1)
                    .Name = res(i, 1)
                    Exit For
                End If
            Next
        End With
    Next
End Sub


Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 



So, Julie, what am I missing?

Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 


Ahhhh! I see the potential problem.

Each of my resource names as a unique ID. So now I have...
[tt]
ID Name
1 SkipVoght
2 SkipVoght
3 SkipVoght
[/tt]
If you already have resource data accumulated for and assigned to your resources, then you would need to consolidate the values, a task that I would not relish, into ONE of these IDs, and then assign THAT ID to each associated Task and finally DELETE the unused IDs, which may or may not ACTUALLY be possible

Skip,

[glasses]Just traded in my old subtlety...
for a NUANCE![tongue]
 
Hi Skip,

The issue is, as you have worked out -- is the resource ID. Project really doesn't care what you name your resource -- it is the Resource ID (resource Unique ID as well) that is the issue.

So, my suggestion to Cris651 was to try to find if the resource with Actual Work on the tasks was the same ID as other resources with Actual Work (I'd add the Actual Work field to the Resource sheet to speed this up). If all of the Actual Work belongs to one resource -- that resource needs to replace all other versions of "John Smith" on all other tasks.

Julie
 
Thank you all. @Julie: I read your message too late. In the meanwhile I replaced the assignments saying "yes" to all questions "Resource has some actual work, sure to delete it?". I had not clear if "delete it" means "remove the resource from the activity transferring the actual work to the new one" or "remove the resource from the activity and delete the actual work". Unfortunately I couldn't work on this yet, to check if I messed up everything: if so - and it will be so :( - I will do as you explained.
Cri


 
Hi Cri,

Unfortunately when you choose "yes" to "Resource has some actual work, sure to delete it" -- it deletes the actual work -- it does not transfer it to another resource.

I'm afraid it may be to late at this point.

Julie
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top