| Oracle Financial Analyzer User's Guide Release 11i Part Number A96138-01 |
|
This chapter describes how to create and use models.
You need to know the information in this chapter if you are:
This chapter includes the following topics:
Models are sets of up to 8,000 interrelated equations that can be used to calculate new data values. They can also be used in worksheets for performing what-if analyses. Models are:
To use a model to calculate new data for a financial data item, you include the model in a solve definition, and associate the solve definition with a financial data item. You then run the solve definition to calculate the data. The same model can be used to calculate data for multiple financial data items, as long as they have the same dimensions.
Financial Analyzer models can be used to manage a wide range of financial data issues including:
As an administrator, it is your responsibility to maintain the models that your users access in the shared database that you administer. When you create or modify a model and want other users to be able to access it, you must distribute the model to the shared database and to other users. Typically, administrators create and distribute the basic line item models for their groups.
As a Budget workstation user, you can create and modify models for your own personal use. You can modify models that your administrator has created for you, but you cannot save the modifications unless you assign a new name to the modified model, retaining the original.
You choose Model from the Maintain menu to create a new model. This opens the Maintain Model dialog box where you can define a model. You can create an entirely new model, or you can create a model based on an existing model.
Follow these general steps to create a model.
A simultaneous equation occurs when an equation in a model indirectly depends on itself as the result of the dependencies among other equations in the model. A dependency occurs when the expression on the right-hand side of the equal sign in one equation refers to the assignment target of another equation.
You control how simultaneous equations are solved by selecting options in the Model Options dialog box. The model options enable you to specify the following:
When you have created the model, you must compile and save it. You can then include the compiled model as part of solve and group solve definitions and apply it to worksheet data.
You choose Model from the Maintain menu to modify a model. This opens the Maintain Model dialog box, where you can choose the model that you want to modify. From this starting point you can perform the following functions:
For more information about working with models, search for the following topics in the Financial Analyzer Help system:
Model equations can include operators, numeric constants, and condition statements. You can also include functions, which are described in the topic "Modeling Functions.
Operators include the unary minus symbol (-) and the standard binary operators for addition (+), subtraction (-), multiplication (*), and division (/). Conventional rules for evaluating algebraic expressions apply.
If a formula contains multiple subexpressions (distinguished from the main expression by parentheses), the subexpressions are evaluated first; then the main expression is evaluated.
Operators are evaluated from left-to-right using the conventional order of precedence: unary operators (negative symbols) are evaluated first, followed by multiplicative operators (*,/), followed by additive operators (+,-).
Numeric constants are real numbers (decimal numbers) or integers (non-decimal numbers).
Real numbers:
Integers:
You can use models to derive data based on certain conditions. You must use the condition statements IF, THEN, and ELSE. All three statements are required.
In this example, the TAX line item is calculated based on SALES - EXPENSE and a TAXRATE, where, if the result is negative, the tax is zero.
IF SALES - EXPENSE GT 0 THEN (SALES - EXPENSE) * TAXRATE ELSE 0
When typing a command or equation into a model, you can continue it onto another line by ending the partial command with a hyphen and then continuing on the next line.
Note: Financial Analyzer models are limited to one command per If statement.
Note in the following model, the hyphens (-) at the end of the 3rd, 8th, and 9th lines.
if sales - expense gt 0 then conssales * -1 - sales(line 'advert') / lastyrsales (line 'advert') else if gross.profit gt 100 then maint.marg / maint.rev - service.marg / service.rev - . . . else NA
When referring to another financial data item, you must create an alias financial data item. In models, you cannot reference financial data items directly; you must always refer to them using their alias. Although the model will compile if a financial data item is referenced directly, a solve that is based on the model will not run.
Follow this procedure to create an alias for a financial data item.
For example, if you have two financial data items called MAYACTL and APRACTL, and you want to create a formula to see the variance in their data, you must create alias financial data items for them. If the aliases you create are called MMAYACTL and MAPRACTL, the formula in the variance financial data item would be:
MMAYACTL - MAPRACTL
Financial Analyzer has many functions that you can use to make calculations and analyze data. You can use functions to perform the following tasks:
To use a function, you type its name and, in parentheses, some additional information. Each piece of information needed by a function is called an argument.
Financial Analyzer includes the following types of numeric functions.
Advanced mathematical functions operate on each dimension in the expression. The dimensions of the result are the union of the dimensions of the inputs. The following table describes these functions.
Most advanced mathematical functions operate on a single numeric variable, but the MAX and MIN functions make comparisons between the values of two variables. For dimensioned variables, the MAX and MIN functions compare each value of one variable with the corresponding value of the other variable.
The time-series functions retrieve and perform calculations on values from a previous or future time period. The following table describes these functions.
The data you retrieve with a time-series function is usually dimensioned by a time dimension, such as MONTH, PERIOD, or YEAR. LAG and LEAD actually can retrieve data of any type, but the other time-series functions handle numeric data only.
The LAG, LAGDIF, LAGPCT, LAGABSPCT, and LEAD functions let you compare data for the time dimension values in the current status with data from a previous or future time period. You specify the data expression you want to analyze, the number of time periods the function should go back or forward for the comparison, and the time dimension. LAG and LEAD simply return the past or future value.
The LAGDIF and LAGPCT functions make the most commonly used types of comparisons, that is, the difference and the percent difference, between the current data and the comparison value.
The moving functions (such as MOVINGTOTAL or MOVINGMAX) return a value for each time period in the status of a time dimension. The value is based on the data for a range of time periods that precede, include, or follow the period for which the value is being calculated. The range is always relative to the current period, so the range is always moving forward as you process each time value in the current status.
The financial functions provide standard calculations needed for financial analysis. The following table describes these functions.
Functions that return an aggregate value ordinarily return one value for many values of the input expression. The following table describes these functions.
For complete descriptions of modeling functions, refer to the Oracle Express Language Reference Manual or the Oracle Express Language online help.
Revenue and expense line items which are commonly derived include:
Line items not stored in the general ledger or reflected in the standard income statement are often used as the basis for some of these calculations and may be calculations themselves. The following table shows examples of these calculations.
In this example, Unit Volume, Unit Price, Unit Cost, Sales Discounts and Sales Returns are input values. The Unit Volume equation is based on the previous year's Unit Volume value.
The combination of these and other equations is referred to as a model. By applying this model to financial data, these equations are calculated and the resulting figures are available for review, publishing, or further analysis.
One use of models within organizations with many employees is the modeling of number of employees, or headcount. In organizations where compensation expenses account for a large percentage of total operating expenses, effectively budgeting and planning the compensation expense line items through headcount modeling provides significant level of cost controls.
The following table shows some options for modeling consulting employee headcount and related revenue.
In this example, analysts can vary the Billing Rate, Billibility, or number (n) of employees (EEs) at each Job Grade (V.P., Director, Senior Consultant, etc.). They can then apply the model and see the impact of that change on overall corporate Consulting Revenue.
This sample model calculates the proportion of Advertising Expenses to Marketing Expenses from last year as a means of allocating the targeted, annual budget amount that was entered into Marketing Expense on the worksheet. This is an example of top/down budgeting with models that spread higher level values to the detail based on historical ratios. This same approach will work for Time, Org and all other dimensions. In this example, Marketing Expenses (MKTEXP) consists of Advertising and Selling Expenses.
The following table describes the steps taken to create the model.
Budref = Budget
lastyear(line `Advert')/lastyear(line `MKTEXP') * budref(line `MKTEXP')
Write the model equation for the Selling Expense line item as follows:
lastyear(line `Sellexp')/lastyear(line `MKTEXP') * budref(line `MKTEXP')
Note: The item "lastyear" represents a financial data item that contains last year's data.
The LEAD function retrieves values from a subsequent time period. A model equation can refer to data from a subsequent time period by incorporating the LEAD command in the equations. For example, if December's budgeted Plant & Equipment asset balance has been determined, to derive September's budgeted amount based on that year end balance, you could use the following equation.
LEAD(P&E, 3, TIME) * .90
Where:
The LAG function retrieves data from a previous time period. A model equation can refer to data from a previous time period by incorporating the LAG command in the equation. In the equation shown below, a month's revenue (REVENUE) is derived based on the prior month's estimate.
LAG(REVENUE, 1, TIME) * 1.05
Where:
The LAGDIF function calculates the difference between current and previous values. When the difference between two values is useful in deriving a value, this function can be incorporated into the model equation. For instance, in statement of cash flow balances, net change in accounts receivable can be quickly calculated using the LAGDIF function. In the example below, the end of year balances are compared (lag one year time period).
LAGDIF(ACCTS.REC, 1, TIME)
Where:
The LAGPCT function calculates the percent difference between current and previous values. The percent difference calculation is often referenced in deriving budget, forecast and plan data as well as when creating key indicators for tracking performance growth. In the example below, Computer Expense (CMPTR) is tied to Employee Headcount totals (HEADCOUNT). Here, monthly Computer Expense is budgeted based on last month's Computer Expense, multiplied by the increase/decrease in Headcount from the previous month.
LAG(CMPTR, 1, TIME) * (LAGPCT(HEADCOUNT, 1, TIME) + 1)
Where:
The MOVINGAVERAGE (abbreviated MVAVG) function computes a series of averages over time or over another dimension. This function can be used to maintain a three-month moving average balance on inventory, as shown in the following equation.
MVAVG(INVENTORY, -2, 0, 1, TIME)
Where:
The MOVINGTOTAL function (abbreviated MVTOT) computes a series of totals, usually over time, but can also be used over another dimension. Asset management may require monitoring Property Plant and Equipment (PP&E) in six-month moving totals as shown in the following equation.
MVTOT(PP&E, -5, 0, 1, TIME)
Where:
|
|
![]() Copyright © 1996, 2002 Oracle Corporation. All Rights Reserved. |
|