AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.07.2018, 10:49   #1  
MarinaAX is offline
MarinaAX
Участник
 
134 / 57 (2) ++++
Регистрация: 20.08.2016
D365 FO - Ошибка A network-related or instance-specific error occurred while establishing a connection to SQL Server
Всем привет!

При компиляции всех или одной модели возникают ошибки:
Severity Code Description Project File Line Suppression State
  1. Error A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) ---> System.ComponentModel.Win32Exception (0x80004005): The network path was not found
    at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling)
    at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
    at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
    at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
    at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
    at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.Open()
    at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceBatchProvider.CommitBatch()
    ClientConnectionId:00000000-0000-0000-0000-000000000000
    Error Number:53,State:0,Class:20'. 0
  2. Error A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) ---> System.ComponentModel.Win32Exception (0x80004005): The network path was not found
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
    at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.Open()
    at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceProvider.IsXRefDbInitialized()
    ClientConnectionId:00000000-0000-0000-0000-000000000000
    Error Number:53,State:0,Class:20'. 0
  3. Error A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) ---> System.ComponentModel.Win32Exception (0x80004005): The network path was not found
    at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling)
    at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
    at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
    at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
    at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
    at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.Open()
    at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceProvider.IsXRefDbInitialized()
    ClientConnectionId:00000000-0000-0000-0000-000000000000
    Error Number:53,State:0,Class:20'. 0
  4. Error A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) ---> System.ComponentModel.Win32Exception (0x80004005): The network path was not found
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
    at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
    at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
    at System.Data.SqlClient.SqlConnection.Open()
    at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceProvider.InitializeCrossRefStore(String dbName)
    ClientConnectionId:00000000-0000-0000-0000-000000000000
    Error Number:53,State:0,Class:20'. 0
Дополнительная информация:
  1. Наличие ошибок не влияет на то, что D365 функционирует нормально после окончания компиляции.
  2. База данных, связанная с окружением находится в Azure SQL.
  3. Доступ к связанной базе данных, которая расположена в Azure SQL, используя SSMS, присутствует и синхронизация базы данных происходит без ошибок.
  4. D365 PU12/PU15, SQL 2016
Подскажите, пожалуйста, с чем связаны эти ошибки и как их исправить. Заранее, большое спасибо!
Старый 21.07.2018, 10:57   #2  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Возможно, при копировании ванили скопирован также web.config в котором конфигурация сервера бд. Надо его восстановить из бекапа

Последний раз редактировалось belugin; 21.07.2018 в 12:33.
Старый 22.07.2018, 18:47   #3  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от MarinaAX Посмотреть сообщение
При компиляции всех или одной модели возникают ошибки:
  1. Error A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. The network path was not found
    at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceBatchProvider.CommitBatch()
  2. at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceProvider.IsXRefDbInitialized()
  3. at Microsoft.Dynamics.AX.Framework.Xlnt.XReference.SqlDbCrossReferenceProvider.InitializeCrossRefStore(String dbName)
Судя по стекам, у вас везде ошибки при обращении к БД перекрестных ссылок.
Цитата:
Сообщение от MarinaAX Посмотреть сообщение
Дополнительная информация:
  1. Наличие ошибок не влияет на то, что D365 функционирует нормально после окончания компиляции.
  2. База данных, связанная с окружением находится в Azure SQL.
  3. Доступ к связанной базе данных, которая расположена в Azure SQL, используя SSMS, присутствует и синхронизация базы данных происходит без ошибок.
Проверьте также доступ к базе перекрестных ссылок - всё ли у нее в ажуре
За это сообщение автора поблагодарили: MarinaAX (2).
Старый 22.07.2018, 23:52   #4  
MarinaAX is offline
MarinaAX
Участник
 
134 / 57 (2) ++++
Регистрация: 20.08.2016
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Судя по стекам, у вас везде ошибки при обращении к БД перекрестных ссылок.
Проверьте также доступ к базе перекрестных ссылок - всё ли у нее в ажуре
Большое спасибо за ваши рекомендации, gl00mie и belugin!

belugin, я на всякий случай переключила машину с IISExpress на IIS, но это, к сожалению, не помогло.

gl00mie, могли бы Вы быть так любезны, чтобы подсказать
  1. что означают эти перекрёсные ссылки
  2. как найти эти перекрёсные ссылки
  3. что надо сделать, чтобы исправить эти перекрёсные ссылки
