Cumulative Update 3 for Microsoft Dynamics NAV 2016 has been released

Cumulative Update 3 includes all application and platform hotfixes and regulatory features that have been released for Microsoft Dynamics NAV 2016.

The cumulative update is intended mainly for solutions that are experiencing the problems described in the Knowledge Base article linked to below. However, you are advised to always keep your solution updated with the latest cumulative update. If you are in doubt about whether this cumulative update addresses your specific problem, or if you want to confirm whether any special compatibility, installation, or download issues are associated with this cumulative update, support professionals in Customer Support Services are ready to help you. For more information, see

The cumulative update includes hotfixes that apply to all countries and hotfixes specific to the following local versions:

  •   AU – Australia
  •   AT – Austria
  •   BE – Belgium
  •   CH – Switzerland
  •   CZ – Czech Republic
  •   DE – Germany
  •   DK – Denmark
  •   ES – Spain
  •   FI  – Finland
  •   FR – France
  •   IS – Iceland
  •   IT – Italy
  •   NA – North America
  •   NL – Netherlands
  •   NO – Norway
  •   NZ – New Zealand
  •   RU – Russia
  •   SE – Sweden
  •   UK – United Kingdom

Where to find Cumulative Update 3

You can download the cumulative update from KB 3130298 – Cumulative Update 3 for Microsoft Dynamics NAV 2016 (Build 44365).


Before you install a cumulative update in a production environment, take the following precautions:

  1. Test the cumulative update in a non-production environment.
  2. Make a backup of the system or computer where the cumulative update is to be installed.

Additional Information

For information about how to install the cumulative update, see How to Install a Microsoft Dynamics NAV 2016 Cumulative Update.

For a list of all cumulative updates for this version, see Released Cumulative Updates for Microsoft Dynamics NAV 2016.

Comments (10)

    1. Try again – for me it is working.

    1. Amr Wafa says:

      Yes still not listed!!

  1. Simon Henson says:

    Saw this morning CU3 outstanding bug report ID 377725 – Using the “Preview Posting” feature.

    Attn: NAV Tech. Dev. Please read this and related posts

    TryFunction (used by Preview Posting) – AS IT STANDS – has a high risk of misuse – and thus risk of causing future problems. (and it looks like Microsoft dev. tripped over the wires here too NAV bug ID 377725 issue with Preview Posting not fixed yet in CU3 … which I hope emphasises the importance of amending this under the hood…) (Maybe not the place here but below is summary of issue and a suggested Technical solution – pleas fwd. to engineer – Thanks)

    Existing NAV C/SIDE code is written with an underlying assumption that it will roll back on error!!! The TryFunction is dangerous because it allows existing NAV code to be called and to inadvertently commit unwanted partial results – contrary to this previously safe working assumption.
    However the TryFunction is already in service. Microsoft have already used the functionality as a part of new features – and have tried themselves to follow the safe usage pattern – with explicit ERROR… (But it’s dangerous)
    IF (NOT TryFunctionCode()) THEN BEGIN
    As well observed by vjeko. This pattern works OK as long as SomeOtherStuff() does not do any explicit COMMIT’s.
    To preserve this pattern intact and prevent unwanted issues presents a challenge. Fortunately a possible solution exists for the Microsoft NAV team – which I will suggest here for consideration to adopt as part of an update NAV2016 CU4 – without breaking anything already in place.
    As a part of return from a TryFunction with result FALSE, NAV must check for an active write transaction and if active, mark the current database transaction as UNSAFE TO COMMIT (SQL Server can do this – if Microsoft fix CU4 – see a possible tech suggestion below)
    Any attempt to commit work after that point – either explicit or implied – would fail. This approach allows the uncommitted results to still be read and inspected (and copied to temp tables if needed) – but would prevent any unwanted partial commit – at the database level.
    One way to achieve this in TSQL is to force the XACT_STATE to be -1. When XACT_STATE is -1 any attempt to COMMIT the active transaction fails. This could be achieved indirectly by the following simple SQL issued within the active transaction by NAV. This forces the XACT_STATE to -1 by causing a trapped conversion error. Any subsequent COMMIT attempt – however issued – is then doomed… (This would need to be issued by NAV under the hood… from exiting a TryFunction call with trapped result FALSE)

    IF @@TRANCOUNT > 0 begin
    begin try
    select convert (integer, ‘x’); –always fails with XACT_STATE = -1
    end try
    begin catch
    end catch

    This approach would allow existing NAV code to work unmodified – (using the safe usage pattern with ERROR), but would prevent backdoor problems by partial explicit or implied COMMITS.

    1. Dirk Reeps says:

      377725 should be solved with CU4

    2. Vincent Vancalbergh says:

      While your suggestion sounds interesting it would make impossible the scenario’s where you gradually try to perform writes as well as possible without dooming the entire transaction should one TryFunction fail. I’d rather they implement a SAVE TRANSACTION command upon starting a TryFunction and, should it fail, do a ROLLBACK TRANSACTION .

    1. navteam says:

      Hello Torben,
      The W1 download is available from the list of country-/region-specific downloads if you access the hotfix download page as described in the blog post.

  2. MPG BIS says:

    Really helpful information. Thanks for sharing. We are a leading Microsoft Dynamics Partner in Australia specialize in providing ERP and CRM implementation and support using Microsoft Dynamics. This cumulative update is really useful for me. Once again thanks for sharing.

Skip to main content