0% found this document useful (0 votes)
3 views35 pages

Projects

Oracle PPM architecture

Uploaded by

u_tamuli
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views35 pages

Projects

Oracle PPM architecture

Uploaded by

u_tamuli
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Oracle Fusion PPM

ORACLE FUSION
PROJECT PORTFOLIO MANAGEMENT

Concepts • Data Validation • Tables Reference


Interface & Base Tables • Interview Q&A • Step-by-Step Workflows

Module What It Does

Define projects, tasks, WBS, resources, expenditure types and project


Project Foundation
rules

Capture all costs: labour timesheets, supplier invoices, expenses,


Project Costing
equipment

Plan, approve, track and revise project cost & revenue budgets with
Project Budgeting & Forecasting
control

Invoice customers and recognise project revenue using multiple billing


Project Billing & Revenue
methods

Project Resource Management Assign people and equipment; track availability and utilisation metrics

Manage award funding, sponsor compliance, IDC recovery, and effort


Grants Management
certification

Prevent project overspending against approved budget using


Budgetary Control (PPM)
hard/advisory stops

End-of-period steps to distribute costs, interface GL, generate


Period Close Process
revenue/invoices

Customer contracts linked to projects for billing and revenue recognition


Project Contracts
rules

Page
Oracle Fusion PPM

Section 1: Introduction to Oracle Fusion PPM


Oracle Fusion Project Portfolio Management (PPM) is Oracles cloud-based, integrated project management
suite that manages the COMPLETE lifecycle of a project - from initial planning and resource allocation
through cost tracking, billing, revenue recognition, and financial reporting. It is a core module of Oracle Fusion
Cloud ERP and functions as a subledger, meaning all financial transactions ultimately flow through Subledger
Accounting (SLA/XLA) before reaching the General Ledger.

💡 Real-World Scenario: ABC Constructions Warehouse Project


ABC Constructions wins a Rs.5 Crore contract to build a warehouse for Reliance Infra.
PPM tracks every rupee: cement/steel materials, engineer timesheets, crane hire, site expenses.
Bills the customer at milestones (foundation complete, structure erect, handover).
Recognises revenue as work progresses - not just when invoiced.
Prevents overspending via budgetary control (PO blocked if budget exhausted).
Provides real-time dashboards to project sponsors showing budget vs actuals.

1.1 Native Integration Map


PPM does not work in isolation. It is deeply integrated with other Oracle Fusion modules:
• General Ledger (GL): All project costs and revenue post to GL via XLA Subledger Accounting. No direct posting to
GL_JE_LINES - always via XLA_AE_HEADERS and XLA_AE_LINES first.
• Accounts Payable (AP): Supplier invoices coded to projects automatically flow into PPM as Vendor Invoice
expenditure items (SYSTEM_LINKAGE = VI). The AP team enters the invoice once; PPM picks it up automatically.
• Accounts Receivable (AR): When a PPM draft invoice is released, it creates an AR invoice in
RA_CUSTOMER_TRX_ALL. The customer sees and pays this AR invoice.
• Procurement: Purchase Orders raised against projects trigger immediate budgetary control (funds check). The
encumbrance reserves budget before goods arrive.
• HR / HCM: Employee job grades, cost centres, and standard rates drive labour costing when timesheets are
entered against projects.

💡 Architecture Key Rule


EVERY financial transaction in PPM must pass through:
Source Transaction -> XLA Accounting Event -> XLA Journal Header -> XLA Journal Line ->
GL_JE_LINES
You CANNOT bypass SLA in Oracle Fusion PPM. This is the single most important architectural fact.

1.2 Key PPM Terminology


Term Definition Real-World Example

Top-level container for all work. Every WH-2024-001: Warehouse


Project cost/revenue must reference a Project. Cannot Construction for Reliance
charge anything without one. Infra

Foundation Work > PCC


Hierarchical decomposition of project work.
Task / WBS Laying, Reinforcement &
Controls what can be charged and billed.
Concrete

Page
Oracle Fusion PPM

Term Definition Real-World Example

Construction Contract:
Template defining billing, costing, budgetary
Project Type enables burden costs,
control rules. All projects inherit these defaults.
budgetary control

Construction Materials ->


Category of cost driving GL account derivation:
Expenditure Type GL Account 5001, Labour -
Labour, Materials, Travel, Equipment.
> 5002

8 hrs of Engineer time @


ONE cost transaction charged to a project task.
Expenditure Item Rs.500/hr = Rs.4,000 on
The atomic unit of project cost.
Foundation Work

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

Fixed-Price Contract with


Customer agreement defining billing terms.
Contract Reliance Infra:
Without a contract, no invoice can be generated.
Rs.5,00,00,000

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

PO for Steel Beams Rs.80L


Budget reservation when a PO is raised. Reduces
Encumbrance raised -> Available Budget
Available Budget before invoice arrives.
reduced immediately

DST Grant: 25% IDC on


Indirect Cost recovery from grant sponsors at
IDC direct costs. Rs.10L direct -
agreed rate. Mandatory for research grants.
> Rs.2.5L IDC

ICMR Research Grant


Grant funding master record. Controls all spending
Award Award #ICMR/2024/001:
and compliance for a sponsored project.
Rs.50,00,000

Page
Oracle Fusion PPM

Section 2: Project Foundation


Project Foundation is the backbone of Oracle PPM. It defines ALL master data: project types, templates, work
breakdown structures (tasks), organisations, expenditure types, and the rules governing how costs flow and
how revenue is recognised. No transaction can exist without valid Foundation data.

💡 Critical Rule: The 3-Part Transaction Key


EVERY transaction in PPM requires a valid combination of: Project + Task + Expenditure Type
Without this 3-part key: costs are rejected, invoices cannot be generated, revenue cannot be recognised.
AutoAccounting uses this 3-part key to derive the GL account code combination automatically.
Example: Project=WH-2024-001, Task=Foundation Work, Expenditure Type=Construction Materials -> GL:
1200-3400-5001

2.1 Project Lifecycle Statuses


A project moves through defined statuses. Costs can only be charged when the project is in specific statuses.
Status transitions are controlled by PJF_PROJECT_STATUSES_B (NEXT_ALLOWABLE_STATUS_CODE
column).

Cost
Status Meaning & Business Rules Real-World Use
Allowed?

Project being planned. Budget


Used during bid/tender phase before
Preliminary estimation phase. No transactions NO
contract is signed
permitted.

Formally approved. Budget baselined. Contract signed, purchase orders


Approved YES
Costs can now be charged. raised, team mobilised

Full project execution. Default working Day-to-day: timesheets, invoices,


Active YES
status. All transactions permitted. billing happening

Temporarily suspended (client dispute, Client disputes a payment; work


On Hold NO
funding gap). No new charges. pauses for 2 weeks

Project completed. No further


Warehouse handed over, final invoice
Closed transactions. Data retained for NO
paid, project closed
reporting.

Project abandoned. All transactions Client terminates contract; all costs


Cancelled NO
must be reversed before cancellation. must be written off

2.2 Project Type Classes


The Project Type Class is the most fundamental classification in PPM. It determines whether revenue can be
generated, whether costs are expensed or capitalised, and what billing rules apply.

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

Head Office Admin;


Employee Training
Internal overhead projects - not billed NO - cost
INDIRECT Programme; Internal IT
externally. Costs are absorbed. absorption
Upgrade; R&D
exploration

New factory construction


capitalised as Plant &
Capital investment projects. Costs capitalised NO - asset
CAPITAL Machinery; Software
into fixed assets via Oracle Assets. creation
development as
Intangible Asset

2.3 Work Breakdown Structure (WBS) - Detailed Explanation


