In order to define meaningful Enterprise Outline Codes for your
organization, you must do the following:
- Identify your requirements Decide what
type of information your organization requires and how it will be
used.
- Plan your Enterprise Outline Code implementation Define how you will implement
Enterprise Outline Codes in Project 2003.
- Establish Enterprise Outline Code utilization guidelines Establish guidelines for how
Enterprise Outline Codes will be used and maintained.
Carefully consider resource assignment and reporting when
deciding which Enterprise Outline Codes to create, because
Enterprise Outline Codes are critical for those two factors. To
define Enterprise Outline Codes, identify the information that you
need for assigning resources, tracking assignments, and reporting
of tasks, resources, and projects.
You can create Enterprise Outline Codes for any information
about resources that might be useful in making more effective
resource assignments. For example, you might use Enterprise Outline
Codes to provide the following information about resources in your
organization:
- What skills a resource has.
- What level of proficiency a resource has in those skills.
- Which languages a resource is fluent in.
- Where the resource is located.
- What certifications a resource has.
- What title or grade level a resource holds.
You can also create Enterprise Outline Codes for reporting
information that is important to your organization. For example,
you might create Enterprise Outline Codes for the following:
- Financial data What is the charge-back
code and department for a resource? What is a project's cost
range?
Note Project already
includes a number of cost-related fields for resources. Before
deciding to use an Enterprise Outline Code to define cost-related
data, determine whether the default cost-related fields are
sufficient and whether you can use an Enterprise Custom Field that
defines cost-related data.
- Marketing information Which vertical
market is the project targeted at? What market segment is
targeted?
- Management metrics How does this project align with strategic initiatives?
Enterprise Outline Codes provide an excellent method for
defining and then reporting information about tasks, resources, or
projects. In order to effectively define Enterprise Outline Codes,
you must identify what form the data is in and how it will be used.
This involves answering the following questions:
- What kind of entity is this data used to describe—tasks, projects, or resources?
- What name will you use to identify the Enterprise Outline Code (location, job title, and so on)?
- Does this data originate from an external source?
- Is the data relevant to more than one entity? For example, a
location Enterprise Outline Code might specify where a resource
works and where a project is located.
- Is the data relevant to one or more instances of an entity? For
example, a departmental code for a project's sponsor might be
the same as the departmental code that is associated with a
project.
- How many levels of code are required? For example, if you use
Division.Department.CostCenter, are those three levels
sufficient?
- Is the data numeric or alphanumeric?
- Is alphanumeric data uppercase, lowercase, or mixed case?
- Is the data fixed-length or variable? What is the length, if fixed?
- Are special characters used within the data? For example, a
period might be used within a location code for a city, such as St.
Paul (Minnesota).
- If this data is structured as a multi-level value, should this
value be as specific as possible (that is, no subordinate values)?
For example, if you use three levels to define a location, such as
Region.State.City, a region would not be allowed as a selection if
it contained one or more states, and a state would not be allowed
as a selection if it contained one or more cities.
- Is the data required for every occurrence of the entity? Is
specifying the value defined by the Enterprise Outline Code
optional or mandatory?
- Is this resource data that will be used for matching generic
resources to actual resources? Is an Enterprise Resource Outline
Code defined as a skill?
- Is this data actual resource data for which you might want to
select more than one value to associate with the resource? Are you
associating multiple skills with the resource?
Enterprise Outline Codes have a significant impact on the
operation of Project Server 2003 as an EPM Solution. By
correctly defining and using Enterprise Outline Codes, you can make
resource selection easier, reduce system administration, provide
for reports that reflect your business goals, and enforce project
management standards.
In order to create effective Enterprise Outline Codes, do the
following:
- Make decisions about the following areas of project management
for your organization: resource assignment, reporting requirements,
and project and task reporting processes.
- Review the security and operational effects of RBS.
- Determine which Enterprise Outline Codes are appropriate for your organization.
- Design appropriate Enterprise Outline Codes in the Enterprise Global Template.
- Develop views, filters, and reports that make use of Enterprise
Outline Codes. The views, filters, and reports will make it easier
for all participants in your organization's project
management process to use your project management system.
Enterprise Outline Code Lookup Tables and Code Masks
You must create a code mask and a lookup table to define an
Enterprise Outline Code. A code mask describes the structure and
format of the Enterprise Outline Code; a lookup table describes the
valid values for the Enterprise Outline Code.
A code mask includes fields that enable you to define the
following:
- The number of levels in the hierarchy.
- The sequence (or type) of characters that are used by each level.
- The number of characters that are used by each level.
- The separator characters that are used by each level.
The number of levels that are required for an Enterprise Outline
Code determines the levels that are defined in the code mask. The
type of characters used in the code determine the sequence (of
characters for each level) in the code mask. The number of
characters in each level determine the length field in the code
mask. The appropriate separator character is the last field that
you define in the code mask.
The lookup table defines the relationships between the items in
the Enterprise Outline Code and, ultimately, the relationships
between the items in the Enterprise Outline Code and the projects,
tasks, and resources in your organization that are associated with
each node within the lookup table.
The way that values are entered in the lookup table is based on
the code mask for the Enterprise Outline Code; for this reason,
setting up a code mask properly is a critical first step. When
setting up a code mask, consider the following guidelines:
- Unless a level always has a specific number of characters,
select Any for the number of characters to be used in each
level. The Any setting allows maximum flexibility in
entering lookup table values. For example, if you are working with
a predefined code such as a Billing Code that is sourced from an
external system, it is important to allow for some flexibility
because the length of the Billing Codes can vary..
- Be sure to choose separator characters that do not occur within
your lookup table data values. For example, do not use PERIOD as a
separator if you have a city code that includes a period, such as
St. Paul (Minnesota). Similarly, do not use SPACE as a separator if
you have data values that include a space, such as British Columbia
or North Carolina. Also consider whether foreign languages and
spellings might affect how you create Enterprise Outline Codes.
Avoid using hyphens as separator characters, because you will be
unable to use hyphenated names for data values. Also avoid choosing
any special character as a separator, even if it is not on the
drop-down list, because this can conflict with names for data
values. For example, if you use the letter A as a separator, then
it would be difficult to work with outline codes that require the
letter A to be a value.
- When you define an Enterprise Resource Outline Code that you
will use to match resources, be sure to select the Use this code for matching generic resources check box for the code. You can
then assign the appropriate values to the applicable Enterprise
Resource Outline Codes of the generic resource for use in the Build
Team resource matching tool.
After you assign for the applicable codes to resources, you can
use Build Team to match generic to actual resources. The Build Team
resource matching tool works in the following ways:
- Resource matching based on a single Enterprise Resource Outline
Code is straightforward: A match is any resource that has a
matching value for the code.
- Resource matching based on multiple Enterprise Resource Outline
Codes requires that the values for all relevant codes are equal in
order for a resource to qualify as a match.
- Resource matching based on Enterprise Resource Multi-Value
Outline Codes is more complex. It allows for the matching of more
than one value with a single Enterprise Resource Outline Code.
Note You can use resource
matching to identify actual resources as well as generic resources.
For example, if you need to identify an alternative resource that
has similar skills, you can select an actual resource, rather than
a generic resource, in the right pane before you click
Match.
Removing Unused Lookup Tables
Lookup tables are not automatically deleted from the Enterprise
Global Template. For example, when you change an Enterprise Outline
Code to share the lookup table of another Enterprise Outline Code,
only the code mask for the original lookup table, and not the
lookup table itself, is deleted. Because the lookup table is not
deleted, it continues to be loaded as part of the Enterprise Global
Template every time Project Professional users connect to the
Project Server database. This can affect the performance of your
Project Server 2003 deployment.
To remove unused lookup tables from the Enterprise Global
Template, a Project Server administrator must manually remove the
unused Enterprise Outline Code, the associated lookup tables, or
both from the MSP_OUTLINE_CODES table in the Project Server
database.
Selecting Enterprise Outline Code Attributes
When you are selecting Enterprise Outline Code attributes, you
must decide which options to select for the following check
boxes:
- Only allow selection of codes with no subordinate values In order to simplify reporting when
using Portfolio Analyzer, it is recommended that you select the
Only allow selection of codes with no subordinate values
check box whenever possible when selecting your Enterprise Outline
Code Attributes. If you do not select this option and the code
requires the selection of a leaf node (a value in the Enterprise
Outline Code that has no subordinate values), the entity might not
be categorized as intended. When this option is not selected, this
allows high-level nodes to be selected, and as a result, work and
availability in the OLAP cube might be allocated at high levels.
Although this does not create problems for Office Web Components
(OWC) and SQL Server 2000 Analysis Services, it can confuse
data analysis for users who are not expecting this
performance.
- Make this a required code If the
Enterprise Outline Code must be entered for every entity, select
the Make this a required code check box when you are
defining the code. When this option is selected, Project
Server 2003 does not allow a project or resource to be checked
in until all required values are specified. In this way, if an
Enterprise Task Outline Code is required, every task in the project
must specify this value before the project can be checked in. Use
this feature carefully, because users might not always provide
complete data. It might be better to limit the number of required
fields to ensure that the information collected is accurate. It is
less important to make Enterprise Task Outline Codes required
codes. It is best to require an Enterprise Outline Code only when
all users in your organization need to use it. For example, you
might have different requirements for Finance team projects than
you have for Production team projects. If an Enterprise Outline
Code is required, then the Production teams must specify a value
even if it is only applicable to the Finance department.
- Use this code for matching generic resources If you plan to use an Enterprise
Resource Outline Code to match generic resources to actual
resources, select the Use this code for matching generic resources check box. This helps to determine which values are
used by the Resource Substitution Wizard and the Build Team from
Enterprise feature in Project Professional and Build Team in
Project Web Access.
When you are selecting attributes to define your Enterprise
Outline Codes, it is important to be aware of the following
points:
- Enterprise Outline Codes must be defined in advance, and it is
best to provide a fall-back code for users to select if they cannot
identify an accurate specification. For this reason, consider
establishing an Other, NA, or Unspecified type field for each
Enterprise Outline Code. You can also use this field to identify
areas where you might need more appropriate values for the
Enterprise Outline Code.
- Codes appear in alphabetical order within a level by default.
If codes need to appear in a different, nonalphabetical order,
prefix the code values with a number (for example, 01) or a series
of letters (for example, AA).
- Making a code a required code is the best way to ensure that
data is consistently available for reporting and analysis. You
cannot save a project without entering a required field. Because
you can save templates to the Project Server database without
specifying required Enterprise Outline Codes, this enables you to
specify required Enterprise Outline Codes when you save project to
the Project Server database.
Creating Enterprise Outline Codes
The Enterprise Outline Code requirements for your organization
affect the methods that you use to define your Enterprise Outline
Codes. You create Enterprise Outline Codes by opening Project
Professional and checking out the Enterprise Global Template
When creating Enterprise Outline Codes, consider the following
recommendations:
- Use names that are clear, concise, and unambiguous to members in your organization.
- Use names that match names that are used by related systems or
systems that might be a source of data; for example, external Human
Resources systems or the Active Directory directory
service.
- Avoid special characters such as / " ; : < > | [ ]
, . ' ? ~ ` ! $ % ^ & * ( ) - + = { or } when naming
Enterprise Outline Codes, as these might cause errors when
generating the OLAP cube that is used by the Microsoft Office
Project Web Access 2003 View tables, Portfolio Modeler, and
Portfolio Analyzer.
If Enterprise Outline Code data is located externally, you can
extract it and use it to define a lookup table (after you define
the code mask) by copying and pasting the data into the lookup
table directly.
You can also use the Project Data Service (PDS) application
programming interface (API) to automatically populate Enterprise
Outline Codes from other systems. The Service for Enterprise Data
Maintenance in the PDS can simplify the maintenance of lookup
tables that are associated with Enterprise Outline Codes.
Note For more information about the Service for Enterprise Data Maintenance, see the topic About the Service for EDM on MSDN.
To create an Enterprise Outline Code
- Open Project Professional as a user who is assigned the Save Enterprise Global permission and connect to Project
Server 2003.
- On the Tools menu, point to Enterprise Options, and then click Open Enterprise Global to check out the
Enterprise Global Template. The name of the project in the title
bar will be Checked-out Enterprise Global.
- In the checked-out Enterprise Global Template, on the
Tools menu, point to Customize, and then select Enterprise Fields to open the Customize Enterprise Fields dialog box.

