Table of Contents

Table "Analysis View"

ID 363
Namespace: Microsoft.Finance.Analysis

Defines configurable analysis views for multi-dimensional financial reporting and analysis. Provides pre-aggregated data from G/L entries, cash flow entries, and budget entries with customizable dimension tracking.

Remarks

Core configuration table for the Analysis system. Supports G/L Account and Cash Flow Account sources with up to 4 dimensions. Analysis view entries are created through the UpdateAnalysisView process for optimized reporting performance. Extensibility: OnBeforeValidate events for dimension codes and validation logic customization.

Properties

Name Value
Caption Analysis View
DataCaptionFields 1,2
LookupPageID Page Microsoft.Finance.Analysis."Analysis View List"
Permissions TableData "Analysis View Entry" = rimd, TableData "Analysis View Budget Entry" = rimd
DataClassification CustomerContent

Fields

Name Type Description
Code Code[10]

Unique identifier for the analysis view configuration.

Name Text[50]

Descriptive name for the analysis view displayed in user interface and reports.

"Account Source" Enum Microsoft.Finance.Analysis."Analysis Account Source"

Source of accounts to include in the analysis view (G/L Account or Cash Flow Account).

"Last Entry No." Integer

Last G/L entry number processed during analysis view update.

"Last Budget Entry No." Integer

Last budget entry number processed during analysis view update.

"Last Date Updated" Date

Date when the analysis view was last updated with transaction data.

"Update on Posting" Boolean

Specifies whether the analysis view should be updated automatically when transactions are posted.

Blocked Boolean

Indicates whether the analysis view is blocked from updates and modifications.

"Account Filter" Code[250]

Filter criteria for selecting which accounts to include in the analysis view based on the account source.

"Business Unit Filter" Code[250]

Filter criteria for selecting business units to include in the analysis view.

"Starting Date" Date

Starting date for transactions to include in the analysis view data.

"Date Compression" Option

Date compression method for aggregating transactions in analysis view entries.

"Dimension 1 Code" Code[20]

Primary dimension code to track in the analysis view for multi-dimensional reporting.

"Dimension 2 Code" Code[20]

Secondary dimension code to track in the analysis view for multi-dimensional reporting.

"Dimension 3 Code" Code[20]

Third dimension code to track in the analysis view for extended multi-dimensional reporting.

"Dimension 4 Code" Code[20]

Fourth dimension code to track in the analysis view for comprehensive multi-dimensional reporting.

"Include Budgets" Boolean

Specifies whether budget data should be included in the analysis view for budget vs. actual comparisons.

"Refresh When Unblocked" Boolean

Indicates that the analysis view should be refreshed when it is unblocked.

"Reset Needed" Boolean

Indicates that the analysis view data needs to be reset and updated.

SystemId Guid
SystemCreatedAt DateTime
SystemCreatedBy Guid
SystemModifiedAt DateTime
SystemModifiedBy Guid
SystemCreatedByUserName Text[50]
SystemCreatedByFullName Text[80]
SystemModifiedByUserName Text[50]
SystemModifiedByFullName Text[80]
SystemRowVersion BigInteger

Methods

AnalysisViewReset

Resets the analysis view by clearing all analysis view entries and resetting tracking fields.

procedure AnalysisViewReset()

CheckDimensionIsTracked

Checks if a specified dimension code is tracked by any of the four dimension code fields in the analysis view.

procedure CheckDimensionIsTracked(DimensionCode: Code[20]): Boolean

Parameters

Name Type Description
DimensionCode Code[20]

Dimension code to check for tracking

Returns

Type Description
Boolean

True if the dimension is tracked in any of the four dimension code fields

CheckDimensionsAreRetained

Validates that required dimensions are retained for specified objects in analysis views.

procedure CheckDimensionsAreRetained(ObjectType: Integer; ObjectID: Integer; OnlyIfIncludeBudgets: Boolean)

Parameters

Name Type Description
ObjectType Integer

Type of object to validate dimensions for

ObjectID Integer

ID of object to validate dimensions for

OnlyIfIncludeBudgets Boolean

Whether to check only analysis views that include budgets

