Thursday, June 30, 2011

Dynamics Ax 2012 Global Virtual Launch Event set for September 8 2011

Microsoft is increasing his marketing efforts for the next release of Dynamics Ax.  It has scheduled a Dynamics Ax 2012 Global Virtual Launch Event on September 8, 2011.  So watch out for more information to come.

The Ax 2012 info on Microsoft.com, the launch page available to the public, is up for some time already.

PartnerSource, the site for Microsoft Dynamics Ax partners, got updated recently:
See for example the launch page over here or here.

Update: Registration is now open for the launch event, so head over here to register.

Tuesday, June 28, 2011

What can you do if your AOS service is in the stopping state?

For a routine maintenance job you want to bring the AOS server down.  So you stop the service and then... things go terribly wrong.  The Windows service does not stop and remains in the stopping state. 
So now what?  You cannot stop the service, you cannot start it.  Is a server reboot an option?

If there is only one AOS instance installed on your server, it's easy.  By using the taskmanager in Windows, kill process Ax32Serv.exe.

If there are multiple AOS instances on your server, it's a bit more tricky.  All your AOS instances have a process running with the same name, Ax32Serv.exe (Can you afford to kill the wrong process, shutting down the wrong AOS?).


1.  So first you need to identify the correct process.  You can do this by using the sc command.

For this we need to know the precise service name.  We find this piece of information in the Services window, by clicking on the Properties of the AOS service (in stopping state).  Note the name, it will be something like AOS50$nn (for Dynamics Ax 2009).



2.  With this info, query the current running services.  You can use the service controller utility sc for this.
Syntax:

   sc queryex aos50$nn   (use the service name from the previous step)



This gives you the exact PID or process id.

3.  Now we are ready to kill the task:

   TASKKILL /PID nnn /F   (where nnn is the process id from the previous step)

Refresh your screen with the Windows services, and you'll see that the AOS service is no longer in the stopped state.

Please: Use the instructions above at your own risk!
If this happens pretty frequent, look for the error cause instead of just applying this workaround. 
Do you know a better remedy?  Post it in the comments!

Thursday, June 23, 2011

Prediction: Version market share of Dynamics Ax 2012 will not reach 40% before 2013.

Yes it is true: I've used my crystal ball and took a look at the future. Even though it was a bit cloudy (more clouds packing together year after year), it was pretty clear to see.
So here's my prediction: Ax version market share for Dynamics Ax 2012 will not reach 40% before January 1st 2013.

Why do I say that?  Beacuse it makes senses.

I've done two small surveys in the recent past (thank you blog readers, for giving feedback!).  In one of them I asked quit a straightforward questionWill you be upgrading to Ax 2012 the moment it is released?

The results:



Now have a look at a small survey I did a while back around current market share for Ax versions.  It showed that 35% did not yet upgrade to Ax 2009.  If we take into account that of the 65% using Ax 2009 there are a lot of new customers, it means that around half or more of "old" Ax customers never did perform the upgrade.

Sure, the new version has lots of new features.  A lot of improvements.  And comes with new tools to upgrade.
But let's face it: The product also just got a bit more complex.  Again. 

Upgrading to Ax 2012 is not something you do overnight.  It's gonna be a project on its own.  Requiring resources from both IT and the business.  It's gonna take time.  And time is money.  Ax customers willing to upgrade gonna have to convince higher management it's a good investment.  Put it down in black and white.

Some topics to consider:  (but there are many!)

Reporting
You can still use your old Morphx reports (Ax 2012 still supports it), but SSRS is the way to go.  You could ignore Reporting Services with Ax 2009, but that's no longer the case with Ax 2012.  So if you are not already an SSRS master, it's time to upgrade your skills.

Security
We have to go back a couple of major versions in order to see such big changes as to what security concerns.
And it looks like this is still not the final setup, as in the next version after Ax 2012 RLS will no longer be supported (confirmation Microsoft?).

Wednesday, June 22, 2011

How to retrieve the name of your current Ax client configuration

When setting up a Dynamics Ax client, each setup (or configuration) is given a unique name.  You can retrieve this name when working in Dynamics Ax by using the xInfo class.

Example:

static void AxClientConfigName(Args _args)
{   ;
   info(xInfo::configuration());
}

This job shows the name that is selected in the Configuration box in the Client Configuration Utility.

Monday, June 20, 2011

How to update multiple records in one go - the Fill utility in Dynamics Ax explained

The Fill utility in Dynamics Ax is in my opinion one of the most undervalued features.  Maybe it's because this utility isn't that well known, so I decided to dedicate a blog post to it.

