Dynamics 365 Nerds Unite – New Grid Controls Will Knock Your Socks Off
With Platform Update 29 for Dynamics 365 Finance and Supply Chain Microsoft has introduced a new Grid that uses React library to provide enhanced usability.
This new grid provides several benefits:
- Performance: The rendering and scrolling speeds have been improved substantially.
- Positional scrolling: Whenever one has browsed thru 3,000 records on a grid, and now wants to scroll back to the record 1,500 or maybe even the first one. Instead of inflicting pain to your fingers and mouse wheel by scrolling all the way up, just click in the middle of the scroll bar to teleport to the record 1,500 or click at the very top to go to the beginning. All of this without retrieving data from the server.
- General improvements: In the past iterations of the grid users noticed that in certain situations the grid headers and data would become misaligned, or that the grid would jump when scrolling through data or when creating new records. These issues were addressed in PU29.
- Reorder columns: The users can now drag and drop columns to reorder them on the grid, just hover the mouse over the header and a grip icon will appear to the left of the column name, use the grip to drag the column wherever you want.
[Source: User productivity – New grid control – Phase 1]
Footers and totals
One new feature that was added is the ability to show the footer of the grid. The purpose of the footer is to show two bits of data: the number of records on the grid as well as totals for numeric columns.
To show the footer right-click on one of the columns of the grid and select the option Show footer.
Once the footer displayed, totals are added by clicking on the plus signs (+) beneath the numeric columns or by right-click on the header of the numeric column and selecting the option Total this column on the context menu.
The calculation of the totals depends on the size of the dataset of the grid. If the dataset small enough totals are shown automatically. If the dataset is too large dashes will be shown footer under the columns configured for totals, this means that the system needs to be explicitly instructed to calculate them, simply click the Calculate button in the footer or right-click on the column for which you want a total and select the option Total this column.
If the dataset is large the compute time might take too long, the calculation of the total can be canceled by clicking the Cancel button.
Totals are updated automatically as records are updated, deleted, or created on the grid.
[Source: Grid capabilities]
And now ready for some really cool geeky stuff? The most interesting enhancement, and possibly one that will cause Excel users to fall in love, is the ability to type mathematical expressions on numeric cells.
As with Excel, you need to start the expression with the equal sign (=) and the system will recognize it as a mathematical expression and will evaluate it.
For instance, typing: =15 * 4
Will calculate a value of 60.00
The system is able to understand the four basic arithmetic operators (+, -, *, /) as well as interpret elaborate expression with parenthesis:
Evaluating =((((((((1/2)/3)/4)/5)/6)/7)/8)/9)*(100000000) renders 275.57
However, it really goes far beyond that. It also supports:
- Modulus operator
- =10 Mod 3 -> 1.00
- Powers using the chevron sign (^) or the pow function
- =(10^4) -> 10000.00
- =pow(10,4) -> 10000.00
- Square root
- =root(144) -> 12.00
- = 15! -> 1,307,674,368,000.00
- pi and Euler constants
- =pi -> 3.14
- =e -> 2.72
- Logarithm base 10
- =log(10000) -> 4.00
- Natural logarithm
- =ln(e) -> 1.00
- Trigonometric expressions (they evaluate in degrees)
- =cos(30) * 100 -> 86.60
- =sin(30) * 100 -> 50.00
- =tan(30) * 100 -> 57.74
- Additionally supports the inverse, hyperbolic and inverse hyperbolic variations of the normal trigonometric functions: acos, asin, atan, cosh, sinh, tanh, acosh, asinh and atanh
- Combination operator C
- =4C2 -> 6
- Permutation operator P
- =4P2 -> 12
Unfortunately, the technology is still behind on certain limitations imposed by the universe, namely you cannot divide by zero or get the square root of a negative number. The expressions =1/0 and =(-1)^(1 / 2) both render NaN as a result.
It is worth noting that the grid applies rounding rules based on the type of data to the evaluation results, which is why the numbers you see above are limited to two decimal places.
New features will become available with the monthly upgrades, such as Grouping data which will allow users to perform ad-hoc analysis of data on the grids.
How can I get it?
This feature is still is still being rolled part of the latest Platform Upgrades, but if you have any of the newer Platform Upgrades since PU29 you are in luck. The grid enhancements are not enabled by default though.
If you are using PU29 or PU30 follow these steps to enable the feature:
- On your development environment simply add &debug=reactGrid into the URL
Note: Flighting will prevent this feature from working in other environments.
If you are using PU31, follow these steps to enable the feature:
1. First you need to flight the feature by using the following SQL statement:
INSERT INTO SYSFLIGHTING (FLIGHTNAME, enabled, FLIGHTSERVICEID, PARTITION) VALUES(‘CLIReactGridEnableFeature’, 1, 0, 5637144576);
2. Then you need to reset IIS to flush the static fighting cache.
3. After that go to the Feature management workspace on your D365 Finance and Operations application.
4. Filter the list of features by Module using “System administration”
5. Select the New grid control feature from the list then select Enable now in the details pane on the right.
Note: In case the feature does not show on the list, you can select Check for updates to refresh new features.
6. Once the feature is enabled, new user sessions will enjoy the new grid functionality.
If you are using Platform Update 32 the feature will be already flighted, just follow these steps to enable:
1. Go to the Feature management workspace on your D365 Finance and Operations application.
2. Filter the list of features by Module using “System administration”
3. Select the New grid control feature from the list then select Enable now in the details pane on the right.
4. new user sessions will enjoy the new grid functionality
[Source: What’s new and changed in Platform update 31 for Finance and Operations apps (January 2020)]
For any other question, contact us!