Project 2002 OLE DB Provider - Unique Task IDs for Sub Projects

H

harvey

I am using the OLE DB provider to extract task data from a large
project that contains multiple sub projects. I have figured out the
solution to every problem except one ... I have not been able to
determine how the Unique Task ID is assigned in the context of the
parent project. This field is available in the sub projects but the
number is different than if you view the data in the parent project. I
have also determined that the value is based on a standard "offset"
assigned to each sub project but I do not understand the mechanism
that does the ssignment. The documentation that comes with the OLE DB
Provider seems to ignore the possibility of linked sub projects.
 
J

Jack Dahlgren

I don't think ANYONE understands exactly HOW the offset is applied.
But knowing how it works is not necessary as long as you know it exists and
that it always uses a multiple of 4194304. If you know this, then you can
find the UID by using the MOD function and the offset number.

For example:
<the unique id> MOD 4194304
will return the unique id of the task

12582913 Mod 4194304 would give a task unique ID of 1

For more about integer division and mod, check here:
http://zo-d.com/blog/archives/programming/vba-integer-division-and-mod.html

The combination of project name or project UID and task UID should be
sufficient in most cases.

-Jack Dahlgren
 

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