[ОТВЕТИТЬ]
Опции темы
18.06.2009 10:41  
Mr_Vito
----- Ошибка приема -----
Пакет: 090616160335_3773455_27.SFPZ
Тип объекта: Контракт с поставщиком
Идентификатор объекта: КЗЦО00076
-- Уровень вложения 0 --
Сообщение: ORA-02091: откат транзакции выполнен
ORA-00001: нарушено ограничение уникальности (SUPERMAG.SMCSPEC_DISPLAYPOS)

Исключение: System.Data.OracleClient.OracleException
Источник: System.Data.OracleClient
Метод: Void Check(System.Data.OracleClient.OciErrorHandle, Int32)

сравнил документ в магазине и в офисе,
в офисе на одну позицию меньшеив остальном совпадают.

Соответственно вопрос, почему вываливается в ошибку, и что посоветуете делать? в каждый магазин залезать и удалять его нудно, их больше 30 :(
 
18.06.2009 10:54  
Mtirt
Что-то с нумерацией строк в документе, точнее - с нумерацией для отображения на экране.
add constraint SMCSPEC_DISPLAYPOS unique (DOCTYPE, DOCID, DISPLAYITEM)

Как вариант - попробовать опустить/поднять статус документа в офисе и послать еще раз.
 
18.06.2009 10:56  
vdm
В спецификации есть строки с одинаковым порядковым номером.
Найти и перенумеровать.
 
18.06.2009 11:05  
Mr_Vito
Документ и в офисе и в магазине в красной галке
ошибка появляется, когда этот документ посылаешь в подчиненную базу. Перевод в черновик не помогает, черновик тоже не уходит :(
позиций с одинаковым номером нет :(
они и отличаются тока одной позицией, в документе который в офисе на одну позицию меньше
 
18.06.2009 11:46  
akonev
Цитата:
Сообщение от Mr_Vito
...позиций с одинаковым номером нет :( ...
предположение:
после удаления позиции в супермаге в номерах позиций должен был получиться пробой. например, удалили позицию 4 в документе из 5 строк:
1
2
3
5
кто-то добрый решил, что это некрасиво и 5 исправил на 4.

в офисе в smspec получилась запись, specitem=5 displayitem=4
в магазине, по прежнему, присутствует specitem=4 displayitem=4

при приеме документа на один displayitem=4 претендуют старый specitem=4 и исправленный specitem=5, что запрещено констрэйнтом.

то есть надо сверить нумерацию позиций в офисе и магазине. если нумерация не сходится - сделать в офисе, как в магазине.

еще раз уточню, что это только версия. сам не проверял.
 
18.06.2009 12:37  
Mr_Vito
проще сказать что совпадает :( чем что не совпадает
получается что придется экспортировать этот контракт в новый, а этот привести в состояние = документу в магазине и заблокировать
так? может есть вариант попроще?
 
18.06.2009 13:11  
Mtirt
Попробуй разослать из магазина в офис.
Тоже будет эта ошибка?
 
19.06.2009 04:14  
isi
Эта проверка кстати очень жить мешает, не понятно почему С+ до сих пор не решил эту проблему...
 
19.06.2009 07:08  
Mr_Vito
в итоге сделал как написал в 6 посте :(
 
 
Опции темы



Часовой пояс GMT +3, время: 03:17.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.