Ошибка при обновлении: Записи регистра сведений стали неуникальными: Двоичные данные файлов

26.02.20

База данных - Администрирование СУБД

Способ обойти ошибку обновления Записи регистра сведений стали неуникальными: ДвоичныеДанныеФайлов.
Проблема возникла при обновлении

Бухгалтерия предприятия КОРП с версии 3.0.75.58  на версию 3.0.75.93 и выше

Ошибка при обновлении: "Записи регистра сведений стали неуникальными: ДвоичныеДанныеФайлов"
 
При этом в окне сравнений изменение по этому регистру не показаны, а при реорганизации объект изменен.
 

РЕШЕНИЕ:

Для регистра сведений ДвоичныеДанныеФайлов установить режим Редактируется с сохранением поддержки
 
Добавить Ресурс (добавила Ресурс1, строка)
 
После этого при обновлении в окне сравнения стал виден этот регистр. При этом флаг объединения на нем НЕ стоял.
 
При реорганизации информации ошибка не появилась.
 
Пока искала решение, обратилась к разработчику. Получила ответ :

1С Линия консультации 25 февраля 2020, 17:04

"В режиме предприятия через "все функции" проверьте записи в этом регистре и удалите неуникальные."
 
Воспользовалась обработкой из публикации //infostart.ru/public/538465/ но обработка дубли не показала.
Вручную отловить дубли также не получилось, т.к.
  1. этот регистр «слепой» — непонятно действительно ли данные содержат дубли и что такое в данном случае дубли
  1. в этом регистре значительное количество записей — более 7000

Кроме того, нет возможности пометить на удаление или удалить такие записи непосредственно из регистра 

Для прояснения ситуации направила разработчику запрос:

Что программа понимает как дубли? Если сочетание Тип владельца + Наименование, показанное в поле Владелец данных, то почему позволяется записывать такие данные?

(ответа пока не получила)

Записи регистра сведений стали неуникальными ДвоичныеДанныеФайлов

См. также

Создаем сценарии обслуживания SQL в Центре Контроля Качества 1С (Центр Администрирования)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Данная статья научит вас, как создавать скрипты обслуживания MS SQL для Центра Контроля Качества (ЦКК) или Центра Администрирования (ЦА).

20.03.2024    490    Silenser    0    

3

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    4423    dsdred    53    

69

Инструкция по установке Postgres для OLTP приложений и 1С. Часть 1. Базовая конфигурация

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

В Postgres достаточно подробная документация, и, видимо, поэтому при инсталляции Postgres для 1С большинство параметров приходится выставлять самим. Параметров в Postgres много, а составить эффективную комбинацию не так просто. Все упрощается, если рассмотреть профиль нагрузки, например, 1С это прежде всего профиль OLTP нагрузки – так устроены его метаданные (объекты). Если сосредоточиться на оптимизации профиля OLTP, понимание Postgres сразу упростится.

15.02.2024    2328    1CUnlimited    14    

27

Очистка устаревших патчей в конфигурациях на базе БСП

Администрирование СУБД Бесплатно (free)

В этой короткой заметке хочется рассказать о быстром и удобном способе удаления расширений-патчей как в типовых конфигурациях, так и любых других, использующих БСП.

01.02.2024    1418    Sergey1CSpb    20    

15

Как запустить сервер лицензирования 1С на примере облачной платформы

Администрирование СУБД Россия Бесплатно (free)

Чтобы минимизировать подобные риски, связанные с нештатной работой программных клиентских и серверных лицензий, необходимо централизовать их хранение и выдачу. Это можно сделать, разместив лицензии на отдельной машине — сервере лицензирования. В статье рассказываем, как это сделать.

25.01.2024    1642    doctor_it    15    

17

Обслуживание индексов MS SQL Server: как, когда и, главное, зачем?

Администрирование СУБД Бесплатно (free)

