Microsoft Dynamics AX Support

This blog contains posts by the Microsoft Dynamics AX Support Teams Worldwide

Serialising containers in X++

A problem I’ve hit a few times during troubleshooting is transferring containers from one environment to another. Importing a whole 100GB database to be able to access the results of a report packed into a 20MB container seems like a bit of an overkill. So, a natural idea would be to save the container to… Read more

Dynamics AX 2012 – Audit of Security Role Membership Changes

It is a common request from customers to be able to audit security changes made for users in Dynamics AX. The most common requirement is to log security role membership changes and be able to identify: The security role which was added or removed The user affected The administrator user who made the change The… Read more

Customizing the system-generated query of the Invoice journal form

When creating a Sales order in Dynamics AX 2012, you can define both a “Customer account” and an “Invoice account”. The Customer account identifies the customer for which the Sales order is being created, and the Invoice account references the account number of the customer to invoice, in case it is different. If you open the Invoice journal form… Read more

Customizing the Bank reconciliation report to filter currency revaluation transactions

Hello, When the Foreign currency revaluation process is run, Dynamics AX adjusts the amounts in the General Ledger accounts to recognize possible differences between the exchange rate for the original transaction currency, and the exchange rate that is used during the conversion to the accounting currency. As per the current design, Bank accounts are not… Read more

Using X++ to add a control at runtime

Adding controls at runtime can be a powerful feature of Microsoft Dynamics AX client development. As a developer you may choose to display a control based on business logic and one way to do this can be with X++. I had a recent case where attempting this caused the Financial dimension fields to not work…. Read more

Collect a series of traces automatically with Dynamics AX 2012

Introduction The following steps are one way to collect a series of AX traces on a schedule with all versions of AX 2012 on the AOS server, using standard Windows tools: Perfmon combined with Task Scheduler. This example collects a 1 minute trace at 5 minute intervals. This can be useful for example if you… Read more

AX Performance Troubleshooting Checklist Part 2

Updated on 09/09/16 for DynamicsPerf v2.0. This is Part 2 of a two part troubleshooting check list for general performance on Microsoft Dynamics AX. This part includes  hardware, indexing, queries,  blocking and code – at a high level. Please note this is just an outline of key areas for general guidance and not an exhaustive… Read more

Dynamics AX 2009 Enterprise Portal: How to display companies in company chooser in alphabetical order

  Suppose we have many companies in AX 2009 and to simplify the selection of the company list in the Enterprise portal, we can use the below code change to display the company names in an alphabetical order. This will help the AX users to save time in searching and selecting the company name.  … Read more

Dynamics AX 2012 Enterprise Portal: range on dataSetLookup()

As described here Configuring the Lookup for a Data Set Field [AX 2012] you can change how lookup look like. What you can also do you can range to the lookup to show i.e. only rooms which are in service. Following X++ shows how to achieve this: void dataSetLookup(SysDataSetLookup sysDataSetLookup) {     List list = new… Read more

Updating index fields while fetching data from the table using the same index can result in the same row being fetched twice in X++

Conclusion:There are situations where updating index fields while fetching data from the table using the same index can result in the same row being fetched twice. Recommendation here is to avoid updating index fields while selecting records using the same index.  For example: 1)Consider following “GM_Real_Test” table and the highlighted index: 2)Run following code to… Read more