The WBS is the hierarchical decomposition of a project into manageable, trackable tasks. Oracle PPM
supports unlimited WBS levels. Each task has flags controlling what can be charged and billed.

💡 Real-World WBS: Warehouse Construction Project WH-2024-001


Customer: Reliance Infra | Total Budget: Rs.5,00,00,000

LEVEL 1 - Site Preparation (TOP TASK) ............... Rs.50,00,000


Level 2 - Land Survey & Clearance ................ Rs.15,00,000 [Chargeable=Y, Billable=Y]
Level 2 - Excavation & Earthwork ................. Rs.35,00,000 [Chargeable=Y, Billable=Y]

LEVEL 1 - Foundation Work (TOP TASK) ................ Rs.80,00,000


Level 2 - PCC (Plain Cement Concrete) Laying ..... Rs.20,00,000 [Chargeable=Y, Billable=Y]
Level 2 - Reinforcement & Concrete Work .......... Rs.60,00,000 [Chargeable=Y, Billable=Y]

LEVEL 1 - Structural Steel (TOP TASK) ............... Rs.1,50,00,000


LEVEL 1 - Electrical & Plumbing (TOP TASK) .......... Rs.70,00,000
LEVEL 1 - Finishing & Handover (TOP TASK) ........... Rs.1,50,00,000

Task Flag Values What It Controls Real-World Impact

If Foundation Work has


Y = costs CAN be posted to this task. N =
CHARGEABLE=N, AP invoice
CHARGEABLE_FLAG Y/N summary/container task only - costs
for cement cannot be posted
rejected.
to it

Training costs on T&M


Y = costs on this task are billable to the
BILLABLE_FLAG Y/N project: BILLABLE=N means
customer. N = internal/non-billable.
not invoiced to client

Y = task eligible for invoice generation. Milestone invoice cannot be


READY_TO_BILL_FLAG Y/N
Must be Y before billing events can fire. raised until PM sets

Page
Oracle Fusion PPM

Task Flag Values What It Controls Real-World Impact

READY_TO_BILL=Y on the
task

2.4 Project Foundation Interface Tables


These staging tables are used to import project data via FBDI (File-Based Data Import) from external systems
such as legacy project systems, Excel uploads, or third-party tools.

Interface Table Purpose Key Columns

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

Import WBS task structure INTERFACE_TASK_ID, PROJECT_ID,


under existing projects. TASK_NUMBER, TASK_NAME,
PJF_TASKS_INTERFACE
Handles parent-child PARENT_TASK_ID, TOP_TASK_ID,
relationships. CHARGEABLE_FLAG, BILLABLE_FLAG

Import team member PROJECT_ID, PERSON_ID,


assignments to projects in PROJECT_ROLE_TYPE,
PJF_TEAM_MEMBERS_INTERFACE
bulk. Sets billing percentage START_DATE_ACTIVE,
per person. END_DATE_ACTIVE, BILLABLE_PERCENT

2.5 Project Foundation Base Tables

Table Name Purpose Key Columns to Know

PROJECT_ID, SEGMENT1 (Project Number),


Core project master. ONE row NAME, PROJECT_TYPE_ID,
PJF_PROJECTS_ALL_B per project. The most PROJECT_STATUS_CODE, START_DATE,
fundamental table in PPM. COMPLETION_DATE,
PROJECT_CURRENCY_CODE, ORG_ID

Multi-language translations of PROJECT_ID, LANGUAGE, NAME,


PJF_PROJECTS_ALL_TL
project name and description. LONG_NAME, DESCRIPTION

TASK_ID, PROJECT_ID, TASK_NUMBER,


View showing WBS task
TASK_NAME, TOP_TASK_ID,
PJF_TASKS_V hierarchy with parent-child
PARENT_TASK_ID, WBS_LEVEL,
relationships.
CHARGEABLE_FLAG, BILLABLE_FLAG

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

Valid project statuses and the PROJECT_STATUS_CODE,


PJF_PROJECT_STATUSES_B allowed transitions between PROJECT_STATUS_NAME,
them. NEXT_ALLOWABLE_STATUS_CODE

Page
Oracle Fusion PPM

Table Name Purpose Key Columns to Know

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

Expenditure category groupings EXPENDITURE_CATEGORY_ID,


PJF_EXP_CATEGORIES_B (Labour, Materials, Travel, EXPENDITURE_CATEGORY,
Equipment, Overheads). DESCRIPTION

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

Section 3: Project Costing


Project Costing is the financial heart of Oracle PPM. It captures ALL costs incurred against a project -
employee timesheets, supplier invoices, expense reports, equipment usage, and miscellaneous items. It
processes raw expenditure items, applies burden (overhead) costs, and transfers final accounting entries to
the General Ledger via Subledger Accounting (XLA).

💡 The Golden Rule of Project Costing


EVERY cost charged to a project MUST have a valid: Project + Task + Expenditure Type
This 3-part key drives: GL account derivation (AutoAccounting), billing eligibility, and burden calculations.
If any ONE of these three is invalid or missing, the cost transaction will be REJECTED.
The rejection reason is stored in TRANSACTION_REJECTION_CODE in PJC_TXN_XFACE_ALL.

3.1 Types of Costs - SYSTEM_LINKAGE_FUNCTION Complete Reference


SYSTEM_LINKAGE_FUNCTION is the most important code in Project Costing. It identifies the origin of every
expenditure item and drives accounting rules, billing eligibility, and processing logic.

Code Source System Real-World Example Stored In

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)

Vendor Invoice Cement Suppliers invoice Rs.3,50,000 for PJC_EXP_ITEMS_ALL (from


VI
(Accounts Payable) 700 bags coded to Foundation Work task AP_INVOICE_LINES)

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)

Tower Crane hired for 10 days @


Usage / Equipment PJC_EXP_ITEMS_ALL (manual or
USG Rs.15,000/day = Rs.1,50,000 on Structural
Costs equipment log)
Steel task

Inventory Issues to Construction bolts issued from stores PJC_EXP_ITEMS_ALL (from


INV
Project directly to warehouse project INV_MATERIAL_TRANSACTIONS)

Burden Transaction Cost


15% admin overhead on Rs.26,000 labour = PJC_BURDEN_COSTS (separate
BTC (Auto-calculated
Rs.3,900 overhead auto-created burden lines)
Overhead)

Work in Process Manufacturing overhead allocated to a PJC_EXP_ITEMS_ALL (from WIP


WIP
(Manufacturing) capital project module)

Project-to-Project Move Rs.5,000 cost mistakenly charged to PJC_TXN_XFACE_ALL (transfer


PJ
Transfer WH-001 to correct project WH-002 transaction)

3.2 Complete Cost Flow: AP Invoice to Project to GL

💡 Step-by-Step: Cement Supplier Invoice Rs.3,50,000 flowing to GL

Page
Oracle Fusion PPM

STEP 1: AP Invoice Entry


AP team creates supplier invoice: Cement Suppliers | Invoice No. INV-2024-CSB-001 | Rs.3,50,000
Invoice line coded: Project=WH-2024-001 | Task=Foundation Work | Exp Type=Construction Materials

STEP 2: AP Invoice Validation & Approval


3-way match: Purchase Order PO-CSB-001 + Goods Receipt GRN-001 + Invoice INV-001 -> MATCHED
AP Supervisor approves invoice -> Status changes from NEEDS VALIDATION to APPROVED

STEP 3: Oracle Creates Expenditure Item in Project Costing