Казалось бы, базовое знание: «индексы надо обслуживать, чтобы запросы выполнялись быстро». Но обслуживание индексов выполняется долго и может мешать работе пользователей. Кроме того, в последнее время популярны разговоры о том, что индексы можно вообще не обслуживать – насколько это оправданно? Рассмотрим: на что влияет обслуживание индексов, когда надо и когда не надо его выполнять, и если надо – как это сделать так, чтобы никому не помешать?

16.01.2024    5774    Филин    13    

45

Резервное копирование журнала транзакций, наконец-то!

Архивирование (backup) Администрирование СУБД Россия Бесплатно (free)

Постараюсь объяснить, зачем нужно резервное копирование именно журнала транзакций, а не только базы данных, и почему я словно сбросил груз, настроив его - как, покажу, естественно. Кстати, будут скрипты T-SQL (с подробными комментариями) - отличный способ сделать администрирование базы более уютным.

04.12.2023    5857    n_mezentsev    15    

24

Дефрагментация индексов MS SQL для платформы 8.3.22

Инструменты администратора БД Администрирование СУБД Абонемент ($m)

Начиная с 8.3.22 фирма "1С" убрала блокировки БД на уровне страниц; если БД расположена в MS SQL, то стала возникать проблема при дефрагментации индексов с использованием команды ALTER INDEX REORGANIZE. Предлагаю модификацию известного скрипта, который позволяет обойти эту проблему.

1 стартмани

15.11.2023    2232    17    baturo    6    

13
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. RocKeR_13 1317 26.02.20 17:05 Сейчас в теме
Что программа понимает как дубли?

В случае регистров сведений:

Уникальность записей

Система обеспечивает контроль уникальности записей, хранящихся в регистре сведений. Таким образом, в регистре сведений не может находиться двух одинаковых записей. Одинаковыми считаются записи, у которых совпадает ключ записи. Ключ записи формируется системой автоматически, на основании значений, содержащихся в полях записи, и зависит от вида регистра сведений.

В общем случае в формировании ключа записи будут участвовать значения регистратора, периода и значения измерений. Таким образом, например, в непериодическом регистре сведений Цены товаров с независимым режимом записи не может существовать двух записей о розничной цене конфет ассорти. Точно так же, как в периодическом регистре сведений Цены товаров, подчиненном регистратору, не может существовать двух записей о розничной цене конфет ассорти, внесенных одной и той же датой, одним и тем же документом Изменение цен товаров.


Источник: https://v8.1c.ru/platforma/registr-svedeniy/