CheckViewsAreUpdated

Checks if all analysis views are updated with the latest transaction data and prompts for update if needed.

procedure CheckViewsAreUpdated()

UpdateAllAnalysisViews

Updates all analysis views in the system, optionally showing a progress window.

procedure UpdateAllAnalysisViews(ShowWindow: Boolean)

Parameters

Name Type Description
ShowWindow Boolean

Whether to display a progress window during the update process

UpdateLastEntryNo

Updates the last entry number for all non-blocked analysis views to the latest G/L entry number.

procedure UpdateLastEntryNo()

ValidateDelete

Validates that the user confirms deletion of analysis view data when modifying configuration fields.

procedure ValidateDelete(FieldName: Text)

Parameters

Name Type Description
FieldName Text

Name of the field being modified that requires confirmation

AnalysisViewBudgetReset

Resets the analysis view budget entries by deleting all budget entries and resetting the last budget entry number.

procedure AnalysisViewBudgetReset()

ValidateModify

Validates that the user confirms modification of analysis view data when changing configuration fields.

procedure ValidateModify(FieldName: Text)

Parameters

Name Type Description
FieldName Text

Name of the field being modified that requires confirmation

CopyAnalysisViewFilters

Copies analysis view dimension filters to selected dimensions for a specified object.

procedure CopyAnalysisViewFilters(ObjectType: Integer; ObjectID: Integer; AnalysisViewCode: Code[10])

Parameters

Name Type Description
ObjectType Integer

Type of object to copy filters to

ObjectID Integer

ID of object to copy filters to

AnalysisViewCode Code[10]

Code of analysis view to copy filters from

CheckIfLastEntryOrDateIsSet

Checks if the analysis view has been configured with last entry tracking or last date updated.

procedure CheckIfLastEntryOrDateIsSet(): Boolean

Returns

Type Description
Boolean

True if last entry number or last date updated is set, depending on account source

SetUpdateOnPosting

Sets the Update on Posting field for all analysis views to the specified value.

procedure SetUpdateOnPosting(NewUpdateOnPosting: Boolean)

Parameters

Name Type Description
NewUpdateOnPosting Boolean

New value for the Update on Posting field

SetSkipConfirmationDialogue

Sets a flag to skip confirmation dialogues during analysis view operations.

procedure SetSkipConfirmationDialogue()

RunAnalysisByDimensionPage

Opens the Analysis by Dimensions page for the current analysis view.

procedure RunAnalysisByDimensionPage()

ShowResetNeededNotification

Shows a notification to the user indicating that the analysis view needs to be reset.

procedure ShowResetNeededNotification()

Events

OnAfterAnalysisViewReset

Integration event raised after analysis view reset operations are completed.

[IntegrationEvent(False,False)]
local procedure OnAfterAnalysisViewReset(var AnalysisView: Record "Analysis View")

Parameters

Name Type Description
AnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record that was reset

OnAfterCopyAnalysisViewFilters

Integration event raised after copying analysis view filters to selected dimensions.

[IntegrationEvent(False,False)]
local procedure OnAfterCopyAnalysisViewFilters(var AnalysisView: Record "Analysis View"; ObjectType: Integer; ObjectID: Integer; AnalysisViewCode: Code[10]; var GLAcc: Record "G/L Account")

Parameters

Name Type Description
AnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record with filters being copied

ObjectType Integer

Type of object receiving the filters

ObjectID Integer

ID of object receiving the filters

AnalysisViewCode Code[10]

Code of analysis view being copied from

GLAcc Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

G/L Account record for filter context

OnBeforeValidateDimension1Code

Integration event raised before validating Dimension 1 Code field changes.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateDimension1Code(var Rec: Record "Analysis View"; var xRec: Record "Analysis View")

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous analysis view record values

OnBeforeValidateDimension2Code

Integration event raised before validating Dimension 2 Code field changes.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateDimension2Code(var Rec: Record "Analysis View"; var xRec: Record "Analysis View")

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous analysis view record values

OnBeforeValidateDimension3Code

Integration event raised before validating Dimension 3 Code field changes.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateDimension3Code(var Rec: Record "Analysis View"; var xRec: Record "Analysis View")

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous analysis view record values

