Professional Documents
Culture Documents
From the Oracle Subledger Inquiry menu, choose Subledger Journal Entries. From the
Subledger Journal Entries page you can choose how you want to run the inquiry. If you choose to view
data when any option is met, you must minimally specify either the ledger or GL date. You can
choose either Budget or Encumbrance as the Balance Type. You can select additional options as
needed.
For additional information about encumbrance event classes and event types, see:
Integrating with Oracle Subledger Accounting, Oracle Projects Fundamentals and Data that Oracle
Projects Predefines for Oracle Subledger Accounting, Oracle Projects Fundamentals.
Note: You cannot drill down from the subledger accounting level to see details of the journal entries.
Budgetary Control Settings
You use budgetary control settings to define the degree to which transactions are controlled (control
levels) and when budget amounts can be spent (time intervals).
Time Intervals
A time interval defines the budget amounts and the transactions to be included in the available funds
calculation. Time interval settings identify the beginning period and the ending period included in the
calculation. The amount type identifies the beginning period and a boundary code identifies the
ending period.
Available Funds Calculation
The available funds calculation is based on the values you enter for the following settings:
Amount Type (beginning budget period)
Boundary Code (ending budget period)
Transaction GL Date
The funds check process determines available funds by summing the budget amounts and
subtracting actual and committed transaction amounts for a defined time interval. The Amount Type
defines the start of a time interval. You select from the following amount types:
Period To Date: The funds check routine uses funds available from the start of the period in which
the transaction GL date falls.
Year To Date: The funds check routine uses funds available from the start of the year in which the
transaction GL date falls.
Project To Date: The funds check routine uses funds available from the start of the project. The
Boundary Code determines the end of a time interval. You select from the following boundary codes:
Period: The funds check routine uses funds to the end of the period that includes the transaction
GL date.
Year: The funds check routine uses funds to the end of the year in which the transaction GL date
falls.
Project: The funds check routine uses funds available to the end of the project.
The following table shows the valid combinations of amount types and boundary codes that you can
set up for a budget, depending on the budget's time phase.
Budget Time Phase
PA Period, GL Period, or
None
PA or GL Periods
PA or GL Periods
PA or GL Periods
PA or GL Periods
PA or GL Periods
Amount Type
Project To Date
Boundary Code
Project
Project To Date
Project To Date
Year To Date
Year To Date
Period To Date
Year
Period
Year
Period
Period
Note: When budgetary controls are enabled, you cannot enter budget amounts using user-defined
date ranges.
Control Levels
You use budgetary control levels to set the degree of control the system imposes on project
commitment transactions. You can enter default control levels at the project type, project template,
and project levels. You can also define default values for resource lists.
You select from the following control levels:
Absolute: The transaction is rejected if sufficient funds are not available.
Advisory: The transaction is accepted when sufficient funds are not available, but a the system
issues a warning notification that available funds are exceeded.
None: The transaction is accepted and no funds check is performed.
You can set control levels at the project, task, resource group, and resource levels: You can enter
different values at each level. For example, you can select the Absolute setting at the project level
and the Advisory setting at the resource level.
Depending on the budget entry method used, you can override the default control level for a project,
and for individual tasks, resource groups, and resources after you create a cost budget baseline. The
following table depicts whether you can override control levels at the project, task, and resource
levels, depending on the budget entry level and whether the budget is categorized by resources.
Budget
Entry Level
Project
Project
Top Task
Top Task
Lowest Task
Lowest Task
Top Task and
Lowest Task
Top Task and
Lowest Task
Categorized by
Resources
Yes
No
Yes
No
Yes
No
Yes
Override at
Project Level
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Override at
Task Level
No
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
The Unclassified category serves as a budget line for any resource for which a specific budget line
does not exist.
Strategy One: Define two budgets: an overall project cost budget and another budget for expense
commitment transactions.
Strategy Two: Define one cost budget, with budget lines that track and control only expense
commitment transactions.
must reverse any existing accounting entries before you modify the project attributes on the
document.
Funds Check Activation in Oracle Projects
In Oracle Projects, budgetary controls only apply to expense commitment transactions. You interface
project-related expense commitment transactions from Oracle Purchasing and Oracle Payables to
Oracle Projects as supplier costs.
After you interface actual supplier costs to Oracle Projects, you can adjust the expenditure items in
Oracle Projects. The following types of adjustments can affect the available funds for a project:
Transfer
Split
Reverse
Recalculate burden cost (for example, due to a burden multiplier change)
The process PRC: Distribute Supplier Cost Adjustments is used to recost supplier costs after you make
adjustments. This process performs a funds check for transactions meeting all of the following
criteria.
The supplier cost originated in Oracle Purchasing or Oracle Payables
The transaction is charged to a project with budgetary controls enabled
The transaction is an expense item
When you change a burden multiplier, you must run one of the following processes to perform a
funds check for the changed burden amounts. The process you run depends on the burdening
method for the project.
PRC: Distribute Total Burdened Costs
Run this process if the project is set up to account for total burdened costs.
PRC: Create and Distribute Burden Transactions
Run this process if the project is set up to account for burden costs by burden cost component.
If funds are available for the adjusted expenditure amounts, then the adjustment item is cost
distributed. If funds are not available for an item, then the item is not distributed and an exception is
reported.
If an item is not cost distributed as a result of a funds check failure, then you must perform one of the
following actions and rerun the process PRC: Distribute Supplier Cost Adjustments:
Increase budget amounts so funds are available for the expenditure item.
Decrease the budgetary control level from Absolute to Advisory or None for the budget level
causing the funds check failure.
For an adjusted item, undo the change that increased the expenditure item amount. For example, if
you increased a burden cost rate, then set the rate back to its original value.
For a transferred item, transfer the item to a task within the same project, or to another project or
project task that has sufficient funds available or that does not have budgetary controls enabled.
Viewing Transaction Funds Check Results
After a funds check runs in Oracle Projects, you can view the results from the Transaction Funds
Check Results window. Results are displayed for both transactions that passed the funds check and
transactions that failed the funds check.
Transaction Funds Check Results Window
To review transaction funds check results, perform the following steps:
1. Navigate to the Find Transaction Funds Check Results window.
2. Enter selection criteria.
3. Choose the Find button to display the Transaction Funds Check Results window.
4. Select a budget level tab to view information for a specified budget level.
Transaction Funds Check Header Information
The header region of the Transaction Funds Check Results window displays transactions that have
undergone a funds check. This region is a folder-type region. All of the details about the transaction
can be displayed, including the specific funds-check fields shown in the table below:
Field Name
Packet ID
Status
Document
Type
Version
Number
Description
Identifier assigned to the budgetary control
packet
Funds check status
Type of document (for example, purchase
requisition)
Budget version number
The window displays funds check information by budget level for the selected transaction. A tab is
displayed for each project budget level. The information displayed at each budget level includes
budget, available funds, transaction amounts, and a status message for the funds check results.
Note: Use the PA: Days to Maintain BC Packets profile option to control how long funds check results
are retained for online viewing. See:
Funds Check Detail Information
The detail region displays the fields shown in the table below:
Field Name
Account
Budget
Description
Identifier of the GL account (when
budget integration is used)
Budget total used for funds check
based on the defined budgetary
Description
Budgetary control level for a budget line
Budget amount for a budget line
Commitment transactions interfaced to
Oracle Projects
Approved commitment transactions not
yet interfaced to Oracle Projects
Available funds (budget amount less
Start Date
End Date
Result
Description
Total purchase requisition commitments recorded
against a budget line
Amount of purchase order commitments recorded
against a budget line
Amount of supplier invoices recorded against a
budget line that have not been interfaced from
Payables to Projects
Total commitments for a budget line
option. You can override the default control level values for the baseline budget version. When you
create subsequent baselines for the project budget, Oracle Projects uses the revised budgetary
control level settings and not the default settings. For example, if you override the budgetary control
level for a task, Oracle Projects does not reset the task to the default value the next time that you
create a baseline for the budget.
If you add new tasks to the project or new resource groups or resources to the resource list assigned
to the budget, the next time you create a baseline for the budget, Oracle Projects automatically
creates default budgetary control settings for the new tasks, resource groups, or resources. You can
override the default control level values for the baseline budget version.
To adjust budgetary control levels, perform the following steps:
1. Navigate to the Budgets window from the Projects Navigator.
2. Query your project cost budget.
3. Choose the History button to view the budget version history.
4. Select Budgetary Controls from the Tools menu.
5. Change control level values as required.
6. Save your work.
7. If you are budgeting using a resource list, choose the Resources button on the Budgetary Control
window to override the default values for resource groups and resources.
Important: You can select the Reset Defaults button on the Budgetary Control window to restore the
default budgetary control settings for the project. When you select the Reset Defaults button, Oracle
Projects resets all budgetary control settings to the default values, including any settings that you
have manually overridden.
Default Budgetary Controls and Changing the Budget Entry Method
You can change the budget entry method for a budget after you create a baseline version. If the
budget entry level for the new budget entry method is different from the budget entry level for the
current budget entry method, Oracle Projects resets to the budgetary controls to the default
budgetary control level settings when you create the next budget baseline. For example, if the
budget entry level of the current budget entry method is Top Tasks and the budget entry level for the
new budget entry method is Lowest Tasks, Oracle Projects resets the budgetary controls to the
default budgetary control level settings when you create the next budget baseline.
Budgetary Controls Cross Charge Restriction
A transaction is subject to the budgetary controls defined for only the ledger in which the transaction
originates. Therefore, when budgetary controls are enabled for a project, you cannot enter cross
charge transactions that cross ledgers.
The following scenario illustrates the need for this restriction:
Two ledgers are defined in an installation of Oracle Applications.
In Ledger One (L1), budgetary controls are enabled in Oracle General Ledger and Oracle Payables.
In Ledger Two (L2), budgetary controls are not enabled in any application.
Project A is defined in L1 and budgetary controls are enabled for the project. If you enter a
commitment transaction in L2 for Project A, the transaction is not funds checked, because budgetary
controls are not enabled in L2.
Funds Check Result Messages
The following table lists funds check result codes and messages, and provides information on
responding to each message.
Result
Code
F100
F101
F102
F103
F104
F105
F106
F108
Result Text
Corrective Action
Insufficient
Funds
No budget exists at the resource
level
No budget exists at the resource
group level
No budget exists at the task
level
No budget exists at the top task
level
No budget exists at the project
level
No budget exists at the project
account level
The transaction failed funds check
at the resource level
F109
F110
F111
F112
F113
F114
F118
F120
F121
F122
F123
F124
F125
F127
F128
F129
F130
F131
F132
F134
F136
F137
F138
F140
F141
F142
F143
F150
F151
F155
F156
F160
F162
F165
F166
F168
F169
F170
F172
F173
********************************************************************************
Budgetary Control and Budget Integration-Technical Overview
Metalink Note: 835136.1
Main Tables, Views and Packages Used For Budgetary Control and Funds Check:
Tables
BUDGETARY CONTROL Main Tables:
PA_BUDGET_LINES
PA_BUDGET_ACCT_LINES
PA_BUDGET_VERSIONS
PA_BUDGET_ENTRY_METHODS
PA_BUDGET_TYPES
PA_BC_BALANCES
PA_BUDGETARY_CONTROLS
PA_BUDGETARY_CONTROL_OPTIONS
PA_GL_ENCUMBRANCE_TYPES
FUNDS CHECK
PA_BC_COMMITMENTS_ALL
PA_BC_BALANCES
PA_BC_PACKETS
GMS_BC_PACKETS
GL_BC_PACKETS
GL_ENCUMBRANCE_TYPES
PA_BC_PACKET_ARRIVAL_ORDER
Description of Tables
PA_BC_COMMITMENTS_ALL
A multi-org view which will retrieve data for your current operating unit and ignore data in other
operating units. Holds all the commitment transactions (Requisitions, POs and Payables) that are funds
checked.
PA_BC_BALANCES
Stores actual, budget and encumbrance balances per project, task, period, budget version and resource.
Budget balances are created during the budget baselining process.
Actuals and encumbrances accounting entries are created by maintain project balances program.
GL_ENCUMBRANCE_TYPES
Stores information about encumbrance types, including their IDs and descriptions.
PA_BC_PACKETS
Holds all the transactions that are copied from GL_BC_PACKETS.
GL_BC_PACKETS
General Ledger's main table for the Budgetary Control feature.
GMS_BC_PACKETS
Oracle Grants Accounting's main table for the budgetary control feature.
PA_BC_PACKET_ARRIVAL_ORDER
Keeps track of the order in which in which the budgetary control packets need to be processed.
PA_BUDGETARY_CONTROLS
Used to store the controls levels that are used to regulate how the funds are reserved for transactions
PA_BUDGETARY_CONTROL_OPTIONS
Stores all the default budgetary control levels and time intervals
Views
PA_PRJ_FC_RESULTS_V
PA_RES_FC_RESULTS_V
PA_RES_GRP_FC_RESULTS_V
PA_TASK_FC_RESULTS_V
PA_TOP_TASK_FC_RESULTS_V
PA_PROJECT_BAL_V
Release 12 ONLY
PA_XLA_BC_BUDGET_LINES_V
PA_XLA_BC_PKT_AP_DETAIL_V
PA_XLA_BC_PKT_PO_DETAIL_V
PA_XLA_BC_PKT_REQ_DETAIL_V
PA_XLA_CDL_LINES_V
Packages and Procedures
PA_BGT_BASELINE_PKG - PAFCBALB.pls
Create pa_bc_balances records from PA_BUDGET_LINES and to clean up PA_BC_PACKETS
PA_BUDGET_ACCOUNT_PKG - PABDACGB.pls
Generate the Account Code CCID for every Budget Line depending upon the calling mode parameter.
PA_BUDGET_FUND_PKG - PABBFNDB.pls
Procedure called from budgets forms. This process will verify if funds check is required or not.
PA_FUNDS_CONTROL_PKG - PABCFCKB.pls
This is the Main funds check function which calls all the other functions and procedures
PA_FUNDS_CONTROL_PKG1 - PABCPKTS.pls
This API gets the Start and End date based on amount type and boundary code
PA_BUDGETARY_CONTROLS_PKG - PAXBCCRB.pls
Inserts records into PA_BUDGETARY_CONTROLS
GL_FUNDS_CHECKER_PKG - GLFBCFCB.pls
Funds Check API for any process that needs to perform Funds Check and/or Funds Reservation
PA_YEAR_END_ROLLOVER_PKG - PABRLYRB.pls
Execute the Year End Budget Rollover process
PA_SWEEPER - PAFCUAEB.pls
Based on TPC (pa_budget_entry_methods.time_phase_code ), returns the start date
Additional packages
PA_FC_RES_MAP- PAFCRMPB.pls
PA_BC_COSTING - PABCCSTB.pls
PA_BUDGET_PVT - PAPMBUVB.pls
PA_FUNDS_CONTROL_UTILS - PAFCUTLS.pls
Processes and their functions
1.Funds Checking Process
Step1: All transactions that need to be funds checked are grouped into
BC Packets
Step2: The transaction process calls the funds checker
Step3: The funds checker calculates the burdened cost amount.
Step4: Burden costs are added to BC Packets.
Step5: BC Packet entries are mapped to existing budget lines using the standard PSI resource mapping
rules.
Step6: Each BC Packet entry is funds checked for each budget level that has a control level of Absolute or
Advisory.
Step7: Funds checker updates the packet entries with the funds check results
Step8: Control passes back to the transaction processor which validates the results of all funds checks
performed for the transaction.
Step9: The Maintain Balances concurrent process periodically reads the approved BC Packet entries and
updates the actual costs, commitment costs, and available funds balances for the project at all project
levels.
The program performs the following tasks:
Deletes entries in BC Packets which have been posted and exceed the PA: Days to maintain BC Packets
profile value Updates/Inserts records in PA_BC_BALANCES Inserts records in
PA_BC_COMMITMENTS
Note: It is recommended that this process be submitted with repeat parameters.
2.Transaction Processing:
E. Transaction Processing:
1.Budget account can be different from the transaction (charge) account
2.Unmatched prepayment applications are now funds checked during invoice validate process
3.Accounting is now part of the transaction processing flow .
4.No update for a budget line is allowed if a transaction exists against the budget line
PA_COST_DISTRIBUTION_LINES
PA_BC_PACKETS
PA_BC_COMMITMENTS_ALL
-New views have been created as data extract objects for the encumbrance event classes
G. Form Structure :
Encumbrance type field and associated validations have been removed from the budgetary controls
integration window on Project Type and Projects form.
Troubleshooting Recommendations
1. For baseline/check funds of budget, result column on the draft summary record (Budget form: By
account tab on the budgetary controls window) indicates processing status.
2. For re-baseline with Projects funds check validation failures, use Budget form ( Tools -> View funds
check results)
3.For Debug logs, execute the process with FND/PSA/PA debug ON. Debug log generated helps you to
identify the failure point.
4.Error: Budget baseline/check funds processing fails with Invalid code combination id or some invalid
data that prevented the system from creating an accounting journal for the event
Cause: Possible issues could be that the Application Accounting Definition (AAD) is invalid or that the
AAD is not attached to the Sub Ledger Accounting Method (SLAM). This usually happens after a patch
has been applied that invalidated the SLA seed definition.
5.Error: Transaction processing failed with Oracle Subledger Accounting engine failed
or
Distribution record missing in General Ledger table .
Cause: Same as above
References :
1.Oracle Projects 11i Mini-pack H - Documentation Supplement
2.Oracle Projects - Implementation Guide
3.Oracle Project Management - User Guide
4.Oracle Purchasing - User Guide
5.Oracle Payables - User Guide
6.Metalink -eTRM Technical Reference
-Entity relationship diagrams:
-Tables and Views
-Packages
*************************************End******************************************
Oracle Projects - Steps to make the Project Budgetary Control features
work
Blog: Real World Oracle Apps
URL: http://realworldoracleapps.blogspot.com/2008/05/steps-to-make-project-budgetarycontrol.html
Published on behalf of Ravishankar Panchapagesan:
Set the value of the profile PA : Enable Budget Integration and Budgetary Control
Enable Budgetary Control in the Set of Books window and choose a default Encumbrance account
For the Budget Control Group Standard in GL menu, enter Projects as the source and Total Burdened Cost as
the category and choose the fund check level of None
Ensure this is the value of the profile at the application or responsibility for the profile option Budgetary
Control Group
Check Use PO Encumbrance in Payables Financial Option and enter values for PO and Invoice encumbrance
type.
In Purchasing menu, Open the Encumbrance year and period. In Purchasing, there are 2 Forms. One for Open
and Close Periods and the other for Control Purchasing Periods. Use the Control Purchasing Period to open the
Encumbrance Year and the corresponding GL period. This is a pre requisite for encumbrance to work. Use the
Open and Close Periods for controlling Purchasing Period.
Complete the set ups for Project type, budgetary control tab and create project templates and projects using
the set up.
Ensure that the budget entry method allows the entry of Total Burdened cost. You do not have to burden the
transactions. System populates the raw cost budget into this field for budgetary control check.
Ensure the pre requisite GL patches (No 1995914 and 2002508) are in the application. These patches are
included in PA M as cumulative components.
Enter transactions in AP and verify the process. Upon saving the invoice, navigate to the Tools Menu and click
Check Funds menu. System will display a message whether the invoice and its distribution lines will pass or fail
funds check.
Validate the invoice normally. Funds check will be performed upon validation based on the amount type and
boundary code associated with the Project and the control levels chosen for the project, task, resource group
and resource list level.
Invoices that failed the funds check upon validation with the reason code Funds checking could not be
performed cannot be manually released. You need to enhance the funds available.
You can view the Transaction Funds Check Results in Projects regardless of the interface from AP.
For each line that is passed funds check, in the above window, the system will display 2 rows: 1 with the status
Passed funds check and the other with the status Approved
Interface validated and accounted invoice distribution lines to Projects normally.
Schedule to run the process PRC: Maintain Budgetary Control Balances based on business requirements. When
this process is run, the system purges details of Funds check results display. Choose to run this process in
conjunction with the value of profile option for PA: Days to maintain BC packets
You cannot change the budget amount type for budgetary control in the Projects window after supplier invoice
costs are incurred. However, you can change the control values and amount type and boundary codes. If you do,
system will prompt the user to re baseline the current version of the cost budget used.
**********************************************************end**********************************************************************
Summary or Detail
Account Funds
Check Option Set to
None
Summary or Detail
Account Funds
Check Option Set to
Advisory
Summary or Detail
Account Funds
Check Option Set to
Absolute
None
None
None
Absolute
Advisory
None
Advisory
Absolute
Absolute
None
Absolute
Absolute
******************************************************END********************************************************************