PJC_EXP_ITEMS_ALL: EI_ID=100001 | Amount=Rs.3,50,000 | Type=Construction Materials |
Task=Foundation Work
SYSTEM_LINKAGE=VI | COST_DISTRIBUTED_FLAG=N (not yet sent to GL) | BILLABLE_FLAG=Y

STEP 4: Burden Calculation (Run: Distribute Burden Costs)


Burden Schedule: Admin 3% + Facilities 2% = 5% total overhead rate
Burden Amount = Rs.3,50,000 x 5% = Rs.17,500
Total Burdened Cost = Rs.3,50,000 + Rs.17,500 = Rs.3,67,500
New record in PJC_BURDEN_COSTS: BURDEN_MULTIPLIER=0.05, BURDEN_COST=17,500

STEP 5: Cost Distribution (Run: Distribute Costs)


AutoAccounting derives GL accounts from Project Type + Expenditure Type + Organization:
-> Dr: 1200-3400-5001-00 (Construction Materials Cost Account) Rs.3,67,500
-> Cr: 1200-2100-2001-00 (Accounts Payable Control Account) Rs.3,50,000
-> Cr: 1200-3400-7001-00 (Overhead Recovery Account) Rs.17,500
COST_DISTRIBUTED_FLAG updated to Y in PJC_EXP_ITEMS_ALL

STEP 6: Transfer to General Ledger (Run: Transfer Journal Entries to GL)


XLA_EVENTS: EVENT created (EVENT_TYPE=COST_DISTRIBUTION, APPLICATION_ID=101)
XLA_AE_HEADERS: Journal header created (ACCOUNTING_DATE=period end)
XLA_AE_LINES: Dr/Cr lines created and linked to EXPENDITURE_ITEM_ID via XLA_DISTRIBUTION_LINKS
GL_JE_LINES: Final posting to General Ledger

3.3 Burden (Overhead) Cost Processing - Detailed


Burden costs represent indirect overhead loaded onto direct project costs. They ensure the true cost of a
project includes all overhead - not just direct labour and materials.

• Formula: Burden Cost = Direct Cost x Burden Multiplier


• Burden Schedule is attached to the Project Type - all projects of that type inherit same rules
• Multiple burden cost codes stack: Admin 5% + Facilities 3% + IT 2% = 10% total
• Burden costs appear as SEPARATE expenditure items in PJC_BURDEN_COSTS
• Run PRC: Distribute Burden Costs scheduled process to calculate and post overhead

💡 Real-World Burden Stacking Example: Rs.1,00,000 Labour Cost


Direct Labour Cost: Rs.1,00,000

Burden Cost Code 1: Administration Overhead @ 5% = Rs.5,000

Page
Oracle Fusion PPM

Burden Cost Code 2: Facilities / Rent Overhead @ 8% = Rs.8,000


Burden Cost Code 3: IT Infrastructure Overhead @ 3% = Rs.3,000
Burden Cost Code 4: HR & Training Overhead @ 4% = Rs.4,000
-----
Total Burden Amount: Rs.20,000 (20%)
Total Burdened Cost (used for pricing & reporting): Rs.1,20,000

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.

3.4 Project Costing Interface Tables

Table Name Purpose Key Columns

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

3.5 Project Costing Base Tables

Table Name Purpose Key Columns to Know

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

Expenditure batch headers that EXPENDITURE_ID,


group related items (e.g., all EXPENDITURE_STATUS_CODE,
PJC_EXPENDITURES_ALL
timesheets for week ending 15- EXPENDITURE_ENDING_DATE,
Jul). INCURRED_BY_PERSON_ID,

Page
Oracle Fusion PPM

Table Name Purpose Key Columns to Know

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

Pre-compiled burden schedule IND_COMPILED_SET_ID,


rate sets for fast calculation. COST_PLUS_STRUCTURE,
PJC_IND_COMPILED_SETS
Generated when burden COMPILED_SET_READY_FLAG,
schedule is compiled. IND_COST_CODE, MULTIPLIER

Summarised project/task cost by PROJECT_ID, TASK_ID, PERIOD_NAME,


PJC_COST_SUMMARY_ALL period for fast reporting. Updated ITD_RAW_COST, ITD_BURDENED_COST,
by distribution processes. PTD_RAW_COST, PTD_BURDENED_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

Section 4: Project Budgeting & Forecasting


Project Budgeting enables project managers to create formal cost and revenue budgets at project, task, or
resource level. Forecasting provides ongoing revision of expected final costs. When budgetary control is
enabled, the Approved Cost Budget becomes the control budget that actively prevents overspending.

4.1 Budget Plan Types Explained

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.

Project 60% done


Rolling estimate of expected - Revenue
Revenue Forecast final revenue. Used for cash PLAN_CLASS_CODE = FORECAST Forecast updated
flow projections. to reflect expected
final billing.

4.2 Budget Lifecycle - Status Flow & Explanation


• WORKING: PM creates and edits budget lines. Fully editable, no approval needed. Can add/modify any task
line.
◦ Real example: PM enters Rs.80L for Foundation Work, Rs.1.5Cr for Structural Steel, etc.
• SUBMITTED: Sent to budget approver via Oracle Approvals Management (AME) workflow. Locked for
editing.
◦ Real example: PM submits budget for Finance Manager Anita to review and approve.
• BASELINED (Approved): Approved and locked permanently. This becomes the Approved Budget used for
control.
◦ CURRENT_FLAG = Y | VERSION_STATUS_CODE = BASELINED | BUDGETARY_CONTROL_FLAG = Y
• REVISED: After baseline, PM requests budget change. New WORKING version created while original is
retained.
◦ Real example: Steel prices increase; Foundation Work needs Rs.10L more. New revision submitted.
• ORIGINAL BUDGET: The very first baselined version is marked CURRENT_ORIGINAL_FLAG = Y. Retained
forever for variance analysis.

Page
Oracle Fusion PPM

4.3 Budget vs Actual Variance Analysis

Committed Forecast Final


Task Budget (Rs) Actual (Rs) Variance Status
(Rs) (Rs)

Site Preparation 50,00,000 48,50,000 0 48,50,000 +1,50,000 ON TRACK

OVER
Foundation Work 80,00,000 85,00,000 0 85,00,000 -5,00,000
BUDGET

Structural Steel 1,50,00,000 1,10,00,000 40,00,000 1,55,00,000 -5,00,000 AT RISK

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

TOTAL PROJECT 5,00,00,000 2,85,50,000 45,00,000 5,03,50,000 -3,50,000 AT RISK

4.4 Budgeting Interface & Base Tables

Table Name Type Purpose & Key Columns

Import budget/forecast lines via FBDI. INTERFACE_ID,


PLAN_VERSION_ID, PROJECT_ID, TASK_ID,
PJO_PLAN_LINES_INTERFACE Interface PERIOD_NAME, QUANTITY, RAW_COST,
BURDENED_COST, REVENUE_AMOUNT,
STATUS_CODE, REJECTION_CODE

Import budget version headers. INTERFACE_VERSION_ID,


PJO_BUDGET_VERSIONS_INTERFACE Interface PROJECT_ID, FIN_PLAN_TYPE_ID, VERSION_TYPE,
APPROVED_COST_PLAN_TYPE_FLAG

Budget/forecast version header. PLAN_VERSION_ID,


PROJECT_ID, VERSION_STATUS_CODE
PJO_PLAN_VERSIONS_ALL Base (WORKING/SUBMITTED/BASELINED), CURRENT_FLAG,
CURRENT_ORIGINAL_FLAG, BASELINED_DATE,
BUDGETARY_CONTROL_FLAG

Budget/forecast line detail per task per period.


