The default Cost Code structure (included in the base product) is based on a single segment. This example will go through the steps to create simple Cost Codes that comprise of two segments. The first code segment (Segment A) represents the parent code with the second (Segment B) containing their child codes. These segments will be populated and used in a cost sheet template to show how a Cost Breakdown Structure is created.

Cost Code segments are created as Data Definitions in Data Structure Setup. Something to take into consideration is the cost code separator. This is also a Data Definition and can be changed to fit a company’s cost code format.

To see the cost code separator:

  1. In Company Workspace > Administration Mode:
    1. Select the Basic node from Data Definitions.
  1. Using Find, select the Cost Code Separator Data Definition and double-click to open.
    The Default Value is where the separator value can be changed. This example will keep the default.
    1. Next select the Cost Codes node where the code segments are created.
      1. Click New to open New Data Definition window.

This example will create two cost code segments: Segment A and Segment B. The segments will be using a pull-down Menu input type. This eliminates the risk of wrongly typed codes being used.

      1. The Name, Label and Input Type are filled in as below. The Category field is non-editable and defines it as Cost Code Data Definition.

Note the Date Set tab will appear as the Pull-down Menu is selected.

There are two ways of entering segment values:

      • Manually
      • Import via CSV

Both methods will be explained.


      1. In the Data Set tab:
        1. Click Add and enter appropriate values in Value and Label field of the row. Value is the actual code segment, with Label the description.
        2. This step would be repeated until the list of Segment A values is completed.

If the list of segment values is many, it may be easier to use the import option.

Import via CSV:

      1. A CSV spreadsheet needs to be created with Column A being the Values, and Column B the Labels.Below is how the spreadsheet would look like for list of Values and corresponding Labels for Segment A.

Below is how the spreadsheet would look like for list of Values and corresponding Labels for Segment B.

      1. Instead of clicking Add to create the rows of values, the Import will be clicked.
      1. A File Upload window will appear:
        1. Browse to the correct CSV to upload.
        2. Click OK.

Below displays the rows after upload has successfully completed for Segment A.  An error CSV file will be made available if incorrect data is found.  An error message will appear alongside the corresponding row.

The steps as above for Segment A are repeated for creating Segment B. Below would be the resulting list of values. The Import method was used to create Segment B.


In this example, the Cost Breakdown Structure (CBS) and its Cost Codes will be created in a cost sheet template. These templates are stand-alone and used in either a shell template or a shell instance.

      1. The templates are found in Company Workspace > Administration Mode > Templates > Cost Sheets
      1. Click New and select Cost Sheet

A new cost sheet template window will appear.

      1. In the General Tab:
        1. Add a Title.

The Structure tab is where Cost Codes can be structured either in a flat list or in a hierarchy, and where the Cost Code segments are selected in combination. As stated before, this example will have Segment A as the parent, and Segment B as the child segment codes.

      1. In Structure Tab:
        1. Select Tree radio button and Segment A for Segment 1 and Segment B for Segment 2.
      1. In Options tab:
        1. Change WBS Code and WBS Item labels to appropriate naming convention.

The new cost sheet template is created. The following steps will build the Cost Codes and the hierarchy (CBS).

      1. Click Open or double-click the template row.

The cost sheet window opens.

      1. Click Rows to open the Add Row window.
        1. Click Add Row to open the Cost Codes (Cost Attributes) window.

The Cost Attributes window opens.

      1. Click Select by the WBS Code field which will open the Cost Code Segments window.
        1. Click Select for Segment A

This will display the list of values created for Segment A from its Data Definition.

      1. Select the appropriate segment value.
        1. Click OK.
      1. Repeat this for Segment B selecting the appropriate segment value.

Below shows both segments populated to define the Cost Code.

The Cost Attribute form fields are from the base product. For this example, only the mandatory fields need to be populated. Note – WBS Item is automatically populated with the Label from the Segment B code.

The steps are repeated to create all the Cost Codes required for the cost sheet.

Below displays one additional Cost Code created. Since this is a child of a parent cost code (the first cost code that was created), using the indent will position it correctly in the hierarchy.

      1. Step to indent:
        1. Check the child row.
        2. Click Indent.

These steps are repeated to create all the required Cost Codes (in their correct positions) and build out the cost code hierarchy (CBS).

Importing the CBS via CSV

This method is straightforward in procedure however extra care must be taken when creating the CSV data. If dealing with many cost codes in a hierarchy, the chances of incorrectly defining a cost code are high. Fortunately, like the Segment values import process, an error CSV file is made available highlighting row(s) which have an error.

      1. Export the WBS Details CSV template file.

The exported CSV is structured in exactly the way it should be imported. The first five rows should be left the same. The mandatory fields are highlighted in red and correspond to the same fields that were required on the Cost Attribute form when creating the Cost Code manually.

Below is the rows of Cost Codes to be imported including where its position in the hierarchy.
Referencing the example:  the Cost Code column comprises ‘Segment A – Segment B’ with ‘~~’ representing the parent-child relationship. The Cost Item column is the Label for Segment B.

      1. This CSV file is imported into the cost sheet template in the same way the segment values were.

After successful import, the following CBS can be seen in the cost sheet.