Ошибка SQL: Попытка вставки неуникального значения в уникальный индекс #584479


#0 by УПП
Парни, нужна помощь, в общем такая вот ошибка при записи документа: Ошибка при вызове метода контекста (Записать): Попытка вставки неуникального значения в уникальный индекс: Microsoft OLE DB Provider for SQL Server: Cannot insert duplicate key row in object 'dbo._AccRgAT31272' with unique index '_AccRg31272_ByPeriod_TRRRRRRN'. The duplicate key value is (Oct  1 2011 12:00AM, 0xb78b44e770856be44f72929f83d798ec, 0xa5c250505450303011da76ca1e1af82a, 0x08, 0x000000aa, 0x92530013724ce51f11dc1983fdfdd899, 0x08, 0x000000b7, 0xa164001ec9eba4bc11dea12447b43801, <NULL>, <NULL>, <NULL>, <NULL>, 0). Как пытался исправить: 1. Выгрузка загрузка базы (*.dt) не помогает 2. Выгрузка загрузка базы (*.dt), с установкой новой смещении дат не помогает так же 3. Делал тестирование и исправление (без проверки ссылочных данных), тоже не помогло Что еще можно попробовать ?
#1 by shamannk
выгрузи создай новую базу скл и залей туда dt, мне как то помогло
#2 by rs_trade
жаль пояс богородицы уехал. а то можно было бы попробовать ему поклониться.
#3 by УПП
Это я уже делал.
#4 by УПП
:))) Ну давайте без подъебок :) Ну зачем детский сад устраивать, вроде взрослые люди.
#5 by УПП
+0 Как пытался исправить: 1. Выгрузка загрузка базы (*.dt) не помогает 2. Выгрузка загрузка базы (*.dt), с установкой новой смещении дат не помогает так же ----------- Естественно создавалась новая база SQL для этих пунктов.
#6 by rs_trade
Ищи дубли, причину их появления, удали дубли. Ищи по форуму. Недавно только ветка была.
#7 by Kom-off
1. Проанализировать данные в регистре накопления _AccRgAT31272 - имя которого в конфигураторе можно получить функцией ПолучитьСтруктуруХраненияБазыДанных. 2. Если найденны некорректные данные, то исправить их возможными способами. 3. Проиндексировать таблицы базы данных на уровне SQL. Кстати, можно попробовать первым делом.
#8 by shamannk
У гилева поисче что то было у него по этому поводу.
#9 by rs_trade
#10 by УПП
да я как раз первым же делом реиндексацию сделал, не помогла.
#11 by УПП
_AccRgAT31272 это Хозрасчетный регистр (Итоги по счетам с субконото 3) как раз у этой таблице единственный индекс: _AccRg31272_ByPeriod_TRRRRRRN и на него ругается
#12 by Kom-off
Ну, посмотри, там в ошибке в есть несколько УиДов, точнее их представлений в SQL. На Инфостарте есть статейка недавняя про преобразование их в УИД-ы 1С. Один из них, наверняка, УИД документа регистратора. Вот с его поиска и начни.
#13 by УПП
Спасибо за подсказку, сейчас поищу статейку и докопаюсь до кривых регистраторов.
#14 by Kom-off
"Ну, а дальше - дело техники" (с) Бриллиантовая рука. :-)
#15 by sda553
Я знаю эту ошибку. Простыми методами (без бэкапа) ее не так то просто победить. Причина скорее всего в том, что недавно поменяли количество субконто. Теперь в таблице бухгалтерии субконто есть некие записи которые по плану счетов у этих счетов быть не должно. Или наоборот, вместо необходимых значений субконто по плану счетов положенного, в таблице null
#16 by sda553
Процедурка починки очень комплексная. Пишется запрос который сравнивает текущие значения субконто с разрешенными видами субконто в плане счетов. Отбираются те записи, которые не сходятся, т.е. лишнее значение субконто или не того вида или нехватающее субконто (должно быть взаимное соответствие и в ту и в другую сторону) Потом взависимости от вида этих строк решаем что с ней делать. Например если в значении субконто не хватает какого то вида субконто, то добавляем его руками insert если другого вида, то Update ну или delete если это субконто не должно быть
#17 by YaYca
Похоже, Дед Мороз в качестве подарка подбросил и в нашу базу эти грабли. Проблема вылазит при попытке добавить субконто. sda553, есть ли возможность поделиться наработками?
#18 by H A D G E H O G s
1) Отключить итоги у Хозрасчетного 2) Исправить записи основных таблиц прям из 1С, исправив значения Субконт 3) Включить итоги у Хозрасчетного Было и у нас подобное.
#19 by Mikhail Volkov
Эта ошибка чисто SQL. Поэтому, я обычно выгружаю в файловый вариант, перепровожу документы (восстанавливаю последовательность или конкретно тот тип документов, на которых эта ошибка замечена). ТиИ если время есть. Потом обратно в SQL.
#20 by H A D G E H O G s
Бугага. В рот мне ноги!
#21 by IceSer1
вот извращенец )
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С