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

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

Содержание

  • Причины возникновения ошибки
  • Исправление ошибки «Записи регистра сведений стали неуникальными»
    • Последовательное обновление конфигурации без «пропусков»
    • Настройка автоматического обновления
    • Сравнение конфигураций

Причины возникновения ошибки

Связано это может быть с несколькими причинами:

  • не последовательным обновлением конфигурации релиз за релизом, а «перепрыгиванием» сразу через несколько релизов;
  • конфликтом введенных в базу данных самим пользователем и добавленных в конфигурацию разработчиками предопределенных значений;
  • ошибками переноса баз данных в новые конфигурации;
  • доработкой конфигурации самим пользователем.

Какой бы ни была причина появления этой ошибки, она говорит об одном: в регистре сведений есть запись с ключевыми параметрами, для которой имеется несколько значений, и программа 1С не знает: какая из этих записей правильная.

Ключевые параметры регистра сведений называются Измерениями, а значения по измерениям указываются в Ресурсах. PDF По правилам записи в регистры сведений ключевые параметры определяют значение ОДНОЗНАЧНО.

При работе в пользовательском режиме при попытке записи в регистр разных данных с одинаковыми ключевыми параметрами выдается ошибка, не позволяющая провести документ. PDF Пользователь при этом сразу видит ошибку, понимает в чем дело и исправляет ее.

В режиме обновления конфигурации ситуация более сложная, хотя отслеживание таких ситуаций регулируется в большинстве случаев в 1С автоматически. Разработчики вносят в программу изменения таким образом, что программа сама, по заложенному алгоритму и анализу данных, определяет какая из записей неактуальна и удаляет ее, продолжив обновление.

Но бывают случаи, когда определить самостоятельно какую из записей оставить, а какую удалить, программа 1С не может и тогда пользователь уже должен сам исправить ситуацию. Обычно это происходит при удалении каких-то ключевых параметров из регистра сведений в новом обновлении и наиболее часто проявляется у любителей «обновляться редко, но сразу на последний релиз».

При возникновении ошибки будет выдано предупреждение о возникшей ситуации с регистром, которое не позволит продолжить обновление, пока не будет исправлена ошибка.

В новой версии конфигурации был изменен регистр Цены номенклатуры. PDF При обновлении конфигурации было выдано предупреждение о возникших неуникальных записях по этому регистру. PDF

Исправление ошибки «Записи регистра сведений стали неуникальными»

Последовательное обновление конфигурации без «пропусков»

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

При возникновении ошибки обновите текущую конфигурацию, например, Бухгалтерия предприятия 3.0.67.54 не сразу на релиз 3.0.67.72, а последовательно на:

  • 0.67.63;
  • 0.67.67;
  • 0.67.70;
  • 0.67.72.

Если это не помогло, используйте следующие рекомендации.

При последовательном обновлении запускаются специализированные обработчики, которые могут исключить данную ошибку автоматически.

Настройка автоматического обновления

Настройте автоматическое обновление 1С: раздел Администрирование — Настройки программы — Интернет-поддержка и сервисы — Обновление версии программы.

При автоматическом обновлении подобная ошибка, как правило, не появляется, так как все изменения разработчиков в «промежуточных» релизах, которые может пропустить пользователь при самостоятельном обновлении, учитываются автоматически.

Для автоматического обновления программы 1С должна быть настроена Интернет-поддержка.

Сравнение конфигураций

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

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

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

Пошаговая инструкция сравнения основной конфигурации и конфигурации базы данных.

Шаг 1. Открытие Конфигуратора.

Войдите в Конфигуратор информационной базы.

Откройте конфигурацию по кнопке Конфигуратор — Открыть конфигурацию. В правом окне откроется список всех объектов 1С.

Выберите команду Сравнить конфигурации.

Шаг 2. Настройка сравнения конфигураций.

Установите настройки как показано на рисунке.

Шаг 3. Запуск сравнения конфигураций.

Нажмите на кнопку ОК. Программа 1С выдаст окно сравнения конфигураций, в котором нужно перейти на регистр сведения Цены номенклатуры и раскрыть различия, нажав на «+» справа от объекта.

Шаг 4. Исправление ошибки.

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