Для файловой базы одна из причин, например - это "битые" записи во внутренней таблице. Буквально вчера столкнулся с такой же ситуацией при обновлении 1С:Розница в отношении РС "ФискальныеОперации". При тестировании на логическую целостность платформа выдала сообщение, что файл базы данных поврежден. В результате тестирования утилитой chdbfl в регистре было "потеряно" 4 записи, после чего обновление прошло без проблем.
2. dubovenko_m 63 26.02.20 17:26 Сейчас в теме
Всем добрый день. в моем случае тестирование и исправление не выявляло ошибок. Поиск дублей не давал результатов. Обращаю внимание, что публикация про регистр сведений ДвоичныеДанныеФайлов. а он весьма специфичен!
3. kuzyara 1900 27.02.20 05:35 Сейчас в теме
Частая ошибка для файловой базы...
4. Elvina 5 02.04.20 09:56 Сейчас в теме
(3) не подскажете как ещё можно исправить ошибку? Клиент хочет, чтобы база была "на замочке"
5. dubovenko_m 63 02.04.20 10:26 Сейчас в теме
(4) Добрый день. Если ошибка по регистру Двоичные данные файлов, то, к сожалению, я не нашла вариантов, кроме изменения конфигурации. С другими регистрами легче. Там можно найти дубли и сделать их НЕ дублями. Может помочь обработка из публикации https://infostart.ru/public/538465/.
6. Elvina 5 02.04.20 13:23 Сейчас в теме
(5) именно с этим регистром проблема, остальные тоже всегда без проблем могла поправить, а тут прям никак(((
7. dubovenko_m 63 02.04.20 14:18 Сейчас в теме
(6) Тогда увы..
могу, правда, процитировать ответ разработчиков - см пункт 2:

1С Линия консультации <v8@1c.ru> Тема: Записи регистра сведений стали неуникальными: ДвоичныеДанныеФайлов (#HL-127544)
26 февраля 2020, 15:21

Добрый день,

1. Воспользуйтесь поиском и удалением дублей в меню Администрирование - Обслуживание
или

2.Попробуйте выполнить Архивация электронных документов 1С-Отчетности и хранение в томах
как описано на ИТС
https://its.1c.ru/db/elreps#content:59:hdoc
и после этого удалить все записи из этого регистра.

Предварительно сделайте резервную копию.

С уважением,
отдел тех. поддержки фирмы "1С"
Тел. (495) 956-11-81 (линия ИТС)
(495) 688-10-01 (базовые версии)
RomanKod; m1_1976; Elvina; +3 Ответить
8. Elvina 5 03.04.20 06:32 Сейчас в теме
(7) Мария, огромное вас спасибо, всё получилось!!!
Перенесла файлы на диск (и клиенту надеюсь хорошо - значительно меньше теперь база весит и регистр стал пустым), после этого выполнила сжатие таблиц ИБ и ошибка исчезла.
RomanKod; +1 Ответить
9. dubovenko_m 63 03.04.20 10:00 Сейчас в теме
(8) Отлично! Значит это действительно работает.
20. user708045_vantaqa 20.09.22 12:30 Сейчас в теме
(5) Добрый день. Подскажите пожалуйста, а что конкретно вы изменяли в конфигурации?
10. IML_1C 22.06.20 12:58 Сейчас в теме
Добрый день!
Натолкнулся на такую же ошибку, неделю назад, при обновлении (правда совсем "седой" базы релиза 64). Не помог ни один вариант, ни с форумов, ни с вашей статьи :)
Решение получилось "не научным "тыком"" - запустил обновление с платформы 2018 года (8.12....) - обновление прошло абсолютно в штатном режиме (База вскрытая)
Вдруг кому-то тоже поможет)
11. Dmi9000 03.07.20 16:53 Сейчас в теме
Добрый день!
Спасибо за идею снять флаг объединения с этого объекта, это действительно помогло. До этого при возникновении такой ошибки я просто очищал весь регистр, что в принципе не совсем красиво.
Но вот что я при этом увидел в подробностях объединения.
Оно фактически Измерение Файл удаляет и одновременно создает новое измерение с тем же именем. Тем самым это измерение у всех записей регистра становится пустое, поэтому после объединения они и оказываются не уникальными. Поэтому поиск дублирующих записей ДО обновления в этой ситуации не имеет смысла.
Почему оно так делает - непонятно, могу только уточнить, что подобная ошибка у меня возникает только при обновлениях очень древних баз, некогда сконвертированных еще из БП 2.0
Судя по всему теперь флаг объединения с этого регистра придется снимать при каждом очередном обновлении.
Прикрепленные файлы:
doronin70; d4rkmesa; +2 Ответить
23. Gang031 23.12.22 16:25 Сейчас в теме
(11) оно ж вроде не удаляет, а просто порядок изменился?
12. user1135816 4 07.09.20 12:10 Сейчас в теме
Мне помог запрос к регистру с выяснением дублирующих записей, нашел дубль, удалил его. все стало хорошо
13. val_ka 25.03.21 09:56 Сейчас в теме
У меня возникала ошибка из-за определяемых типов
IROKEZ91; +1 Ответить
14. softmaker 39 30.04.21 16:00 Сейчас в теме
Чтобы эта проблема не повторялось для двоичных данных нужно перед тем, как изменять ОпределяемыйТип нужно убрать данные этого типа из регистра сведений ДвоичныеДанные, предварительно переместив их в другой регистр.
&НаСервереБезКонтекста
Процедура УстановитьДвоичныеДанныеНаСервере(Файл)
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ДвоичныеДанныеФайлов.Файл КАК Файл,
	|	ДвоичныеДанныеФайлов.ДвоичныеДанныеФайла КАК ДвоичныеДанныеФайла
	|ИЗ
	|	РегистрСведений.ДвоичныеДанныеФайлов КАК ДвоичныеДанныеФайлов
	|ГДЕ
	|	ДвоичныеДанныеФайлов.Файл = &Файл";
	
	Запрос.УстановитьПараметр("Файл", Файл);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Выборка = РезультатЗапроса.Выбрать();
	
	Пока Выборка.Следующий() Цикл
		
		МенеджерЗаписи = РегистрыСведений.Заказ_ДвоичныеДанныеФайлов.СоздатьМенеджерЗаписи();
	
		МенеджерЗаписи.Файл = Файл;
		МенеджерЗаписи.ДвоичныеДанныеФайла = Выборка.ДвоичныеДанныеФайла;
		
		МенеджерЗаписи.Записать();
		
	КонецЦикла;
КонецПроцедуры
Показать

Где Файл это элемент справочника удаляемого типа.
Потом удалить:
&НаСервереБезКонтекста
Процедура УдалитьДвоичныеДанныеНаСервере()
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ 
	|	ДвоичныеДанныеФайлов.Файл КАК Файл,
	|	ДвоичныеДанныеФайлов.ДвоичныеДанныеФайла КАК ДвоичныеДанныеФайла
	|ИЗ
	|	РегистрСведений.ДвоичныеДанныеФайлов КАК ДвоичныеДанныеФайлов
	|ГДЕ
	|	ТИПЗНАЧЕНИЯ(ДвоичныеДанныеФайлов.Файл) = ТИП(Справочник.бит_мат_ЗаказНаТехникуПрисоединенныеФайлы)";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Выборка = РезультатЗапроса.Выбрать();
	
	Пока Выборка.Следующий() Цикл
		НаборЗаписей = РегистрыСведений.ДвоичныеДанныеФайлов.СоздатьНаборЗаписей();
    	НаборЗаписей.Отбор.Файл.Установить(Выборка.Файл);
    	НаборЗаписей.Записать(); 		
	КонецЦикла;
КонецПроцедуры
Показать
15. maipochta 23.05.21 12:17 Сейчас в теме
Натолкнулся при обновлении УТ до версии УТ 11.4.13.47. Проблема была с регистрами "двоичные данные файлов" и "файлы в рабочем каталоге". Решил по другому. Сделал выгрузку этих регистров в файл с помощью "Универсальной выгрузки загрузки в XML" из комплекта обработок ИТС. Очистил регистры, завершил обновление, загрузил данные обратно с помощью той же обработки.
28. user1928830 12.06.23 15:53 Сейчас в теме
16. Remdiz 14.10.21 12:59 Сейчас в теме
Оставлю это здесь, может кому поможет. Скорее всего ошибка не в дублях, а в том, что вы добавляли в определяемые типы ПрисоединенныйФайлОбъект и др. свои объекты, проверьте
IROKEZ91; Dei4ik; Papilion; mushdaj; kondratevsergey1985; uuuhha; bugtester; AlbertZ; Wadus161; +9 Ответить
17. ZaOS 23.12.21 20:31 Сейчас в теме
(16) Спасибо. Все именно так и вышло.
19. bugtester 590 26.04.22 19:43 Сейчас в теме
(16)
Хорошая мысль. Возможно при обновлении в определяемом типе ПрисоединенныйФайл или ВладелецПрисоединенныхФайлов затираются добавленные самостоятельно типы (если делали присоединяемые файлы к справочнику или документу).
Так как регистр сведений ДвоичныеДанныеФайлов (или НаличиеФайлов) имеет измерение Файл (или ОбъектСФайлами) измененного определяемого типа, то содержимое некоторых измерений затрется (например, тех самых самостоятельно добавленных владельцев присоединенных файлов). Соответственно будут образовываться дубли с одинаковыми "пустыми" измерениями в результате обновления, которых не было до.
ekaterinaeon; anchovy; slige; +3 Ответить
22. slige 40 12.10.22 16:45 Сейчас в теме
(19)
Возможно при обновлении в определяемом типе ПрисоединенныйФайл или ВладелецПрисоединенныхФайлов затираются добавленные самостоятельно типы (если


Тоже столкнулись с тем, что при обновлении добавленные типы "слетели". Благодаря вашему комменту победили
31. Dei4ik 18.10.23 14:27 Сейчас в теме
(22) Добрый! а подскажите пожалуйста каким именно образом победили? тоже столкнулся с такой ситуацией
32. Dei4ik 20.10.23 15:08 Сейчас в теме
(31) Отвечу сам себе)
в новом релизе был добавлен еще один определяемый тип в состав которого требовалось включить самостоятельно добавленные типа
18. rboy 03.03.22 20:40 Сейчас в теме
(15) Я бы сказал самый лучший совет.
21. dubovenko_m 63 20.09.22 15:46 Сейчас в теме
(20) user708045_vantaqa: (5) Добрый день. Подскажите пожалуйста, а что конкретно вы изменяли в конфигурации?
РЕШЕНИЕ (подробно - см публикацию):
Для регистра сведений ДвоичныеДанныеФайлов установить режим Редактируется с сохранением поддержки
Добавить Ресурс (добавила Ресурс1, строка)
24. doronin70 25.12.22 01:18 Сейчас в теме
У меня также возникла проблема с этим регистром сведений при обновлении древней конфигурации УТ. Я решил проблему стандартными средствами УТ.
1. В настройках УТ изменил способ хранения файлом на тома диска. Перенес все файлы в том на диске стандартной процедурой УТ.
2. Очистил этот регистр сведений.
3. Обновил конфигурацию.
4. Перенес все файлы из томов обратно в информационную базу и вернул настройки УТ обратно.
user598655_ilia-bers; +1 Ответить
25. mikl79 118 10.01.23 20:49 Сейчас в теме
подобная ошибка возникла при обновлении Бухгалтерии предприятия на 3.0.127.49
запросом не удалось найти дубли
обработкой //infostart.ru/public/538465/ тоже не нашлось дублей
добавлял измерение, затем ресурс, тоже не помогло
пришлось очистить регистр, обновить, затем восстановить записи
26. user970589 10 02.04.23 09:00 Сейчас в теме
Была похожая проблема.
Обновлял базу. Вроде должна быть типовой, но сразу пошло в сравнение и показало отличие объектов, причем там справки, еще что-то несущественное и если посмотреть в сравнении - то в реальности не отличается. ну и .. с ним думаю, ставлю на поддержку, а мне вот такой же привет про регистр двоичных данных и про записи с измерениями одинаковыми. Ну и понятное дело - не ставит на поддержку.
в общем помогло вот что. включил хранение томов снаружи базы. выгрузил все туда, и осталось две записи. их удалил с помощью ИР, после чего загрузил данные обратно и отключил хранение снаружи, вот после этого прошло нормально. а никакое ТИИ и лечение не давали ничего
29. tormozit 7136 08.07.23 17:23 Сейчас в теме
(26) В ИР есть намного более удобный инструмент для решения этой проблемы - "Подготовка к изменению структуры БД"
30. user970589 10 09.07.23 21:21 Сейчас в теме
(29)и она правит кривой регистр? у меня напомню две записи были кривые
27. user1928830 12.06.23 15:52 Сейчас в теме
грибаный одинес
muskul; user1815318; +2 Ответить
Оставьте свое сообщение