In Oracle Primavera Cloud, you can create codes to organize objects with custom attributes. Codes allow you to create a custom list column, where you can choose one code value to assign to each object. You can use codes to track any information not currently available within the system. For example, you could create a Sponsor code to track the sponsors for each project. If you’re subcontracting your activities, you could create a Subcontractor code for tracking. Once assigned, you can use these codes and code values to organize data in different ways. You can even use codes to display custom data in reports or dashboards.

In this article, we will cover the process for creating codes in Oracle Primavera Cloud. Once created, we will also look at how to assign code values and use them to organize data.

P6 Codes vs. OPC Codes

If you are a P6 Professional or P6 EPPM user, you may already be familiar with codes. In P6, you can create a variety of codes, including Activity, Project, and Resource Codes. P6 codes are created at the Global level, meaning you can use them on any project in the database. The only exception is Activity Codes, which can be created at the Project, EPS, or Global level.

How to Import XER file into newer version of Primavera P6

Codes in Oracle Primavera Cloud will work very similarly to how they do in P6 – with added enhancements. For one, OPC allows you to create codes for a wider variety of objects. While you can still create Activity, Project, and Resource codes, you can now create codes for WBS, Risks, Files – just to name a few. Another change within OPC is that you can attribute a single code to multiple data types. For example, let’s say you want to track the locations for your projects, activities, and resources. You can create an all encompassing Location code for use with all these objects at once. Lastly, OPC codes are not created globally. Instead, you can choose to create them at either the Workspace or Project level.

Workspace vs. Project Codes

Like most data in OPC, you can choose to create codes at either the Workspace or the Project level. At the Workspace level, you can create codes for any available data type. At the Project level, you can only create Activity codes.

Whether you want to create Workspace or Project codes depends on your needs within the program. If you create a code at the workspace level, you can apply it to any data within the workspace. For example, if you create an Activity code in the Workspace, you can use that code on any project within it. If you plan on using the code for multiple projects, you should create it at the Workspace level. You can push down codes created at the Workspace level to child workspaces as well. Therefore, tt’s a good idea to create them as high up with the Workspace hierarchy as needed.

How to Import XER file into newer version of Primavera P6

Project codes, on the other hand, can only be used within one single project. You should create the codes at the Project level if they are specific to the project you’re working on. Again, at the Project level, you can only create Activity codes.

How to Import XER file into newer version of Primavera P6

Creating Codes

In this example, I’ll be creating an Activity code at the Workspace level. This will allow me to use this code on any of the Project activities within this Workspace.

To start, open the desired Workspace or Project and select the Summary & Settings app. Within the app, select Dictionaries > Codes. The table will display the available codes and code values. Under Applies To, you can see what type of data the selected code can be applied to.

Default Codes

At the Workspace level, you will see a variety of codes already available. These are available by default within the company Workspace, pushed down to the child Workspaces. Next to each code will be a + icon – selecting this will display the code values. The code itself is a category, while the code values are what you’re assigning to data. You can assign only one code value from each code to each data item.

As an example, let’s take a look at the default Department code. Under Applies to, this code has both Activities and Resources/Roles selected. This means that you can use this code of any activity or resource within the workspace. If you expand the code, you’ll see the code values, such as Engineering Department, IT, and Facilities. For each activity or resource, you can assign one of these code values. After assigning, you can use these assigned codes to group and sort activities and resources by Department.

How to Import XER file into newer version of Primavera P6

Under Owning Workspace, you’ll see that these default codes originate in the company workspace. The Sharing Method will determine how this data is shared with child workspaces. Automatic means that it will automatically be pushed down to child workspaces. This is why they are displaying here, even if the workspace was just created.

If you want to remove a default code from the workspace, select the gear next to it and press Remove. This won’t delete the code altogether, but simply remove it from the current workspace.

How to Import XER file into newer version of Primavera P6

Creating New Codes

To create a new code, select Add Code. For each code, you will need to enter in a Name and an ID. I’ll create a code to track the subcontractors that will be working on my project activities, so I’ll set this name to Subcontractor. The code ID is a unique identifier for the code – I’ll set this to SUBCON.

Under Applies to, select what you want to create the code for. You can select multiple data objects here, or even press Select All to apply this code to all objects. For this code, I’ll be applying values to my Activities, so I’ll choose that option.

Then, select Save to save the changes you’ve made so far.

How to Import XER file into newer version of Primavera P6

With the code created, you can now create code values. To add a code value, select the gear icon next to the code and select Add Code Value. Just like with the code, you’ll need to give each code value a Name and an ID. Additionally, for Activity codes, you can choose a color. This color will color the Gantt Chart bars based on the activity’s assigned codes.

In this example, I’ll create 3 codes for different subcontractors I’ll be using on this project: Simons Construction, Creek Concrete, and Zamora Landscaping.

How to Import XER file into newer version of Primavera P6

