[Updated on: Feb 26, 2020]
Hi Folks,
This quick post about one of the error while working on Data entities,
Error message: Severity Code Description Project File Line Suppression State Error ---> System.Data.SqlClient.SqlException: Violation of PRIMARY KEY constraint 'I_65518FIELD'. Cannot insert duplicate key in object 'dbo.SQLDICTIONARY'. The duplicate key value is (<tableId>, <FieldId>, 1, 0). 0
Other error messages:
Severity
|
Code
|
Description
|
Error
|
(20594,13,1,'SupplierContractId','SUPPLIERCONTRACTID',0,20,0,0,0,0);
|
|
Error
|
at Microsoft.Dynamics.AX.Framework.Database.Tools.SyncEngine.RunSync(SyncOptions options)
|
|
Error
|
at Microsoft.Dynamics.AX.Framework.Database.Tools.SyncEngine.PartialSync()
|
|
Error
|
at Microsoft.Dynamics.AX.Data.Management.ManagedSyncTableWorker.ExecuteModifyTableViaAlterTable(AxTable newTableSchema, IndexListCache ignoreIndexListCache, IncrementalSyncTableSchemaBuilder tableSchemaBuilder)
|
|
Error
|
Database execution failed: Violation of PRIMARY KEY constraint 'I_65518FIELD'. Cannot insert duplicate key in object 'dbo.SQLDICTIONARY'. The duplicate key value is (20594, 4, 1, 0).
|
|
Error
|
at Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.SqlCommandExtensions.<>c__DisplayClass1.<ExecuteNonQueryWithRetry>b__0()
|
|
Error
|
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
|
|
Error
|
at Microsoft.Dynamics.AX.Framework.Database.Tools.LegacyCodepath.RunPartialTableSync(SyncOptions options, String sqlConnectionString, IMetadataProvider metadataProvider)
|
|
Error
|
at Microsoft.Dynamics.AX.Data.Management.DBExecute.ThrowOnSqlExecuteException(SqlException e, String commandText)
|
|
Error
|
at Microsoft.Dynamics.AX.Data.Sql.SqlDataAccessManager.HandleException(ExceptionDispatchInfo edi, SqlExecutionInfo execInfo)
|
|
Error
|
Inner exceptions:
|
|
Error
|
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
|
|
Error
|
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
|
|
Error
|
at Microsoft.Dynamics.AX.Framework.Database.Tools.LegacyCodepath.ExecuteWithinAOS(SyncOptions syncOptions, String sqlConnectionString, IMetadataProvider metadataProvider, Func`1 func, Action`1 errorHandler)
|
|
Error
|
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
|
Possible solution: Delete all fields from the staging table and regenerate the same through right-clicking on data entity, refer below.
Another thing you should try is, to delete any data import/export project which you may have created while testing.
Now rebuild your solution and try.
Cheers!!!
Harry