Is there anyway to disable the Grid caching in Dynamics AX?
Preferably something that will disable this useless, annoying feature globally.
Update 1
By default, Dynamics AX shows only the first 20 rows of a grid. This is an awful feature. I cannot see how much data is in the grid at a glance. I cannot quickly scroll to the data I want because once you get past 19 it only has "Go To Last Record" and then changes to only the开发者_高级运维 last 20 records.
Or: How can I make grids just show all their data?
This feature is working as designed, it's just a crap feature.
Update 2
I've added an image to illustrate what I'm talking about. This lookup is only showing the first 10 rows. As soon as you move the scroll bar to the bottom, all you see is Go to the last record
. I have no way of knowing if there are 20 choices or 2000! This behaviour is the same in normal grids as well, although I think they show 20 rows instead.
Update 3
I was informed by our companies AX guru that he did manage to disable this caching, although it required changes on the SQL Server end and introduced several stability issues. Since no-one was able to provide an answer, I'll leave this question open.
AX (as most systems around) does not fetch all records from the table to the form because it uses a SQL cursor. It will typically limit the number of records fetched in the first round to between 20 and 50. This is usually optimal behaviour as the number of records is not known beforehand.
And no, it cannot be disabled.
Ressources: Top tips ...
As stated, this is a 'feature' (even if it is really annoying) that you would not want to turn off, due to the risk of crippling your own machine / SQL server, or in the worst case corrupting the data.
Can I suggest that if you really need to know (and yes sometimes it is vital to know up front) how many rows are in the table you write a method to count the fields and display it on the form or on the grid as necessary.
精彩评论