Заранее, большое спасибо за вашу помощь!!!
Старый 23.07.2018, 03:01   #5  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Кроме базы AXDB с данными штатно в разработческой виртуалке еще должна быть база DYNAMICSXREFDB, где хранятся перекрестные ссылки по приложению: какой объект приложения где и как используется в других объектах приложения. Эта информация нужна для разработки и она по умолчанию обновляется при сборке моделей. Убедитесь, что база в наличии, и к ней есть доступ в вашем окружении. Если вы не ведете разработку самостоятельно в окружении, где возникает описанная ошибка, можете в качестве обходного маневра отключить обновление перекрестных ссылок при сборке моделей.
Название: D365O-build-model-options.PNG
Просмотров: 709

Размер: 4.9 Кб
За это сообщение автора поблагодарили: Logger (1), MarinaAX (2).
Старый 23.07.2018, 16:35   #6  
MarinaAX is offline
MarinaAX
Участник
 
134 / 57 (2) ++++
Регистрация: 20.08.2016
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Кроме базы AXDB с данными штатно в разработческой виртуалке еще должна быть база DYNAMICSXREFDB, где хранятся перекрестные ссылки по приложению: какой объект приложения где и как используется в других объектах приложения. Эта информация нужна для разработки и она по умолчанию обновляется при сборке моделей. Убедитесь, что база в наличии, и к ней есть доступ в вашем окружении. Если вы не ведете разработку самостоятельно в окружении, где возникает описанная ошибка, можете в качестве обходного маневра отключить обновление перекрестных ссылок при сборке моделей.
Вложение 11970
Большое спасибо за подробное уточнение, gl00mie! Сама разработку - веду, но наши базы для AxDB все находятся в облаке, а DYNAMICSXREFDB - находятся на разработчицких VM локально. Несмотря на то, что AosService\WebRoot\web.config и "смотрит" в AzureSQL, каким-то образом [DYNAMICSXREFDB].[dbo].[Modules] содержит модули, которые были поставлены ISV-партнёрами, так что можно предположить что и [DYNAMICSXREFDB].[dbo].[References] содержит актуальную информацию. Подскажите, пожалуйста, где можно поситать о том
  1. как интерпретировать содержимое DYNAMICSXREFDB?
  2. как привязать SourceID и TargetID к существующим объектам?
Заранее, большое спасибо!!!
P.S. Система не позволяет ставить спасибо-лайки, но за мной не заржавеет
Старый 24.07.2018, 07:22   #7  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Вот пример связи таблиц на C# - reference связывает names

X++:
            var interestingTypes = new[] { "Classes", "Tables" };
            var xrefDb = new XrefDBDataContext(connectionString);
            var coreReferences =
                from reference in xrefDb.References
                join targetName in xrefDb.Names on
                    reference.TargetId equals targetName.Id
                join targetModule in xrefDb.Modules on
                    targetName.ModuleId equals targetModule.Id
                join sourceName in xrefDb.Names on
                    reference.SourceId equals sourceName.Id
                join sourceModule in xrefDb.Modules on
                    sourceName.ModuleId equals sourceModule.Id
                where
                (
                    targetModule.Name == "ElectronicReporting" ||
                    targetModule.Name == "ElectronicReportingCore" ||
                    targetModule.Name == "ElectronicReportingMapping" ||
                    targetModule.Name == "ElectronicReportingForAx" ||
                    targetModule.Name == "TaxEngine"
                    ) 
                    && 
                    reference.Kind == CrossReferenceKind.ClassExtended
                select new
                {
                    Reference = reference,
                    TargetName = targetName,
                    TargetModule = targetModule,
                    SourceName = sourceName,
                    SourceModule = sourceModule
                };
За это сообщение автора поблагодарили: MarinaAX (2), gl00mie (2).
Теги
sql server 2016

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX Performance - Analyzing key SQL Server configuration and database settings Blog bot DAX Blogs 0 28.09.2015 14:11
Connection к другому SQL Server Poleax DAX: Программирование 5 19.10.2010 10:49
Dynamics AX: SQL Server, Heart of Dynamics AX Blog bot DAX Blogs 0 13.07.2007 18:00
Ошибка SQL Server при первом запуске Axapta DIaMONd_imported DAX: Администрирование 2 13.09.2005 11:59
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:40.