Understanding Basic Commitment Control Setup

This section discusses:

  • Enabling Commitment Control.

  • Installation options for default budget date, reversal date, and budget period liquidation option.

  • ChartField definition.

  • Control budget setup.

  • Commitment Control ledgers and ledger groups.

  • Control ChartFields.

  • Key ChartFields and translation trees.

  • Budget period calendars and cumulative budgeting.

  • Rulesets.

  • Hierarchy of control budget attributes.

  • Multiple SetIDs within a control budget definition.

  • Parent and child budgets.

  • Statistical budgeting.

  • Balancing entries.

  • Project Costing and control budgets with funding source.

  • Budget reference ChartField.

  • Budget journal entry event codes.

  • Commitment Control detail tracking ledger groups.

  • Associated expenditure and revenue budgets.

  • Copying budget definitions, ledgers, and ledger groups.

You must enable Commitment Control for the PeopleSoft applications whose transactions you want to check against control budgets.

You use the Installed Products page in Installation Options. When you enable Commitment Control for an application, all transactions initiated from that application are presented to the Budget Processor Application Engine (FS_BP) process; however, the transactions that actually undergo budget checking depend on your control budget definitions, source transaction type definitions, and other setup options.

If you disable Commitment Control for an application by deselecting the check box for that application on the Installed Products page, the Budget Processor bypasses all transactions initiated from the application as well as all transactions sent from the application directly to PeopleSoft General Ledger to be processed as journal entries, even if General Ledger is enabled for Commitment Control. The only exception occurs when the transactions from a Commitment Control-disabled application are sent to a Commitment Control-enabled application other than General Ledger. In that case, the transactions can be budget-checked in the Commitment Control-enabled application or when they are sent from that enabled application to a Commitment Control-enabled General Ledger.

You can enable and disable Commitment Control for specific PeopleSoft applications at any time, but disabling Commitment Control for an application during a budget period might corrupt the consistency and integrity of your data.

Carefully consider document processing relationships when you determine which applications to enable or disable for Commitment Control. For example, it is impractical to enable Commitment Control for PeopleSoft Purchasing and not enable Commitment Control for PeopleSoft Payables. This is because encumbrances in your ledgers are never liquidated in that situation unless you perform a manual journal adjustment in PeopleSoft General Ledger.

Some PeopleSoft applications are automatically enabled for Commitment Control when you install them. These include:

  • PeopleSoft Payroll for North America.

  • PeopleSoft Time and Labor when the PeopleSoft Project Costing application is enabled for Commitment Control and the standard PeopleSoft Project Costing/Time and Labor interface is in place.

Enabling Commitment Control for Third-Party Applications

You enable or disable budget checking for the journals that are generated from third-party (non-PeopleSoft) applications on the Accounting Entry Definition page in General Ledger. If you select Skip Commitment Control In GL, the Budget Processor skips journals that are generated through the Journal Generator (FS_JGEN) from outside source transactions. If you select the Skip Commitment Control In GL check box, journals that are generated from outside source transactions have to be budget-checked in General Ledger before the journals can be posted.

Warning! Just enabling applications and business units for Commitment Control is not necessarily enough to use the functionality, because many applications have dependencies with other applications that require you to maintain integration points between those applications for valid budget checking and notification.

The Commitment Control page that is accessed from the Installation Options page enables you to select a default budget date scheme for your requisitions, purchase orders, and vouchers.

Access the Installation Options - Commitment Control page (Set Up Financials/Supply Chain, Install, Installation Options, Commitment Control).

Values include:

Accounting Date Default: Select to supply by default the budget date to the document accounting date.

Predecessor Doc Date Default: Select to copy the budget date from the predecessor documents distribution.

In addition, you can select one of the reversal date options to control how the rebudget checking of a document is recorded when you change the document date.

Values include:

Prior Date: With this option, the system backs out old entries, using the fiscal year and accounting period as they were originally recorded. For example, a purchase order originally created in period 1 is recorded as an encumbrance entry in period 1. However, if you then change the purchase order in period 2, giving it a new accounting date, the system reverses the purchase out of period 1 and rebooks it to period 2.

Current Date: When you use the current date option, entries are backed out and rebooked in period 2, leaving period 1 unchanged. Period 2 then has the net change to the document.

See Budget Processor.

You can also select a budget period liquidation option.

Values include:

Current Document Budget period: Select to supply by default liquidation to the budget period of the document being processed. For example, a purchase order originally recorded as an encumbrance for budget period 1 results in the liquidation of the encumbrance in the budget period of the expenditure that might have actually occurred in and been assigned to budget period 2.

Note: A special scenario applies when you choose this option. If the ruleset ChartField is changed between the current document and its predecessor and the two ruleset ChartFields belong to different rulesets that have different budget period calendars, the budget period of the liquidation entry does not use the budget period of the current document. Instead, the system uses the predecessor's ruleset ChartField to get the corresponding budget period calendar, and derives the liquidation budget period based on the calendar and the current document's budget date.

Prior Document Budget period: Select to supply by default liquidation to the budget period of the prior document. For example, if a purchase order has a budget period of 1, when the expenditure occurs that liquidates the encumbrance, the liquidation occurs in the budget period assigned to the purchase order that created the original encumbrance, that is, budget period 1.

See Budget Processor.

All delivered PeopleSoft General Ledger and Project Costing ChartFields are available as key ChartFields for Commitment Control.

Configuring ChartFields for Commitment Control

If the delivered ChartFields do not meet your requirements, you can configure Commitment Control ChartFields for your specific organizational practices.

Budget Reference ChartField

Commitment Control provides a budget reference ChartField that uniquely identifies a budget. The budget reference ChartField enables you to perform comprehensive reporting on budgets that span multiple years and that overlap other multiyear budgets.

See Budget Reference ChartField.

Budgetary-Only ChartField Values

When you define a ChartField value and select this option, the ChartField value can be used for budget purposes only and is not available for recording actual transactional entries. With the exception of the affiliate ChartFields, the Budgetary Only option is available for ChartFields supported by Commitment Control.

You usually establish budget control using summary Budgetary Only ChartField values instead of establishing a budget for each detail transactional ChartField value. You then set up ChartField translation trees to roll up the detail transactional-level ChartField values to the summary budgetary ChartField level values.