Войдите в базу данных и откройте регистр Цены номенклатуры: кнопка Главное меню — Все функции — Регистры сведений — Цены номенклатуры.

Как видно из рисунка, сейчас в регистре сведений Цены номенклатуры для Комплекта постельного белья две записи для типов цен:

  • Продажная — 3 670 руб.;
  • Оптовая — 2 090 руб.

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

Удалите одну из записей для Комплекта постельного белья и выполните обновление сначала. На этот раз никаких ошибок программа 1С не выдаст!

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

См. также:

  • Ошибка печати в 1С: как исправить
  • Компонента 1С: Печать штрихкодов не установлена на данном компьютере
  • Лицензия не обнаружена. Не обнаружен ключ защиты программы 1С: как исправить
  • Не обнаружена установленная версия 1С Предприятия
  • Значение поля номер не уникально 1С 8.3: как исправить

Если Вы еще не являетесь подписчиком:

Активировать демо-доступ бесплатно →

или

Оформить подписку на Рубрикатор →

После оформления подписки вам станут доступны все материалы по 1С Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.

Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Записи регистра сведений стали неуникальными при обновлении 1С

Главная страница » Записи регистра сведений стали неуникальными при обновлении 1С

При обновлении конфигурации 1С может появиться предупреждение о том, что записи каких-то регистров сведений стали неуникальными.

Причины возникновения ошибки

Связано это может быть с несколькими причинами:

  • не последовательным обновлением конфигурации релиз за релизом, а «перепрыгиванием» сразу через несколько релизов;
  • конфликтом введенных в базу данных самим пользователем и добавленных в конфигурацию разработчиками предопределенных значений;
  • ошибками переноса баз данных в новые конфигурации;
  • доработкой конфигурации самим пользователем.

Какой бы ни была причина появления этой ошибки, она говорит об одном: в регистре сведений есть запись с ключевыми параметрами, для которой имеется несколько значений, и программа 1С не знает: какая из этих записей правильная.

При работе в пользовательском режиме при попытке записи в регистр разных данных с одинаковыми ключевыми параметрами выдается ошибка, не позволяющая провести документ. Пользователь при этом сразу видит ошибку, понимает в чем дело и исправляет ее.

В режиме обновления конфигурации ситуация более сложная, хотя отслеживание таких ситуаций регулируется в большинстве случаев в 1С автоматически. Разработчики вносят в программу изменения таким образом, что программа сама, по заложенному алгоритму и анализу данных, определяет какая из записей неактуальна и удаляет ее, продолжив обновление.

Но бывают случаи, когда определить самостоятельно какую из записей оставить, а какую удалить, программа 1С не может и тогда пользователь уже должен сам исправить ситуацию. Обычно это происходит при удалении каких-то ключевых параметров из регистра сведений в новом обновлении и наиболее часто проявляется у любителей «обновляться редко, но сразу на последний релиз».

При возникновении ошибки будет выдано предупреждение о возникшей ситуации с регистром, которое не позволит продолжить обновление, пока не будет исправлена ошибка.

Исправление ошибки «Записи регистра сведений стали неуникальными»

Последовательное обновление конфигурации без «пропусков»

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

При возникновении ошибки обновите текущую конфигурацию, например, Бухгалтерия предприятия 3.0.67.54 не сразу на релиз 3.0.67.72, а последовательно на:

  • 0.67.63;
  • 0.67.67;
  • 0.67.70;
  • 0.67.72.

Если это не помогло, используйте следующие рекомендации.

Настройка автоматического обновления

Настройте автоматическое обновление 1С: раздел Администрирование — Настройки программы — Интернет-поддержка и сервисы — Обновление версии программы.

При автоматическом обновлении подобная ошибка, как правило, не появляется, так как все изменения разработчиков в «промежуточных» релизах, которые может пропустить пользователь при самостоятельном обновлении, учитываются автоматически.

Сравнение конфигураций

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

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

Пошаговая инструкция сравнения основной конфигурации и конфигурации базы данных.

Шаг 1. Открытие Конфигуратора.

Войдите в Конфигуратор информационной базы.

Откройте конфигурацию по кнопке Конфигуратор — Открыть конфигурацию. В правом окне откроется список всех объектов 1С.

Выберите команду Сравнить конфигурации.

Шаг 2. Настройка сравнения конфигураций.