PLAN_LINE_ID, PLAN_VERSION_ID, TASK_ID,
PJO_PLAN_LINES Base
PERIOD_NAME, QUANTITY, RAW_COST,
BURDENED_COST, REVENUE, CURRENCY_CODE

Financial plan type definitions. FIN_PLAN_TYPE_ID,


APPROVED_COST_PLAN_TYPE_FLAG,
PJO_FIN_PLAN_TYPES_B Base APPROVED_REV_PLAN_TYPE_FLAG,
BUDGETARY_CONTROL_FLAG, PLAN_CLASS_CODE
(BUDGET/FORECAST)

Budget-specific version attributes. BUDGET_VERSION_ID,


BUDGET_STATUS_CODE, CURRENT_FLAG,
PJO_BUDGET_VERSIONS Base
BASELINED_DATE, RAW_COST, BURDENED_COST,
REVENUE

Page
Oracle Fusion PPM

Section 5: Project Billing & Revenue


Project Billing generates invoices to customers based on the project contract and billing plan. Revenue
recognition follows project progress and performance obligations - not simply billing dates or cash receipt.
Understanding the difference between invoicing and revenue recognition is critical.

💡 Key Concept: Invoicing vs Revenue Recognition


Invoicing = Requesting payment from customer (creates AR invoice)
Revenue Recognition = Recording earned revenue in P&L (may differ from invoice timing)

Example - Milestone Project: Foundation complete in Month 3. Invoice raised: Rs.80L.


-> Revenue Recognised = Rs.80L (milestone achieved = earned)

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

5.1 Billing Methods - Detailed Comparison

Method How It Works When to Use Real-World Example

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

Long infrastructure Road project: Certified 60%


Percent Invoice based on percentage of work
projects, highways, complete on Rs.50Cr contract ->
Complete completed. PM certifies completion %.
dams Invoice Rs.30Cr

Internal recharges, Corporate IT recharging


Invoice as costs are posted, near real-
As Incurred shared services, departments: monthly actual
time. Minimal revenue recognition lag.
inter-company costs invoiced automatically

5.2 Billing Cycle: Step-by-Step Cost to Invoice to GL

💡 Complete Billing Cycle: Milestone Invoice for Foundation Work Completion

Page
Oracle Fusion PPM

STEP 1: Costs Posted to Project


Labour: 200 hrs x Rs.650 = Rs.1,30,000 | Cement: Rs.3,50,000 | Equipment: Rs.80,000
Total Direct Cost: Rs.5,60,000 | Burdened Cost: Rs.6,16,000 (10% overhead)

STEP 2: Oracle Marks Costs as Billable


Task BILLABLE_FLAG=Y | Expenditure items: BILLABLE_FLAG=Y in PJC_EXP_ITEMS_ALL

STEP 3: Milestone Event Triggered


PM certifies Foundation Work complete. Event in PJB_EVENTS: BILLED_FLAG set from N to Y.
EVENT_TYPE=MILESTONE | BILL_AMOUNT=Rs.80,00,000 | REVENUE_AMOUNT=Rs.80,00,000

STEP 4: Run PRC: Generate Draft Invoices


PJB_DRAFT_INVOICES_ALL: DRAFT_INVOICE_NUM=001 | AMOUNT=Rs.80,00,000 | Status=DRAFT
PM reviews invoice in PPM Invoice Review page

STEP 5: Invoice Released


PM approves draft -> Invoice released -> AR Invoice created in RA_CUSTOMER_TRX_ALL
Invoice sent to customer Reliance Infra

STEP 6: Revenue Recognised (Run: Generate Draft Revenue)


PJB_REVENUE_LINES: AMOUNT=Rs.80,00,000 | ACCRUE_THROUGH_DATE=period end
Accounting: Dr Accounts Receivable Rs.80L | Cr Project Revenue Rs.80L

STEP 7: Customer Pays (30 days later)


Dr Bank Account Rs.80L | Cr Accounts Receivable Rs.80L

5.3 Billing & Revenue Base Tables

Table Name Purpose Key Columns

BILL_PLAN_ID, PROJECT_ID, TASK_ID,


Billing plan/method per project or BILL_TYPE
PJB_BILL_PLANS_ALL task. Defines how invoices are (T&M/MILESTONE/COST_PLUS),
generated. AUTO_APPROVE_INVOICE_FLAG,
INVOICE_METHOD_CODE

EVENT_ID, PROJECT_ID, TASK_ID,


Billing events and milestones. EVENT_TYPE, COMPLETION_DATE,
PJB_EVENTS BILLED_FLAG=Y means invoice BILL_AMOUNT, REVENUE_AMOUNT,
has been generated. BILLED_FLAG,
REVENUE_DISTRIBUTED_FLAG

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

Table Name Purpose Key Columns

PROJECT_ID, TASK_ID, EVENT_ID,


Revenue recognised per period.
EXPENDITURE_ITEM_ID, AMOUNT,
PJB_REVENUE_LINES The financial record of earned
ACCRUE_THROUGH_DATE,
project revenue.
TRANSFER_STATUS_CODE

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

Section 6: Project Resource Management


Resource Management controls who works on projects, when, and at what capacity. It connects HR (who the
person is and their cost rate) with Project execution (what they work on) and Finance (how much their time
costs the project and bills the client).

💡 Key Metric: Resource Utilisation


Formula: Resource Utilisation = (Billable Hours / Total Available Hours) x 100

Industry Benchmarks for Professional Services:


Below 65%: Under-utilised - revenue leakage, resource is too idle
65% - 75%: Acceptable range - some buffer for admin and non-billable work
75% - 85%: TARGET range - optimal balance of billing and sustainability
Above 90%: Overloaded - risk of quality issues, burnout, attrition

Real-World: IT Consulting Firm with 50 engineers at 80% utilisation:


Billable hrs/year per person = 2080 x 80% = 1,664 hrs
Bill rate Rs.800/hr -> Revenue per person = Rs.13,31,200/year
Total Revenue from 50 engineers = Rs.6.66 Crore/year

6.1 Resource Request to Assignment Flow


This is the standard process when a project needs a skilled resource:

Step 1: PM raises Resource Request in Oracle PPM


◦ "Senior Civil Engineer | Task: Foundation Work | 40 hrs/week | 6 weeks | Start: 01-Jul-2024"
◦ Record created in PJR_RESOURCE_REQUESTS: STATUS_CODE = SUBMITTED
Step 2: Resource Manager Reviews Pool
◦ Resource Manager sees request. Reviews PJR_FCST_EXCEPTIONS for availability conflicts.
◦ Shortlists: Ramesh Kumar (80% available), Sunil Mehta (100% available but less experience)
Step 3: Assignment Confirmed
◦ Ramesh Kumar confirmed: PJR_ASSIGNMENTS created | ASSIGNMENT_TYPE = CONFIRMED
◦ START_DATE=01-Jul | END_DATE=11-Aug | BILLABLE_FLAG=Y | Allocation=80%
Step 4: Timesheet Entry Weekly
◦ Ramesh enters timesheet: Week 1: 42 hrs on Foundation Work task
◦ Timesheet submitted -> Approved by PM -> Expenditure Item created in PJC_EXP_ITEMS_ALL
Step 5: Cost & Billing Calculated
◦ Cost: 42 hrs x Rs.650/hr (standard cost rate) = Rs.27,300 raw cost
◦ Bill: 42 hrs x Rs.900/hr (bill rate) = Rs.37,800 billing amount
◦ Margin on this timesheet: Rs.10,500 (38.5% gross margin)

6.2 Resource Management Base Tables

Page
Oracle Fusion PPM

Table Name Purpose Key Columns

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

ASSIGNMENT_ID, PROJECT_ID, TASK_ID,


