|
Битые ссылки в таблице Изменения регистра накопления | ☑ | ||
---|---|---|---|---|
0
kdenis
09.09.21
✎
12:02
|
Доброго дня!
УТ 10.3, есть обмены по правилам с другими конфигурациями. При загрузке dt из файловой базы в PostgreSQL получил ошибку: "Попытка вставки неуникального значения в уникальный индекс:". Причину ошибки нашел. В таблице "РегистрНакопления.РасчетыСКонтрагентами.Изменения" есть одинаковые записи. Но записи эти с битыми ссылками. https://ibb.co/4jqgTGK Посоветуйте, как удалить эти записи так, чтобы не испортить обмен. Обмен актуальный. Читал про "УдалитьРегистрациюИзменений(<Узлы>, <Данные>)". Но нечего передавать в параметр "Данные". |
|||
1
DrShad
09.09.21
✎
12:17
|
объект метаданных передавай
|
|||
2
Галахад
гуру
09.09.21
✎
12:17
|
Если нужных для регистра РасчетыСКонтрагентами нет, то можно так: Метаданные.РегистрыНакопления.РасчетыСКонтрагентами
|
|||
3
Михаил Козлов
09.09.21
✎
12:19
|
(1)+ Или все изменения грохнуть. В УТ 10.3 вроде была смотрелка изменений в узле с возможностью удалить выборочно.
|
|||
4
youalex
09.09.21
✎
13:04
|
Значением данного параметра может быть объект метаданных, объект, представляющий данные, хранимые в базе данных, такой как документ, элемент справочника, счет бухгалтерского учета, менеджер записи константы, набор записей регистра и т. п.,
Набор с отборами по ключевым полям таблицы изменений по идее если сделать УдалитьРегистрациюИзменений(), а потом ЗарегистрироватьИзменения() тем же набором - останется одна запись |
|||
5
kdenis
09.09.21
✎
13:18
|
Пока проверяю "В УТ 10.3 вроде была смотрелка изменений в узле с возможностью удалить выборочно."
Очень долго открывает список изменений. Если не получится, буду экспериментировать с "УдалитьРегистрациюИзменений(<Узлы>, <Данные>)". Пока до конца не понимаю как она работает: - Если, как в (1) и (2), передать "Метаданные.РегистрыНакопления.РасчетыСКонтрагентами", видимо удаляются все зарегистрированные изменения. Как это повлияет на работу обмена? - (4) Записей в регистре нет, есть только в таблице изменений регистра. Ссылки битые, набор записей не передать. Если я правильно понял о чем Вы. |
|||
6
Многолетний Апельсин
09.09.21
✎
13:27
|
(5) Такой вариант не работает?
Запрос = новый Запрос("ВЫБРАТЬ | РасчетыСКлиентамиИзменения.Регистратор КАК Регистратор |ИЗ | РегистрНакопления.РасчетыСКлиентами.Изменения КАК РасчетыСКлиентамиИзменения |ГДЕ | РасчетыСКлиентамиИзменения.Регистратор.Дата ЕСТЬ NULL"); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл НЗ = РегистрыНакопления.РасчетыСКлиентами.СоздатьНаборЗаписей(); НЗ.Отбор.Регистратор.Установить(Выборка.Регистратор); ПланыОбмена.УдалитьРегистрациюИзменений(Узел,НЗ); КонецЦикла; |
|||
7
youalex
09.09.21
✎
13:27
|
(5) передаешь пустой набор, главное - отборы.
Ссылки на значения отборов у тебя же есть в таблице регистрации, и что что они битые, не пустые же) |
|||
8
youalex
09.09.21
✎
13:31
|
(7) То что они битые - это кстати нормально для регистрации, может означать, что Регистратор в Источнике удален, и наборы по нему нужно передать в Приемник (а так как записей нет - уйдут пустые наборы, но с отбором, и очистятся в Приемнике). А если ты сейчас здесь удалишь, есть риск что в Приемнике они останутся болтаться уже в таблице данных, с битыми ссылками, да
|
|||
9
kdenis
09.09.21
✎
13:35
|
(6) Сразу попробовал - пусто.
(7), (8) Идея понятна. Если с ручной чисткой не осилю, попробую так. Пока всем спасибо. |
|||
10
Serg_1960
09.09.21
✎
14:07
|
(0) Так называемые "битые" ссылки, сами по себе, не мешают ни индексированию, ни обмену, ни работе с записями регистра и регистрации изменений. Если это не РИБ обмен, то этих записей не должно быть.
|
|||
11
Ёпрст
09.09.21
✎
22:55
|
(6) в УдалитьРегистрациюИзменений нужно передать прочитанный набор
|
|||
12
Ёпрст
09.09.21
✎
22:58
|
+ 11
|
|||
13
kdenis
13.09.21
✎
09:52
|
Спасибо всем. Победил.
(6) Невнимательно прочитал сначала. В итоге так и сделал. Запросом получил дубли, потом УдалитьРегистрациюИзменений() и ЗарегистрироватьИзменения(). Передавал наборы с отбором по регистратору. |
|||
14
kdenis
13.09.21
✎
09:56
|
(3) Смотрелка есть, но пользоваться ей для анализа регистров неудобно: раскрывается список в котором 300 000 строк "Набор записей". Чтобы найти нужную запись, надо раскрывать каждую строку.
|
|||
15
TormozIT
гуру
13.09.21
✎
10:49
|
Мощная смотрелка и изменялка регистрации на узлах есть в ИР. А в старых конфах на обычных формах вообще грех - не использовать ИР.
http://devtool1c.ucoz.ru/index/redaktor_izmenenij_na_uzle/0-30 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |