Hi,
I am trying to run the NAV Service for the first time, using the Demo Database.
The NAV & SQL are on different servers. NAV Service running using NETWORK SERVICE account. My user and NETWORK SERVICE are db_owner on "master" and NAV databases.
I get the following error in the Event Log:
Any idea what permission I'm missing?
Server instance: NAV2018
Tenant ID:
<ii>User:
Type: Microsoft.Dynamics.Nav.Types.Exceptions.NavSqlException
ErrorNumber: 1088
SuppressMessage: False
ContainsPersonalOrRestrictedInformation: False
DiagnosticsSuppress: False
MessageWithoutPrivateInformation:
The following SQL error was unexpected:
Cannot find the object "Object Metadata" because it does not exist or you do not have permissions.
SQL statement:
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[Object Metadata]')) ALTER TABLE [dbo].[Object Metadata] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[Debugger Breakpoint]')) ALTER TABLE [dbo].[Debugger Breakpoint] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[Add-in]')) ALTER TABLE [dbo].[Add-in] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[NAV App Object Metadata]')) ALTER TABLE [dbo].[NAV App Object Metadata] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[NAV App Tenant App]')) ALTER TABLE [dbo].[NAV App Tenant App] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
IF NOT EXISTS (SELECT * FROM sys.change_tracking_tables WHERE object_id=Object_ID('[dbo].[NAV App]')) ALTER TABLE [dbo].[NAV App] ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON);
SELECT CONVERT(BIGINT, CHANGE_TRACKING_CURRENT_VERSION())
StackTrace:
at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
at System.Environment.get_StackTrace()
at Microsoft.Dynamics.Nav.Runtime.NavSqlConnection.ThrowNavSqlException(SqlExceptionAdapter exceptionAdapter, String commandText, Boolean isLastExceptionARollbackCause, Boolean logExceptions)
at Microsoft.Dynamics.Nav.Runtime.NavSqlConnection.<>c__DisplayClass107_0`1.<ExecuteFunction>b__0()
at Microsoft.Dynamics.Nav.Diagnostic.NavDiagnostics.SendTraceTagOnThreshold[T](String tag, Category category, Verbosity verbosity, Int32 threshold, Func`1 action, String message, Object[] parameters)
at Microsoft.Dynamics.Nav.Runtime.NavSqlConnection.ExecuteFunctionWithTrace[T](EventTask task, Func`1 function, String commandText)
at Microsoft.Dynamics.Nav.Runtime.NavSqlCommand.ExecuteScalar()
at Microsoft.Dynamics.Nav.Runtime.NavDatabaseChangeListener.Initialize()
at Microsoft.Dynamics.Nav.Runtime.NavDatabase.InitializeChangeListener()
at Microsoft.Dynamics.Nav.Runtime.NavEnvironment.OnApplicationMounted(NavTenantCollection tenantCollection)
at Microsoft.Dynamics.Nav.Runtime.NavTenantCollection.AddSystemTenant(String appDatabaseServerName, String appDatabaseName, String appDatabaseUserName, ProtectedDatabasePassword appDatabasePassword, Boolean verifyConnection, String newEncryptionKey, IDatabasePasswordPublicEncryptionKeyStorage keyStorage, Boolean allowOverwritePublicKey, Boolean verifyServerInstanceKey)
at Microsoft.Dynamics.Nav.Runtime.NavTenantCollection.AddSingleLegacyTenant(String databaseServerName, String databaseName, String databaseUserName, ProtectedDatabasePassword databasePassword, EncryptionProvider encryptionProvider, AzureKeyVaultSettings azureKeyVaultSettings)
at Microsoft.Dynamics.Nav.Runtime.NavTenantCollection.ConfigureTenants(ServerUserSettings settings, String encryptionKey)
at Microsoft.Dynamics.Nav.Runtime.NavTaskFactory.<>c__DisplayClass11_0.<StartNewTask>b__0()
at System.Threading.Tasks.Task.Execute()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart(Object obj)
SuppressExceptionCreatedEvent: False
FatalityScope: None
Kind regards,
Cristian
*This post is locked for comments
I have the same question (0)