PERSON_ID, ASSIGNMENT_TYPE
Confirmed resource assignments
PJR_ASSIGNMENTS (PROPOSED/CONFIRMED), START_DATE,
to project tasks.
END_DATE, STAFFING_PRIORITY_CODE,
BILLABLE_FLAG

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

Section 7: Grants Management


Grants Management handles externally funded projects - research grants, government awards, NGO funding.
It adds strict compliance controls on top of standard project management: award terms, allowable costs,
indirect cost recovery, effort certification, and mandatory audit trails for sponsor reporting.

💡 Real-World: ICMR Research Grant - Diabetes Drug Study


Award: ICMR/2024/DIAB/001 | Sponsor: ICMR (Indian Council of Medical Research)
Amount: Rs.50,00,000 | Period: 01-Apr-2024 to 31-Mar-2027
IDC Rate: 25% of direct costs | Close Date: 30-Sep-2027

Budget Breakdown (Award Budget - NOT regular project budget):


Salaries & Wages (Allowable): Rs.20,00,000
Reagents & Lab Supplies (Allowable): Rs.15,00,000
Equipment (Allowable up to Rs.5L): Rs.5,00,000
Travel (Allowable - domestic only): Rs.2,00,000
Indirect Costs @ 25%: Rs.8,00,000
TOTAL: Rs.50,00,000

Non-Allowable Costs (will be BLOCKED by Grants module):


Alcoholic beverages, entertainment, first-class travel, penalties/fines
Any cost posted after Close Date 30-Sep-2027 -> HARD BLOCKED

7.1 Key Grants Terminology

Term Definition Key Table Real-World Example

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

The funding agency providing the ICMR, DST, DBT, CSIR,


Sponsor award. Could be government, NGO, GMS_SPONSORS World Bank, USAID, NIH,
international body. Gates Foundation

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

Overhead recovered from sponsor Rs.10L direct costs @ 25%


IDC (Indirect GMS_AWARDS_ALL
at agreed rate on direct costs. Also IDC = Rs.2.5L overhead
Cost) (IDC_SCHEDULE_ID)
called F&A (Facilities & Admin). recovered from ICMR

Budget approved by sponsor. Salaries budget: Rs.20L.


Award Budget GMS_BUDGET_VERSIONS
SEPARATE from project budget. Cannot spend >Rs.20L on

Page
Oracle Fusion PPM

Term Definition Key Table Real-World Example

Controls per-cost-category salaries even if other


spending. categories underspent.

Award closes 31-Mar-2027.


HARD STOP date. No costs can be
GMS_AWARDS_ALL On 01-Apr-2027, system
Close Date charged after this date, even if
(CLOSE_DATE) BLOCKS all new charges
award budget remains.
automatically

7.2 Grants Management Base Tables

Table Name Purpose Key Columns

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

Personnel effort certifications for PERSONNEL_ID, AWARD_ID, PERSON_ID,


GMS_PERSONNEL compliance. PIs must certify % effort EFFORT_PERCENT,
on grant. CERTIFICATION_DATE, STATUS_CODE

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

Section 8: Budgetary Control in PPM


PPM Budgetary Control prevents project managers and procurement teams from committing or spending
more than the approved project budget. Every purchase requisition, purchase order, and supplier invoice is
checked against available budget BEFORE being processed. This is the funds check.

💡 The Most Important Concept: Available Budget Formula


Available Budget = Approved Budget - Actual Costs - Commitments (Encumbrances)

NEVER confuse Available Budget with Approved Budget!

Example: Project budget Rs.1,50,00,000 for Structural Steel


Approved Budget: Rs. 1,50,00,000
Less: Actual Costs (invoices paid): Rs. 75,00,000
Less: Commitments (open POs): Rs. 60,00,000
= AVAILABLE BUDGET: Rs. 15,00,000

Encumbrance: When PO is raised, Rs.60L is IMMEDIATELY reserved (encumbered) from budget.


When invoice arrives and is paid, the encumbrance is RELEASED and actuals increase by same amount.

8.1 Budgetary Control Levels

Control Level How It Works Best For Limitation

Budget checked across ALL tasks Simple lump-sum


Cannot prevent overspend on
Project Level combined. One task can overspend contracts, internal
specific deliverables
as long as total is within budget. projects

Budget per top-level WBS task Multi-phase projects


Most practical balance of
Top Task Level enforced independently. Most with distinct
control and flexibility
common implementation level. deliverables

Government contracts,
Budget per individual task strictly Can be too restrictive; requires
Task Level grants, tightly-
enforced. Most granular. detailed budgeting
controlled projects

Budget per resource class Research grants with


Complex setup; requires
Resource Level (Labour/Materials/Equipment) category-specific
resource-level budgets
checked separately. budgets

8.2 Funds Check Example: Structural Steel Task

💡 Funds Check Failure Example - Step by Step


Project: WH-2024-001 | Task: Structural Steel | Approved Budget: Rs.1,50,00,000
Control Level: Top Task | Funds Check Mode: ABSOLUTE (Hard Stop)

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

Aug 2024: PO-002 raised for Reinforcement Steel Rs.60,00,000


-> Encumbrance Rs.60L created | Available = Rs.75L - Rs.60L = Rs.15L
-> XCC_BC_PACKETS: RESULT_CODE=A (Approved)

Sep 2024: PO-003 raised for Steel Rods Rs.20,00,000


-> FUNDS CHECK: Available = Rs.15L < Requested Rs.20L
-> XCC_BC_PACKETS: RESULT_CODE=F (FAILED)
-> Oracle BLOCKS PO-003. Cannot be approved.
-> PM must request budget revision of Rs.5L+ to proceed.

8.3 Budgetary Control Base Tables

Table Name Module Purpose & Key Columns

Funds check packet for EVERY transaction checked.


PACKET_ID, LEDGER_ID, PROJECT_ID, TASK_ID,
XCC_BC_PACKETS Budgetary Control
FUNDS_CHECK_MODE (R=Reserve/Hard Stop,
C=Check/Advisory), RESULT_CODE (A=Approved, F=Failed)

Result details per funds check line. PACKET_ID,


XCC_BC_RESULTS Budgetary Control PERIOD_NAME, DR_AMOUNT, CR_AMOUNT,
AVAILABLE_AMOUNT, RESULT_CODE

Control budget configuration per project.


CONTROL_BUDGET_ID, PROJECT_ID,
XCC_CONTROL_BUDGETS Budgetary Control CONTROL_LEVEL_CODE (PROJECT/TOP_TASK/TASK),
FUNDS_CHECK_LEVEL_CODE (ABSOLUTE/ADVISORY),
ENABLED_FLAG

BUDGETARY_CONTROL_FLAG = Y on this record marks it


PJO_PLAN_VERSIONS_ALL Budgeting
as the active control budget for funds checking.

Page
Oracle Fusion PPM

Section 9: Project Contract Management


Project Contracts link customer agreements to projects for billing and revenue recognition. A contract defines
what is being delivered, at what price, on what terms, and how revenue is recognised. Without a contract, a
Contract-type project cannot generate revenue or invoices.

9.1 Contract Structure

Component Description Key Table Real-World Example

Contract with Reliance


Customer, currency, start/end
Infra: Rs.5Cr | 90-day
Contract Header date, payment terms, overall OKC_K_HEADERS_ALL_B
payment terms | Start Apr-
contract value.
24 | End Mar-25

Specific deliverable or Line 1: Civil Construction


Contract Lines performance obligation with its OKC_K_LINES_B Rs.4Cr | Line 2: Electrical
price and revenue method. & Plumbing Rs.1Cr

Contract Line 1 -> Project