For example, if Account is a key ChartField, and you budget at a translated level, you designate your budget level accounts as budgetary-only when you define them in the Account component. Budgetary-only accounts are then available for budgeting but unavailable for use at the source transaction level. This prevents users from using high-level roll up accounts in detail transactions.

See Account Page.

Commitment Control Override for Account

When you define an Account ChartField value and select this option on the Account page, the Account value is not subject to budget controls and receives an automatic override. Transactions containing account values with the override option will pass budget checking regardless of the control ChartField value and the budget processor issues warnings instead of errors for all exceptions that can be overridden.

Note: It is important to note that this is only applicable for overrideable errors, such as Exceeds Budget. It does not override errors that cannot be overridden, such as No Budget Exists. This override is similar to the transaction override and requires at least a zero amount budget row to pass edit.

See Understanding Exception Handling and Notification.

See Account Page.

You set up control budgets in two stages. In the first stage, you establish Commitment Control ledgers and ledger groups and then set up budget definitions by attaching processing parameters to the ledger groups. Within a control budget definition, you can set up one or more rulesets, or sets of key ChartFields, translation rules, and budget period calendars. Rulesets may be thought of as groups of budgets that have common characteristics such as budget keys, translation rules, and calendars. If all of your budgets use the same ChartFields, translation rules, and calendars, you can just use the default ruleset created by the budget definition without having to specify any range of values. You can also attach certain budget-checking options to specific values of the control ChartField (the values for which determine whether the Budget Processor considers a transaction for budgetary control). The following table lists the process for setting up control budget definitions:

Entity

Parameters

Setup Location

Prerequisites

Commitment Control Ledger Group Structure

  • Structure of budget type (Ledgers in the ledger group)

  • Ledgers that affect available budget

  • ChartFields that balance

  • Ledger Template component

  • Detail Ledger component

  • Detail Ledger Group component

NA 

Control Budget (commitment control ledger group definition)

  • Control options, (such as track only)

  • Budget status (hold, open, and closed)

  • Tolerance

  • Funding source control

  • Associated CC ledger group (such as parent and child)

  • Parent budget type

  • Control ChartField

  • Ruleset ChartField, tree, and level

  • Balancing entries requirement

  • Statistical budgeting

  • Child budgets exceed parents option

  • Offsets for balancing entries

  • Excluded account types

  • Prior year adjustment ChartField

  • Budget period status (open, closed, default, and hold)

  • Control Budgets Options page

  • Offsets page

  • Excluded Accounts Types page

  • Prior Year Adjustment ChartFields page

  • Budget Period Status page

  • Translation tree for Ruleset ChartField

  • Funding Source Definition (if funding source control is enabled)

Rulesets

  • Valid Ruleset ChartField values

  • Budget calendar

  • Budget keys

  • Translation tree and level for each key

  • Default accounts

  • Ruleset ChartField page

  • Keys and Translations page

  • Translation trees for key ChartFields

  • Budget calendars

Control ChartField Values

  • Valid control ChartField values

  • Control options

  • Budget status

  • Tolerance

  • Begin and end dates

  • Cumulative calendar

  • Funding source requirements

  • Default entry event

Control ChartField page

You now attach each Commitment Control ledger group to a business unit and the general ledger (GL) ledger group for that business unit whose transactions you want to budget-check. You can then set certain budget-checking options for specific budgets (ChartField combinations) for a business unit. You can also associate specific revenue and expenditure budgets for a business unit so that revenues automatically increase spending limits.

The following table lists the additional budget setup:

Setup Process

Parameters

Setup Location

Attach Commitment Control ledger groups to business unit and general ledger (GL) ledger group

  • Include pre-encumbrance in available budget calculation.

  • Allow increase spending authority.

    Note: The allow increase spending authority option permits credit transactions against expenditure budgets or debit transactions against revenue transactions to increase the budget's remaining spending authority (RSA) above the budgeted amount.

Ledgers for a Unit component

Individual Budget Attributes

  • Select by business unit and ChartField combination.

  • Control options.

  • Budget tolerance.

  • Budget status

Budgets Attributes component

Associate Revenue and Expenditure Budgets

  • Select by business unit and ChartField.

  • Ledger groups must already be associated in Control Budget Definition

Associate Budgets component

When this setup is complete, you can enter budget amounts in the Enter Budget Journals component.

Note: Amount versus quantity-based liquidations is determined in the various applications.

Setting up control budget definitions is synonymous with establishing processing rules for a Commitment Control ledger group. Depending on the budgeting requirements of your organization, you may need one or many expenditure budget definitions and one or many revenue budget definitions. For example, your organization may require a high-level appropriation budget definition with one set of rules and a lower-level organization budget definition with another set of rules; or your organization may require a corporate budget definition in one currency and divisional budget definitions in other currencies.

In any case, for each GL ledger group and business unit combination (each actuals ledger) whose transactions you want budget-checked, you need at least one budget definition—that is, a Commitment Control ledger group. You can associate as many budget definitions as you want with a particular GL ledger group for a business unit, but each budget definition can be associated with only one GL ledger group for a particular business unit.

You establish your Commitment Control ledgers and ledger groups (budget definitions) by using the Detail Ledger and Ledger Group components in PeopleSoft General Ledger before you define the rules for your budget definitions (Commitment Control ledger groups) in the Budget Definitions component. However, before you establish your Commitment Control ledgers and ledger groups, you must understand the budget definition process and plan all of the budget definitions that you will use.

To familiarize yourself with the rules and options that you establish in the Budget Definitions component, see the following sections and the section Setting Up Commitment Control Budget Definitions.

Budget definitions are defined by a single control ChartField, which is the ChartField that the Budget Processor considers when determining whether a given transaction line is subject to the rules associated with a particular budget definition. For example, if you select DeptID as the control ChartField for the budget definition, you can then identify specific departments over which the Budget Processor enforces budgetary control, and other departments that are exempt from budgetary control.

When the Budget Processor receives a transaction with a ChartField value that is a control ChartField value for a budget definition, the Budget Processor applies the processing rules for that budget definition (unless you override some of those rules at the level of the control ChartField value, individual budget, or source transaction type).