- Select the Custom Outline Codes tab.
- On the Custom Outline Codes tab, under Outline Code, select one of the following three primary options:
- Task Select to create Enterprise Outline Codes that are applied at the task level.
- Resource Select to create Enterprise Outline Codes that are applied at the resource level.
- Project Select to create Enterprise Outline Codes that are applied at the project level.
Note The process of creating
an Enterprise Outline Code is identical for projects, tasks, and
resources.
- Select an Enterprise Project Outline Code; for example, Enterprise Project Outline Code4.
- Assign a meaningful name to the Enterprise Outline Code. To
change the name of the Enterprise Outline code, click
Rename. In the Rename Field dialog box, type the new
name, and then click OK.

- Define the code mask for the Enterprise Outline Code. In the Customize Enterprise Fields dialog box, click Define Code Mask to open the Outline Code Definition dialog box.

- When you are finished defining the code mask for the Enterprise
Outline Code, click OK to close the Outline Code Definition dialog box and return to the Customize Enterprise Fields dialog box.
- Select Edit Lookup Table.

Items in the lookup table can be hierarchical, with
some items subordinate to other items, or all items can be
equivalent. Optionally, you can also provide a description for the
items in the lookup table.
- When you are finished defining the lookup table, click
Close to close the Edit Lookup Table dialog box and return to the Customize Enterprise Fields dialog
box.
- Under Enterprise attributes, you can select the
following options:
- Share another code's lookup table Select this option to use a lookup table
that was defined for another Enterprise Outline Code. After you
select this option, click Choose Outline Code.