Projects delivering the work WH-2024-001 | Contract
Associated Project PJB_CONTRACT_LINES_XREF
under each contract line. Line 2 -> Project WH-
ELEC-001

Maximum billing per month


Hard/soft limits on billing per Rs.50L. Cannot invoice
Billing Controls OKS_BILL_CONT_LINES
period or total. more than Rs.50L in any
month.

How revenue is recognised:


PJB_CONTRACT_LINES_XREF Civil: Milestone-based |
Revenue Method milestone, % complete, T&M,
(REV_DIST_RULE) Electrical: % complete
as-incurred.

9.2 Contract Management Base Tables

Table Name Purpose Key Columns

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

Contract lines / performance ID (LINE_ID), CHR_ID (Contract_ID),


OKC_K_LINES_B obligations. One line per START_DATE, END_DATE, PRICE_UNIT,
deliverable. PRICE_NEGOTIATED, STATUS_CODE

ID, CHR_ID, RLE_CODE


Parties on the contract
OKC_K_PARTY_ROLES_B (CUSTOMER/VENDOR), OBJECT1_ID1
(customer, vendor/contractor).
(Party_ID)

Critical link table: connects


CONTRACT_LINE_ID, PROJECT_ID,
PJB_CONTRACT_LINES_XREF contract lines to project/task for
TASK_ID, BILL_PLAN_ID, REV_DIST_RULE
billing.

Page
Oracle Fusion PPM

Section 10: PPM Period Close Process


The period close process ensures all project transactions are fully processed, distributed to GL, and the
accounting period is properly closed. This is a SEQUENCED process - steps must be performed in strict
order. Skipping any step causes downstream failures and incomplete financial statements.

💡 Period Close is Sequence-Dependent - Critical Warning


You CANNOT close the PPM period if unprocessed transactions exist.
Cost Distribution MUST run BEFORE GL Transfer.
Revenue Generation MUST run BEFORE Invoice Generation.
AR Release MUST happen BEFORE GL Period Close.

Common real-world mistake: Closing GL period before releasing project invoices.


Result: AR invoices created in next period, revenue recognised in wrong period.
Fix: Always complete ALL 11 steps in exact order shown below.

Step Activity Key Table / Process Real-World Impact if Skipped

Ensure all employee


Engineer Ramesh has 40 hrs
1. Close timesheets submitted
PJC_TM_ITEMS_ALL unapproved. Labour cost Rs.26,000
Timesheets and approved for the
missing from July P&L.
period.

Ensure all project


2. Close expense reports Site manager travel Rs.8,500 not
PJC_EXP_ITEMS_ALL (ER)
Expenses submitted and captured. Project cost understated.
processed.

Ensure all supplier


Cement supplier invoice Rs.3.5L not
3. Process AP invoices coded to
PJC_EXP_ITEMS_ALL (VI) processed. Project cost understated by
Invoices projects are validated
Rs.3.5L.
and approved.

Run PRC: Distribute


4. Distribute Costs. Processes Costs exist in PPM but NOT posted to
PJC_COST_DIST_LINES_ALL
Costs pending EIs and creates GL. GL cost account wrong/zero.
GL distribution lines.

Run PRC: Distribute


Overhead missing from project
5. Distribute Burden Costs. Calculates
PJC_BURDEN_COSTS reporting. True burdened cost
Burden and posts overhead
incorrect.
amounts.

Run PRC: Transfer


6. Transfer to Journal Entries to GL. XLA_AE_HEADERS, Project costs not visible in GL P&L
GL Creates XLA entries and XLA_AE_LINES reports. Finance team sees zero cost.
posts to GL.

Run PRC: Generate Revenue recognition incomplete. P&L


7. Generate
Draft Revenue. Accrues PJB_REVENUE_LINES understated. Deferred revenue
Revenue
earned project revenue. incorrect.

Run PRC: Generate Customer billing delayed. Cash flow


8. Generate
Draft Invoices. Creates PJB_DRAFT_INVOICES_ALL impact. DSO (Days Sales Outstanding)
Invoices
billing invoices for review. increases.

Page
Oracle Fusion PPM

Step Activity Key Table / Process Real-World Impact if Skipped

Approve and release


9. Release draft invoices to AR. No AR invoice. Customer cannot pay.
RA_CUSTOMER_TRX_ALL
Invoices Customer-visible invoice Revenue and AR both zero for month.
created.

Set PPM accounting


Late transactions can be backdated
10. Close PPM period to CLOSED.
PA_PERIODS_ALL into closed periods causing
Period Prevents further
restatements.
transactions in period.

Close GL period after all


11. Close GL Must be last step. Prevents any further
subledger entries GL_PERIOD_STATUSES
Period posting to the closed financial period.
confirmed.

Page
Oracle Fusion PPM

Section 11: Subledger Accounting (XLA) for PPM


Oracle PPM uses the Subledger Accounting (SLA/XLA) module as a mandatory intermediary between project
transactions and the General Ledger. Every cost, revenue, and billing transaction generates XLA accounting
events. This cannot be bypassed.

11.1 XLA Transaction Flow


Every PPM financial transaction follows this exact path:

💡 XLA Accounting Flow: AP Invoice for Cement Rs.3,50,000


1. AP Invoice approved + coded to PPM project
|
v
2. XLA_EVENTS created
EVENT_ID=5001 | APPLICATION_ID=101 (PPM) | EVENT_TYPE_CODE=COST_DISTRIBUTION
ENTITY_CODE=EXPENDITURES | SOURCE_ID_INT_1=EXPENDITURE_ITEM_ID |
EVENT_STATUS_CODE=PROCESSED
|
v
3. XLA_AE_HEADERS created (Journal Entry Header)
AE_HEADER_ID=8001 | EVENT_ID=5001 | LEDGER_ID=100 | ACCOUNTING_DATE=31-Jul-2024
JE_CATEGORY_NAME=Project Accounting | ACCOUNTING_ENTRY_STATUS_CODE=FINAL
|
v
4. XLA_AE_LINES created (Debit/Credit lines)
Line 1: Dr CODE_COMBINATION_ID=1200-3400-5001 | ACCOUNTED_DR=3,50,000 (Materials Cost)
Line 2: Cr CODE_COMBINATION_ID=1200-2100-2001 | ACCOUNTED_CR=3,50,000 (AP Payable)
ACCOUNTING_CLASS_CODE=CONSTRUCTION_MATERIALS_COST
|
v
5. XLA_DISTRIBUTION_LINKS created (Audit Trail)
AE_HEADER_ID=8001 | AE_LINE_NUM=1 |
SOURCE_DISTRIBUTION_ID_NUM_1=EXPENDITURE_ITEM_ID=100001
(This links the GL entry back to the original expenditure item - full audit trail)
|
v
6. GL_JE_LINES populated (General Ledger)
Final GL entry visible in GL Balance Sheet and P&L reports

11.2 AutoAccounting - How GL Codes Are Derived


AutoAccounting is the Oracle PPM rule engine that automatically derives the GL account code combination
from project transaction attributes. Without AutoAccounting correctly set up, cost distribution will error.

💡 AutoAccounting Configuration & Example

Page
Oracle Fusion PPM

AutoAccounting reads these INPUT attributes from each transaction:


-> Project Type (e.g., Construction Contract)
-> Expenditure Type (e.g., Construction Materials)
-> Task (e.g., Foundation Work)
-> Organization (e.g., Site Operations Dept)
-> Employee Job Grade (for labour costing rules)

AutoAccounting OUTPUTS the GL Code Combination (5-segment example):


Company - Department - Account - Sub-Account - InterCompany