Key ChartFields and translation trees determine how the Budget Processor identifies the correct budgets for a transaction that is submitted for budget checking.

Key ChartFields

When you set up control budget definitions, you specify budget keys, which are the ChartFields that you require for budget journals and source transactions to identify budgets for budget checking. .

Budget journals and source transactions that do not have values for budget key ChartFields will fail posting and budget checking unless you select one of two other Value Required options. You can instruct the budget processor to bypass transaction lines if key ChartFields other than Account are set to Not Required. Setting the Value Required option to Optional allows you to maintain budget rows with blank values for the same budget key structure that was not possible in prior releases.

The Control ChartField and the Ruleset ChartField are always required as keys for all Rulesets. Each ruleset in a budget definition can have its own set of additional budget keys.

See Budget Definition - Ruleset ChartField Page.

Translation Trees

Most enterprise budgets are at a level above the level of their detail source transaction ChartField values. For example, while you might record source transactions to separate accounts for outside copy service and use another account for copier paper stock and supplies, for your budgets you would probably group transactions for both these accounts and track them at a summary level in an account called Office Supplies. To be included in budgetary control and tracking, the copy services and inhouse copy supplies accounts that you enter on transactions require translation to the budgetary Office Supplies account.

By translating source transactions to Commitment Control budgets, translation trees provide a convenient way to budget at a high level while using detail-level ChartFields in transactions. Using trees, you set up a hierarchy of ChartField values, such as accounts, with all of the budgetary-level values at the same level or even at more than one budgetary level, for example, if you have parent and child budgets that budget at different levels. When you set up budget definitions, you enter the tree name and appropriate budgetary level for each key ChartField. The Commitment Control Posting process can then determine which ChartField values are valid for budget journals, and how to roll source transaction ChartField values up to those budgetary ChartField values for budget checking against the appropriate budget.

You must have a tree for each ChartField that you use as a budget key and that you want to translate.

The budget processor references the version of the tree that has the greatest effective date that is before or equal to the budget definition's effective date that is used to process a particular transaction. The budget definition's effective date is based on the budget date that is specified on each source transaction line.

Note: The budget processor looks to the latest translation tree, that is, the tree with the latest effective date, whether it is active or inactive, when processing transactions with dates after the latest effective-dated tree. For example, assume that you have a tree for which the initial effective date is January 1, 1900 and its status is active. If you then create a tree for February 1, 2011 and set the status to inactive, the budget processor still looks to the latest tree with the effective date of February 1, 2011 for any transactions dated on or after February 1, 2011. Under these conditions the budget processor does not process using the active tree dated January 1, 1900 but issues a message that an invalid tree exists because it looks to the February 1, 2011 tree, and it is inactive.

Accounts Tree Example

The following example illustrates how tree levels translate data.

Sample Translation Tree

Sample translation tree

The sample translation tree contains the following levels, beginning with the level 1 node:

  • Level 1: Node 000000

  • Level 2: 999901 and 682000

  • Level 3: 999902−999907, 600010−600020, 610000, and 616200−621000

  • Level 4: 614000−617000

When you define a control budget definition, you enter the tree level at which you want to define budgets for each key ChartField. Suppose that you want to budget at account ChartField level 3 for the sample translation tree. You enter tree level 3 for account on the Keys and Translations page. All account values found at level 3 and levels 2 and 1 above it are then valid for budget journals, and all source transaction account values below level 3 roll up for budget checking to the budgets that you define at that level. Budget Journal processing validates against the translation rules that you established in your budget definition in the tree to ensure that you selected the correct value for the budget account.

On the Control ChartField page, you can also choose whether to include all control ChartField values at your budgeting level or to exclude some. These are the results that depend on your choices:

  • If you select the All Values option, then all control ChartField values at or above the tree level that you entered on the Keys and Translations page are valid for budgeting and budget-checking.

    Source transactions with any value for the control ChartField are budget checked.

  • If you deselect the All Values check box, you must enter each value that you want to be valid for budgeting on the ChartField Values grid.

    Only source transactions with values that translate to the values in the list are budget checked.

For example, assume that you are budgeting at level 3. You deselect the All Values check box and enter the values 999901 and 610000 onto the ChartField Values grid. The following results occur:

  • If a purchase order has the level-4 account 614000, then the Budget Processor translates the account to 610000 by using the tree and level information that you entered on the Keys and Translations page.

    The Budget Processor checks account 610000.

  • If a second purchase order has the level-3 account 616200, the Budget Processor translates the account to itself.

    Because 616200 is not one of the level-3 accounts that you entered as valid for budget checking, the Budget Processor does not budget check this transaction.

Winter Trees and Spring Trees

Commitment Control can use either winter trees or spring trees to translate budget keys.

A winter tree uses the detail value table for nodes and has no leaves. That is, each node is a valid detail ChartField value. The previous section, Accounts Tree Example, shows a winter tree.

A spring tree is a hybrid between a node-only winter tree and a summer tree. A summer tree uses the PS_TREE_NODE table for nodes and a detail value table for leaves. A spring tree uses a detail value table for the nodes as well as the leaves:

Spring Tree

Spring Tree

In this spring tree, the 4001 account is a budget-level node, whereas accounts 4002 - 4982 are detail-level leaves that roll up to the 4001 node. Note that you can define leaves in spring trees as ranges of detail values.

Spring trees reduce tree maintenance by allowing you to add ChartField values to the system without having to update trees, as long as new values are within a detail-value range already defined for the tree.

Whether you use spring or winter trees, each node must be a valid ChartField value. You must therefore assign the detail table name as the tree node table in the tree structure.

A budget period represents a time segment that the system uses to divide budgets. You can use the budget period ChartField to establish varying time periods for budgeting and to have budget periods that may differ from fiscal year calendar dates.

You define budget periods by creating budget period calendars. You can define both detail budget period calendars and summary budget period calendars, which are based on multiple detail budget period calendars.

Detail budget period calendars define the periods to which budgets apply.

Summary budget period calendars enable you to collapse information from multiple detail budget periods into a summary period. For example, a summary budget period calendar can group monthly control budget periods by quarter or year. They are useful for inquiries. You can use the Budgets Overview page to view budget amounts by summary budget period for ledger groups that use the corresponding (detail) budget period calendars.

