When we have decided to use a Data migration instead of a Data upgrade to D365FO we had to come up with a way to identify tables to migrate.

The AX developer client already has a form under Tools > Number of records, which can tell you how many rows does a table have. This form can be easily expanded to include additional information. The most useful are the table type, and the application layer.

You would typically want to migrate all tables which belong to the following Table groups:

  • Parameters
  • Group
  • Main

This is how you can add the table type display method and control to the SysTableRowCount form to identify tables to migrate:

identify tables to migrate
//BP deviation documented
display TableGroup getTableGroup(UtilIdElements _utilIdElements)
{
    SysDictTable sysDictTable = SysDictTable::newName(_utilIdElements.name);

    if (sysDictTable)
    {
        return sysDictTable.tableGroup();
    }

    throw error(strfmt("@SYS19384", classstr(SysDictTable)));
}