Установите настройки как показано на рисунке.

Шаг 3. Запуск сравнения конфигураций.

Нажмите на кнопку ОК. Программа 1С выдаст окно сравнения конфигураций, в котором нужно перейти на регистр сведения Цены номенклатуры и раскрыть различия, нажав на «+» справа от объекта.

Шаг 4. Исправление ошибки.

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

Войдите в базу данных и откройте регистр Цены номенклатуры: кнопка Главное меню — Все функции — Регистры сведений — Цены номенклатуры.

Как видно из рисунка, сейчас в регистре сведений Цены номенклатуры для Комплекта постельного белья две записи для типов цен:

  • Продажная — 3 670 руб.;
  • Оптовая — 2 090 руб.

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

 

Удалите одну из записей для Комплекта постельного белья и выполните обновление сначала. На этот раз никаких ошибок программа 1С не выдаст!

Обслуживание

Заказать консультацию

По этой или иной ошибке Вы можете обратиться к нашим специалистам, мы Вам поможем решить Вашу проблему.

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

Я
   Масянька

21.05.19 — 12:28

День добрый!

После накатки обновления в рабочую базу — вот это вылезло.

На копии — все норм.

Отличие копии от рабочей — нет РИБ и нет присоединенных файлов в дописанном блоке.

Дописки — не затрагивают стандартные док-ты и справочники.

Спасибо.

   sqr4

1 — 21.05.19 — 12:31

Изменилась структура РС и теперь по набору измерений там нет уникальности, сравнивайте структуру и по новой структуре ищите дубли в РС и удаляйте

   Масянька

2 — 21.05.19 — 12:33

(1) Структура идентична: файл, двоичные данные.

Это первое, что проверила.

   sqr4

3 — 21.05.19 — 12:35

Попробуйте точку останова по ошибке поставить, может в процессе обновления срабатывает какой то механизм.

На край, выгрузить регистр, очистить, обновить, загрузить

   Масянька

4 — 21.05.19 — 15:33

Бред полный происходит…

Очистила регистр полностью…

Теперь регистр — файлы…

Ни у кого ничего подобного не было?

   Йохохо

5 — 21.05.19 — 15:35

(4) выбрось уже семерку

   1Сергей

6 — 21.05.19 — 15:36

(5) РС в семерке? :)

   sqr4

7 — 21.05.19 — 15:40

(4) может тестирования всякие запустить

   Йохохо

8 — 21.05.19 — 15:42

(6) у Масяньки есть семерка!

   Масянька

9 — 21.05.19 — 15:43

(5) (8) В теме «8» указана.

обновляю на 3.0.70.50.

(7) После ТиИ тоже самое. Уже делала…

   hhhh

10 — 21.05.19 — 15:44

какая конфа и платформа?

   Масянька

11 — 21.05.19 — 15:45

(10) Бухгалтерия предприятия, редакция 3.0 (3.0.69.35)

1С:Предприятие 8.3 (8.3.13.1690)

   sqr4

12 — 21.05.19 — 15:45

да с большей вероятностью, что то не так с дописанным блоком. как раз таки с присоединенными файлами, чистите регистры, до тех пор пока эпопея не закончится.

   Йохохо

13 — 21.05.19 — 15:46

(11) и платформа не обновлялась в процессе?

   1Сергей

14 — 21.05.19 — 15:47

Не перескакивал ли через релизы?

   Масянька

15 — 21.05.19 — 15:48

(13) Сейчас — нет.

(14) Предыдущий релиз — 3.0.69.35

   runoff_runoff

16 — 21.05.19 — 15:54

(0) сколько всего записей в регистре?..

   runoff_runoff

17 — 21.05.19 — 15:54

(0) разные идентификаторы измерений..

   Масянька

18 — 21.05.19 — 16:02

(16) Под сотню где-то.

(17) Не могу сказать. Я прошлась по дописанному блоку (именно, по присоединенным файлам) — открывает, ошибок не выдает. Для одного док-та — несколько файлов.

   Масянька

19 — 21.05.19 — 16:26

+ (18) При чем, если очистить совсем регистр (полностью, абсолютно) — обновить все равно не дает. Ругается на другой регистр (опять с файлами).

   runoff_runoff

20 — 21.05.19 — 16:40