Note: Do not confuse summary budget period calendars with summary calendars. Summary budget period calendars are all budget period detail calendars, but each calendar can be defined in different increments of time, such as monthly, annually, or multiyear calendars.

A budget period detail calendar is similar to a fiscal year detail calendar. However, budget periods may be independent of fiscal periods and may start and stop at any point in a fiscal year or period.

Set up as many budget period calendars as necessary. You can apply a budget period calendar to any number of budget definitions for which you want to use the same budget period parameters.

By using rulesets, you can apply different calendars to different budgets within a budget definition.

Using the Budget Date to Determine the Budget Period

The Budget Processor uses the budget date on a source transaction, with the budget period calendar defined for the Commitment Control budgets, to determine the budget period of the Commitment Control budget against which the transaction is to be processed.

The budget date is supplied automatically depending on the default budget date option that you select on the Installation Options - Commitment Control page, but you can also override it for some source transactions, depending on your Commitment Control security access.

Budgeting Without Budget Period Calendars

You do not need to use budget period calendars with all budget definitions. For example, you can define a project budget with no budget periods. If you do not specify the budget period calendar when you set up your budget definition, the system uses a blank budget period instead of performing a lookup against the budget period calendar. Use the Begin Date and End Date fields on the Control ChartField page or Budget Attributes component to define the time span of the budget.

Using Begin and End Dates with Budget Period Calendars

You can enter begin and end dates on the Control ChartField page and the Budget Attributes component to restrict budget journal entries to budget periods, for which the dates are at least partially within the specified spending range. Entering begin and end dates also restricts source transactions to those for which transaction dates fall within these dates. The setting of begin and end dates on the Control ChartField page establishes a higher-level default. You might want to use budget attributes to enter exceptions to the defaults by setting individual begin and end dates for detail budgets.

Cumulative Budgeting

You can set up your budgets to allow spending against the available balances in a defined range of budget periods when a transaction would otherwise exceed the balance in the current period.

For example, you budget check a transaction in the amount of 150 that affects budget period 20X1Q3. You set up cumulative budgeting such that the Budget Processor searches for available balances in all budget periods for 20X1. As the following table shows, the available balance for 20X1Q3 is 100 and is not enough to cover the transaction. However, the cumulative available balance for 20X1Q3 is 300. Therefore, the transaction passes budget checking. If you do not set up cumulative budgeting, the transaction fails.

In the following table, italicized values are derived calculations.

Ledger

Account

DeptID

Budg. Per.

Amount

Available Balance

Cum. Avail. Balance

ORG_BUD

50001

100

20X1Q1

100

100

100

ORG_BUD

50001

100

20X1Q2

100

100

200

ORG_BUD

50001

100

20X1Q3

100

100

300

ORG_BUD

50001

100

20X1Q4

100

100

400

You can set up cumulative budgeting in two ways:

  • You can use a budget period calendar as a cumulative calendar.

    Although you should define the cumulative calendar as a detail budget calendar rather than a summary budget calendar, the cumulative calendar must summarize the detail budget periods that are defined for the budget. Thus, each cumulative budget period defines the range of detail budget periods whose balances are available for spending.

    For example, your budget uses a monthly budget period calendar (calendar ID MN). The cumulative calendar that you assign is a budget period calendar that summarizes the monthly detail budget period calendar into quarters (calendar ID QR):

    Budget Periods for Calendar MN

    Budget Periods for Calendar QR

    • 20X1M01 (01/01/X1 to 01/31/X1)

    • 20X1M02 (02/01/X1 to 02/28/X1)

    • 20X1M03 (03/01/X1 to 03/31/X1)

    20X1Q1 (01/01/X1 to 03/31/X1)

    • 20X1M04 (04/01/X1 to 04/30/X1)

    • 20X1M05 (05/01/X1 to 05/31/X1)

    • 20X1M06 (06/01/X1 to 06/30/X1)

    20X1Q2 (04/01/X1 to 06/30/X1)

    When you budget check a transaction whose budget date falls in budget period 20X1M05, the available balances from both periods 20X1M04 and 20X1M05 add up to the cumulative available balance.

    You can enable cumulative budgeting at the ruleset and assign cumulative calendars at the ruleset, control ChartField, and budget attributes levels.

    See Hierarchy of Control Budget Attributes.

  • You can define a date range for cumulative budgeting by using begin and end dates instead of the cumulative calendar.

    Available balances for all of the budget periods included within the date range are then potentially available for spending. (That is, all current and prior budget periods within the date range are available for any given transaction.)

    In the following example, when you budget check a transaction whose budget date falls in budget period 20X1M02, the available balances from both periods 20X1M01 and 20X1M02 add up to the cumulative available balance.

    Budget Periods for Calendar MN

    Date Range for Cumulative Budgeting

    • 20X1M01 (01/01/X1 to 01/31/X1)

    • 20X1M02 (02/01/X1 to 02/28/X1)

    • 20X1M03 (03/01/X1 to 03/31/X1)

    01/01/X1 to 03/31/X1

You can select the date range option at the ruleset, control ChartField, and budget attributes levels. You specify the dates at the budget attributes or at budget journal entry.

Cumulative budgeting looks at all periods in the cumulative range to ensure that future transactions have not already spent current funds.

Note: The remaining spending authority (RSA) warning W35 is not available for cumulative budgeting.

Entering Budget Journals and Budget Transfer Journals

Some organizations require that a budget definition include more than one set of the following rules:

  • Key ChartFields required for budget journals and source transactions.

  • Translation tree and level at which you budget for the key ChartFields.

  • Budget period calendar, which specifies valid budget periods.

You can, for example, budget at a higher translation level for a few of the budgets in your budget definition. You can also have some budgets in a budget definition that require an additional key ChartField, such as program ID or project ID, for tracking purposes.

For this reason, budget definitions include subsets, called rulesets. Each ruleset defines a different set of keys, translations, and budget period calendar.

Each budget definition has a Ruleset ChartField, the values of which are used by the Budget Processor to determine which Ruleset each source transaction line should reference. You define the Ruleset ChartField values that apply to each ruleset. The system automatically creates a default ruleset, which is used for any Ruleset ChartField values that you do not explicitly assign to a ruleset.

