About the validation of model data by using business logic

更新: 2009-04-30

This topic provides an overview of how you can use business logic to validate foreign keys for measure group tables.

You can validate measure groups against business rules that are established by 规划服务器. When you synchronize a model with the staging database, 规划服务器 creates a stored procedure for each existing measure group. The stored procedures that are created follow the bsp_Validate_MG_<measure_group_name> naming convention where measure_group_name is the name of the measure group table for which the stored procedure is created. These procedures perform validation on both financial and non-financial models.

You can validate all measure groups in a model or single measure groups that use the following Transact-SQL stored procedures:

BizValidationStatus Column

规划服务器 adds the BizValidationStatus column to measure group tables in the staging database during Step 2: Synchronizing the staging database. This column contains values that enable you to track the status of the rows in the measure group table after validation. After running a validation, valid rows are set to BizValidationStatus = 0. Rows that are not valid will have a non-zero status and indicate that the row failed one of the business validations as described in the following section.

To return the errors that correspond to the BizValidationStatus value, run the fn_util_EvaluateValidationStatusCode function. For reference information about status error codes, see BizValidationStatus errors.

Financial Model Validations

The business validation stored procedures validate many requirements. The value of BizValidationStatus varies according to the number of errors that occur. The BizValidationStatus values that are listed in the following table are based on only one error occurring.

The following table describes different values for BizValidationStatus that might occur.

Model element BizValidationStatus value Description

Foreign Key

2

A foreign key in this row cannot be found in the appropriate dimension or hierarchy table.

Leaf Level Member Additions

1024

The row cannot be loaded because it applies to a non-leaf level member and no input exceptions are in force.

Data can be written to non-leaf level members when the EnableInputAtAllLevels model property is set to True. You can also add data to a non-leaf level entity member for rows that have the BusinessProcess dimension set to MANADJ or FXADJ.

BusinessProcess dimension

512

You can only add data to rows that have the BusinessProcess property set to ALLOC, INPUT, MANADJ, or FXADJ. All the other BusinessProcess dimension members are calculated and cannot be manually adjusted or changed.

Currency dimension

16

Indicates that the value in the Currency dimension does not equal the Entity default currency.

You can add data to non-default currencies when you write to the BusinessProcess dimension FXADJ.

Intercompany property

32

Indicates that one of the following occurred.

  • Intercompany property for the Account type is not set to true.

  • Intercompany property for the Entity Type is not set to true.

Account type

64

Account dimension member is of account type Header.

Flow dimension property

256

Flow dimension property is set to FX, FXF, FXO. INT, MOVT, or OPE. These flows are system-calculated and cannot be manually entered.

Flow dimension property

128

Indicates that one of the following conditions is not true.

  • Flow property is set to NONE for a non-financial account.

  • Flow property is set to NONE for an income statement account.

  • Flow property is not set to NONE for a balance sheet account.

TimeDataView dimension

128

You must use “Periodic” as the member of the TimeDataView dimension.

Exchange Rate Model

16384

Indicates that one of the following conditions is not true.

  • When the destination currency is equal to the source currency, the exchange rate must be 1.

  • Exchange rates are positive.

Shares Measure Group

4096

The OwnershipAndControl values are not null.

Shares Measure Group

8192

The SharesOutstanding values are not null.

Shares Measure Group

2048

Indicates that the SharesOwned value of an entity exceeds the shares outstanding for that entity.

Download this book

This topic is included in the following downloadable book for easier reading and printing:

See the full list of available books at Downloadable content for PerformancePoint Planning Server.

另请参阅