(19) сначала сравните основную конфигурацию с полной конфигурацией поставщика из файла.. с отключенным флажком «Устанавливать соответствие по именам»..

если обновляете еще со времен 2.0.. то угарите по количеству изменений ;-)

   runoff_runoff

21 — 21.05.19 — 17:09

(19) решение трудоемкое..

1. нужно переименовать все «дубли» реквизитов на УдалитьХХХХ..

2. потом ОБЪЕДИНИТЬ с полной конфой поставщика.. ХХХХ будут временно жить вместе с УдалитьХХХХ..

3. потом написать обработку, которая переносит УдалитьХХХХ -> ХХХХ..

4. загрузить полную конфу поставщика.. УдалитьХХХХ удалятся.. останутся заполненные родные ХХХХ..

   Масянька

22 — 21.05.19 — 17:17

(21) Какие дубли реквизитов?

В регистре нет дублей. Нету.

   runoff_runoff

23 — 21.05.19 — 17:31

(22) вы уже сравнили конфигурации по идентификаторам?..

основную с файлом.. поставщика с файлом..

у меня была та же проблема.. но к счастью файлов было всего 5 штук.. удалили их и всё срослось..

   Масянька

24 — 21.05.19 — 17:37

(23) Та же проблема?

   runoff_runoff

25 — 21.05.19 — 19:44

(24) если нет записей в регистре сведений, то и уникальность никак не может нарушится.. по идее..

   toypaul

26 — 10.06.19 — 15:29

Такая же проблема уже на второй базе. В работу дали 2 база, которые давно никто не обновлял. Их хранилища обновляем. База обновляется 2.5 — 3ч а то и больше и потом выскакивает окошко с дублем в регистре. И ладно бы сразу весь список регистров выдало — так выдает каждый раз новый. Вот ведь собака (мягко говоря). Ладно на одной базе удалось определить причину и почистить регистры. На второй базе не помогает…

  

hhhh

27 — 10.06.19 — 15:36

(25) может другой регистр

Ошибка «Записи регистра сведений стали неуникальными»

16.08.2017

При обновлении конфигурации периодически может возникать ошибка «Записи регистра сведений стали неуникальными» или «Имеются записи с одинаковыми измерениями».
Что она означает и как ее исправить.

При обновлении конфигурации периодически может возникать ошибка «Записи регистра сведений стали неуникальными» или «Имеются записи с одинаковыми измерениями«
Записи регистра сведений стали неуникальными, Имеются записи с одинаковыми измерениями
Эта ошибка означает, что при обновлении изменился состав измерений регистра сведений.
Одним из базовых принципов работы регистра сведений является требование, что каждому набору значений измерений регистра сведений соответсвует один и только один набор значений реквизитов.
Допустим, в нашей конфигурации есть регистр ответственных лиц по складам в разрезе складов и помещений.
В очередном релизе разработчик решает, что такая детализация ответственности избыточна и оставляет только возможность указания ответственного по складу.

Однако у пользователя в этом регисте указано, что для «Главного склада» за помещение «Продукты» отвечает Иванов, а за помещение «Холодильники» — Петров.
При обновлении информационной базы платформа должна оставить только одну запись с ответственным. Но она не может решить за пользователя, кого поставить ответственным за «Главный склад» вцелом (Иванова или Петрова).
Поэтому выдается сообщение об ошибке.
В зависимости от конкретной ситуации, сообщение может звучать как «Записи регистра сведений стали неуникальными» либо «Имеются записи с одинаковыми измерениями«.
Смысл сообщения одинаков.
Это сообщение означает, что в новой структуре регистров образовалось несколько записей с одним набором измерений и их нужно свернуть в одну. 


Для решения проблемы удаляем одну из записей, чтобы 1С однозначно знала, что за «Главный склад» отвечает Иванов. В типовых конфигурациях в большинстве случаев эта проблема решается разработчиком программно. Т.е. обновление конфигурации само при необходимости сворачивает записи регистра.
Однако в некоторых случаях (например, если выполняется обновление с пропуском части релизов, или конфигурация доработана) данные могут не свернуться и их нужно свернуть самостоятельно.
Для того, чтобы определить, что именно изменилось, выполняем режим «Конфигурация» — «Сравнить конфигурации». И сравниваем основную конфигурацию с конфигурацией базы данных. При таком сравнении мы однозначно можем определить, какие именно поля удалены или изменились.
сравнение конфигураций
После этого консолью запросов находим неуникальные записи и удаляем их.
Если записей немного, то удалить дубли можно и вручную.
Если много, то проще это сделать программно.
Предлагаю простую обработку, решающую данную задачу.

