Break from Your Regularly Scheduled Programming – Programmability Improvements in Microsoft Dynamics AX 2012

Our customers tell us that no enterprise resource planning (ERP) system ever gets implemented as-is, out-of-the-box, as the product ships. No matter how rich the features are, there is always a need for functionality that is unique to a particular business or process. Every customer modifies the program—either by customizing the existing applications or by developing new ones—to conform to their business practices and their business policies. Thus, programmability—the languages, tools, and ease with which developers can modify the application—is an absolutely crucial attribute of any ERP system.

In Microsoft Dynamics AX 2012, we’ve made huge investments to improve programmability in several areas. Each of these is discussed in deep detail on forums, such as MSDN and the product team blogs, which developers frequently visit. But in this post, we’d like to provide an overview of how these improvements can help you and your organization get more value from your ERP and contribute to the agility of your organization.

Our major investments in programmability fall into four key areas:

1. Improvements to the X++ Language and Development Tools

We made significant improvements to both X++, the native programming language of the Microsoft Dynamics AX system, and to MorphX, which is the development environment that traditional X++ developers are familiar with. Without delving into the technical details, we cleaned up some of the ambiguities in the programming language that had created challenges for developers and we updated the semantics of the language for clarity and to adhere to the Microsoft .NET philosophy. Because of this, a .NET programmer who might be new to Microsoft Dynamics AX will feel right at home working with the X++ stack.

We also improved the performance of the language itself. Again, without going into the technical details, we’ve updated the X++ language so that it is compiled and run in a similar fashion to .NET code. This gives you huge performance gains, enabling specific tasks to run orders of magnitude faster. Therefore, actions such as closing out your journal or closing out your ledger, which could previously take hours or even days, can be completed in a few seconds.

These improvements also impact the agility of the organization and the speed with which new customizations, applications, and integrations can be brought online. Testing, debugging, production, and integration will all proceed much faster, and for you, that translates into faster time-to-benefit.

2. Enabling .NET Development

X++ programming represents a very specialized skill set, with approximately 10,000 experienced developers in the world, compared to more than 7 million experienced .NET developers. With Microsoft Dynamics AX 2012, we’ve opened the platform to .NET programming, providing our independent software vendors (ISVs) and customers access to this huge, established developer community, with all the diverse skills and industry specialization that a group of this size has to offer. In addition to giving our customers access to a broader pool of programming talent, we expect that the .NET community will drive a wave of innovation in technologically advanced ERP applications built on Microsoft Dynamics AX.

3. Visual Studio Tools for Microsoft Dynamics AX 2012

With Microsoft Dynamics AX 2012, we are also releasing the Microsoft Visual Studio Tools for Microsoft Dynamics AX, which will allow developers to work in Visual Studio, a world-class development environment that millions of .NET developers are already familiar with. The Visual Studio Tools will dramatically enhance the productivity of developers working on Microsoft Dynamics AX applications and provide access to newer features of the software—for example, working with web services or building interactive reports in Microsoft SQL Server Reporting Services.

4. Enhanced Services Architecture

Web services are the programming model with the widest reach across platforms and applications. In Microsoft Dynamics AX 2012, we have enhanced the role of services to facilitate integration with other line-of-business applications and to enable developers to access more of the rich functionality of the application. These enhancements will significantly reduce the time it takes to develop custom applications and enable the ERP system to reach the entire organization.

The new services architecture simplifies configuration and management of integration solutions and enables you to much more easily exchange data between Microsoft Dynamics AX and external systems. To further streamline development and integration, we’ve included dozens of prebuilt services that are ready out-of-the-box. In addition, we’re providing better development tools to enable developers to build new or custom services that expose specific functionality that may not be covered by the out-of-box services.

We’ve sought to adhere to industry standards wherever applicable in the services architecture, which will simplify development of applications for Microsoft Dynamics AX and open the platform to interaction with other platforms such as Java-based applications or Windows Phone applications, paving the way to mobile and remote scenarios.

In this interview C. Venkatesh (Principal Program Manager) and Peter Villadsen (Sr Program Manager) from the AX Product Team provide a great articulation of the Programability advances made in MS Dynamics AX 2012.

Share Your Thoughts­

To what extent does your organization rely on customizations and integration to tailor your ERP to your industry or the specific needs of your business? How would it improve your business if you could update modify and deploy new applications quickly and cost-effectively?