Lastly, you can choose a Sharing Method for the code. As mentioned earlier, this will determine how you can share this code with child workspaces. There are two options here: Manual or Automatic. Manual means that this code will not automatically push down to child workspaces. Instead, you can choose to push it down manually within the child workspace – but you do not have to. Automatic will automatically push this code to child workspaces so it displays in their Codes list by default. To keep my Codes list a bit cleaner, I’ll set this to Manual.

Once you’ve finished making adjustments to your code, select Save. You can now close out of the Summary & Settings screen and begin to use the code.

How to Import XER file into newer version of Primavera P6

Assigning Code Values

With the code created, you can now assign to the data object you created it for. In this case, I created an Activities code, so I’ll be assigning code values on the Activities page. It will work the same for the other code type. If you create Project codes, you’ll assign them on the Projects page, and Resource codes on the Resources page.

First, open up a project within the workspace you created the code. Navigate to the Activities page by selecting Schedule > Activities. You can assign code values to activities a few different ways.

How to Import XER file into newer version of Primavera P6

Assigning Code Values using Columns

If you want to be able to visually track the code values assigned to activities, you can add a column for the code. Within the table, select the + button to add a new column. Type in the name of the created code, and select the eye icon to add it to the table.

With the column displaying, double click within an activity’s cell to assign a code value. Each activity can have one code value from the code assigned. Select the desired code value from the window, and press Select. The code will appear within the code column for easy viewing. You can now use keyboard shortcuts, such as Fill Down, to assign the code value to other activities as well.

How to Import XER file into newer version of Primavera P6

Assigning codes in this manner can be useful if you have just one code that you need to track. However, if you’re using multiple codes, you will need to add each one as a separate column. This will expand your table and make it more difficult to view.

Assigning Code Values using Activity Details

If you have multiple codes that you want to use within the project, you may want to instead use the Codes tab within the Activity Details section. If the Codes tab isn’t already displaying, press the gear icon within the details to add it. 

Select the desired activity, and press Assign within the Codes tab. A window will open where you can view all codes created at either the Project or Workspace level. For each code, you can press the plus button to see the individual code values. This window allows you to assign code values from multiple codes at once. To assign a code value, double click on it in the list. From each code, you can assign one code value to each activity. Once you’ve added all code values, press Select. Within the Codes tab, you’ll now be able to see all the activity’s assigned code values. 

How to Import XER file into newer version of Primavera P6

If you ever need to remove a code value, select the gear next to the option and press Delete.

How to Import XER file into newer version of Primavera P6

Assigning Code Values using Assign

Lastly, you can assign code values to activities using the Assign tool. Right click on the desired activity and select Assign > Codes from the dropdown menu. The same window will open, where you can assign any code value from any project or workspace code. Just like when assigning from the Details section, this method allows you to assign multiple code values to one activity at once. 

Once assigned, you’ll be able to see these assigned code values from the Codes tab in the details section or any displaying columns.

How to Import XER file into newer version of Primavera P6

Organizing Data with Codes

With code values assigned, you can now use them to organize data. You can use codes just like any other column within the program to group, sort, and filter data. You can even use these assignments for more advanced workflows, such as creating reports or charts. Once you have added a code to the program, it will be available whenever you need to choose a field or parameter for any of these processes.

To demonstrate this, let’s take a look at grouping activities by the assigned code values. Grouping activities determine how activities appear in the table. This process will create grouping bands to group like minded activities together. Most commonly, you’ll have your table grouped by WBS, so you can see when each activity is set to take place. With the code values assigned, we can now group activities by code.

To change the table grouping, select Views > Manage Views. You can create a new view for this change, or edit an existing view. Within the Views window, select the Grouping tab. Under Group By, you can adjust the grouping structure using the dropdown menu. In this example, I’ll select a group by Subcontractor. Then, press Apply to apply the changes.

How to Import XER file into newer version of Primavera P6

Now, the table features grouping bands for the different Subcontractor code values. I can quickly see which Subcontractor is working on each activity. This will work the same way for any code that you create. Other types of organizing, such as filtering and sorting, will work with codes the same way.


In Oracle Primavera Cloud, you can create codes to organize data with custom values. You can use codes to associate additional information to your activities, projects, and resources. For example, you can create codes to track subcontractors, locations, or required materials. With codes created, you can assign one code value from each code to each data item. You can then use these assignments to organize data through grouping, sorting and filtering. For all data types, OPC codes allow you to track custom data efficiently.

If you have any comments, questions or suggestions, please use the comment section on the bottom of this page, and don’t forget to subscribe to our blog to get more scheduling tips & tricks directly in your inbox!

Lauren Hecker is a Microsoft Project, Primavera P6, and Oracle Primavera Cloud Instructor who teaches onsite and virtual scheduling courses. To see her next open enrollment course, please visit our calendar. To schedule an onsite or custom course, please contact us!


Submit a Comment

Your email address will not be published. Required fields are marked *