Example 1: Project Type=Construction | Exp Type=Construction Materials | Org=Site Ops


-> GL: 1200 - 3400 - 5001 - 00 - 00 (Site Construction Materials Cost)

Example 2: Project Type=Construction | Exp Type=Labour | Org=Site Ops


-> GL: 1200 - 3400 - 5002 - 00 - 00 (Site Labour Cost)

Example 3: Project Type=Indirect | Exp Type=Training | Org=Head Office


-> GL: 1100 - 1000 - 6001 - 00 - 00 (HO Training Expense)

If AutoAccounting FAILS: Transaction goes to ERROR status. Fix the setup rule first.

11.3 XLA Key Tables

Table Name Purpose Key Columns

EVENT_ID, APPLICATION_ID (101=PPM),


Accounting events raised by PPM for ENTITY_CODE, SOURCE_ID_INT_1 (EI_ID),
XLA_EVENTS
every financial transaction. EVENT_TYPE_CODE, EVENT_DATE,
EVENT_STATUS_CODE

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

Section 12: Oracle PPM Table Prefix Decoder


Interviewers frequently ask what each table prefix stands for. Know these cold - they identify the module
immediately from any table name.

Prefix Stands For Module Example Table Remember By

F = Foundation (the
PJF Project Foundation Project Foundation PJF_PROJECTS_ALL_B
base/master data)

C = Costing (all cost


PJC Project Costing Project Costing PJC_EXP_ITEMS_ALL
transactions)

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)

Resource R = Resources (people


PJR Project Resources PJR_ASSIGNMENTS
Management allocation)

Grants Management GMS = Grants


GMS Grants Management GMS_AWARDS_ALL
System Management System

Contract K = Kontracts (OKC_K


OKC Oracle Contracts (Core) OKC_K_HEADERS_ALL_B
Management = Oracle Kontracts)

Oracle Contracts Contract Service


OKS OKS_BILL_CONT_LINES S = Service billing
Service Billing

XCC = eXpenditure
Oracle Budgetary
XCC Budgetary Control XCC_BC_PACKETS Control &
Control
Commitments

Subledger XLA_AE_HEADERS, XLA = eXtended


XLA Subledger Accounting
Accounting / GL XLA_AE_LINES Ledger Accounting

PA = Project
Project Accounting General PPM
PA PA_PERIODS_ALL Accounting (older
(legacy) (legacy)
prefix)

Page
Oracle Fusion PPM

Section 13: Master Reference - All PPM Tables

Interface Tables Quick Reference

Interface Table Module Purpose

PJF_PROJECTS_INTERFACE Foundation Import project headers in bulk (migration, FBDI)

PJF_TASKS_INTERFACE Foundation Import project tasks / WBS hierarchy

PJF_TEAM_MEMBERS_INTERFACE Foundation Import team member assignments to projects

MAIN costing interface: import all expenditure types


PJC_TXN_XFACE_ALL Costing
(timesheet, invoice, expense, equipment)

Document lines for imported cost transactions


PJC_TXN_DOCUMENT_LINES Costing
(PO/invoice reference)

Cross-charge / transfer price import between


PJC_TP_XFACE_ALL Costing
organisations

PJO_PLAN_LINES_INTERFACE Budgeting Import budget or forecast lines by task by period

PJO_BUDGET_VERSIONS_INTERFACE Budgeting Import budget version headers (plan type, version type)

PJB_EVENTS_INTERFACE Billing Import billing events / milestone completions

Base Tables Complete Reference

Base Table Module Key Purpose

Project master record - one row per project - THE most


PJF_PROJECTS_ALL_B Foundation
fundamental table

PJF_PROJECTS_ALL_TL Foundation Multi-language project name/description translations

Project task / WBS hierarchy view with chargeable and billable


PJF_TASKS_V Foundation
flags

Project type templates (CONTRACT/INDIRECT/CAPITAL) with


PJF_PROJECT_TYPES_B Foundation
default rules

PJF_PROJECT_STATUSES_B Foundation Valid project statuses and allowed status transitions

Expenditure type master - drives AutoAccounting and billing


PJF_EXP_TYPES_B Foundation
eligibility

Expenditure category groupings (Labour, Materials, Travel,


PJF_EXP_CATEGORIES_B Foundation
Equipment)

PJF_TEAM_MEMBERS Foundation Team member assignments to projects with role and billing %

Project organisation hierarchy for cost reporting and


PJF_ORGANIZATIONS_DENORM Foundation
AutoAccounting

Page
Oracle Fusion PPM

Base Table Module Key Purpose

EVERY cost transaction charged to a project - the atomic cost


PJC_EXP_ITEMS_ALL Costing
unit

Expenditure batch headers grouping related items by


PJC_EXPENDITURES_ALL Costing
week/period

PJC_COST_DIST_LINES_ALL Costing GL distribution lines (Dr/Cr) created during cost distribution

Overhead/burden cost details per expenditure item (separate


PJC_BURDEN_COSTS Costing
from direct)

PJC_IND_COMPILED_SETS Costing Pre-compiled burden schedules and multiplier rates

PJC_COST_SUMMARY_ALL Costing Summarised cost by project/task/period for fast reporting

Transaction source configuration (duplicate/reversal rules per


PJC_TXN_SOURCES Costing
source)

PJO_PLAN_VERSIONS_ALL Budgeting Budget/forecast version header with status and control flags

PJO_PLAN_LINES Budgeting Budget/forecast line detail per task per period

Financial plan type definitions (budget vs forecast, cost vs


PJO_FIN_PLAN_TYPES_B Budgeting
revenue)

PJO_BUDGET_VERSIONS Budgeting Budget version attributes including baselined amounts

PJB_BILL_PLANS_ALL Billing Billing plan/method definition per project or task

PJB_BILL_RATES_ALL Billing Bill rates for T&M billing by job title or person

Billing events and milestones - BILLED_FLAG=Y means


PJB_EVENTS Billing
invoiced

PJB_DRAFT_INVOICES_ALL Billing Draft invoice headers before release to AR

PJB_DRAFT_INVOICE_ITEMS Billing Draft invoice line items (linked to EI or event)

PJB_REVENUE_LINES Billing Revenue recognised per period - the P&L revenue record

PJB_AGREEMENTS_ALL Billing Customer funding agreements controlling max billing/revenue

PJB_FUNDING_ALL Billing Project funding allocations against customer agreements

PJR_RESOURCE_REQUESTS Resources Resource requests raised by project managers

PJR_ASSIGNMENTS Resources Confirmed resource assignments to project tasks

PJR_FCST_EXCEPTIONS Resources Forecast over/under-allocation exceptions for planning

GMS_AWARDS_ALL Grants Grant award master - ONE row per grant/award

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

GMS_FUNDING_PATTERNS Grants Award funding distribution across tasks and periods

GMS_SPONSORS Grants Sponsor (funding agency) master linked to AP Supplier

OKC_K_HEADERS_ALL_B Contracts Contract header master - customer agreement

Page
Oracle Fusion PPM

Base Table Module Key Purpose

OKC_K_LINES_B Contracts Contract lines / performance obligations per deliverable

PJB_CONTRACT_LINES_XREF Contracts CRITICAL: links contract lines to project/task for billing

XCC_BC_PACKETS Budget Control Funds check packets - EVERY check transaction recorded here

XCC_BC_RESULTS Budget Control Funds check result details (A=Approved, F=Failed)

XCC_CONTROL_BUDGETS Budget Control Budgetary control configuration per project

XLA_EVENTS SLA/XLA Subledger accounting events raised by PPM transactions

XLA_AE_HEADERS SLA/XLA Subledger journal entry headers