In the Share Lookup Table dialog box, select a field in the Field Type list, and then select the Enterprise
Outline Code that you want to base the lookup table on from the
Field Name list. When you are finished, click OK to return to the Customize Enterprise Fields dialog box.
The primary benefits of sharing lookup tables are
that you can manage multiple lookup tables from a single location
and improve performance by reducing both the total number of lookup
tables in the Enterprise Global Template and the time that it takes
to load them.
In addition, if you need more than one Enterprise
Outline Code that describes the same type of data for a resource,
consider using an Enterprise Resource Multi-Value Outline Code
rather than using multiple codes and linked or imported lookup
tables.
- Only allow selection of codes with no subordinate values If Enterprise Outline Codes are
organized hierarchically, then you can use this option to indicate
whether you want to allow the selection of Enterprise Outline Codes
that do not have subordinate values.
- Make this a required code Select this
option if you do not want to allow project managers to save a
project to the Project Server database (or publish project updates)
until a value is associated with this Enterprise Outline Code. If
this Enterprise Outline Code is sharing the lookup table of another
code, enabling this option does not affect the other Enterprise
Outline Code.
- When you have finished defining Enterprise Outline Codes, click
OK to close the Customize Enterprise Fields dialog
box. Close the Enterprise Global Template if you are finished
making changes.
Note You must add Enterprise
Custom Fields to projects and to Project Web Access views in order
for the information in the Enterprise Outline Codes to be visible
to team members and project managers.
- Close and save the Enterprise Global Template. Changes to the
Enterprise Global Template will not be available to project
managers until the next time they connect Project Professional to
Project Server 2003 and refresh the Enterprise Global
Template.
Creating Enterprise Resource Multi-Value Outline Codes
Enterprise Resource Outline Codes 20-29 are Enterprise Resource
Multi-Value Outline Codes. These are special Enterprise Resource
Outline Codes that enable the selection of multiple values within
the same outline code.
Enterprise Resource Multi-Value Codes are new to Project
Server 2003. In Microsoft Project Server 2002, each
Enterprise Resource Outline Code can only store a single value. The
Enterprise Resource Multi-Value Outline Code enables you to collect
and store multiple pieces of information about resources by using a
single Enterprise Outline Code.
Note Enterprise Resource
Outline Code 30 is reserved for RBS. You can define, but not
rename, this code. Project Server 2003 uses this code to
determine resource categorization and security.
You can only define Enterprise Resource Multi-Value Outline
Codes for resources.
To create an Enterprise Resource Multi-Value Outline Code
- Open Project Professional as a user who is assigned the Save Enterprise Global permission and connect to Project
Server 2003.
- On the Tools menu, point to Enterprise Options, and then click Open Enterprise Global to check out the
Enterprise Global Template. The name of the project in the title
bar will be Checked-out Enterprise Global.
- In the checked-out Enterprise Global Template, on the
Tools menu, point to Customize, and then select Enterprise Fields to open the Customize Enterprise Fields dialog box.

