Skip to main content

PostLoad() method in AX tables

Today I found an interesting thing with regards to AX tables and this post is all about this new experience which is the PostLoad() method in AX tables.

When we create a new table in AOT, Morphx automatically creates a series of methods for it. We cannot see those methods but those can be overriden on each table as per requirements. PostLoad() is one of these system methods. List of all system methods can be seen from

Lets create a new table, I named it PostLoadTable with two fields Name and Value.



I added 5 records in the table manually (open table and added).

Tables in Microsoft Dynamics AX have a number of system-defined methods, such as insert, validateField,validateWrite. For a list of these methods, see the xRecord system class. The xRecord class can be seen as the base class for the Common table. The Common table can be seen as the base table for all tables.

In any table class, the body of each system-defined method contains only a call to super(). When you edit the X++ code in a table method, you override the parent's implementation of that method. Usually the call to super() must remain in the methods that you edit.

PostLoad() is the method that is used to read records from database and you can perform any custom logic by overriding this method on any table.

Let’s override this method and play around it

public void postLoad()
{
    super();

    if (this.Name == 'MEL')
        this.Value = 5;
}

By opening table again it shows me different result as compared to what we entered earlier as shown above.



Value for name MEL changes from 1 to 5 and I did not require to call update method.

There are many existing implementation of postLoad method in AX tables, I am listing few of them here for ease.

HCMWorkerTable\postLoad()
VendTrans\PostLoad()
CustTrans\PostLoad()

Comments

Post a Comment

I will appreciate your comments !

Popular posts from this blog

The Dual Write implementation - Part 1 - Understand and Setup

What is Dual-write? Tightly couples – complete at one transaction level Near real time Bi-directional Master data and business documents – Customer records you are creating and modifying and at this document we are talking about sales orders or quotes and invoice. Master data could be reference data e.g. customer groups and tax information Why Dual-write and why not Data Integrator? Data Integrator is Manual or Scheduled One directional Now, Let's deep dive and understand what is required for Dual-write setup and from where to start. First thing first, check you have access to https://make.powerapps.com/ Choose right environment of CDS (CE) Make sure you have access to the environment too, click on gear icon and Admin Center  Look for required environment and Open it, you must have access as going forward you are going to configure dual write steps in the environment user the same user you are logged in now. Now, go back to power platform admin center and...

D365FO: Entity cannot be deleted while dependent Entities for a processing group exist. Delete dependent Entities for a processing group and try again.

Scenario: There are times when you want to delete an entity from target entity list and when you do so, you face an error message which does not tell you where exactly the entity has been used.  "Entity cannot be deleted while dependent Entities for the processing group exist. Delete dependent Entities for a processing group and try again. " Solution: Browse the environment by appending this part  /?mi=SysTableBrowser&TableName=DMFDefinitionGroupEntity&cmp=USMF   at the end.  For example; if the environment URL is  https://daxture.sandbox.operations.dynamics.com then the complete URL will be https://daxture.sandbox.operations.dynamics.com/?mi=SysTableBrowser&TableName=DMFDefinitionGroupEntity&cmp=USMF Filter for Entity and it will give you the DefinitionGroup where the entity has been added or used in data management import/export projects. Get the DefinitionGroup name and search in the export/import projects under data management and either del...

Dual-write connection set error: An item with the same key has already been added

If you happen to see this error message then you have duplicate records in cdm_company entity in CDS environment. Check for cdm_companycode field this is normally not allowed but have a look and delete the ones with duplicates.