OnBeforeValidateDimension4Code

Integration event raised before validating Dimension 4 Code field changes.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateDimension4Code(var Rec: Record "Analysis View"; var xRec: Record "Analysis View")

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous analysis view record values

OnBeforeValidateDateCompression

Integration event raised before validating Date Compression field changes.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateDateCompression(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Analysis view record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous analysis view record values

IsHandled Boolean

Set to true to skip default validation logic

OnBeforeValidateBlocked

Integration event raised before validating the Blocked field on Analysis View records. Enables custom validation logic and the ability to bypass standard validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateBlocked(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

IsHandled Boolean

Set to true to skip standard validation

OnBeforeValidateStartingDate

Integration event raised before validating the Starting Date field on Analysis View records. Enables custom validation logic and the ability to bypass standard validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateStartingDate(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

IsHandled Boolean

Set to true to skip standard validation

OnBeforeValidateIncludeBudgets

Integration event raised before validating the Include Budgets field on Analysis View records. Enables custom validation logic and the ability to bypass standard validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateIncludeBudgets(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

IsHandled Boolean

Set to true to skip standard validation

OnBeforeValidateAccountFilter

Integration event raised before validating the Account Filter field on Analysis View records. Enables custom validation logic and the ability to bypass standard validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateAccountFilter(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

IsHandled Boolean

Set to true to skip standard validation

OnBeforeValidateBusinessUnitFilter

Integration event raised before validating the Business Unit Filter field on Analysis View records. Enables custom validation logic and the ability to bypass standard validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateBusinessUnitFilter(var Rec: Record "Analysis View"; var xRec: Record "Analysis View"; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRec Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

IsHandled Boolean

Set to true to skip standard validation

OnBeforeCheckIfLastEntryOrDateIsSet

Integration event raised before checking if Last Entry or Date field is set on Analysis View records. Enables custom logic for determining analysis view update requirements.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckIfLastEntryOrDateIsSet(var Rec: Record "Analysis View"; var Result: Boolean; var IsHandled: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being checked

Result Boolean

Result of the check operation

IsHandled Boolean

Set to true to skip standard check logic

OnBeforeSetUpdateOnPosting

Integration event raised before setting the Update on Posting field on Analysis View records. Enables custom logic for managing automatic analysis view updates.

[IntegrationEvent(False,False)]
local procedure OnBeforeSetUpdateOnPosting(var Rec: Record "Analysis View"; NewUpdateOnPosting: Boolean)

Parameters

Name Type Description
Rec Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being modified

NewUpdateOnPosting Boolean

New value for Update on Posting field

OnValidateAccountFilter

Integration event raised when validating account filter on Analysis View records. Enables additional validation or processing during account filter validation.

[IntegrationEvent(False,False)]
local procedure OnValidateAccountFilter(var AnalysisView: Record "Analysis View"; var xRecAnalysisView: Record "Analysis View")

Parameters

Name Type Description
AnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Current Analysis View record being validated

xRecAnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Previous Analysis View record values

OnLookupAccountFilter

Integration event raised when performing account filter lookup on Analysis View records. Enables custom lookup behavior for account filter field.

[IntegrationEvent(False,False)]
local procedure OnLookupAccountFilter(var Handled: Boolean; var AccountFilter: Text; var AnalysisView: Record "Analysis View")

Parameters

Name Type Description
Handled Boolean

Set to true if custom lookup was performed

AccountFilter Text

Account filter value being looked up

AnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Analysis View record with account filter

OnGetAnalysisViewSupported

Integration event for determining if an Analysis View is supported by custom implementations. Enables extensibility for additional analysis view types beyond standard G/L and Cash Flow.

[IntegrationEvent(False,False)]
internal procedure OnGetAnalysisViewSupported(var AnalysisView: Record "Analysis View"; var IsSupported: Boolean)

Parameters

Name Type Description
AnalysisView Table Microsoft.Finance.Analysis."Analysis View"

Analysis View record to validate support for

IsSupported Boolean

Set to true if the analysis view type is supported

See also