- Select the Custom Outline Codes tab.
- Under Outline Code, select Resource.
- Select an Enterprise Resource Outline Code between 20 and 29;
for example, Enterprise Resource Outline Code20. This Enterprise
Resource Outline Code will be defined as an Enterprise Resource
Multi-Value Outline Code.
- Assign a meaningful name to the Enterprise Resource Multi-Value
Outline Code. To change the name of the Enterprise Resource
Multi-Value Outline Code, click Rename.
- In the Rename Field dialog box, type the new name for
the Enterprise Resource Multi-Value Outline code (for example,
Skills) and then click OK.

- In the Customize Enterprise Fields dialog box, click Define Code Mask to open the Outline Code Definition
dialog box. Define the code mask for the Enterprise Resource
Multi-Value Outline Code.

- When you are finished defining the code mask for the Enterprise
Outline Code, click OK to close the Outline Code Definition dialog box and return to the Customize Enterprise Fields dialog box.
- Select Edit Lookup Table and edit the lookup table. For
example, the following lookup table shows three primary role
categories (Executive, Management, and Operations) and identifies
the various role types that are available in each category.

- When you are finished defining the lookup table, click
Close to close the Edit Lookup Table dialog box and return to the Enterprise Custom Fields dialog box.
This lookup table will also be used by the multi-value component of
the Enterprise Resource Multi-Value Outline Code.
- Under Enterprise attributes, you can select the
following options:
- Share another code's lookup table Select this option to use a lookup table
that was defined for another Enterprise Outline Code. After you
select this option, click Choose Outline Code.

