Monday, March 28, 2011

What is the location of the help files of Dynamics Ax?

Help information of Dynamics Ax is stored in chm files, a common file format used for help files by Microsoft.  CHM or Compiled HTML Help is a proprietary format from MS.  MS provides free tools (like HTML Help WorkShop and Documentation) to create and edit help files.

By default the help files of Ax are located in a sub folder on the client, like for example C:\Program Files\Microsoft Dynamics AX\50\Client\Bin\Help\%LANG%.  You'll notice a subfolder structure following the used languages (that's where %LANG% stands for), like en-us, de, ...

Keeping the help files on the client assures of course fast access to them, low network traffic.  (And probably no security issue.)

As it is possible to create your own help files, or update the existing help files, it can get difficult to update all the local copies on the clients.  So it's very convenient you can also use a central file share to store these help files.

You can set an alternative location for the help files by using the Ax configuration utility and a text editor, like NotePad.
First create your own custom Ax configuration file (axc file) by using the Ax configuration utility.  Then open this newly created axc file as text file with something like NotePad or WordPad and add a reference in following format:

helpDir,Text,filelocation

Example:

sqlpwd,Text,
sqltrace,Text,0
sqluser,Text,
user,Text,
helpdir,Text,E:\YourHelpFolder\Help
warnings,Text,
tracemaxfilesize,Text,10000
tracebuffersize,Text,1024
tracemaxbuffers,Text,120

I recommend using a common fileshare, as this allows for central deployment and maintenance of the helpfiles.  Easier to include in backups, especially usefull if heavy maintenance is done on those help files. You could use a fileshare on the AOS for example.
Make sure the axc file is used by the users for starting up Dynamics Ax.  (The axc file is best placed on a common fileshare as well.)

If a reference is made to a help file that cannot be found, you get an error when the help is called in Ax.


Error: HTML Help file not found.

So, how do we go about to solve the problem above?

Step 1: Which help file is needed?  Which help file is Ax referencing and where does Ax expect the file to be?

The help in the Ax client is shown by using the class SysHelp.  You can for example put a breakpoint in method getChmPath of this class to retrieve the help file name and it's expected location.

Step 2: Make sure access from the client to the help file location is secured.

Does the help file exist?  Is it located in the expected folder?  No special security settings in place that prevent the client to read from the location?
If the help files are missing, it can be an option to copy the help file from a different client.  Or restore it from a backup if it has been accidently removed.

No comments:

Post a Comment