Here’s what I tell AX colleagues about EMEA Convergence 2015 or better: What I tell them about „AX7“ – I leave out the happy hour 😉
The new HTML5 client has a very clean, modern look. All the colorful action pane icons that were new in (AX2009 and) AX2012 are gone again.
We see a “responsive design”: When you resize the window (manually, or use it on a device with a different scale), the control are reorganized nicely.
All in all, the rendering / building of the forms seems to be a lot “calmer” than before. No flickering, no superfluous repaints.
Dynalink / “follow-me” functionality is still available: From a list of records (former list page), you can still open a second (third etc.) related form whose content follows the record selection on the main list.
Dialogs that open from a form, will “slide in” from the right side and cover a bit of the main form: This would be, f.ex. the dimension / offset dimension form on a general ledger journal, the dialog for posting a journal etc.
One AX HTML client session can only have one main window! If you need, for example, the list of relevant purchase orders, the planned purchase orders and the invent table and stock on hand, you’ll open three AX sessions. Important to note: Microsoft is going to limit the number of sessions a user can open!
AX2012 has been around for some time now, but there are still many installations running on previous versions. Switching to AX2012 is not terribly hard, but it has some surprises for you. Therefore, I thought I’d start a collection of things you should be aware of and consider when (before) starting your first AX2012 implementation, that are not mentioned in the whitepapers and training materiel I’ve seen so far.
This year, I came across code like the following several times – in different projects, written by different developers (yellow indicates the piece of code I’m wondering about). I’m not sure why they do it – maybe they come from a programming language that doesn’t know about short circuit logic.
If you think „what the heck is short circuit logic“, please read on. Weiterlesen
If an AX table field directly uses the Extended Data Type (EDT) AmountCur or an EDT that derives from AmountCur, the field’s property sheet shows several additional entries, when compared to other fields of type real.
I couldn’t find any documentation on this in the Internet or the AX2012 development book, so I thought I’d try and find out from AX where these properties are used and what they are used for.
The Import / Export Framework of Dynamics AX 2012 is an extremely powerful tool. But sometimes you still need to look very closely to figure out why something goes wrong … and how to fix it.
Recently, two colleagues of mine both told me that you cannot import financial dimensions into a ledger journal for bank accounts, customer accounts etc. (basically all account types but ledger). Since I had tried out just that, I started investigating – and the solution is very straightforward.
I recently had to update some customer entities in AX2012 R2 using DIXF and ran into troubles that I knew for sure I hadn’t had with AX2012 R3:
When updating the customer data through DIXF, the customer’s balance was modified, too, although the updated fields were in no way related to the Balance. Well, actually, the entire update didn’t go through, but caused an error message about a missing setup of financial dimensions. I’ve to admit that I’m quite happy I received the error message. Since it didn’t fit at all to what I intended to do, it brought me quickly to this terrible „side-effect“ that I really wouldn’t have expected.And, yes, you didn’t misread: This modification to the balance also happens if there is no information about the account’s balance in the imported data. This basically means that you’ll set the customer’s balance to 0, although you only want to update some harmless other fields … (BTW: The balance is modified by posting a free-text invoice.)
It always happens at the most unfortunate moments that AX labels go crazy: You see a temporary label ID like @$AB1, or, even worse, labels are lost or overwritten. There never seems to be a good reason for this – this impression is partly due to the fact that one usually doesn’t realize the mess until some time after it was caused and then doesn’t see any relation to one’s actions.
Seeing that labels are not really interesting for a developer (I have to include myself here), it’s a shame that they can cause so much additional pain. So, I thought I’d share what process I always follow … without running into these issues. It may seem like some extra work, some extra steps, but once you had to „unmess“ some labels, you’ll understand why I don’t mind following my few simple rules Weiterlesen