XLA_AE_LINES SLA/XLA Subledger Debit/Credit journal lines posted to GL

XLA_DISTRIBUTION_LINKS SLA/XLA Links SLA lines back to source transactions (audit trail)

Page
Oracle Fusion PPM

Section 14: Interview Q&A - Expert Answers

Module Concept Questions

Question Expert Answer

Cloud-based integrated project management suite managing complete project


lifecycle: planning, costing, billing, revenue, reporting. Integrated with GL, AP,
What is Oracle Fusion PPM?
AR, Procurement, HR. Functions as a subledger within Oracle ERP Cloud - all
financial transactions flow through XLA before reaching GL.

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).

Code identifying the source/origin of every expenditure item: ST=Timesheet,


What is VI=Vendor Invoice, ER=Expense Report, USG=Usage/Equipment,
SYSTEM_LINKAGE_FUNCTION? BTC=Burden Overhead, INV=Inventory, WIP=Manufacturing, PJ=Project
Transfer. Drives accounting rules, billing eligibility, and processing logic.

Budget reservation when a PO is raised against a project. Reduces Available


Budget IMMEDIATELY when PO is created - before goods arrive or invoice is
What is Encumbrance in PPM?
paid. Stored as commitment in XCC_BC_PACKETS. Released when invoice
is approved. Available Budget = Approved Budget - Actuals - Encumbrances.

Baselined budget version with APPROVED_COST_PLAN_TYPE_FLAG=Y


and BUDGETARY_CONTROL_FLAG=Y in PJO_PLAN_VERSIONS_ALL.
What is the Approved Cost Budget?
Only ONE per project. VERSION_STATUS_CODE=BASELINED. Used for all
funds checks. Cannot be edited - must create revision.

Draft invoice is in PJB_DRAFT_INVOICES_ALL - internal review only, not


visible to customer. Released invoice creates AR invoice in
Difference: Draft vs Released Invoice?
RA_CUSTOMER_TRX_ALL - customer can see it and pay it. Revenue may
be recognised before or after invoicing.

A milestone or fixed-amount trigger in PJB_EVENTS that generates a


customer invoice when a project milestone is completed. When
What is a Billing Event?
BILLED_FLAG=N: pending. When BILLED_FLAG=Y: invoice generated.
Critical for fixed-price and milestone billing projects.

Recording revenue when EARNED (% complete, milestone achieved, T&M


actuals billed) via PJB_REVENUE_LINES. NOT when invoiced or cash
What is Revenue Recognition?
received. Revenue can be recognised before invoicing (creates Unbilled
Receivables) or after (Deferred Revenue).

The actual Debit/Credit subledger journal lines generated by PPM


transactions. These are the Dr/Cr entries that flow to GL_JE_LINES. Each row
What does XLA_AE_LINES store? has: AE_HEADER_ID, CODE_COMBINATION_ID, ACCOUNTED_DR/CR,
ACCOUNTING_CLASS_CODE. Linked back to source EI via
XLA_DISTRIBUTION_LINKS.

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

Question Expert Answer

PJF_PROJECTS_ALL_B but for grants. Every grant-funded expenditure must


reference a valid open Award.

XCC_CONTROL_BUDGETS defines control level (Project/Top


Task/Task/Resource) and mode (ABSOLUTE=hard stop,
ADVISORY=warning). XCC_BC_PACKETS stores every funds check result
What controls budgetary control?
with RESULT_CODE A (approved) or F (failed).
PJO_PLAN_VERSIONS_ALL.BUDGETARY_CONTROL_FLAG=Y marks the
active control budget.

Customer agreement (PJB_AGREEMENTS_ALL) allocating funded money to


a project. Controls maximum billing and revenue that can be generated. Must
What is a Funding Agreement?
be baselined (BASELINED_AMOUNT set) before billing can begin. Linked to
project via PJB_FUNDING_ALL.

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.

Table-Specific Interview Questions

Question Expert Answer

PJC_TXN_XFACE_ALL - the primary staging table for ALL expenditure


What is the main AP-PPM interface imports. Check STATUS_CODE (PENDING/PROCESSED/REJECTED) and
table? TRANSACTION_REJECTION_CODE for error diagnosis. Every external cost
import goes through this table.

In PJO_PLAN_VERSIONS_ALL: BUDGETARY_CONTROL_FLAG=Y AND


How do you identify a control budget? VERSION_STATUS_CODE=BASELINED AND CURRENT_FLAG=Y. Only
one such record can exist per project at any time.

SELECT * FROM PJC_EXP_ITEMS_ALL WHERE PROJECT_ID = X. Join to


How do you find all costs for a project? PJF_PROJECTS_ALL_B for project name, PJF_TASKS_V for task name,
PJF_EXP_TYPES_B for expenditure type description.

PJB_DRAFT_INVOICES_ALL: RELEASED_DATE is NOT NULL means


How do you know if an invoice has released. CANCELLED_FLAG=Y means cancelled. Check
been released? RA_CUSTOMER_TRX_ALL for the corresponding AR invoice created on
release.

XLA_DISTRIBUTION_LINKS table: SOURCE_DISTRIBUTION_ID_NUM_1 =


What links XLA back to PPM source
EXPENDITURE_ITEM_ID. This is the audit trail link between GL entries and
transactions?
the original project cost. Use this for GL-to-PPM reconciliation.

XCC_BC_PACKETS: RESULT_CODE=A (Approved) or F (Failed). Join to


How do you check funds check XCC_BC_RESULTS for per-period detail. AVAILABLE_AMOUNT shows
results? remaining budget at time of check. PACKET_ID links to the source PO or
invoice.

Page
Oracle Fusion PPM

Question Expert Answer

Column in PJC_EXP_ITEMS_ALL. N = cost has NOT yet been distributed to


GL. Y = cost has been processed by PRC: Distribute Costs and GL distribution
What is COST_DISTRIBUTED_FLAG?
lines exist in PJC_COST_DIST_LINES_ALL. Used to monitor distribution
status.

PJF_TASKS_V is a VIEW on base task tables - shows existing tasks for


Difference: PJF_TASKS_V vs querying. PJF_TASKS_INTERFACE is a staging/INTERFACE table used to
PJF_TASKS_INTERFACE? IMPORT new tasks into PPM via FBDI. One is for reading, one is for
importing.

Page
Oracle Fusion PPM

Section 15: Common Issues & Diagnosis Guide


This section covers the most common Oracle PPM problems encountered in real implementations, their root
causes, and how to diagnose them using the tables covered in this guide.

Issue /
Root Cause How to Diagnose Fix
Symptom

Expenditure PJC_TXN_XFACE_ALL: Check Correct the


Invalid Project, Task, or
Item rejected TRANSACTION_REJECTION_COD Project/Task/Exp Type
Expenditure Type combination
on import E and STATUS_CODE='REJECTED' combination and reimport

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

Invoice not PJB_EVENTS: BILLED_FLAG=N | Set event COMPLETE and


Billing Event not marked complete
generated for PJF_TASKS_V: READY_TO_BILL_FLAG=
OR task not ready to bill
milestone READY_TO_BILL_FLAG=N Y on task

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

AutoAccountin PJC_COST_DIST_LINES_ALL: No Add missing


Missing AutoAccounting rule for
g error on cost lines for EI | Check AutoAccounting AutoAccounting rule for the
Exp Type/Org combination
distribution setup in PPM combination

Grant cost GMS_AWARDS_ALL: Cannot post after close


Cost posted after GMS Award
rejected after CLOSE_DATE < date; cost must go to non-
CLOSE_DATE
close date EXPENDITURE_ITEM_DATE grant project

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

You might also like