Categories
Dynamics NAV Microsoft

The Microsoft Dynamics NAV server is currently not ready to serve requests

Searching on internet I’ve found a few of posts with solution for this error, they were quite old (2014) and the cause of the error was that the account used by the NAV Server was not db_owner in the database. The solution was to grant that user to db_owner.

Well the issue now is that the account used to run the NAV Server in my database is db_owner.

What is the error? What is the meaning of this error message?

The Microsoft Dynamics NAV server is currently not ready to serve requests. Try again later or contact your system administrator.

To be honest this error message did not help me to understand what was the issue, even in the Event Log there was not extra info.

Do not ask me the meaning of this error message and I do not know yet the causes but I found a solution (this is the mission of my website, share my solutions).

Solution:
Navigate to the following folder

C:\ProgramData\Microsoft\Microsoft Dynamics NAV\<NAVVersionNumber>\Server

and delete the folder with the name of NAV Instance of which you had the error. Then folders have the same name of the Service, with the following format

MicrosoftDynamicsNavServer$<ServerInstance>

where <ServerInstance> is the name of the NAV Instance.
At the end restart the NAV Instance.

Note: Don’t be worry, after you will restart the instance, this folder will be recreated.

Did my solution fix your issue? Leave a comment.

Categories
Dynamics NAV HOW TO Microsoft PowerShell Registry

HOW TO set NAV Service Startup Type via PowerShell

When you create a new Instance using the command New-NAVServerInstance it will set the Startup Type of the NAV Service as “Automatic” by default.

I haven’t found any NAV command to change it, so let us think about NAV Service as any other Windows Service.

In PowerShell there is a command Set-Service that allows to change an existing Service.

NAV Service names have the following format

MicrosoftDynamicsNavServer$<ServerInstance>

where <ServerInstance> is the name of the NAV Instance

So running the following command we can change the Startup Type to Automatic, Manual or Disabled.
[sourcecode lang=”powershell”]Set-Service –Name "MicrosoftDynamicsNavServer`$DynamicsNAV100" –StartupType Manual[/sourcecode]
This example will set the NAV Service for the Server Instance DynamicsNAV100 to Manual.

Unfortunately -StartupType parameter does not have a value for Automatic (Delayed Start)

So it seams a bit tricky but just looking into the register I’ve noted that the other services that had Automatic (Delayed Start) as Startup Type have a REG_DWORD value called “DelayedAutoStart” with value 1 under HKLM\System\CurrentControlSet\Services\

So the idea is use the previous command to set the Startup Type to Automatic then add REG_DWORD via script
[sourcecode lang=”powershell”]Set-Service –Name "MicrosoftDynamicsNavServer`$DynamicsNAV100" –StartupType Automatic
Set-ItemProperty -Path "Registry::HKLM\System\CurrentControlSet\Services\MicrosoftDynamicsNavServer`$DynamicsNAV100" -Name "DelayedAutostart" -Value 1 -Type DWORD[/sourcecode]

In reality we could setup everything from the registry
[sourcecode lang=”powershell”]Set-ItemProperty -Path "Registry::HKLM\System\CurrentControlSet\Services\MicrosoftDynamicsNavServer`$DynamicsNAV100" -Name "Start" -Value 2 -Type DWORD
Set-ItemProperty -Path "Registry::HKLM\System\CurrentControlSet\Services\MicrosoftDynamicsNavServer`$DynamicsNAV100" -Name "DelayedAutostart" -Value 1 -Type DWORD[/sourcecode]

NOTE 1: Both scripts will work only if the current Startup Type is different of Automatic
NOTE 2: “DelayedAutostart” DWORD will have effect only if you setup the Service Type as Automatic.

Did my HOW TO help you? Leave a reply.