Other recent Dynamics AX Blog postings

Freitag, April 28, 2006

Dynamics Ax 4.0 Supported Configurations

A Microsoft bloke has posted a whitepaper on his blog which tells us which hardware/software configurations will be supported by Dynamics Ax 4.0. Here is the link: http://blogs.msdn.com/nolansax/archive/2006/04/12/574801.aspx

Montag, April 24, 2006

Microsoft Dynamics Ax 4.0 Supported Configurations Whitepaper

A Microsoft bloke has posted this document about different hardware configurations for Dynamics Ax 4.0 in his blog. Here is the link: http://blogs.msdn.com/nolansax/archive/2006/04/12/574801.aspx

Freitag, April 21, 2006

Reports displaying *****

If you have a report that only displays ***** instead of numbers, you have one easy way of showing the correct numbers without any modifications:
Print the report to a file and open it in Excel (field delimiter is TAB) --> you will see all the numbers in Excel.

Donnerstag, April 20, 2006

Axapta 4.0 Layman Specification March 2006

There is a new Layman Specification available for Dynamics Ax 4.0 available. Some Microsoft bloke has put it on his blog, so here is a link to it:

Axapta Performance Oracle9i SQL2005 Part 2

I have conducted some more tests and the results stay the same:
SQL 2005 is about 14-20% slower than Oracle9i.
But I know that Microsoft is working very hard that this changes with Dynamics Ax 4.0

Dienstag, April 18, 2006

Axapta Performance Comparison Oracle 9i and SQL2005

I finished the first performance tests and here are the results. The configuration is as follows:
Oracle:, used Axapta client is 1951.3733
SQL2005: used Axapta client is Kernel Rollup 1

The test server is a P4 2.8 GhZ with 2GB of RAM. Both Oracle and SQL2005 have 1GB RAM assigned (not at the same time. Either Oracle OR SQL2005 is running.)

The first tests show that SQL2005 is about 25-30% slower than Oracle if the database is running in SQL2000 mode.
The performance is a little bit better when running in native SQL2005 mode: then SQL2005 is about 14-19% slower than Oracle.

The biggest surprise was that Oracle was always faster when a certain test (form filter/report execution) was done the second time and the data was coming from cache. It seems that the caching algorithm of Oracle was much better than from SQL2005. There was a range of 45-150% worse performance in SQL2005 when getting data from cache.

Freitag, April 14, 2006

Axapta Blog is featured community

Today I saw that my blog is a featured Microsoft community at the moment. Wow.
I just also wanted to tell you what I am doing right now: currently I am doing a performance comparison of our system between Oracle (currently our live system) and SQL2005.
I have read in many forums that the Kernel rollup also decreases performance. Well, I will also try to check that.

Mittwoch, April 12, 2006

Specifying empty date values

If you want to set a date field to an empty date or need to compare if a date field is empty, you can use the datenull() function. It is a method of the Global class and will simply return 01\01\1900.

This leads to more things:
  1. You can write dates in Axapta X++ editor using backslashes, e.g. 14\04\2006
  2. An empty date in Axapta is specified as January 1st, 1900.
  3. You can use methods from the Global class without having to write "Global::". So, you can write "if date == datenull()" and you do not have to write "if date == Global::datenull()". This works with all the methods from the Global class.

Montag, April 10, 2006

Axapta 3.0 SP5 Fixlists

Here are the links to the fixlists of the Service Pack 5 (SP5) for Axapta 3.0.
And: Please, Microsoft, give European customers access to CustomerSource...

Attention: the Geocities page where the files are located have limited download capacity. So if it doesn't work, check later. (I still don't have any storage capacity).

Financial management
Manufacturing Service Organization
Supply Chain Management
Tech 1
Tech 2

Mittwoch, April 05, 2006

Fixing online user form bug (Ax 3.0 SP3 on Oracle)

There is a standard error in the online user form that is occurring with Oracle only.
Please check the "Info" class and there the methods:

  • licensedUsers
  • licensedComUsers
  • licensedAOSUsers
  • licensedObjectServers

In all those 4 methods (well, "licensedUsers" is the most important, but please change the others as well), add the following line to the "select sysconfigtemp" statement:

&& sysConfigTemp.ConfigType == ConfigType::AccessCodes;

So, the select statement should look something like this:

select sysConfigTemp
where sysConfigTemp.id == licenseCodeNum(...)
&& sysConfigTemp.ConfigType == ConfigType::AccessCodes;

Why all that? Well, when you start the Online Users form, Axapta will check how many users are in your license. It will then only show online users up to that amount. The methods above are not giving back the correct numbers because they are looking into the wrong record. So, Axapta thinks you are in demo mode and will only display 3 users. Why is it only on Oracle? --> On MSSQL, there is a Clustered Index used on the Sysconfig table so that Axapta chooses the right records by chance !

Example: the method "licensedUsers" looks like this in standard Axapta 3.0 SP3

select sysConfigTemp
where sysConfigTemp.id == licenseCodeNum(SysUsers);

The Id that should be selected is 10.

Problem: there are 2 records with ID 10! --> one with ConfigType = "AccessCodes" (that would be the correct one) and one with ConfigType = "ConfigurationKey"