Resources & Cost

RSRC / TASKRSRC (and Roles / Prices)

RSRC / TASKRSRC units, price, role vs resource

P6 Resources tab. Assignment columns and Add Resource / Add Role / Assign by Role.
A resource on an activity is an assignment row. This sample activity has none yet.

This is the high-level XER picture of resources for a viewer, built only from columns documented in Oracle's own maps.

RSRC (resource dictionary)

The columns that matter here are rsrc_id (Unique ID), rsrc_short_name (Resource ID), rsrc_name (Resource Name), rsrc_type (Resource Type), clndr_id (Calendar), parent_rsrc_id (Parent Resource), role_id (Primary Role), def_qty_per_hr (Default Units / Time), cost_qty_type (Price Time Units), def_cost_qty_link_flag (Calculate costs from units), and active_flag (Active).

The stored values behind rsrc_type are not documented by Oracle, so do not invent Labor, Nonlabor, or Material codes for it — treat that enum as unverified.

TASKRSRC (activity assignments)

A viewer can present the following units and cost fields, using Oracle's own labels: target_qty (Budgeted/Planned Units), remain_qty (Remaining Early Units), target_cost (Budgeted/Planned Cost), remain_cost (Remaining Early Cost), cost_per_qty (Price / Unit), target_qty_per_hr (Budgeted/Planned Units / Time), remain_qty_per_hr (Remaining Units / Time), act_reg_qty and act_ot_qty (Actual Regular / Overtime Units), curv_id (Curve), rsrc_id (Resource ID Name), role_id (Role), rollup_dates_flag (Drive Activity Dates), and rsrc_type (Resource Type). Also present on the assignment are target_start_date / target_end_date (Planned Start / Finish) and restart_date / reend_date (Remaining Early Start / Finish).

Role vs resource (sourced)

Roles and resources live in different tables entirely. RSRC.role_id identifies a resource's Primary Role, while TASKRSRC.role_id identifies the Role actually used on a given assignment — the two columns look similar but answer different questions. The ROLES table itself, per Oracle's PDF map, carries role_id (Unique ID), role_short_name (Role ID), role_name (Role Name), parent_role_id (Parent Role), and role_descr (Responsibilities). An assignment can point at a resource, a role, or both at once; exactly how the UI pairs the two when one side is left blank is unverified.

Price

Unit price is not a single column sitting on RSRC — it lives in a separate table, RSRCRATE (Resource Prices), with columns cost_per_qty (Standard Rate in EPPM, Price/Unit1 in Professional), cost_per_qty2 (Internal Rate / Price/Unit2), cost_per_qty3 (External Rate / Price/Unit1 in Professional — that dual labeling is Oracle's own), cost_per_qty4 and cost_per_qty5, start_date (Effective Date), and rsrc_id. ROLERATE is the role-price analogue, keyed on role_id with the same rate columns and the same Professional labels of Price/Unit1–3. Price at the assignment level, separate from either rate table, is TASKRSRC.cost_per_qty.

Sources

Back to top