DIXF – Compare Entities – SQL Server replication tool is not installed

Consider a scenario where you are running AX 2012 R3 and you want to compare entities between AX companies using DIXF, but you get an error telling you that the SQL Server replication tool is not installed.

1. The DIXF functionality

On a CONTOSO Demo Data TEST environment, you can find the functionality by navigating to:

USMF/Data import export framework/Common

and then clicking on:

Compare entity data between companies

S0

2. The error

The error you may see if you haven’t set up the environment correctly looks like this:

S1

3. Checking if the SQL Server replication tool has been installed

I begin by running some T-SQL on the SQL Server instance to see if the tool has been installed (click on the link below to get a copy of the script I am using)

CheckReplInstalled

When I run the script on an instance where the tool has not been installed, I get this sort of output:

S2

4. Installing the SQL Server Replication instance feature

Having established that the error message does indeed appear to be correct and that we are missing the required SQL Server instance feature, we proceed to install it using the SQL Server installation media.

Note that you may need to do this on several boxes if you are using multiple SQL Servers in your topology.

S3

S4

S5

S6

5. Verifying that DIXF functionality works

When I run the T-SQL script on an instance where the tool has been installed, I get this sort of output:

S7

If I run the DIXF Compare entity data between companies functionality now, it works:

S8

S9

S10

6. Points of interest – Database Compatibility Level

If you have confirmed that you have installed the SQL Server Replication instance feature on your SQL Servers but you still get the error, then please check the Database Compatibility Level on your AX databases and ensure they are all set to the same value.

This information is shown in the T-SQL script output.

For SQL Server 2012 the value would usually be 110, and for SQL Server 2014, it would usually be 120.

-- SQL Server 2012
-- 
-- VERSION              DBNAME                                   COMPATLVL
-- -------------------- ---------------------------------------- ---------
-- 11.00.6523           MicrosoftDynamicsAX                      110
-- 11.00.6523           MicrosoftDynamicsAX_model                110
-- SQL Server 2014
-- 
-- VERSION              DBNAME                                   COMPATLVL
-- -------------------- ---------------------------------------- ---------
-- 12.00.4439           MicrosoftDynamicsAX                      120
-- 12.00.4439           MicrosoftDynamicsAX_model                120

7. Testing

As always, ensure you’ve set up a proper Dynamics AX TEST environment first, and that you are familiar with the impact of your DIXF and SQL FEATURE SETUP actions before you perform them in PROD.