Skip to main content

Some random things learnt in customizing AX

Get your basics right

1. Do not make mistakes in extended data types, correcting them later will be taxing. Get them right early on in development

2. The aim to be good in customizing AX is to be able to achieve the customization with the least amount of code possible.  This requires you to look for code that you can reuse in the app. Also it means that you know what can be achieved through AOT nodes, properties instead of writing code. This requires some experience for sure

3. In AX to consider where do you write your code is as important as what you write in your code. The same type of result can be achieved by writing code either at the form level or at the table level or other places but it is important to know where to write the code to ensure least performance hit. This also means you need to know how your code will execute i.e in the client tier or the server tier and maybe both.

4. AutoDeclaration

If you do not set AutoDeclaration property for a AOT object to "Yes", AX will not recognize it when you type its name in X++ code editor.

5. ReferenceFieldGroup

If you want to add a reference field to a field group you can do so only if the "Replacement Key" of that field is set to a unique key

.. Will keep updating this

Comments

Popular posts from this blog

Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement.

I received the following error when trying to connect to a server's SQL Server. I was able to telnet the Server on the required TCP Port (1433) but SSMS could not connect to the SQL Server instance.  Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was – [Pre-Login] initialization=13472; handshake=14425; (Microsoft SQL Server, Error: -2) I eventually found that a Hyper-V Adapter was responsible for the issue, disabling which resolved the issue, have faced a similar issue with VirtualBox adapter too. Hope it helps.

A simple customization in MPOS (Blank Operation) with AX7

Hi All, I recently had to add a Blank Operation to Modern POS (MPOS) to open a url from MPOS. Blank Operation as you may already be aware enable you to extend Microsoft Dynamics Retail for POS by adding custom logic that can be triggered from the Retail POS Register buttons. The way to implement Blank Operations in MPOS  is different from Enterprise POS as MPOS is a modern app as compared to EPOS which is a windows forms based app. So lets explore a very simple customization i.e. we want to open a URL on triggering a button from MPOS. 1. We would need to start with AX to add a button to the layout of MPOS. If you do not want to disturb the standard layouts its better to copy one of the existing layouts and then modify it using the designer. Please note the designer only opens in Internet Explorer so it will save you time by not trying to open it in other browsers e.g Chrome 2. Next we need to add this layout to the Store where we intend to use it...