Projects
Projects
ORACLE FUSION
PROJECT PORTFOLIO MANAGEMENT
Plan, approve, track and revise project cost & revenue budgets with
Project Budgeting & Forecasting
control
Project Resource Management Assign people and equipment; track availability and utilisation metrics
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
Construction Contract:
Template defining billing, costing, budgetary
Project Type enables burden costs,
control rules. All projects inherit these defaults.
budgetary control
Admin 5% + Facilities 3% =
Indirect overhead loaded onto direct costs.
Burden Cost 8% on Rs.4,000 Labour =
Formula: Direct Cost x Multiplier.
Rs.320 burden
Foundation Complete
Milestone trigger in PJB_EVENTS that fires a
Billing Event Milestone -> Invoice
customer invoice when a milestone is complete.
Rs.80,00,000
Page
Oracle Fusion PPM
Cost
Status Meaning & Business Rules Real-World Use
Allowed?
Page
Oracle Fusion PPM
Revenue
Project Type Class Description Real-World Example
Generated?
Warehouse construction
Revenue-generating projects billed to external YES - via for Reliance Infra; IT
CONTRACT
customers. Requires contract and billing plan. invoicing consulting for HDFC
Bank; EPC projects
Page
Oracle Fusion PPM
READY_TO_BILL=Y on the
task
INTERFACE_ID, PROJECT_NAME,
Import project header records.
PROJECT_NUMBER, PROJECT_TYPE_ID,
Used when migrating projects
PJF_PROJECTS_INTERFACE START_DATE, COMPLETION_DATE,
from legacy systems or
PROJECT_STATUS_CODE,
creating projects in bulk.
CARRYING_OUT_ORGANIZATION_ID
PROJECT_TYPE_ID,
Project type template master. PROJECT_TYPE_CODE,
PJF_PROJECT_TYPES_B Defines defaults for all projects PROJECT_TYPE_CLASS_CODE
of that type. (CONTRACT/INDIRECT/CAPITAL),
BURDEN_COST_FLAG
Page
Oracle Fusion PPM
EXPENDITURE_TYPE_ID,
Expenditure type master. EXPENDITURE_TYPE,
PJF_EXP_TYPES_B Defines all cost categories and EXPENDITURE_CATEGORY,
their system linkage. SYSTEM_LINKAGE_FUNCTION,
UNIT_OF_MEASURE, RATE_BASED_FLAG
ORGANIZATION_ID, NAME,
Project organisation hierarchy
PARENT_ORGANIZATION_ID,
PJF_ORGANIZATIONS_DENORM for org-based cost reporting and
ORGANIZATION_TYPE,
AutoAccounting.
BUSINESS_GROUP_ID
Page
Oracle Fusion PPM
Employee Timesheet
Civil Engineer Ramesh: 40 hrs @ Rs.650/hr PJC_EXP_ITEMS_ALL,
ST (Self-Service
= Rs.26,000 on Foundation Work task PJC_TM_ITEMS_ALL
Timesheets)
Expense Report (Oracle Site Manager Priya travel Rs.8,500: flight + PJC_EXP_ITEMS_ALL (from OIE
ER
Expenses / iExpenses) hotel to remote construction site expense reports)
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
The Rs.20,000 burden is stored separately in PJC_BURDEN_COSTS linked to the original expenditure item.
IND_COMPILED_SET_ID in PJC_IND_COMPILED_SETS holds the pre-compiled rate schedule for fast
processing.
TRANSACTION_SOURCE,
INTERFACE_ID, PROJECT_ID, TASK_ID,
PRIMARY import staging table for ALL EXPENDITURE_TYPE,
cost types. Used for FBDI imports, EXPENDITURE_ITEM_DATE, QUANTITY,
external system integrations. Check RAW_COST,
PJC_TXN_XFACE_ALL
STATUS_CODE and DENOM_CURRENCY_CODE,
TRANSACTION_REJECTION_CODE PERSON_ID, VENDOR_ID,
for errors. SYSTEM_LINKAGE_FUNCTION,
STATUS_CODE,
TRANSACTION_REJECTION_CODE
DOCUMENT_LINE_ID,
Document-level detail for each
TRANSACTION_HEADER_ID, AMOUNT,
PJC_TXN_DOCUMENT_LINES imported transaction (PO reference,
DESCRIPTION, PO_HEADER_ID,
invoice reference).
AP_INVOICE_ID
TP_INTERFACE_ID, PROJECT_ID,
Cross-charge / transfer price import. TASK_ID, EXPENDITURE_ITEM_ID,
PJC_TP_XFACE_ALL Used when one organisation charges TRANSFER_PRICE,
another within the same enterprise. PROVIDER_ORG_ID,
RECEIVER_ORG_ID
EXPENDITURE_ITEM_ID, PROJECT_ID,
TASK_ID, EXPENDITURE_TYPE,
THE most important costing
EXPENDITURE_ITEM_DATE, QUANTITY,
table. Every cost transaction
PJC_EXP_ITEMS_ALL RAW_COST, BURDENED_COST,
charged to a project. One row =
COST_DISTRIBUTED_FLAG,
one Expenditure Item.
BILLABLE_FLAG,
SYSTEM_LINKAGE_FUNCTION
Page
Oracle Fusion PPM
INCURRED_BY_ORGANIZATION_ID,
CONTROL_TOTAL_AMOUNT
LINE_NUM, EXPENDITURE_ITEM_ID,
The actual Dr/Cr GL distribution PROJECT_ID,
lines generated during cost DR_CODE_COMBINATION_ID,
PJC_COST_DIST_LINES_ALL
distribution. Links EI to GL CR_CODE_COMBINATION_ID, AMOUNT,
accounts. BURDENED_COST, ACCOUNTING_DATE,
POSTED_FLAG
BURDEN_COST_ID,
Overhead/burden cost details per EXPENDITURE_ITEM_ID,
PJC_BURDEN_COSTS expenditure item. Separate from IND_COMPILED_SET_ID,
direct costs. IND_COST_CODE, BURDEN_COST_BASE,
BURDEN_MULTIPLIER, BURDEN_COST
TRANSACTION_SOURCE,
Transaction source configuration DOCUMENT_TYPE,
PJC_TXN_SOURCES defining rules for imports (allow ALLOW_REVERSAL_FLAG,
duplicates, allow reversals). ALLOW_DUPLICATE_REFERENCE_FLAG,
COSTED_FLAG
Page
Oracle Fusion PPM
Plan Type Purpose & Rules Key Table Flag Real-World Use
Baselined Rs.5Cr
Formal approved cost plan.
project budget
Approved Cost Used for budgetary control. APPROVED_COST_PLAN_TYPE_FLAG
after board
Budget ONLY ONE can exist per =Y
approval. Used for
project at any time.
all funds checks.
Approved Rs.5Cr
revenue plan.
Formal approved revenue plan.
Approved APPROVED_REV_PLAN_TYPE_FLAG Prevents revenue
Controls max revenue that can
Revenue Budget =Y recognition
be recognised.
beyond contract
value.
After 3 months:
actual costs higher
Rolling estimate of expected
than planned.
Cost Forecast final cost (Estimate at PLAN_CLASS_CODE = FORECAST
Cost Forecast
Completion). Revised regularly.
revised upward for
EAC.
Page
Oracle Fusion PPM
OVER
Foundation Work 80,00,000 85,00,000 0 85,00,000 -5,00,000
BUDGET
IN
Electrical & Plumbing 70,00,000 42,00,000 5,00,000 65,00,000 +5,00,000
PROGRESS
NOT
Finishing & Handover 1,50,00,000 0 0 1,50,00,000 0
STARTED
Page
Oracle Fusion PPM
Example - T&M Project: Engineer bills 100 hrs in Month 1, invoice raised Month 2.
-> Revenue Recognised in Month 1 (when earned), Invoice in Month 2
-> Month 1 accounting: Dr Unbilled Receivables Rs.X | Cr Project Revenue Rs.X
-> Month 2 accounting: Dr Accounts Receivable Rs.X | Cr Unbilled Receivables Rs.X
Invoice actual hours x bill rate + Professional IT consultants for HDFC Bank:
Time & Materials materials at cost. Each billing cycle services, consulting, 40 hrs x Rs.800/hr = Rs.32,000 +
(T&M) invoices all approved timesheets and ongoing support, IT travel Rs.5,000 = Invoice
expenses. development Rs.37,000 per week
Warehouse: Foundation
Invoice when predefined milestones Construction EPC, Complete -> Invoice Rs.80L |
Fixed Price /
are achieved. Amount is fixed software delivery, Structure Erect -> Invoice
Milestone
regardless of actual cost. turnkey projects Rs.1.5Cr | Handover -> Invoice
Rs.1Cr
Reimburse actual cost + agreed fee %. Government DRDO Research: Actual cost
Cost Plus Fee Budget risk stays with client; contractor contracts, research, Rs.2Cr + 15% fee = Invoice
earns guaranteed margin. defence projects Rs.2.30Cr
Page
Oracle Fusion PPM
PROJECT_ID, DRAFT_INVOICE_NUM,
Draft invoice headers before release BILL_TO_CUSTOMER_ID, INVOICE_DATE,
PJB_DRAFT_INVOICES_ALL
to AR. PM reviews here. AMOUNT, APPROVED_DATE,
RELEASED_DATE, CANCELLED_FLAG
PROJECT_ID, DRAFT_INVOICE_NUM,
Draft invoice line items linked to LINE_NUM, AMOUNT, TASK_ID, EVENT_ID,
PJB_DRAFT_INVOICE_ITEMS
expenditure items or events. EXPENDITURE_ITEM_ID,
INVOICE_LINE_TYPE
Page
Oracle Fusion PPM
AGREEMENT_ID, AGREEMENT_NUM,
Customer funding agreements.
CUSTOMER_ID, AMOUNT,
PJB_AGREEMENTS_ALL Controls maximum billing and
REVENUE_LIMIT_FLAG, FUNDED_DATE,
revenue allowed.
EXPIRATION_DATE
PROJECT_FUNDING_ID, AGREEMENT_ID,
Project funding allocations against
PROJECT_ID, TASK_ID,
PJB_FUNDING_ALL agreements. Links agreement
ALLOCATED_AMOUNT,
money to specific projects.
BASELINED_AMOUNT
INTERFACE_EVENT_ID, PROJECT_ID,
Interface table to import billing
TASK_ID, EVENT_TYPE,
PJB_EVENTS_INTERFACE events/milestones from external
COMPLETION_DATE, BILL_AMOUNT,
systems.
STATUS_CODE
BILL_RATE_ID, BILL_JOB_TITLE,
Bill rates for T&M billing by job title BILL_RATE, CURRENCY_CODE,
PJB_BILL_RATES_ALL
or person. START_DATE_ACTIVE,
END_DATE_ACTIVE
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
RESOURCE_REQUEST_ID, PROJECT_ID,
TASK_ID, REQUESTED_QUANTITY,
Resource requests raised by
REQUESTED_UOM, STATUS_CODE
PJR_RESOURCE_REQUESTS PMs. Tracks what skills are
(SUBMITTED/CONFIRMED/DECLINED),
needed for which tasks.
REQUEST_DATE,
RESOURCE_CLASS_CODE
EXCEPTION_ID, PERSON_ID,
Forecast over/under allocation EXCEPTION_TYPE
PJR_FCST_EXCEPTIONS
exceptions for resource planning. (OVER_ALLOCATED/UNDER_ALLOCATED),
FROM_DATE, TO_DATE, SEVERITY_CODE
EXPENDITURE_ITEM_ID, PROJECT_ID,
Timesheet expenditure items -
TASK_ID, PERSON_ID, QUANTITY (hours),
PJC_TM_ITEMS_ALL labour costs charged from
RAW_COST,
approved timesheets.
SYSTEM_LINKAGE_FUNCTION=ST
Page
Oracle Fusion PPM
DST Grant
The grant/funding master record.
SERB/F/2024/001 for
Award Controls all compliance, budget, GMS_AWARDS_ALL
renewable energy research -
and spending for the funded project.
Rs.75L over 3 years
Award ICMR/2024/001
The Oracle project executing the
funds: Project P001 (Lab
Award Project grant work. One award can fund GMS_AWARD_PROJECTS
Research) + Project P002
multiple projects.
(Clinical Trials)
Salaries, reagents,
Cost types explicitly permitted under
equipment - ALLOWED.
Allowable Cost grant agreement. System enforces GMS_AWARDS_ALL (rules)
Entertainment, first-class air
this automatically.
- BLOCKED
Page
Oracle Fusion PPM
AWARD_ID, AWARD_NUMBER,
AWARD_TYPE, AWARD_STATUS,
Award master - ONE row per grant.
START_DATE_ACTIVE,
GMS_AWARDS_ALL The equivalent of
END_DATE_ACTIVE, CLOSE_DATE,
PJF_PROJECTS_ALL_B for grants.
SPONSOR_AWARD_NUMBER,
IDC_SCHEDULE_ID
AWARD_PROJECT_ID, AWARD_ID,
Links awards to the Oracle projects
GMS_AWARD_PROJECTS PROJECT_ID, START_DATE, END_DATE,
executing the grant work.
BUDGET_VERSION_ID
BUDGET_VERSION_ID, AWARD_ID,
Grant-specific budget versions.
PROJECT_ID, BUDGET_STATUS_CODE,
GMS_BUDGET_VERSIONS Controls spending per cost category
CURRENT_FLAG, TOTAL_DIRECT_COST,
per award.
TOTAL_INDIRECT_COST, TOTAL_COST
FUNDING_PATTERN_ID, AWARD_ID,
How award funding is distributed
GMS_FUNDING_PATTERNS PROJECT_ID, TASK_ID, PERCENTAGE,
across tasks and time periods.
START_DATE, END_DATE
SPONSOR_ID, VENDOR_ID,
Sponsor (funding agency) master SPONSOR_NAME,
GMS_SPONSORS linked to AP Supplier (for SPONSOR_SHORT_NAME,
payments). SPONSOR_TYPE, COUNTRY_CODE,
ACTIVE_FLAG
Page
Oracle Fusion PPM
Government contracts,
Budget per individual task strictly Can be too restrictive; requires
Task Level grants, tightly-
enforced. Most granular. detailed budgeting
controlled projects
Page
Oracle Fusion PPM
Timeline of Events:
Jun 2024: PO-001 raised for Steel Beams Rs.80,00,000
-> Encumbrance created: Rs.80L reserved | Available = Rs.1.5Cr - Rs.80L = Rs.70L
-> XCC_BC_PACKETS: RESULT_CODE=A (Approved)
Jul 2024: GRN received, Invoice paid: Rs.75,00,000 (slightly less than PO)
-> Actual = Rs.75L | Encumbrance released Rs.80L
-> Available = Rs.1.5Cr - Rs.75L (actual) - Rs.0 (no open POs) = Rs.75L
Page
Oracle Fusion PPM
ID (CONTRACT_ID), CONTRACT_NUMBER,
Contract header master. Top-
STS_CODE (ACTIVE/SIGNED/CLOSED),
OKC_K_HEADERS_ALL_B level customer agreement
START_DATE, END_DATE,
record.
TOTAL_LINE_VALUE, CURRENCY_CODE
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
If AutoAccounting FAILS: Transaction goes to ERROR status. Fix the setup rule first.
AE_HEADER_ID, APPLICATION_ID,
LEDGER_ID, EVENT_ID,
Journal entry headers - equivalent to
XLA_AE_HEADERS ACCOUNTING_DATE,
GL journal batch headers.
JE_CATEGORY_NAME,
ACCOUNTING_ENTRY_STATUS_CODE
AE_HEADER_ID, AE_LINE_NUM,
CODE_COMBINATION_ID,
The actual Debit/Credit journal lines
XLA_AE_LINES ACCOUNTED_DR, ACCOUNTED_CR,
before posting to GL.
CURRENCY_CODE,
ACCOUNTING_CLASS_CODE
AE_HEADER_ID, AE_LINE_NUM,
Links SLA journal lines back to the
SOURCE_DISTRIBUTION_TYPE,
XLA_DISTRIBUTION_LINKS originating source transaction for full
SOURCE_DISTRIBUTION_ID_NUM_1
audit trail.
(=EXPENDITURE_ITEM_ID)
Page
Oracle Fusion PPM
F = Foundation (the
PJF Project Foundation Project Foundation PJF_PROJECTS_ALL_B
base/master data)
O = Office
Project Office Budgeting &
PJO PJO_PLAN_VERSIONS_ALL (budget/planning
(Budgeting) Forecasting
office)
B = Billing (invoices
PJB Project Billing Billing & Revenue PJB_DRAFT_INVOICES_ALL
and revenue)
XCC = eXpenditure
Oracle Budgetary
XCC Budgetary Control XCC_BC_PACKETS Control &
Control
Commitments
PA = Project
Project Accounting General PPM
PA PA_PERIODS_ALL Accounting (older
(legacy) (legacy)
prefix)
Page
Oracle Fusion PPM
PJO_BUDGET_VERSIONS_INTERFACE Budgeting Import budget version headers (plan type, version type)
PJF_TEAM_MEMBERS Foundation Team member assignments to projects with role and billing %
Page
Oracle Fusion PPM
PJO_PLAN_VERSIONS_ALL Budgeting Budget/forecast version header with status and control flags
PJB_BILL_RATES_ALL Billing Bill rates for T&M billing by job title or person
PJB_REVENUE_LINES Billing Revenue recognised per period - the P&L revenue record
GMS_AWARD_PROJECTS Grants Award-to-project linkage (one award can fund multiple projects)
GMS_BUDGET_VERSIONS Grants Grant budget versions with direct and indirect cost totals
Page
Oracle Fusion PPM
XCC_BC_PACKETS Budget Control Funds check packets - EVERY check transaction recorded here
XLA_DISTRIBUTION_LINKS SLA/XLA Links SLA lines back to source transactions (audit trail)
Page
Oracle Fusion PPM
A single cost transaction charged to a project task. The atomic unit of project
cost. E.g., 8 hrs labour, one AP invoice line, one expense claim. One row in
What is an Expenditure Item?
PJC_EXP_ITEMS_ALL. Every EI has Project+Task+Expenditure
Type+System Linkage+Amount.
Indirect overhead cost loaded onto direct project costs via a burden schedule.
Formula: Burden Cost = Direct Cost x Multiplier. Calculated separately in
What is Burden Cost?
PJC_BURDEN_COSTS - NOT mixed with direct costs. Multiple burden codes
can stack (admin + facilities + IT = total burden).
Grant award master table - one row per grant. Stores: AWARD_NUMBER,
What is GMS_AWARDS_ALL? SPONSOR info, START/END dates, CLOSE_DATE (hard stop),
IDC_SCHEDULE_ID, allowable cost rules. Equivalent to
Page
Oracle Fusion PPM
PPM rule engine that derives GL account code combinations from transaction
attributes (project type, expenditure type, organisation, employee grade)
What is AutoAccounting? during cost distribution. Configured in Setup > Project Accounting >
AutoAccounting. If setup is wrong, distribution process errors and costs stay in
PPM unposted.
11-step process: (1) Close Timesheets (2) Close Expenses (3) Process AP
Invoices (4) Distribute Costs (5) Distribute Burden (6) Transfer to GL (7)
What is the Period Close sequence?
Generate Revenue (8) Generate Invoices (9) Release Invoices (10) Close
PPM Period (11) Close GL Period. Steps MUST be done in this exact order.
Page
Oracle Fusion PPM
Page
Oracle Fusion PPM
Issue /
Root Cause How to Diagnose Fix
Symptom
PJC_EXP_ITEMS_ALL:
Cost
Distribute Costs ran but Transfer to COST_DISTRIBUTED_FLAG=Y but Run PRC: Transfer Journal
distributed but
GL not run XLA_EVENTS: Entries to GL
not in GL
EVENT_STATUS=UNPROCESSED
XCC_BC_PACKETS:
RESULT_CODE='F' |
PO blocked by Available Budget insufficient for PO Request budget revision
XCC_BC_RESULTS:
funds check amount OR reduce PO amount
AVAILABLE_AMOUNT <
DR_AMOUNT
PJB_REVENUE_LINES: No records
Run PRC: Generate Draft
Revenue not Revenue distribution not run OR for project |
Revenue; verify contract-
recognised billing plan not linked to contract PJB_CONTRACT_LINES_XREF:
project link
missing link
PJO_PLAN_VERSIONS_ALL:
Budget not Enable budgetary control
BUDGETARY_CONTROL_FLAG= BUDGETARY_CONTROL_FLAG=N
controlling on plan version and control
N on plan version | XCC_CONTROL_BUDGETS:
spend budget config
ENABLED_FLAG=N
Oracle Fusion PPM Expert Reference Guide | Complete Coverage: Foundation through Subledger Accounting
Covers all 9 modules, 45+ tables, real-world examples, and interview Q&A
Page