One night, I was trying to mass update default dimensions for certain accounts via the Legal entity overrides a while back and ran into something that took me forever to figure out and gave me a headache from banging my head into the wall. No matter how I changed the order, the dimension structure looked exactly the way it did when I started!
What was I doing?
I was using DIXF and exporting the Financial dimension value legal entity overrides entity. After making the changes I needed, I imported the file back in using the same entity. Pretty cut and dry stuff. To do this, I needed to make sure I had the dimensions in the order that I wanted and had all the dimensions included I needed. To do so, I went to the General ledgerChart of accountsDimensionsFinancial dimension configuration for integrating applications and adjusted the values in the Default dimension format.
How did I fix it?
Finally, I got to the bottom of it. For performance reasons, the expansion of the default dimension format into a list of ordered dimensions is completed once and then cached in the AOS. No matter the changes I made, the cache wasn’t being flushed and they weren’t being looked at. How to fix it? Restart the AOS. Should have thought of that earlier…
Update
As pointed out by some folks on Twitter, a cleaner and quicker way to resolve this issue is to flush the data cache using the class runner. To do this, in your browser, type in https://[your_D365_URL]/?cmp=DAT&mi=SysClassRunner&cls=SysFlushData. This ought to do it and save you the trouble of a restart.