I’m putting a blog post online today because yesterday the Wifi was really letting us down. But anyway, it turned out to be a very interesting day!
It all started out with what Microsoft is good at, giving presentations! The keynote was packed with content and demo’s so we were immediately excited to see some of the demo’s.
- Professional services
This demo showed a few new neat features when it comes to project management inside Dynamics AX
This was a really nice demo! It was packed with new features and showed the new mobile experiences and nice demo’s on online shops.
I was really impressed with all of the features available for retail.
Another interesting demo was about the Blue Horseshoe warehousing solution. This really made me realize that all of the features I have been implementing the last 5 years were actually in there.
There was a nice demo of the mobile app that lets you do stuff like picking, …Another nice addition here is the possibility to diable warehouse processes for certain inventory locations. Someone from the Blue Horseshoe guys even noted that they have eliminated the need for quarantine warehouses. There is an extra status now on the on hand inventory screen where you can specify that tis inventory cannot be used for other processes.
A day in the life of a developer
The first actual session I attended was called “A day in the life of a developer / IT Manager”.
When I look at my scribbles, there’s a lot in there. But let me just mention a few key things that I noticed:
- Trace parser
Developers use the trace parser not enough when they are finished coding a feature. Being proactive means tracing your code to get out the obvious flaws.
- LCS model upload
We are using the feature in lifecycle services to upload the model for customization analysis. People should use that more often too.
There is actually a HTML report available in the same format as the compiler output so developers can import that in AX to directly access the corresponding code.
- Machines for building
When devs check in there code, there should obviously be a build process that builds the code. For this, developers request hardware but this should be kept in mind when looking at the build performace:
- Put all of the components on one box
- Put in at least 16GB of RAM
- Do not constraint the SQL memory
- Install KB2844240 to optimize index performance optimizations
- Request faster CPU’s first instead of more CPU’s
- Install an SSD on the build machine
- Use AxBuild.Exe
Data export and Import Framework (DIXF)
The session about DIXF was also nice as a recap of what I already knew by working with DIXF at a customer site.
There were some interesting new features available in the R3 version:
- Compare and copy data between companies (Only on entity level)
- Copy entity data accross difference Microsoft Dynamics AX environments (Only on entity level)
- MDM on top of DIXF
Reuses DIXF for master data management (More in posts to come on this)
- Out of the box support for 150+ entities
- Master entities
- Reference data
- Configuration data (EP Settings, Server Settings, Batch Settings, …)
- Performance of staging to target
There is support for parallel task bundling. Large files can be split up over several tasks.
- There is a compare entity wizard that can compare entities between companies
Create AX Builds using the new server side compiler
For me, this was interesting because I have been playing around a lot with builds and the sessions turned out to be more like a Q&A session.
Firstly there was an explanation about how the compiler works. Roughly seen, there are 3 main parts:
- Phase 1: Header compilation for tables and classes.
- Phase 2: Complete X++ sources compiled into P-Code. Error log get created
- Phase 3: Compile the error list. Here they did not actually managed that the number of passes depends on the errors. An number of error is incremented and as long are there are errors a new pass is tried. (Up to pass 5)
The important part here is that this is done on all of the tiers. The client performs the compilation and the communication goes all the way through the AOS to the SQL Database. But this has been solved and now the compilation is actually done on the server now. It is a 64bit compilation and X++ execution is kept to a minimum.
After the session, later on the evening, we met up with Robert Badawy which gave the sessions. It was nice to have a chat with him and get his view on all of this and how Microsoft does the build process internally.