The following example illustrates the use of rulesets:

Using rulesets

The appropriation budget definition in the preceding Using rulesets example requires two rulesets, because departments 2000 to 6999 require program codes on budget journals and source transactions for tracking purposes, whereas departments 1000 to 1999 and 7000 to 9999 do not require program codes. In all other respects, the appropriation budgets for these departments use the same processing rules (except for the attributes that you can override below the ruleset level).

If you have only one set of budget keys, translation rules, and budget calendar for a budget definition, use the default ruleset as your single ruleset, with the control ChartField as the Ruleset ChartField. You need, in that case, to enter any data onto the Ruleset page. If Budget Processor cannot find a ruleset with the values matching the transaction, the default ruleset is used, provided the transaction is subject to control in that ledger.

Note: Rulesets must be mutually exclusive and complete so that no multiple or missing setup parameters exist for a single ChartField value. When you save the Keys and Translations page, the Ruleset ChartField list is edited to ensure that no overlaps exist. When the Ruleset ChartField itself is translated, the system ensures that no node is split across two different rulesets.

Among the attributes that you apply when you define control budgets are:

Term

Definition

Control Options

Control: Strictly control transactions against budgeted amounts. Error exceptions are logged when transactions exceed the budgeted amount.

Tracking with Budget: Track transaction amounts against a budget, but do not issue error exceptions unless no corresponding budget row exists. Pass if budget row exists, even for a zero amount, but issue warnings when transactions exceed the budgeted amount.

Track without Budget: Track transactions even if no budget setup exists. If a budget row does exist, warnings will be logged when transactions exceed the budgeted amount. If no budget row exists, no warning is issued.

No warning is issued for commitment control detail tracking ledger groups with the control option track without budget.

Control Initial Document: Control expenditures against the initial document only. Transactions are stopped and error messages issued only if budget constraints are exceeded when the initial document is processed. Transactions that pass budget checking on the initial document, such as a purchase requisition, are automatically passed on all subsequent documents, such as a purchase order or payment voucher, even if budget constraints are exceeded when they are processed.

Budget Status

Indicates whether the budget is open, closed, or on hold:

Open: The budget can still accept transactions.

Closed: The budget is closed to transactions.

You cannot enter budget journals, and the Budget Processor fails all transactions that affect the budget.

Hold: The budget is on hold.

The Budget Processor fails any transaction that reduces the available balance, but you can enter and post budget journals.

Budget Tolerance

The percentage variance over budget that you allow for a transaction to pass budget checking.

You can apply these attributes at the control budget definition, the control ChartField, the budget attributes, and (in the case of control options only) the source transaction definition in the following way:

  • The control budget definition defines processing rules for the entire control budget definition (ledger group).

  • The control ChartField defines processing rules for individual values of the budgetary control ChartField.

  • Budget attributes define processing rules by business unit and specific ChartField combination.

  • The source transaction definition enables you to define one processing rule—control option—by source transaction type.

You can also apply the following budget date-related rules at more than one level in the hierarchy.

Term

Definition

Begin Date and End Date

Begin and end dates prevent source transaction and budget lines for which the budget date does not fall within these dates from passing the budget checking process.

Cumulative Calendar

Cumulative budgeting enables the application of unused funds from prior and future budget periods if funds are insufficient in the present period.

You can apply these date-related rules at the Ruleset definition, the control ChartField, and the budget attributes. The sections on Budget Period Calendars and Cumulative Budgeting provide instructions about applying these rules at each level in the hierarchy.

Processing rules defined at the control ChartField override those defined at the Budget Period, Ruleset, and control budget definition levels. Those defined at the budget attributes override the control ChartField, Budget Period, Ruleset, and budget definition rules, and those defined at the source transaction level override all of the other levels.

In the following table, note that rules, or attributes, that are set at the various levels are provided by default down through the list and override up through the list.

Rules Are Provided Down and Override Up

Budget Definition

Ruleset

Budget Period

Control ChartField

Budget Attributes

Source Transaction Definition

That is, rules defined for a control budget definition apply to the entire budget definition and to any rows not overridden at one of the lower levels. Here are some examples:

  • Control Budget Definition: Budget tolerance is set at 3 percent for all budgets in the ledger group.

  • Control ChartField: The control ChartField is defined as DeptID.

    Tolerance could be set at 5 percent for DeptID 14000 and 12 percent for DeptID 42000. All other DeptIDs keep the 3 percent tolerance that you set at the budget definition level.

  • Budget Attributes: Set tolerance at 10 percent for business unit US005, Account 540000, and DeptID 14000.

    All other ChartField combinations with DeptID 14000 have their tolerance set at 5 percent, as defined for the control ChartField. The remaining DeptIDs keep the 3 percent tolerance that you define at the budget definition.

  • Source Transaction Definition: Because you can set the control option only at this level, the tolerance rules for all source transaction types are provided by default from the budget attributes and above.

Commitment Control enables you to share budget definitions across SetIDs and business units.

Sharing a Control Budget Definition Across Business Units with Different ChartField SetIDs

Suppose that you have a budget definition for an organization with three business units (US001, US002, and FRA01) and three SetIDs (SHARE, NA000, and EU000):

Business Unit Code

SetID for CC_ORG

SetID for Account

SetID for Departments

US001

SHARE

SHARE

SHARE

US002

SHARE

NA000

SHARE

FRA01

SHARE

EU000

EU000

In the example, one budget definition, with SetID SHARE and ledger group CC_ORG, is shared by all three business units of an organization.

The key ChartFields are the same for all three business units of the organization, but in the Ruleset Keys grid on the Ruleset ChartField page, each Ruleset established requires three rows: one for SetIDs SHARE and NA000, and one for EU000.

If the control ChartField is designated as DeptID, then the ChartField Values grid on the Control ChartField page requires two sets of data: one for SetID SHARE, to be shared by business units US001 and US002, and a second set of data for SetID EU000 to be used by business unit FRA01. If, instead, you designate the control ChartField as Account, you would need to have three sets of data in the ChartField Values grid, one for each of the three SetIDs.

