При попытке сформировать из расходной накладной "возврат поставщику" с БОЛЕЕ ЧЕМ ОДНОЙ ПОЗИЦИЕЙ ТТН вылезает
—--- Прерывание работы программы —---
сообщение: "Неправильный результат из-за исключения, возникшего во время операции. См. описание исключения в InnerException."
исключение: System.Reflection.TargetInvocationException
источник: System
метод: Void RaiseExceptionIfNecessary()
в System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
в Sm.Core.RunWorkerCompletedEventArgs`1.get_Result()
в Sm.Forms.ModalWorker.ModalWorkerEngine`2.RunModal_Completed(Object sender, RunWorkerCompletedEventArgs`1 e)
в Sm.Core.TaskWorker`2.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e)
—--- Причина исключения, уровень вложения 1 —---
сообщение: "ORA-00001: нарушено ограничение уникальности (SUPERMAG.SMCEGAISDOCSPEC_PK)
ORA-06512: на "SUPERMAG.EGAIS", line 238
ORA-06512: на "SUPERMAG.EGAIS", line 323
ORA-06512: на "SUPERMAG.SMEGAISCREATERETURN", line 5
ORA-06512: на line 1"
исключение: System.Data.OracleClient.OracleException
источник: System.Data.OracleClient
данные: соединено с: База даных=SEROVA2; Пользователь=adm
текст команды: Supermag.SMEgaisCreateReturn
тип команды: StoredProcedure
параметры: aSourceGLID=«35403»; aDocWO=«Р817-01084»; GLID=«null»
метод: Void CheckError(System.Data.OracleClient.OciErrorHandle, Int32)
в System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc)
в System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior behavior, Boolean needRowid, OciRowidDescriptor& rowidDescriptor, ArrayList& resultParameterOrdinals)
в System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal(Boolean needRowid, OciRowidDescriptor& rowidDescriptor)
в System.Data.OracleClient.OracleCommand.ExecuteNonQuery()
в Sm.Server.Database.OracleSafeCommand.ExecuteNonQuery()
в Sm.Server.Database.OracleRunner.ExecuteNonQuery(OracleSafeCommand command)
в Sm.Egais.Server.EgaisWayBillBO.CreateReturnTTN(OracleTransConn connection, String docWO, Int32 locationFrom, Nullable`1 parentLoc)
в Sm.Egais.Server.EgaisWayBillBO.Sm.Egais.Link.IEgaisWayBillBO.CreateOutTTN(BusinessOperation businessOperation, String docType, String docId, String ttnType)
в Sm.Egais.EgaisDomainModel.<>c__DisplayClass6.<CreateOutTTN>b__1(IEgaisWayBillBO bo)
в Sm.BusinessServer.LocalServer.LocalClient`1.Do[TResult](Func`2 function)
в Sm.Egais.EgaisDomainModel.CreateOutTTN(String docType, String docId, String ttnType)
в Sm.Egais.EgaisDomainPanel.<CreateOutTTN>b__9(Object s, TaskWorkEventArgs`2 e)
в Sm.Core.TaskWorker`2.OnDoWork(DoWorkEventArgs e)
в Sm.Core.TaskWorkerBase.InternalBackgroundWorker.OnDoWork(DoWorkEventArgs e)
в System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
При этом ТТН на 1 позицию замечательно формируются и уходят. Такое чувство, что криво заполняется поле identity в smegaisdocspec. Кто-то сталкивался, может был какой-то патч, который это исправлял. Перешли с 1,035 sp4 сразу на 1.036.1 sp3