web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Finance | Project Operations, Human Resources, ...
Answered

How does DimensionValues[1]…[n] work on LedgerTrialBalanceTmp.DimensionValues

(2) ShareShare
ReportReport
Posted on by 97
In the LedgerTrialBalanceTmp table I found the field DimensionValues (EDT = DimensionSetSegmentValue, String Size = 30). Yet in forms and code I see it used like this: DimensionValues[1], DimensionValues[2], etc. I also looked in SQL and found multiple dimension columns in related table.

I’m trying to understand:

1. How this single DimensionValues field can behave like an array of slots (indexed [i]).
2. How the system stores multiple distinct dimension values inside one string field
3. How it then allows access via DimensionValues[1], DimensionValues[2], etc in code.

Regards,

 
Categories:
I have the same question (0)
  • Verified answer
    Martin Dráb Profile Picture
    239,029 Most Valuable Professional on at
    DimensionSetSegmentValue doesn't represent a single string; it's an array. Expand the ArrayElements node to see that:
     
    If you look at an array field directly in the database , you'll see that there is a separate field for each array element.
  • D365Explorer Profile Picture
    97 on at

    Dear Martin,

    Thank you for the response.

    I have a few follow-up questions and would appreciate your insights:

        1. Given that DimensionSetSegmentValue has a string length of 30, how is it able to store multiple dimension values within such a short length?
        2. When I attempted to replicate this in a test table and stored values similar to those shown in the Trial Balance, the SQL table displayed multiple columns.

    How can a single string field behave this way dynamically?

    Regards,

  • Verified answer
    Martin Dráb Profile Picture
    239,029 Most Valuable Professional on at
    1. It's not a single string - it's an array of 12 strings, each of them can hold 30 characters.
    2. Your observation confirms what I said before ("If you look at an array field directly in the database , you'll see that there is a separate field for each array element.").
     
    You can't do that at runtime - data types and table fields are defined in the application at design time, and reflected in the database by DB synchronization.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Congratulations to our 2025 Community Spotlights

Thanks to all of our 2025 Community Spotlight stars!

Leaderboard > Finance | Project Operations, Human Resources, AX, GP, SL

#1
Giorgio Bonacorsi Profile Picture

Giorgio Bonacorsi 617

#2
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 461 Super User 2026 Season 1

#3
Syed Haris Shah Profile Picture

Syed Haris Shah 298 Super User 2026 Season 1

Last 30 days Overall leaderboard

Product updates

Dynamics 365 release plans