In the Share Lookup Table dialog box, select a field in the Field Type list, and then select the Enterprise
Outline Code that you want to base the lookup table on from the
Field Name list. When you are finished, click OK to return to the Customize Enterprise Fields dialog box.
The primary benefits of sharing lookup tables are
that you can manage multiple lookup tables from a single location
and improve performance both by reducing the total number of lookup
tables in the Enterprise Global Template and by reducing the time
that it takes to load them.
- Only allow selection of codes with no subordinate values If Enterprise Outline Codes are
organized hierarchically, then you can use this option to indicate
whether you want to allow the selection of Enterprise Outline Codes
that do not have subordinate values.
- Make this a required code Select this
option if you do not want to allow project managers to save a
project to the Project Server database (or publish project updates)
until a value is associated with this Enterprise Resource
Multi-Value Outline Code. If this Enterprise Resource Multi-Value
Outline Code is sharing another code's lookup table, enabling
this option does not affect the other Enterprise Outline Code.
- When you are finished defining Enterprise Resource Multi-Value
Outline Code, click OK to close the Customize Enterprise Fields dialog box.
- Close and save the Enterprise Global Template. Changes to the
Enterprise Global Template will not be available to project
managers until the next time they connect Project Professional to
Project Server 2003 and refresh the Enterprise Global
Template.