ITask.HexID Property
The ID is not random and it semi-deterministically specifies the position of the task in the WBS tree. The 24 characters are divided into 8 groups of 3 characters. Each group represents one depth level in the tree. The left-most group represents level 1, which is the root node. The numeric value of a group is in hexadecimal format and it specifies the unique index of the task under its parent node, starting with 1.
However, the index is absolutely unrelated to the task's position under the parent. So it's impossible to determine tasks order purely on their hex IDs.
For example, let's have the following WBS structure:
Root A A.1 A.2
The hex IDs may be as follows:
001000000000000000000000 001001000000000000000000 001001002000000000000000 001001001000000000000000
There are two exceptions to this rule. There are special kinds of tasks - virtual tasks that don't really exist in an estimate. They serve as just parents for the minute in Database of the estimate (HexID=YYYYYYYYYYYYYYYYYYYYYYYY) or for Overhead costs minute (HexID=ZZZZZZZZZZZZZZZZZZZZZZZZ).