Well, Mark and I found something else interesting when we tried to duplicate a quote. We get this error. Does anyone know what this means? Or more importantly an idea for a workaround? We have a theory that if we can get the first one to go that we will be fine.
Application Error
Exception caught in: Epicor.ServiceModel
Error Detail
============
Message: An error occurred while updating the entries. See the inner exception for details.
Inner Exception Message: Cannot insert duplicate key row in object 'Erp.QSalesRP' with unique index 'IX_QSalesRP'. The duplicate key value is (RAPAT, 1000000, 4221).
The statement has been terminated.
Program: Epicor.ServiceModel.dll
Method: ShouldRethrowNonRetryableException
Client Stack Trace
==================
at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
at System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
at Ice.IceDataContext.SaveChanges(SaveOptions options) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 352
at Ice.IceDataContext.SaveChangesIfRowHasBeenChanged[TLinqRow](TLinqRow row) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 537
at Ice.Triggers.TriggerQueue.RunWriteTriggerInNewLevel(IceDataContext context, LinqRow modifiedRecord, LinqRow originalRecord, Boolean forAddedRow) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 174
at Ice.Triggers.TriggerQueue.<>c__DisplayClass11_0.<RunWriteTrigger>b__1() in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 148
at Ice.Triggers.TriggerQueue.RunAtNewLevel(Func`1 buildTriggerRunState, Action action) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 501
at Ice.Triggers.TriggerQueue.RunTriggers(IceDataContext context) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 83
at Ice.IceDataContext.RunUntilAllTriggersHaveExecuted() in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 566
at Ice.Triggers.TriggerQueue.RunAtNewLevel(Func`1 buildTriggerRunState, Action action) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 501
at Ice.IceDataContext.Validate[TLinqRow](TLinqRow row) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 323
at Erp.Triggers.QuoteHed.WriteTrigger.createQSalesRP(QuoteHed& QuoteHed, Boolean& SetToPrimary, String vNewRoleCode) in c:\_Releases\ERP\RL10.1.600.0\Source\Server\Db\Triggers\QuoteHed\Write.cs:line 1848
at Erp.Triggers.QuoteHed.WriteTrigger.write(QuoteHed QuoteHed, QuoteHed OldQuoteHed) in c:\_Releases\ERP\RL10.1.600.0\Source\Server\Db\Triggers\QuoteHed\Write.cs:line 930
at Erp.Triggers.QuoteHed.WriteTrigger.Write(QuoteHed QuoteHed, QuoteHed OldQuoteHed) in c:\_Releases\ERP\RL10.1.600.0\Source\Server\Db\Triggers\QuoteHed\Write.cs:line 169
at Ice.Triggers.TriggerQueue.ExecuteWriteTrigger(IceDataContext context, LinqRow modifiedRecord, LinqRow originalRecord) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 296
at Ice.Triggers.TriggerQueue.RunWriteTriggerInNewLevel(IceDataContext context, LinqRow modifiedRecord, LinqRow originalRecord, Boolean forAddedRow) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 157
at Ice.Triggers.TriggerQueue.<>c__DisplayClass11_0.<RunWriteTrigger>b__1() in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 148
at Ice.Triggers.TriggerQueue.RunAtNewLevel(Func`1 buildTriggerRunState, Action action) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 501
at Ice.Triggers.TriggerQueue.RunTriggers(IceDataContext context) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Triggers\TriggerQueue.cs:line 83
at Ice.IceDataContext.RunUntilAllTriggersHaveExecuted() in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 566
at Erp.Services.BO.QuoteSvc.DuplicateQuote(Int32 sourceQuote, String sourceLines, Boolean mtlCosts, Boolean opStds) in C:\_Releases\ERP\UD10.1.600.4\Source\Server\Services\BO\Quote\Quote.cs:line 12327
at Epicor.Customization.Bpm.BO10F10BBEE93F403BA54D024FFBF2387B.DuplicateQuoteImpl.ExecuteBase(DuplicateQuoteParameters parameters)
at Epicor.Customization.Bpm.MethodCustomizationBase2`3.RunDirectives(TParam parameters) in c:\_Releases\ICE\3.1.600.0\Source\Server\Internal\Lib\Epicor.Customization.Bpm\MethodCustomizationBase2.cs:line 215
at Epicor.Customization.Bpm.CustomizationBase2`3.Execute(TParam parameters) in c:\_Releases\ICE\3.1.600.0\Source\Server\Internal\Lib\Epicor.Customization.Bpm\CustomizationBase2.cs:line 71
at Epicor.Customization.Bpm.BO10F10BBEE93F403BA54D024FFBF2387B.QuoteSvcCustomization.DuplicateQuote(Int32 sourceQuote, String sourceLines, Boolean mtlCosts, Boolean opStds)
at Erp.Services.BO.QuoteSvcFacade.DuplicateQuote(Int32 sourceQuote, String sourceLines, Boolean mtlCosts, Boolean opStds) in C:\_Releases\ERP\UD10.1.600.4\Source\Server\Services\BO\Quote\QuoteSvcFacade.cs:line 965
at SyncInvokeDuplicateQuote(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at Epicor.Hosting.OperationBoundInvoker.InnerInvoke(Object instance, Func`2 func) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59
at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 47
at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) in c:\_Releases\ICE\3.1.600.0\Source\Framework\Epicor.System\Hosting\Wcf\EpiOperationInvoker.cs:line 23
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
Inner Trace:
Cannot insert duplicate key row in object 'Erp.QSalesRP' with unique index 'IX_QSalesRP'. The duplicate key value is (RAPAT, 1000000, 4221).
The statement has been terminated.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator translator, EntityConnection connection, Dictionary`2 identifierValues, List`1 generatedValues)
at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
at Erp.Proxy.BO.QuoteImpl.DuplicateQuote(Int32 sourceQuote, String sourceLines, Boolean mtlCosts, Boolean opStds)
at Erp.Adapters.QuoteAdapter.DuplicateQuote(Int32 sourceQuote, String sourceLines, Boolean mtlCosts, Boolean opStds)
Inner Exception
===============
Cannot insert duplicate key row in object 'Erp.QSalesRP' with unique index 'IX_QSalesRP'. The duplicate key value is (RAPAT, 1000000, 4221).
The statement has been terminated.