You also perform the same setup in the Budget Entry Offsets and Source Transaction Offsets scroll areas on the Offsets page and the SetIDs for Excluded Account Types and SetIDs for Excluded Accounts scroll areas on the Excluded Accounts page.

Note: Balancing, or offset, lines are not created on the budget journals but are created during the posting process and are stored in the commitment control activity log.

Sharing a Control Budget Definition Across Business Units with Different SetIDs for Ledger Groups

If you have business units with different SetIDs for ledger groups, then you must define identical Commitment Control ledger groups for each SetID in order to share a control budget definition.

Suppose that business units US001, US002, and FRA01 are sharing SHARE for their Commitment Control SetID, but each uses its own SetID for GL ledger groups. For example, business unit US001 uses SHARE for GL ledger groups, US002 uses NA000, and FRA01 uses EU000. The business units can still share the control budget definition (because all three use SHARE for Commitment Control), as long as you define three different Commitment Control ledger groups, one for each, sharing the same ledger group name and template but having different SetIDs. They do not need to share the exact same ledgers—one ledger group can dispense with the pre-encumbrance ledger, for example, whereas the others include it. In the following example, the ledger group names are all the same, as are the budget, expense, encumbrance, and pre-encumbrance ledger names:

SetID

Ledger Group Name

Ledgers

SHARE

CC_ORG

ORG_BUD, ORG_EXP, ORG_ENC, ORG_PRE

NA000

CC_ORG

ORG_BUD, ORG_EXP, ORG_ENC, ORG_PRE

EU000

CC_ORG

ORG_BUD, ORG_EXP, ORG_ENC

In Commitment Control, you can build a hierarchy between budget definitions such that a parent budget has one or more child budgets. The budget amounts for each child budget together represent the amount in the parent budget's bucket, but divided into smaller buckets, or budgets, for each of the child budgets. You might have an appropriation budget, for example, that is a parent to multiple organization budgets; you therefore set up an appropriation budget definition as a parent to the organization budget definition:

Budget Definition

Fund Code

Account

DeptID

Budget Period

APPROP

200

6840000

000

2010

ORG

200

6842000

115

2010M01

ORG

200

6843000

210

2010M01

In this example, the two organization budgets shown represent departmental allotments of an appropriation, representing different accounts and budgeted by monthly budget periods.

Source transactions checked against a child budget are also checked against the parent budget if both budget definitions are attached to the General Ledger (actuals) ledger group. Similarly, the sum of child budget amounts usually equals the parent budget amount, although they may add up to less and may even exceed the parent budget if you select the Child Budget Exceeds option on the Control Budget Options page when you set up the child budget definition.

Along with parent budget control over child budget amounts, a common rationale for this structure is due to the parent budget being typically created at a very high level, while the child budgets are usually created at a more detailed level.

Important! If you do not select the Child Budget Exceeds option, the system performs a validation each time you post a budget journal to ensure that the total across all child budget amounts in the child budget ledger does not exceed the parent budget amount. However, if more than one child definition is associated with a parent budget definition, the system does not add child budget amounts across child budget definitions to arrive at a total child budget amount to validate against the parent budget. Rather, the system views each child budget definition as the "same money" in "different slices," and it only validates the child budget amounts within the child budget definition for the budget journal. Therefore, if you have more than one child budget definition associated with a parent budget definition, and those child budget definitions do not represent the "same money," your child budgets can exceed your parent budget even if you do not select the Child Budget Exceeds option.

Setting Up Parents and Children

To create the parent-child relationship:

  1. Include the ChartField values for the parents and the children on the same budget key translation trees.

    The ChartField values of the parent budget must be at a level that is the same as or higher than the child's to ensure that each child budget is translated to its parent budget.

  2. Define the parent budget definition.

  3. Define the child budget definition.

    When you indicate the parent budget definition on the Control Budget Options page, the system automatically copies the parent's control ChartField, control ChartField values, Ruleset ChartField, Ruleset ChartField values, and key ChartFields into the child budget definition. You can add more key ChartFields to the child, but it must contain all of the parent key ChartFields and trees. The translation levels for the key ChartFields in the child budget definition can be lower than that of the parent.

Automatic Generation of Parent Budget Level Activity from Child Budget and Budget Adjustment Journals

After you have set up your parent child budgets, Commitment Control provides the option for automatic generation of parent budget-level activity to streamline the entry, adjustment, and transfer functions for multilevel budgeting with complex budget hierarchies. When you use the parent budget automatic generation feature, the budgeting impact associated with child-level budget journal entries can be automatically reflected at all levels above the specified originating child budget entry level. This functionality can save a significant amount of time because budget maintenance can be done at the lowest child level and the system automatically handles the budget impacts associated with each of the higher parent budget levels. This is sometimes referred to as bottom-up budgeting.

See Generate Parent Budgets, Budget Adjustments, and Budget Transfers Automatically.

You can use statistics codes in Commitment Control to track non monetary amounts to facilitate financial analysis and reporting. Set up statistical budget checking in the Budget Definitions component by selecting Enable Statistical Budgeting on the budget definition. Statistics budgets do not have rules and settings separately defined; instead, they follow the settings in the regular hierarchy. The Budget Processor bypasses rather than fail source transactions that do not have a statistics code entered.

Note: While statistical budgeting can still be used at the ledger level, it is not supported by funding source functionality and cannot be tracked at the funding source level.

When the budget processor relieves budgetary commitments in the procure-to-pay document flow (liquidations), if the successor document has the same statistics code as that of its predecessor, the predecessor document statistical amount will be liquidated, just as it is with the monetary amount liquidation. However, if the successor does not have the statistics code or has a statistics code but it is different from its predecessor's, the predecessor's statistical amount will not be liquidated. This is because the system cannot determine how much to liquidate. In such cases, the successor passes budget checking, but a warning exception message, No Stat Liquidate - Diff Code, is logged.

If you establish associated budget links between statistical budgets, the statistical code value must be the same for the expenditure and the revenue budget combination because the budget processor gets the revenue amounts by using the statistical code of the expenditure budget.

You can require the system to generate offsets for Commitment Control ledgers for every budget journal or transaction that the system processes by selecting Entries Must Balance on the Control Budget Options page. You must then select offset accounts for budget entries and source transaction types on the Offsets page.