First of all: What is it?
The Fill utility allows a user to update multiple records in one go, setting a specific field with a certain value.  Without the help of a developer, without a lot of manual labour (ctrl+c - next - ctrl+v - next - ctrl+v ...).
Examples: Change the item group for a set of items.  Change the credit limit for a group of customers.

How does it work?
1. Open the form that contains the records you want to update.
2. Select the field you want to change and right-click it.  Select the Record info form in the popup menu.



3.  From the Record info form, select the button that reads 'Fill utility'.
4.  You'll get a query form, asking you for the records that needs updating.



Be carefull to set the right criteria in this stage!
5.  Next Ax show you the records that will be updated, according to the criteria you set earlier.  So again, review with care.
6.  In the last step you set the new value of the field you wanted to change (where it all started.)  Press OK and the change will be performed.  (Believe me, it's easier as it seems from the explanation above.)

Some notes:
Is the Fill utility not available?  You cannot find it?
This feature is controlled by a configuration key.  So make sure the administrator enables the configuration key, under Administration - Setup - System - Configuration.  The configuration key for the Fill utility is right under the first header, Administration.

There is also security key involved.  So if a users complains he/she doesn't see the Fill utility button in the record info screen, make sure this user is member of a group with the appropriate user rights.

What have you done?!
If you were a bit too quick pressing next/ok, you can always see afterwards what was changed.  Dynamics Ax keeps a log of updates performed by the Fill utility.  You can find this log under Basic - Inquiries - Fill utility Log.


Which fields are avaible for using the Fill utility?
Or maybe, which are not available.  Not available for use by the fill utility are the fields recid and dataareaid.  Also if the field you select is the primary key of the table (like the itemid in InventTable, accountnum in CustTable), you cannot use the Fill utility.
If the field you select is not a field of the underlying table but a datamethod instead, again you cannot use the fill utility.

Thursday, June 16, 2011

What are the tables InventSumDateTable and InventSumDateTrans used for?

When browsing the AOT, you may come across these two tables: InventSumDateTable and InventSumDateTrans.

Using your table browser, you see that they are empty.  So what are they used for?

Both tables are used by the report Physical inventory by inventory dimension, which can be found under Inventory Management - Reports - Status - Physical inventory
This report takes you back in time, calculating the stock on hand of your items for any given date in the past. 
You might experience some performance isssues when running this report, as some calculations are needed.

The report uses both tables mentioned earlier, to store these calculations.  After generating the report, a cleanup is performed.  So if you should stumble on some left over data in these tables (the user wasn't patient enough and aborted), you can safely delete any data left in these tables.

Tuesday, June 14, 2011

What happens if you go beyond the license expiry date in Ax?

If you have an expiry date on your license of Ax or if you are using a demo license key of Ax, at some point in time the license will become invalid.
What happens is that Dynamics Ax will start to run in demonstration mode. 
Yes, you can keep using the system.  The AOS will not stop.  But....   you are faced with some limitations in the system.

  • The AOT is no longer available for editing, so no more custom coding.
  • There is a maximum of 2 concurrent users.  If more users try to log on, you can get following error message:

  • You cannot enter a date in a datefield on a form, that is beyond the license expiry date.
So all in all you can use Dynamics Ax as your online archive, but no longer for your daily operations.

Sunday, June 12, 2011

How to copy a company account in Ax

When you are using Dynamics Ax, you probably have more than one instance running besides your Live Production system.  Maybe you have some development environments, or test environments.  But even then it can be useful to have a copy of a company, within your Live Production environment.  You can use it for testing purposes or for starting up a new company, with similar settings as the current one.
Microsoft made it actually quite easy to duplicate a company account within Ax, it's almost by clicking a single button.

Step-by-step guide:

Go to Administration - Common forms - Company accounts.




Select the company account you want to use as template, your source to copy from.  Then click Duplicate.
Wait a sec, Ax is investigating the company account.


Next, enter a new company account id, followed by a company name.  (Ax will create this new company account for you, you don't have to manual create one.)
Click OK and you're off.  Depending on the size of your source company account, this can take some time (think of hours).  Not only your master data is duplicated (customers, items), but also all the transactions from the source company account (like inventory transactions, ledger transactions).
You might wanna perform this duplicating outside of office hours and using a batch server for this is also a good idea.

Also note:
The guide above works for Ax 2009, but it won't work in Ax 2012.  In Ax 2012, this function is no longer available, it got deprecated.  Reason, from the official MS documentation: The organization model represents a paradigm shift in Microsoft Dynamics Ax 2012.
In short: You must rely on import and export again in the future.