Creating Validation Reports
You can use Longview Designer to create, duplicate, modify, verify and delete validation report apps. You can use validation report apps to review validation data in the consolidation system.
Specifying pre-selection commands
Use pre-selection to perform any commands before symbol selection. The typical use of pre-selection is to perform advanced logic to determine default selections or set the range of possible symbols. Pre-selection commands are executed after symbol selection settings are applied from the app configuration, so all symbol selection variables have been created at this point.
See Generating a symbol selection form for details on symbol selection variables.
Note: Using pre-select commands to set default or symbols overrides the settings in User Selections.
Variable | Notes |
---|---|
<Dimension>Default |
Specify the default selection in the symbol selector, for the Dimension. |
<Dimension>Symbols |
Specify the list of available selections in the symbol selector for the Dimension. |
Example: Setting the list of possible symbols to all YTD periods
Create VARIABLE ytdPeriodList AS RANGE
Set VARIABLE ytdPeriodList = "[[SYSTEM,SGPTimePeriodsYTD,DBDEFAULT]]"
For EACH ytdPeriod in ytdPeriodList
Set VARIABLE TIMEPERIODSSymbols = ListAppend(TIMEPERIODSSymbols, "$ytdPeriod$#99")
Next
Specifying user selections
Use user selections to specify dimensions for which the user will be prompted to choose symbol(s). For each dimension that the user will choose symbols, right-click on the User Selections folder and choose Add Dimension. The dimension settings page will appear.
Variable | Notes |
---|---|
Dimension |
Select the dimension the user will be prompted to select symbol(s) for. |
Available selections |
Select a symbol to limit the possible symbols available to the user. If left blank the user will be able to select from all symbols available in the dimension. The available symbols will always be limited by user access. |
Default selection |
Select a symbol to specify as the default selection. This can either be a database symbol, an attribute symbol, or a floating time period. Note: Attribute symbols and floating time periods will only be available if they are defined in your system. |
Selection required |
Check this to force the user to select a symbol to continue. |
Allow leaf selection |
Check this to allow the user to select a leaf symbol. |
Allow parent selection |
Check this to allow the user to select a parent symbol. |
Allow read-only selection |
Check this to allow the user to select a read-only symbol. |
Allow multiple selections |
Check this to allow the user to select more than one symbol. |
Attribute filter |
Enter an attribute filter expression to further limit the possible symbol selections. |
Specifying attribute-based selections
Use Attribute Based Selections to specify selections for dimensions that are deter- mined by an attribute value. For each dimension to be determined via an attribute, right-click on Attribute Based Selections and select Add Dimension.
Variable | Notes |
---|---|
Dimension |
Select the dimension to select symbol(s) using an attribute value. |
Attribute class |
Select the class of attribute to use. |
Attribute name |
Select the attribute. |
Source dimension (SYMBOL class) |
If the attribute class is SYMBOL, select the source dimension. Note: The source dimension must be a dimension specified as a user selection or attribute-based selection. |
Note: The variable created to hold the attribute-based symbol will have the same name as the dimension. The variable created will be a STRING type.
Example, to set the currency selection to be the functional currency of the selected entity:
- Select the CURRENCIES dimension.
- Set the attribute class to SYMBOL.
- Enter “ZGPNativeCurrency” for the attribute name.
- Select ENTITIES for the source dimension.
Example, to set the time period selection to be the current period:
- Select the TIMEPERIODS dimension.
- Set the attribute class to SYSTEM.
- Enter “SGPCurrentPeriod” for the attribute name.
Specifying post-selection commands
Use post-selection to perform any commands after symbol selection, but before any data areas are created. The typical use of post-selection commands is to perform advanced symbol selection tasks. For example, you might use post-selection to create a list of all standard intercompany accounts. In addition, you may want to use a form to further refine selection, or instead of the template provided symbol selection.
Caution: Post-selection commands are executed as part of symbol selection within a view. Any Create VARIABLE commands will cause an error during symbol reselection. If “Allow user to change selections in view” is allowed, either create variables only in pre-selection, or wrap variable creation in VariableExists checks.
Example: Get a list of all standard intercompany accounts
If Not(VariableExists("ACCOUNTS"))
Create VARIABLE ACCOUNTS AS RANGE
END If
Set VARIABLE ACCOUNTS = CreateList(SYMBOLS, DATABASE, ACCOUNTS, "TB###")
Set VARIABLE ACCOUNTS = FilterList(ACCOUNTS, "[[SYMBOL,ZElimICSchTransactions,THIS]] == 'ICStandard'")
Example: Specifying multiple attribute time periods (current forecast and budget period)
If Not(VariableExists("TIMEPERIODS"))
Create VARIABLE TIMEPERIODS AS RANGE
END If
Set VARIABLE TIMEPERIODS = "[[SYSTEM,SGPForecastPeriod,DBDEFAULT]]" Set VARIABLE TIMEPERIODS = ListAppend(TIMEPERIODS, "[[SYSTEM,SGPBudgetPeriod,DBDEFAULT]]")
Example: Specify temporary symbols mixed with real symbols
If Not(VariableExists("TIMEPERIODS"))
Create VARIABLE TIMEPERIODS AS RANGE
END If
Set VARIABLE TIMEPERIODS = "[[SYSTEM,SGPForecastPeriod,DBDEFAULT]]"
Set VARIABLE TIMEPERIODS = ListAppend(TIMEPERIODS, DIFF")
Set VARIABLE TIMEPERIODS = ListAppend(TIMEPERIODS, "[[SYSTEM,SGPBudgetPeriod,DBDEFAULT]]")
To capture additional user input via a form, it is required that the button clicked be copied to the FORM_ButtonClicked variable to ensure expected app execution. Specifically, app execution continues if FORM_ButtonClicked has a value of “OK”.
Example: Capture additional user input via a form
Show FORM USING Custom.lvfrm
Set VARIABLE FORM_ButtonClicked = $LVS_BUTTONCLICKED$
Allowing currency re-selection in a data view input app
There may be cases where the initial selection in the app is based on the functional currency of the selected entity, but you want the user to be able to change the currency.
To accomplish this, follow these steps:
Note: Substitute CURRENCY for the name of your currency dimension, or use an attribute token or $CORE.DimensionInfo.KeyDimensionList[4]$ for CURRENCY for flexibility.
- In the pre-selection add the following to support currency selection:
//Configure currency selections for re-select in view
Create GLOBALVARIABLE CURRENCYDefault AS STRING
Create GLOBALVARIABLE CURRENCYOptions AS STRING
Create GLOBALVARIABLE CURRENCYSymbols AS RANGE
Create GLOBALVARIABLE oldSelectDimensionList[] AS STRING //used to restore symbol selection to original options
Set VARIABLE CURRENCYOptions = "11000"
Set VARIABLE CURRENCYSymbols = "SOURCEC###"
Create VARIABLE isCurrencySelection AS NUM //used to track in post-selection if the is changing currency only
- In the Post-Selection add logic to set the native currency on entity selection:
If Not(VariableExists("CURRENCY"))
Create VARIABLE CURRENCY AS STRING
END If
If $isCurrencySelection$ //reset selection options to allow regular symbol selections
Set VARIABLE FORM_SelectDimensionList = ListAppend(CORE_EmptyList, oldSelectDimensionList)
Set VARIABLE isCurrencySelection = 0
Else
Set VARIABLE CURRENCY = "[[SYMBOL,ZGPNativeCurrency,$ENTITIES$]]" //apply currency of selected entity
END If
- Add a View Action to allow the user to change currency (this will be a new button on the toolbar)
Set VARIABLE oldSelectDimensionList = ListAppend(CORE_EmptyList, FORM_SelectDimensionList)
Set VARIABLE isCurrencySelection = 1
Set VARIABLE FORM_SelectDimensionList = ListAppend(CORE_EmptyList, "CURRENCY")
Run PROCEDURE "VIEW\OnReselect.lvpro"
Specifying settings
You can use Longview Designer to specify settings for a validation report app.
Field | Notes |
---|---|
Enter Dimensions to Display |
Select the dimensions that you would like to display in the report. |
Enter Validation Threshold |
Enter a numeric thereshold value. Any validation differences that do not meet the threshold (either + or -) will not be displayed in the validation report. For example, if a threshold of 1000 is entered, validation differences less than 1000 will not display. |
Show Difference as Absolute Value |
Select Yes to display the validation differences as absolute values. |
Validation Data Area |
Set the Data Area that you would like the validation report to run against. Note:
|