This setup provides a fully balanced budget definition, which is convenient if your organization must perform balanced reporting of budget activity.

Note: Balancing, or offset, lines are not created on the budget journals but are created during the posting process and are stored in the commitment control activity log.

You can establish funding sources, such as grants, donations, or endowments, and allocate amounts from those funding sources to multiple project budgets. When you perform budget checking on project transactions, the system checks the transaction amount against the sum of the allocations in the project budget.

Note: Project budgets are created and posted in Project Costing. You can maintain hierarchies of project control budgets (such as between project budgets and phase budgets) by defining parent-child relationships and a projects translation tree.

See Setting Up Budgets in PeopleSoft Project Costing.

Setting Up Project Budgets with Funding Source Control

To set up project budgets with funding source control, you define your funding sources, set up associated expenditure and revenue budgets, and allocate the funding sources to each project. Use the following setup procedure:

  1. Establish Commitment Control ledgers and ledger groups for a project expenditure budget definition and a project revenue budget definition in the Detail Ledger and Ledger Groups components.

  2. Define funding sources on the Funding Source Definition page.

    You enter funding source amounts and adjustments on the Funding Source Transaction Logs grid, and also descriptive information about the funding source. The page calculates the total funding source amount by aggregating the amounts that you enter on the grid.

  3. Define a project expenditure budget definition in the Budget Definitions component:

    • Select the Enable Funding Source check box on the Control Budget Options page.

      By entering the revenue ledger group that you created in step 1 in the Revenue Track field on the same page, and after saving the expenditure budget definition, the system automatically creates the related revenue budget definition with the same parameters as the expenditure budget, except for the Commitment Control option, which is Track w/o Budget, and the excluded account types, which you must define. You can also add a second key ChartField to the revenue budget definition to further refine your identification of revenue sources.

    • Do not assign a budget period calendar.

    • You must enter the valid project ID values on the Control ChartField page and select or deselect the Funding Source Required check box for each.

      This alerts the system about whether a project is funding source-controlled. You can also enter the budget begin and end dates for the project.

  4. On the Funding Source Allocation page, enter the overall amount approved for the project and then allocate funding sources and amounts for each project ID that requires funding source tracking.

    Each row on the Funding Source Allocation Details grid must have a unique funding source, even if the spend option is different.

    You can specify this allocation as a percentage or priority method. For the percentage allocation method, you can define funding source amounts as a percentage of the overall spending amount for the project or as a flat spending cap amount. For the priority method, assign each funding source a unique nonzero priority number. The system still saves the allocation with a zero priority number, but the Budget Processor cannot use this allocation because a funding source error is in effect for such cases. You also define whether a funding source amount can be spent immediately (budgeted), upon revenue being recognized or upon revenue being collected. For the recognized and collected revenue spending options, you define the percentage of revenue that can apply toward your project expenditure budget, up to the spending cap. The same revenue cannot be assigned to different funding sources. If more than two revenue rows exist, the secondary key identified in the revenue budget definition can be used to distinguish the revenue amounts.

    The following example presents funding source allocations for a project. Italicized values represent system-calculated amounts:

    Project ID

    Funding Source

    Spend Option

    Spending Cap

    % of Revenue

    % of Overall Amount

    PROJ23

    NIH0014

    Budgeted

    5000

    NA

    25

    PROJ23

    UNIV17

    Recognized

    10000

    75

    50

    PROJ23

    PRAT01

    Budgeted

    5000

    NA

    25

    In this example, the total spending amount for project ID PROJ23 is 20000, although the available spending amount at any given moment depends on the amount of revenue recognized from funding source UNIV17. The project can use up to 75 percent of the recognized revenue from funding source UNIV17, up to the 10000 spending cap. Fifty percent of the overall expenditure budget for the project comes from funding source UNIV17, 25 percent from NIH0014, and 25 percent from PRAT01.

    You can allocate funding sources to as many projects and business units as you prefer. The system validates that you do not over allocate a funding source.

  5. Enter budget journals for budgeted funding source allocation rows.

    The Commitment Control Posting Process (FS_BP) Application Engine process validates that the funding source allocation is already defined and that the sum of the budget journal amount for one funding source does not exceed the spending cap defined on the Funding Source Allocation page.

Commitment Control provides a ChartField called Budget Reference (BUDGET_REF) that uniquely identifies a budget, enabling you to identify separate multiyear overlapping budgets that share the same combination of non budget reference ChartFields.

To take advantage of the budget reference ChartField, you must define it as a key ChartField for the control budget definition, and you must enter budget reference ChartField values on the budget journal and all spending transactions for the budget definition.

Multiyear Overlapping Budgets

Budget reference primarily enables unique identification of multiyear overlapping budgets with shared ChartFields. Typically, these are appropriations that are made every year but last a number of years. For example, your organization receives an appropriation each fiscal year. You can use these appropriations to fund spending for three years so that the appropriation granted in 2008 is eligible to fund spending from July 1, 2007 to June 30, 2010 (budget periods 2008, 2009, and 2010), and the 2009 appropriation can fund spending from July 1, 2008 to June 30, 2011 (budget periods 2009, 2010, and 2011), and so on:

2008 Appropriation

2009 Appropriation

2010 Appropriation

2008

NA

NA

2009

2009

NA

2010

2010

2010

NA

2011

2011

NA

NA

2012

If these appropriations budgets share the same ChartField combination, the system cannot distinguish the appropriations with overlapping budget periods unless a unique identifier exists for each appropriation. To report your spending by both fiscal year and appropriation grant, you must identify both the fiscal year and the appropriation for each spending transaction. In this example, each budget period represents a fiscal year, but you need a budget reference to identify each appropriation.

