Thursday, December 8, 2016

AxBuild.exe compilation error

Yesterday when i try to compile my AX 2012 R3 with AxBuild.Exe, i was getting the following error
“Object Server 01:  Can not create default Keyset. Error code -2146893809”.
Here i was running the command prompt as an Adminitrator and user has the access to AX database. After going through some of sites online i found out that, the issue has been caused by user permission.
The AOS was running under different user account and i was trying to run the compilation with other user account.
When I log off this user and logged in as the same user under which the AOS service is running and then started the compilation. And this the compilation is successful.

Saturday, November 19, 2016

AX2012 R3 demo data transfer tool not detecting the database

Hello Friends,

Today i have tried to import the demo data into my AX 2012 R3 instance. But the test data transfer tool is not detecting my database. It is always showing that no databases found, even though the database exists and i am able to view my AX console without any issues.

After 2 hours of debugging, i found the following query

SELECT NAME FROM sys.sysdatabases where sid != 0x01 and version is not null AND DATABASEPROPERTYEX(name,'status') = 'ONLINE' order by crdate desc

 The tool is searching for the databases which are not created by sa user. But some how my database was created by the user sa when i was installing the AX. Because of this issue i am unable to import the demo data to AX instance.

Then i have executed the following steps to resolve my issue.


  • Make a back up of the AX database
  • Delete the existing database
  • Login to SQL management studio with windows authentication and restore the same database from the back up file, 
  • Give the required user permissions to the database (if applicable).

Done. Now i am able to import the demo data successfully.



Sunday, May 8, 2016

Getting Vendor addresses based on Address type in AX 2012 R2/R3

The following query gets the vendor addresses


 select ROW_NUMBER() over (partition by v.accountNum order by dpl.isprimary desc, lpa.recid) as AddressNumber,v.ACCOUNTNUM,lpa.ADDRESS,llr.NAME from VENDTABLE V
 join DIRPARTYLOCATION Dpl on v.party=dpl.party  and dpl.ISPOSTALADDRESS=1
 join LOGISTICSPOSTALADDRESS lpa on dpl.LOCATION=lpa.LOCATION  
 join DIRPARTYLOCATIONROLE dplr on dplr.PARTYLOCATION=Dpl.RECID
 join LOGISTICSLOCATIONROLE llr on dplr.LOCATIONROLE=llr.RECID
 where llr.TYPE=10 -- Can be any type as per requirement