Technical conference 2014 : Day two

Today we were present early for the second day at the technical conference. The plan for today was to follow these sessions:

  • Data synchronisation between multiple instances using Master Data Services
  • optimizing the performance of an AX deployment
  • Compelling report designs
  • Help! MRP is slow

I could put all of my notes from today here, but there will be plenty of blog posts dealing with that today and I’ll just put in the fragments that I’ll really remember from today:

  • MDS
    • The master data services are using SQL ┬áserver and are working on an entity level to copy data between AX instances.
    • Change tracking is used but this does cause some overhead so pay attention to that and take steps to see if that is acceptable in your production environment.
  • Performance
    • Pay attention to your batch group setup when multi-threading your batch jobs. RunTimeTasks wille be created in your empty batchgroup if you do not specify the group via code!
    • Parameter sniffing
    • The rest was actually stuff that everyone should already know when working with Ax for a couple of years.
      Index optimization, recordset based operators, …
    • The 5 key points when looking at performance:
      • Few or many calls
      • Find where you lose time
      • Running or waiting : Find our where your code is waiting instead of running. Total elapsed time for SQL statements should be as close to the actual running time as possible.
      • 20 / 80 : With 20% of your effort, you can solve 80% of your performance problems.
      • 80 / 10 / 10: 80% is in your code, the 20% left is hardware en configuration.
  • Compelling report designs
    • TJ Vassar is by far the most interesting figure on stage the last few days! In 3 words: Chill, funny and honest ­čÖé
    • To be able to play around with your design and not having to run it from inside of AX to have the right data from your data provider, you can make your temporary table non-temporary, fill it with data and just switch over to Visual Studio entirely. Also do not forget to implement the processReport() method and comment out the super(). This is to make sure when running the report in SSRS, it is not processed within AX as long as you are working on your layout.
    • Microsoft really took the feedback to heart and fixed lots of issue concerning reporting. Including new tools for comparing reports.
    • Emailing parameters! A customization that lot’s of us have made is adding functionality to the print settings to be able to specify more and selecting email addresses from a dropdown. Well now it’s in the standard.