Job Queue Processing – Overview

In many integration scenarios automated message processing is a crucial aspect. It has always be a core element of NAVBIS. For NAVBIS2013 the importance of the job queue has been increased. It is now an integral element of the solution. In many implementations we see that there are questions around background processing. Most of the times the questions are related to the standard Dynamics NAV functionality. I would like to write a number of articles about the standard Job Queue and after that how you can enable background processing for NAVBIS 2013.

Classic Runtime

Microsoft Dynamics NAV 5.00.01 (SP1) was the first version which was provided with Job Queue functionality. Primary purpose of the Job Queue was to run reports and codeunits on the Application Server (NAS). It was possible to configure recurring and run-once jobs.

although the job queue has served us in the past years it was not the most beautiful system to work with. The Application Server (NAS) was having some annoying habits (stability, security and difficult to debug) which made it often difficult to implement. With the introduction of the new 3-tier architecture it became even more complex since the NAS was a classic component while the Role Tailored Client not. Another disadvantage of the NAS was the licensing. If one company has multiple NAV Companies it becomes pretty expensive.

NAV 2013

Like many other things, the Job Queue system of NAV 2013 is a great improvement. Although the configuration looks pretty much the same the architecture has been completely redesigned. It benefits from the new background process platform capabilities. Debugging and troubleshooting is not an integral aspect of the Job Queue system. Load balancing makes the solution really scalable. It is no longer required to install a separate service for each company.

NAV 2013 Job Queue Concept

NAV 2013 Job Queue Concept

Job Queue:

  • Dispatches Job Queue Entries.
  • Can be assigned to a specific Dynamics NAV Server Instance.
  • The Job Queue Category Filter allows one to process specific Job Queue Entries on a Job Queue. For example: The Purchase and Sales background posting can be handled by a separate Job Queue. 
  • Is started automatically by the NAS Service or manual by the user;
  • The Queue runs under the credentials of the starter (NAS Service or user);
  • Has been provided with a heartbeat property which indicates if the Job Queue is still alive. This field is updated after each ….
Standard Job Queue Configuration

Standard Job Queue Configuration

Job Queue Entry;

  • Configures a job.
  • A job is either a report or a codeunit which can be started with parameters.
  • Can be either recurring or run-once.
  • After processing, non-recurring Job Queue Entries are deleted.
  • May have a specific Job Queue Category Code.

2013-06-18_17h00_16

Please check the standard msdn documentation for more information about how to set up a job queue.

Conclusions

  • The NAV2013 Job Queue has a redesigned architecture.
  • NAV2013 Job Queue has been provided with advanced load balancing capabilities.
  • The Job Queue system supports both recurring and non-recurring tasks.
  • Job Queue system is provided with logging, error handling and status management.
This entry was posted in Job Queue, Solution Center and tagged , , , , , . Bookmark the permalink.

2 Responses to Job Queue Processing – Overview

  1. Mark Brummel says:

    I love the new Job Queue. We improved the performance of an interface from 45 minutes to 15 minutes using multithreading and webservices. It flies!

    • ronvdw says:

      We’re on the same page Mark 🙂 I have the same experience. Another thing which I like is that the code is executed in the same context. With classic nas I have been involved in many cases in which everything works fine except with the job queue / nas. And what about the reliability? Cool stuff indeed.

Leave a comment