Folk,
Here is quick code to create the delivery address on runtime. You can use this on Purchase Requisition, Purchase order or a person.
So we are going to use LogisticsPostalAddressEntity to get the right address with a new one or an existing one. This code should also handle if there is any update in any existing record by updating effective date stamp.
Have a look on below code,
Give a try and share your feedback.
Cheers!!!
Harry.
Search This Blog
December 11, 2018
November 15, 2018
[Solved]D365 FO data entity Synch error
[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
Subscribe to:
Posts (Atom)