To set up the budget reference ChartField to distinguish multiyear overlapping budgets such as those in the preceding example:

  1. Define budget reference ChartField values for each appropriation budget by using the Budget Reference page.

    You may want the budget reference to refer to the resolution that created the appropriation, or a time associated value. In this scenario, budget references RES2008, RES2009, and RES2010 are defined.

    See Budget Reference Page.

  2. (Optional) Define a budget period calendar with periods by which you must report.

    In this example, budget periods that mimic fiscal years are set up, starting on July 1 and ending on June 30.

  3. Set up a control budget definition that includes budget reference as a key ChartField.

    If your budget definition uses a budget period calendar, multiyear overlapping appropriations require cumulative budgeting. Do not select Derive Dates or assign a cumulative calendar on the Keys and Translations page. Instead, you should enter the begin and end dates for the multiyear appropriation when you enter the budget journal.

    If your budget definition does not use a budget period calendar, you can enter the date range for the appropriation at the control ChartField, at the budget attributes, or at budget journal entry.

    In this scenario, the budget definition is called CC_MY.

    See Budget Period Calendars and Cumulative Budgeting.

  4. Enter and post a budget journal for the multiyear appropriation.

    Enter the budget reference just as you would any ChartField value. Enter the begin and end dates for the appropriation, and click Generate Budget Period Lines to generate journal lines for each budget period covered by the appropriation.

    Ledger Group

    Acct

    Fund

    Bud Ref

    Bud Period

    Amnt

    Begin Date

    End Date

    CC_MY

    50000

    100

    RES2008

    2008

    3000000

    July 1, 2007

    June 30, 2010

    CC_MY

    50000

    100

    RES2008

    2009

    0

    July 1, 2007

    June 30, 2010

    CC_MY

    50000

    100

    RES2008

    2010

    0

    July 1, 2007

    June 30, 2010

    You can enter either the entire amount of the budget on the first line and zero on the remaining lines, as in the preceding table, or an amount on each line.

    See Entering Budget Journals and Budget Transfer Journals.

Each time you create a source transaction for this appropriation budget definition, you enter the budget reference of the appropriation that you want to spend against, just as you would any ChartField value. As long as a sufficient cumulative available balance exists across all of the budget periods included in the appropriation, the transaction will pass. When it comes time to report on spending against the appropriation, you can easily identify all of the transactions that hit the appropriation in a budget period, fiscal year, or accounting period.

If you do not use a budget period calendar, then cumulative budgeting is not an issue. The Budget Processor treats the spending range of the budget as a single budget period.

You can enter entry event codes in budget journals to create entry event transactions.

See Setting Up Entry Events.

See Entry Event Code Definition Page, Setting Up and Processing Commitment Control Budget Journals with Entry Events.

Most organizations budget at a translated level that is higher than the source transactions that they budget check. Because the Budget Processor translates source transactions to the budgeted ChartField value level, standard Commitment Control ledger groups do not store transaction-level ChartField values for commitments. And although expenditure transactions are stored in the actuals or recording ledger with their untranslated, or transaction-level ChartFields, the pre-encumbrance and encumbrance transactions are not recorded in the actuals ledger at all.

To capture detail ledger rows and record transactions at an untranslated level for such nonactuals transactions, you define a commitment control ledger group as a detail ledger group by selecting the Commitment Detail Ledger check box on the Commitment Control Options page of the Ledger for a Unit component. Detail ledgers must also be set to the Track without Budget option on the Control Budget Options page. Tracking only is performed; no budget checking is done, no warnings are issued, and no validation of (RSA is performed for a detail ledger group.

Note: No budget checking is done and no errors or warnings are issued for detail budget ledgers. This is the case even if control options might be set in the budget definition or budget attributes and even if the control option is set to control.

On the other hand, if the Track w/o Budget option is selected but the detail option is not selected for the budget ledger (it is not a detail ledger), the system checks to determine whether the budget row exists, and if so, perform budget checking and issue warnings.

When you budget check a transaction, the Budget Processor updates the ledgers in the standard Commitment Control ledger group at the translated level and the ledgers in the Commitment Control detail ledger group at the untranslated level. You can therefore inquire and report on nonactuals transactions at the detail level, without having to use the transaction activity logs.

For example, a requisition in the amount of 450 has Account 6842000, DeptID 615, Budget Period 2009Q2. Account 6842000 rolls up to Account 6840000 for budgeting. The Budget Processor updates the pre-encumbrance ledger for the expenditure control budget with the following ledger row: Account 6840000, DeptID 615, Budget Period 2009Q2, amount 450. It also updates the pre-encumbrance ledger in the detail ledger group with the following detail ledger row: Account 6842000, DeptID 615, Budget Period 2009Q2, amount 450.

Note: If you use entry events with PeopleSoft Purchasing, the Entry Event Processor (FS_EVENTGEN) generates entry event accounting lines for pre-encumbrance and incumbrance Purchasing transactions by selecting transaction rows from the Commitment Control detail ledger group. Entry events generate accounting lines to record the pre-encumbrance and encumbrances in the actuals ledger. To facilitate this, you must select the Commitment Detail Ledger check box for the Commitment Control detail ledger group when you assign Commitment Control ledger groups to a business unit and GL ledger group in the Ledgers for a Unit component. The Entry Event Processor looks for this selection to identify the ledger group that contains pre-encumbrance and encumbrance transactions from Purchasing. Also note that funding source with entry event functionality is not supported.

You can use the Associated Budgets component to define a relationship between revenue budgets and expense budgets. Its purpose is to increase budgeted expenditure limits automatically in relationship to budgeted, recognized, or collected revenue.

Before you can use the Associated Budgets component, you must indicate the associated expenditure budget definition when you define the revenue budget definition in the Budget Definitions component.

You have the following options when you associate budgets:

  • You can designate one or more revenue budgets to increase the available spending for an expenditure budget.

  • You can designate one or more expenditure budgets to have available spending increased by a revenue.

  • You can make the revenue available for spending when it is budgeted, recognized, or collected, or you can increase the available spending for an expenditure budget by the greater of the collected or budgeted amount, the greater of the recognized or budgeted amount, or the lesser of either combination.

  • You must assign a percentage of the revenue amount up to a maximum amount or cap to apply toward the spending balance.

The Budget Processor uses this data to determine whether a sufficient spending balance is available to pass a specific transaction. If an insufficient budget balance is available for a transaction in the expenditure budget, the Budget Processor looks up the related revenue budget activity to determine whether sufficient amounts are provided by the revenue budget to increase the available spending for the associated expenditure budget to pass the transaction. The Budget Processor passes or fails the source transaction accordingly.

To copy budgets use the BUDGET_COPY component. You can copy budgets and any associated expense and revenue budgets using the Budget Copy feature.