---
title: "Codeunit 9200 Matrix Management"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/9200-matrix-management/
type: codeunit
id: 9200
name: "Matrix Management"
app: "Base Application"
namespace: Microsoft.Finance.Analysis
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/9200-matrix-management/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 9200 Matrix Management

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/9200-matrix-management/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Finance.Analysis |
| Versions | 17-28 |
| Source file | Finance/Analysis/MatrixManagement.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| SetPeriodColumnSet | (Text, Option, Option, var Date, var Date, Integer) | - | public | 17-18 | - | - |
| SetDimColumnSet | (Code[20], Text, Option, var Text, var Text, var Text, Integer) | - | public | 17-28 | - | - |
| DimToCaptions | (var Text[80], var Record Dimension Code Buffer, Code[20], Text, Text, var Integer, Boolean, var Text, Text) | - | public | 17-28 | - | - |
| GenerateMatrixData | (var RecordRef, Option, Integer, Integer, var Text, var Text[80], var Text, var Integer) | - | public | 17-28 | - | - |
| GenerateMatrixDataExtended | (var RecordRef, Option, Integer, Integer, var Text, var Text, var Text, var Integer, Integer) | - | public | 17-28 | - | - |
| GeneratePeriodMatrixData | (Option, Integer, Boolean, Option, Text, var Text, var Text[80], var Text, var Integer, var Record Date) | - | public | 17-18 | - | - |
| SetIndentation | (var Text[1024], Integer) | - | public | 17-28 | - | - |
| GetPKRange | (var RecordRef, Integer, Text, Integer) | Text[100] | public | 17-28 | - | - |
| GenerateDimColumnCaption | (Code[20], Text, Option, var Text, Text, Text, var Text[80], var Record Dimension Code Buffer, var Integer, Boolean, var Text) | - | public | 17-28 | - | - |
| RoundValue | (Decimal, Option) | Decimal | public | 17-21 | Pending 19.0 | Replaced by RoundAmount(). |
| FormatValue | (Decimal, Option, Boolean) | Text[30] | public | 17-21 | Pending 19.0 | Replaced by FormatAmount(). |
| GetFormatString | (Option, Boolean) | Text | public | 17-21 | Pending 19.0 | Replaced by FormatRoundingFactor(). |
| SetPeriodColumnSet | (Text, Enum Analysis Period Type, Option, var Date, var Date, Integer) | - | public | 19-28 | - | - |
| GeneratePeriodMatrixData | (Option, Integer, Boolean, Enum Analysis Period Type, Text, var Text, var Text[80], var Text, var Integer, var Record Date) | - | public | 19-28 | - | - |
| RoundAmount | (Decimal, Enum Analysis Rounding Factor) | Decimal | public | 19-28 | - | - |
| FormatAmount | (Decimal, Enum Analysis Rounding Factor, Boolean) | Text[30] | public | 19-28 | - | - |
| FormatRoundingFactor | (Enum Analysis Rounding Factor, Boolean) | Text | public | 19-28 | - | - |
| FormatRoundingFactor | (Enum Analysis Rounding Factor, Boolean, Enum Analysis Negative Format) | Text | public | 26-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterGetCaption | (var RecordRef, Integer, var Text) | 17-28 | - | - |
| Integration event | OnBeforeGeneratePeriodAndCaption | (Option, Record Date, var Boolean) | 17-18 | - | - |
| Integration event | OnSetDimColumnSetOnAfterDimValSetFilters | (Code[20], Text, var Record Dimension Value) | 18-28 | - | - |
| Integration event | OnBeforeGeneratePeriodAndCaption | (Enum Analysis Period Type, Record Date, var Boolean, Boolean) | 19-24 | - | - |
| Integration event | OnFormatRoundingFactorOnElse | (var Text, Enum Analysis Rounding Factor) | 22-28 | - | - |
| Integration event | OnRoundAmountOnElse | (var Decimal, Enum Analysis Rounding Factor) | 22-28 | - | - |
| Integration event | OnGenerateMatrixDataExtendedOnBeforeValidatePreviousStep | (Integer, Integer, var Boolean) | 23-28 | - | - |
| Integration event | OnGeneratePeriodMatrixDataOnBeforeAdjustPeriodWithDateFilter | (Text, var Record Date, var Integer, var Boolean) | 23-28 | - | - |
| Integration event | OnGeneratePeriodMatrixDataOnBeforeFindDateBasedOnStepType | (Option, var Record Date, Enum Analysis Period Type) | 24-28 | - | - |
| Integration event | OnBeforeGeneratePeriodAndCaption | (Enum Analysis Period Type, Record Date, var Boolean, Boolean, var Integer, var Text[80], var Record Date) | 25-28 | - | - |
| Integration event | OnMatrixPageStepTypeInGenerateMatrixDataExtended | (Option, Integer, var RecordRef) | 25-28 | - | - |
| Integration event | OnFormatRoundingFactorNegativeFormatOnElse | (Text, Enum Analysis Negative Format, var Text) | 26-28 | - | - |
| Integration event | OnRoundAmountOnAfterRound | (var Decimal, Enum Analysis Rounding Factor) | 28 | - | - |
| Integration event | OnFormatRoundingFactorOnAfterSetAmountDecimal | (var Text, Enum Analysis Rounding Factor) | 28 | - | - |
| Integration event | OnDimToCaptionsOnAfterDimensionValueSetFiltersOnBeforeFindSet | (var Record Dimension Value) | 28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
