Step-by-Step Checklist for Debugging Batch Jobs in Dynamics Ax

This post applies to Microsoft Dynamics Ax 2009 (see version note below).

A. Enable Global Breakpoints

            When debugging in the client, you want to set breakpoints that can be caught by the debugger. The following steps show how.

1. Launch the Microsoft Dynamics AX Configuration tool from the Start > Administrative Tools menu on your client computer. The first time this tool opens, you will be on the Original configuration. Create a new configuration named Debug. Click Manage and choose the Create Configuration menu option.

2. Enter a new name such as Debug, and choose copy from Original configuration and click Ok.

3. A new configuration is created and shown in the configuration tool. Click the Developer tab.

4. Choose the following options:

· “Enable global breakpoints to debug code running in the Business Connector or client” (required for this scenario)

· “Enable user breakpoints to debug code in the Business Connector” (optional for this scenario)

Note: Take special care that the Configuration Target remains set to Local Client since this is the only client you can set global breakpoints from.

B. Configure Your AOS to Run Under Your User Credentials

1. Launch the Services utility on your AOS server machine, and choose the AOS instance that you are configuring for debugging.

2. Right-click on your chosen AOS instance name and choose Properties. On the properties window, choose the Logon tab. Select “This account” for the Logon As option. Enter your full Domain account {e.g. contoso\YourName } and password credentials. This account must be the same user account as the account used for debugging batch code.

3. Click Apply once you have modified the user account.

4. You will be prompted to restart the service. Choose yes to restart the service (note: ensure other users are not working on this service before restarting it).

C. Configure the Dynamics AX Server to Enable Debugging

1. From your Start > Administrative Tools menu, open the Microsoft Dynamics AX Server Configuration tool. This tool has the same option to Manage configurations that you saw earlier in the client configuration tool.

2. Choose the Manage and Create Configuration option to create a new server configuration. As before, copy from the original configuration and choose Debug as the name.

3. Verify the AOS instance matches the instance you want to use for debugging.

4. Choose the following options:

· “Enable breakpoints to debug X++ code running on this server” (required for this scenario)

· “Enable global breakpoints to debug X++ code running in batch jobs” (required for this scenario)

Note: When you click Apply, you will be prompted to restart the service, and you should choose Yes.

D. Set breakpoints and start debugging.

1. Launch the Dynamics AX Client from the Start menu, and open the developer workspace.

2. Open the class you would like to debug from the AOT and set breakpoints at desired locations.

3. Launch the Dynamics Ax Debugger from the Start menu. The debugger must be opened directly in order to find and catch global breakpoints.

4. Schedule the batch job to run.

Example: To schedule work calendar delete to run in batch; launch the WorkCalendarDelete class in the AOT, click Batch tab, check Batch Processing check box and click Ok.

5. Wait for the debugger to catch the breakpoints.

E. Version information.

Batch debugging on Windows Server 2003 works with Dynamics Ax 2009. However, a hot fix (from partners site) is needed for Windows Server 2008. The next release of Dynamics Ax will include a fix for both operating systems (2003 and 2008).