10 reasons I love my Microsoft Surface

First things first – I work for Microsoft, and I will not claim to be unbiased. Yet, I bought my Surface out of my own pocket in a regular Microsoft Store – I was even in line for 3 hours to get it. Just like everyone else could.    Secondly, I primarily blog about AX –…


X++ Debugging Tips and Tricks #3–Conditional breakpoints

The Dynamics AX Debugger doesn’t support conditional breakpoints. Once in a while this limitation can be quite annoying – but there is a simple workaround. The third trick in the series of X++ Debugging Tips and Tricks shows you how. This trick requires code instrumentation – I strongly discourage using this trick on a production…


AX 2012 R2 CU7 has been released!

Cumulative Update 7 for Dynamics AX R2 has been released today!  Download it from Partner Source or Customer Source. Besides 60 country specific regulatory updates and many quality improvements, these areas have been enhanced: Area  What’s new   Accounts payable New options for configuring workflows for vendor invoices. more info Accounts receivable External documents can…


X++ Debugging Tips and Tricks #2 – xSession::xppCallStack()

In the first trick we saw how to set a breakpoint in the add method on the info class. This enables us to get the context of a single error.   But sometimes error messages come in hoards and stepping through each of them is not practical. Suppose you have hundreds or even thousands of errors…


X++ Debugging Tips and Tricks

I hate debugging – I would much rather write code or watch tests execute! Debugging is a waste of time, and often follows an unpredictable path. Any developer knows the situation: A bug is discovered, and the cause must be found. Most developers have these war stories on how they fought with a bug. The…


X++ Debugging Tips and Tricks #1 – Breakpoint in Info.add()

This trick is probably the first every X++ developer learns, so it deserves to be the first on the list of X++ Debugging Tips and Tricks. Suppose an X++ exception occurs and you want to know why. The error is written to the Infolog. Double-clicking the line in the Infolog window will bring you to…


Item tracing functionality in Microsoft Dynamics AX 2012 R2 CU6

I recently joined the A SCM Inventory team at MDCC – so let me direct your attention to a significant improvement in CU6 in the Inventory area. Please follow this link: http://blogs.msdn.com/b/dynamicsaxscm/archive/2013/08/13/new-item-tracing-functionality-in-microsoft-dynamics-ax-r2-cu6.aspx


Microsoft Dynamics Lifecycle Services is Live

Microsoft Dynamics Lifecycle Services are designed to manage and optimize customer implementations – powered by Azure. The customer creates project workspaces for implementation, upgrade and maintenance activities, and will invite implementation experts from partner organizations and Microsoft into these workspaces for the execution of related activities. Partners will be able to create projects for learning…


Debug::Assert in X++

Update 4th of August 2014: Clarification of the AX runtime behavior when non-developers hit an assert statement.   “In computer programming, an assertion is a predicate (a true–false statement) placed in a program to indicate that the developer thinks that the predicate is always true at that place.”     http://en.wikipedia.org/wiki/Assertion_(computing) What would you rather have: A piece of…