Share via


Resource Page for Workflow in Microsoft Dynamics AX 2009

This page is intended to provide a consolidated list of published documentation, sources of information, known issues, solutions as well as tips and tricks for troubleshooting Workflow for Microsoft Dynamics AX 2009.

Top Downloads

Critical Hotfixes

Most of the Critical Workflow hotfixes are included in Rollup 4 (RU4) or higher; to find the latest Rollup see Hot Fixes Released for Microsoft Dynamics AX 2009

The following KB articles can be applied separately, but it is recommended to move to the latest Rollup Hotfixes.

  • KB973439 - The workflow keeps retrying when a time-out exception error occurs in Microsoft Dynamics AX 2009 with Service Pack 1 installed

  • KB973492 - Only one workflow works when you run several workflows on a single form in Microsoft Dynamics AX 2009

  • KB971260 - A workflow record is stuck in a pending status in a batch queue in Microsoft Dynamics AX 2009

  • KB2398999 - Workflow fails intermittently when two AOS instances are marked to process workflow batch groups and change in AOS configuration requires restart .

    Details:

    The symptom of KB 2398999 can also be identified as performance issues when messages are left in the workflowmessagetable. In order to determine if this is the case, you should run the following SELECT statement:

    Select * from WORKFLOWMESSAGETABLE where MESSAGELIFECYCLESTATE =1 and MESSAGETYPE =15

    If a larger number (1000+) of records are returned then the above hotfix is required. To fully resolve the issue you need to remove the current records and apply KB 2398999, which will prevent any new orphaned records from getting stuck in queue. Use the following SQL statement to remove the orphaned records.

    Delete from WORKFLOWMESSAGETABLE where MESSAGETYPE =15
    Note: If you need to debug workflow code running in batch, Critical Kernel hotfixes for Batch processing and fixes for debugging workflow in batch are included in kernel Rollup Hotfix (RU6 Binary only download) or higher.

Common Problems & Solutions

Please note that there may be some different setting required for installing workflow with IIS 6.0, IIS 7.0, or IIS 7.5. You may need to work with IIS resources for IIS related errors or problems.

This section lists the most common issues encountered in Workflow for Microsoft Dynamics AX and the solution reco​mmended by the Microsoft Dynamics AX Support team.

Issue Solution
Workflow documents are not processing in a development/ test environment after restoring the database or in a production environment after changing batch or AOS server configuration. The server setup, batch groups, and Workflow URL may be incorrect and would need to be changed for the new Environment. See Checking Database entries after restoring a Microsoft Dynamics 2009 SQL Database to another Domain or Environment
See Unable to validate the AX 2009 Workflow Webservice URL Use this information along with any Event Id’s of 1001 to confirm the times when the AOS crashes.
When I manually browse any aspx pages in the Workflow virtual directory I get a HTTP Error: 404.17 See Troubleshoot Error 404.17 - Not Found

Troubleshooting Tips

If you are testing workflow and do not wish to wait for the batch job to process, you may run the workflow tutorial instead. To do this in Microsoft Dynamics AX go to AOT | Forms | Tutorial_WorkflowProcessor. DO NOT use the Tutorial_WorkflowProcessor in production as you can inadvertently remove records from queue if you click the Clear button.

Settings to change after restoring the database.

Deployment Recommendations:

  • Create a dedicated batch group for workflow and use the workflow configuration to set the batch jobs to the new batch group

  • If you have high volume or time sensitive workflows you may want to dedicate an AOS server to process the workflow batch tasks

  • If you are developing a custom workflow process be sure to add code to not allow a delete on the transactional record, while there are active workflows in process. Doing so can orphan the workflow records and cause performance issues

  • Long processing times for workflow batch jobs

  • There may be times when the workflow batch jobs are taking longer than normal to process workflow documents where user assignments are made. This can happen when old workflows are left in the system and not completed or are canceled. The following SQL statements can be used to help identify this issue and aid you in locating the documents that may need to be cancelled.

  • The following SQL statement will check for a wide recid variance that may cause performance issues:

    Select MAX(recid)-MIN(recid) from WORKFLOWMESSAGETABLE where MESSAGELIFECYCLESTATE = 1

  • Notes:

    • If you get NULL as a result this indicates there is nothing in the queue to be processed

    • If you get a very high number then it may take several passes of the workflow batches to process all the records in the queue.

    • If you have very old records in the queue you may want to check the status of the document and cancel it if needed to get rid of the wide variance.

  • The following SQL statement will return the workflowcontextrecid, workflowcontexttableid of the records currently in queue

    select workflowcontextrecid, workflowcontexttableid, WORKFLOWCORRELATIONID, * from WORKFLOWMESSAGETABLE where MESSAGELIFECYCLESTATE = 1

  • The following SQL statement will return the table ID and the table name of the document source for workflow documents in queue

    select tableid, name from SQLDICTIONARY where fieldid = 0 and tableid in (select workflowcontexttableid from WORKFLOWMESSAGETABLE where MESSAGELIFECYCLESTATE = 1)

    Note Use the results of the above SQL table name to look at the recid in the source document table.

  • The following sample SQL statement returns the underlying source document to check if the workflow should be canceled or deleted

    select * from PURCHREQTABLE where RECID = '5637144826'

  • Use the following SQL statement to return the record in the workflow history form, find the WORKFLOWCORRELATIONID from the InstanceNumber from the WORKFLOWMESSAGETABLE, and then and use that GUID in the CORRELATIONID of the WORKFLOWTRACKINGSTATUSTABLE WORKFLOWCORRELATIONID

    select INSTANCENUMBER,* from WORKFLOWTRACKINGSTATUSTABLE where CORRELATIONID = 'C1919766-6C63-42DC-92E8-6B3FD1D8BDC0'

    Note Once you know the instance Number filter in the Workflow tracking table, you can then cancel the workflow process and make sure all records process out of the queue before testing newly submitted ones.

Support Information

For technical support questions, contact your partner or direct your questions to the Support for Business hub: https://serviceshub.microsoft.com/supportforbusiness/create

CustomerSource Help and How-To Resources

To access the downloadable material within this content as previously found on CustomerSource, users will need to have the same customer account access. Click here to view more information.