Инструкция по свертке неуникальных записей:

1. Открыть обработку.
2. Выбрать регистр сведений, в котором появились неуникальные записи.
3. Отметить измерения которые будут удалены при обновлении.
4. Нажать «Свернуть дубли».

Обработка найдет дублирующиеся строки и свернет их в одну строку.
После этого обновление конфигурации пройдет корректно.

Также можно просто проверить наличие дублей без изменения данных

Содержание:

1.       Типы регистров сведений

2.       Неуникальные записи регистра сведений  

1.      Типы регистров сведений

Начнем с того, что регистр сведений –  таблица в базе данных. Для поиска данных в таблице используются ключи. Ключи представляют собой уникальные значения во всей таблице. Для регистра сведений это так же справедливо. Более того, для регистра сведений ключом записи служит набор измерений (если регистр сведений непериодический), набор измерений и период (если периодический) и, наконец, набор измерений, период и регистратор (если регистр сведений подчинен регистратору). Таким образом, чтобы выполнялось условие про уникальность ключа регистра сведений, необходимо обеспечить уникальность совокупности значений набора указанных свойств регистра.   

2.      Неуникальные записи регистра сведений

Программные решения живут, т.е. постоянно развиваются посредством доработки, исправления, рефакторинга и т.д. В процессе разработки возникает необходимость пересмотреть архитектуру решения. Именно по мотивам обозначенных обстоятельств и возникает ошибка «Записи регистра сведений стали неуникальными». Смоделируем такую ситуацию. Так как независимо от типа регистра сведений причина ошибки лежит в плоскости неуникальности ключа записи регистра сведений, пример будет сделан на самом простом типе регистра сведений: непериодическом независимом регистре сведений в 1С. И, чтобы не пачкать основную конфигурацию на поддержке я сделаю это в расширении.

1. Создаем РС «Расш1_РегистрСведений_ДляПроверкиНеуникальныхЗаписей» (непериодический, независимый)

Допустим, что непериодический регистр сведений предназначен для отслеживания количества задач, выполненных пользователями с детализацией до 1 часа внутри дня. Состав даты «Дата и время» этому способствует.

Измерения:

·         Пользователь (СправочникСсылка.Пользователи)

·         Дата (Дата и время)

Ресурсы:

·         Количество выполненных задач (Число(3,0), Неотрицательное)

И какое-то время мы наблюдаем за результатами работы пользователей.

Работа пользователей в непериодическом регистре сведений

Спустя время по результатам анализа нам кажется такая детализация избыточной. Мы решаем пересмотреть систему оценки работы пользователей путем агрегирования данных в границах дня. Такое решение сократит объем хранимых данных и, теперь, не испортит нашу аналитику.

Мы меняем свойство измерения «Дата» с «Дата и время» на «Дата». В результате этих действий и отбора записей регистра сведений мы и получаем предупреждение, что записи регистра сведений — неуникальные, так как дата, имеющая в составе только дату – это всегда дата на начало дня. Таким образом, у всех наших записей дата события становится одинаковой, 21.07.2021 0:00:00, а вместе с ней и совокупность значений набора измерений регистра.

Неуникальные записи регистра сведений

Кнопка «Принять» становится неактивной. Обновление не удалось.

На данном примере видно, что ошибка «Записи регистра сведений стали неуникальными» в 1С возникает при упразднении какого-то измерения, либо, как в моем примере, при изменении типа значения. Чтобы обойти обозначенную ситуацию, необходимо обработать существующие записи независимого регистра сведений так, чтобы в преддверии внесения изменений в его структуру записи стали уникальными в контексте его новой структуры.

Специалист компании  «Кодерлайн»

Сергей Пушкин

Понравилась статья? Поделить с друзьями:
  • Готика 1 гилберт как найти
  • Найдите наименьшее значение выражения как решать
  • Нечего делать как найти
  • Как найти файловую систему в windows
  • Как найти мультсериал детства