Dynamics Ax 2012 Technical conference : Day 1 : Part 1

This articles will be brief, because I don’t have much time between the sessions J

Yesterdag was the first day of the Dynamics Technical conference and following sessions were attended by me:

  • Programming model improvements Part 1 of 2
  • Programming model improvements Part 2 of 2
  • Developing in .NET managed code and X++ Enhancements
  • Solving the element ID problem

Programming model improvements Part 1 of 2

From this session, I remember the following additional features:

  • Table inheritance is added. So now you can have abstract tables which are then inherited by child tables.
    The unit of work pattern also comes into play here as there will be issues to address to manage transactions and code dealing with one ‘virtual record’ which may consist of multiple child tables. (Vehicle table with child tables bycicle, car, truck, …)
  • Next to normal X++ temporary tables, there is now also support for temporary tables in SQL Server
  • Date effective tables have been added. This means you can actualy filter records based on an ‘effective as of date’
  • Eventing has been added so now you can actually subscribe methods to events on other classes. Also, this is implemented by drag and drop so it is actually user friendly to do this.
  • The normal batch framework has been ‘adjusted / replaced’ with the SysOperation framework
  • The tree of linked tables are then linked by RecId, but you can actually have a key with fields specified in a field group to be used in the design when showing on what the linked was based
  • Tables have full text indes support now : This means they can be optimized for searches on text fields to look for certain words in the body.

Historical data pattern

This one is actually cool. Let’s say you have a historical table to contain a history of sales. Then you can set properties on the SalesTable datasource and the kernel will keep the history for you. So when you change values on the sales order for example, the kernel will create / update records in the historical data table.

Query ranges vs Query filters

When using joins (outer joins) the query ranges can produce incorrect outcomes. But now query filters are used to fix that. Instead of using the QueryRange object on the query, you can now also use QueryFilter objects and they are more optimized for SQL Server.

The other sessions will be describes in following posts as there is new session beginning right now J

6 thoughts on “Dynamics Ax 2012 Technical conference : Day 1 : Part 1

  1. Cool features specially the table inheritance and historical data pattern…


  2. Hello,

    I used the same approach as you described above.But when i opened the ItemResult.xml in excel i didn’t get any thing. where the content of my file is as below.Please let me know what is wrong in it ?

















  3. Sorry for above comment i try to paste my ItemResult.xml file here, can you please five me your email id so that i am able to send you my ItemResult.xml file ?

  4. Hi rajesh,

    I think this belongs to post : http://www.ksaelen.be/wordpresses/dynamicsaxblog/2009/08/using-c-xml-xslt-to-create-excel-spreadsheet/

    Sorry I’m a bit late, but I just read your XML and there are indeed 2 little issues with it. But hey, no problem, they can be fixed 🙂

    First thing is the < ?mso-application progid="Excel.Sheet"?> tag that is missing so that Excel does not quite know what the XML is containing.

    Secondly, I stated this in my post about ExpandedRowCount”

    Before we continue, there is a little thing we still need to do because otherwise this will not be working. In the xml node “Table” we need to delete the attribute “ExpandedRowCount” otherwise excel will not be able to open the result document.

    When the first tag is in place, excel will give you an error and will mention that there is a log file created in your temporary internet files, there you can see he cannot handle the ExpandedRowCount for some reason: (next is the error log file)

    XML ERROR in Worksheet Setting
    REASON: Bad Value
    FILE: C:UsersWaxWeazelDownloadsItemResult.xml
    GROUP: Worksheet
    TAG: Table
    ATTRIB: ExpandedRowCount
    VALUE: 6

    I hope this was helpful to you.

    Kind regards,
    Kenny Saelen

Leave a Reply

Your email address will not be published. Required fields are marked *