Имя: Пароль:
1C
1С v8
Ошибка БД
,
0 mzelensky
 
29.01.15
10:02
Доброго всем!

Подчищаю дубли после свертки и переноса данных. При попытке перезаписать некоторые объекты (документы, планы счетов) получаю следующую ошибку:

{Обработка.КорректировкаДвижений.Форма.ОсновнаяФорма.Форма(601)}: Ошибка при вызове метода контекста (Записать)
                    НаборЗаписей.Записать(Истина);
по причине:
Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 10.0: Невозможно вставить повторяющуюся ключевую строку в объект "dbo._AccRgAT1891" с уникальным индексом "_AccRgA1891_ByPeriod_RTRRRRN".
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1
1 mzelensky
 
29.01.15
10:02
Что это за индекс ""_AccRgA1891_ByPeriod_RTRRRRN""

И как побороть проблему?
2 hawksib
 
29.01.15
10:04
первую, че в голову приходит, тии
3 mzelensky
 
29.01.15
10:05
(2) Мне это тоже приходит в голову, но это явно не в течении дня. Поэтому рассматриваю еще варианты, а вечером попробую ТИИ
4 shuhard
 
29.01.15
10:14
(0) валюту ты грохнул
и ТиИ тут поможет не на всякой платформе
5 mzelensky
 
29.01.15
10:20
(4) что значит "валюту ты грохнул" ? С валютой вроде все нормально
6 mzelensky
 
29.01.15
10:21
(4) И грохнул где? Сам элемент справочника "Валюты" или значение в каком-то реквизите объекта?
7 mzelensky
 
29.01.15
11:42
ап
8 SUA
 
29.01.15
11:57
ТИИ и только
можно реиндексацию скулем провести
9 Rie
 
29.01.15
12:00
(0) Посмотри, какому регистру соответствует эта таблица. Может, на какие мысли наведёт.
10 mzelensky
 
30.01.15
09:58
Сделал тестирование и исправление. В некоторых объектах ошибка ушла, но в некоторых так и осталась:

{Обработка.КорректировкаДвижений.Форма.ОсновнаяФорма.Форма(601)}: Ошибка при вызове метода контекста (Записать)
                    НаборЗаписей.Записать(Истина);
по причине:
Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 10.0: Невозможно вставить повторяющуюся ключевую строку в объект "dbo._AccRgAT1891" с уникальным индексом "_AccRgA1891_ByPeriod_RTRRRRN".
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1



Косяк в том ,что я даже удалить этот объект НЕ могу. Чего делать то?
11 mzelensky
 
30.01.15
10:09
Как хотя бы сам объект то грохнуть? Чтобы потом нормальны создать заново?
12 mzelensky
 
30.01.15
10:19
+ как посмотреть что это за объект:

._AccRgAT21628


???
13 Ёпрст
 
30.01.15
10:26
(12) ПолучитьСтруктуруХраненияБазыДанных
14 Ёпрст
 
30.01.15
10:27
ну и поделок на основе этого метода, как грязи.
15 Ёпрст
 
30.01.15
10:29
если че:

_AccumRg<n> – таблица движений регистра накопления.
_AccumRgT<n> – таблица итогов регистра накопления. Эта таблица создается в случае, если регистр накопления поддерживает остатки.
_AccumRgTn<n> – таблица оборотов регистра накопления. Эта таблица создается, если регистр поддерживает обороты.
_AccumRgOpt – таблица настроек хранения итогов регистров накопления. Эта таблица создается одна на все регистры накопления.
_AccumRgAgg<n> – таблица агрегатов регистра накопления.
_AccumRgAggOpt – таблица опций сети агрегатов.
_AccumRgSt<n> – таблица статистики регистра накопления.
_AccumRgBf<n> – таблица буфера новых оборотов регистра накопления.
_AccumRgDl<n> – таблица новых оборотов регистра накопления.
_AccumRgAggDims – таблица кодов измерений регистра накопления.
_AccumRgAggGrid – таблица сети агрегатов.
16 Ёпрст
 
30.01.15
10:31
тьфу блин, не то скопирял
17 Ёпрст
 
30.01.15
10:31
AccRg - это от регистра бухгалтерии
18 Ёпрст
 
30.01.15
10:34
v8: Хранение данных на уровне SQL Servera
вот еще почитай, мот у тебя тоже в типе субконто такая шляпа ?
19 mzelensky
 
30.01.15
10:46
(18) Да, скорее всего косяк именно в виде субконто. Частично вычистил, а с некоторыми вот такая ошибка и ничего сделать не могу.
20 mzelensky
 
30.01.15
10:48
Я вот думаю ,если это таблица итогов - может вырубить итоги. Удалить нафиг эти доки косячные, а потом опять включить итоги.Может проканает?!
21 mzelensky
 
30.01.15
11:14
...
22 Ёпрст
 
30.01.15
11:20
итоги можешь и тупо truncate table сделать и пересчитать потом
23 mzelensky
 
30.01.15
11:22
(22) а можно более подробно про "truncate table" для итогов? и обратная операция....ранее не пробовал так "баловаться". Накосяить не хочется
24 shuhard
 
30.01.15
11:34
(22)[truncate table]
ой не надо
25 Ёпрст
 
30.01.15
11:35
(24) :)
да всё надо, можно хоть все таблички итогов удалить ручонками или скриптом.
26 mzelensky
 
30.01.15
12:39
(24)(25) Это вы сейчас прикалываетесь или серьезно?
27 Ёпрст
 
30.01.15
12:44
(26) вполне серьёзно.
Главное, движуху регистров не грохни.
28 Ёпрст
 
30.01.15
12:44
а итоги, хоть все, потом пересчитаешь и привет
29 mzelensky
 
30.01.15
12:48
(28) Раз уж ты в теме вопроса. Подскажи плиз скрипт чтобы можно было  на скуле грохнуть индексы для таблицы

_AccRgAT1891


НУ а потом соответственнно их пересчитать
30 H A D G E H O G s
 
30.01.15
13:02
(29) Я могу подключиться и все исправить.
31 mzelensky
 
30.01.15
13:03
(29) Исправить что именно? Очистить индексы или устранить ошибку из (0)

+ на возмездной или безвозмездной основе?
32 Ёпрст
 
30.01.15
13:04
(30) шаман однако :)
33 mzelensky
 
30.01.15
13:10
(32) лишь бы не фокусник :)
34 H A D G E H O G s
 
30.01.15
13:13
(33) Добавь меня в аську

374-881-272
35 mzelensky
 
30.01.15
13:15
сейчас
А скайпа нет? проще в скайп
36 mzelensky
 
30.01.15
13:16
(35) Блин, аси нету на этом компе :(

давай в скайп!
37 H A D G E H O G s
 
30.01.15
13:17
(36) Вас, Максимов Зеленских, в этом скайпе дофига.
38 mzelensky
 
30.01.15
13:22
Я сейчас на корпоративном. Вот сюда:

prog1c001