Error Installing eConnect

Microsoft Dynamics GPA recent install of eConnect ran into a small issue; after the installation was complete, the eConnect service wouldn’t start. In the Windows Event Log there were two errors shown:

eConnect Error

The first error wasn’t terribly useful, but the second had much more information:

eConnect Error

Show/Hide Error Message

Event Type: Error Event Source: Microsoft.Dynamics.GP.eConnect12 Event Category: None Event ID: 0 Date: 28/01/2014 Time: 11:45:45 User: N/A Computer: Description: Action: Service Create Current User Name: DOMAIN\DynamicsGPUser Input parameters: Exception type: System.Data.SqlClient.SqlException Exception message: 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) Stack Trace: at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() at System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity) at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject) at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout) at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) at System.Data.SqlClient.SqlConnection.Open() at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.CheckConnectionStatus(SqlConnection connection, String connectionString, Int32 currentDepth) at Microsoft.Dynamics.GP.eConnect.DatabaseConnectionProvider.GetConnection(String connectionString) at Microsoft.Dynamics.GP.eConnect.eConnectMethods.EntityImportImplementation(String connectionString, String sXML, Boolean isTransaction) at Microsoft.Dynamics.GP.eConnect.eConnectMethods.ProcessEntityImport(String connectionString, String sXML, Boolean isTransaction) at Microsoft.Dynamics.GP.eConnect.eConnectMethods.CreateEntity(String connectionString, String sXML) at Microsoft.Dynamics.GP.eConnect.Service.CreateEntity(String ConnectionString, String sXML) For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

The full message is above, but the gist of it is that a connection to SQL Server could not be made.

When we investigated, we found problem was with the eConnect_Incoming.exe.config file where the Instance Name of the SQL Server had not been added to the data source. The screenshot below shows the config file with the added Instance Name highlighted:

eConnect Error

Once the correct instance name (in the format of {IP Address/Server Name}\{Instance Name} was entered, eConnect successfully started.

What should we write about next?

Your Name (required) -
Your Email (required) -

(Visited 383 times, 1 visits today)