Имеются записи с одинаковыми измерениями

1С 8.3 : Попытка вставки неуникального значения в уникальный индекс

Вам встретилось сообщение, содержащее строки:
Microsoft OLE DB Provider for SQL Server: CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID
или
Cannot I_nsert duplicate key row in object
или
Попытка вставки неуникального значения в уникальный индекс.

Варианты решения:

1. В SQL Server managment studio физически уничтожаем сбойный индекс (в моем случае это был индекс по таблице итогов регистра бухгалтерии). В 1С распроводим сбойные документы. В режиме тестирования и исправления ставим галки реиндексация таблиц + пересчет итогов. 1С воссоздает индекс уже без ошибки. Проводим ранее сбоившие документы.

2. 1) С помощью Management Studio 2005 сгенерировала create-скрипт на создание индекса, который глючил, и сохранила в файлик.
2) Вручную убила косячный индекс из таблицы _AccumRgTn19455
3) Запустила запрос вида
Код SQL
После того, как индекс был убит, у меня отобразилось 15 дублирующихся записей, хотя до выполнения п.2 запрос ничего не возвращал.
4) Просмотрела все записи и вручную почистила дубликаты. На самом деле, я ещё пользовалась обработкой «Структура отчёта”, чтобы понять, с чем вообще имею дело. Оказалось, что в таблице _AccumRgTn19455 хранится регистр накопления «Выпуск продукции (налоговый учёт)”. Я ещё поковырялась sql-запросами, выявила 15 неуникальных документов и после окончания всех действ проверила в 1С, что эти документы проводятся нормально, без ошибок. Просто так чистить таблицы наобум, конечно, не стоит: важно понимать, что чистится и чем это может обернуться.
5) Запустила запрос на создание индекса, который был сохранён в файле.
6) Перевела базу в однопользовательский режим и запустила dbcc checkdb – на этот раз ни одной ошибки не выдалось.
7) Перевела базу обратно в однопользовательский режим.
Всё. проблема побеждена. Ну ещё в 1С запустила «Тестирование и исправление”, там тоже всё прошло нормально, перестало ругаться на неуникальный индекс.

3. Если неуникальность заключается в датах с нулевыми значениями, то проблема решается созданием базы с параметром смещения равным 2000.

1. Если проблема загрузкой базы данных, то:
1.1. Если Вы делаете загрузку (используйете dt-файл) в базу MS SQL Server, то при создании базы перед загрузкой укажите смещение дат – 2000.
Если уже база создана со смещением 0, то создайте новую с 2000.

1.2. Если есть возможность в файловом варианте работать с базой, то выполните Тестирование и Исправление, а также Конфигурация – Проверка конфигурации – Проверка логической целостности конфигурации + Поиск некорректных ссылок.

1.3. Если нет файлового варианта, попробуйте загрузить из DT в клиент-серверный вариант с DB2 (который менее требователен к уникальности), и затем выполнить Тестирование и Исправление, а также Конфигурация – Проверка конфигурации – Проверка логической целостности конфигурации + Поиск некорректных ссылок.

1.4. Для локализации проблемы можно определить данные объекта, загрузка которого не удалась. Для этого надо включить во время загрузки трассировку в утилите Profiler или включите запись в технологический журнал событий DBMSSQL и EXCP.

2. Если проблема неуникальности проявляется во время работы пользователей:

2.1. Найти с помощью метода пункта 1.4 проблемный запрос.

2.1.2. Иногда ошибка возникает во время исполнения запросов, например:

Данная ошибка возникает из-за того что в модуле регистра накопления «Рабочее время работников организаций” в процедуре «ЗарегистрироватьПерерасчеты” в запросе не стоит служебное слово «РАЗЛИЧНЫЕ”.
Код 1C v 8.х
В последних выпущенных релизах ЗУП и УПП ошибка не возникает, т.к. там стоит «РАЗЛИЧНЫЕ”.

2.2. После нахождения проблемного индекса из предыдущего пункта, необходимо найти неуникальную запись.
2.2.1. «Рыба» скрипта для определения неуникальных записей с помощью SQL:
Код SQL

При помощи запроса:
Код SQL
посмотрите на значения других колонок дублирующихся записей.
Если обе записи имеют осмысленные значения и эти значения разные, то исправьте значение _KeyField на уникальное. Для этого определите максимальное занятое значение _KeyField (keymax):
Код SQL
Замените значение _KeyField в одной из повторяющихся записей на правильное:
Код SQL
Здесь _LineNo1386 = – дополнительное условие, которое позволяет выбрать одну из двух повторяющихся записей.

Если одна (или обе) из повторяющихся записей имеет очевидно неправильное значение, то ее нужно удалить:
Код SQL
Если повторяющиеся записи имеют одинаковые значения во всех колонках, то из них нужно оставить одну:
Код SQL

Описанную процедуру необходимо выполнить для каждой пары повторяющихся записей.

2.2.3. Второй пример:
Код SQL

2.3.4 Пример определения неуникальных записей с помощью запроса 1С:Предприятие:
Код 1C v 8.х

Ошибки неуникальности записей в 1С

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

Отображение ошибки

Подобная ошибка может иметь два идентичных отображения от системы 1С:

Суть этой ошибки состоит в том, что после очередного обновления изменился состав измерений для одного из регистров (или нескольких).

Программные требования к регистрам

Мы знаем, что регистр (register, англ.) сведений формируется для хранения в виде записей (строк). Каждая из них характеризуется видами измерений (профилями) и ресурсов.

Измерения характеризуют разрезы (типы), в которых хранятся данные. А ресурсы— непосредственно содержат их значения.

Например, register сведений «Цены товаров» имеет структуру, состоящую из двух видов профилей («Товар», «ВидЦен») и одного ресурса («Цена»):

Структура товаров в 1С

Таким образом, строки регистра в базе данных будут выглядеть так:

Строки регистра в реестре

Кроме того, при создании записи ей присваивается уникальный ключ. Формирование его системой происходит автоматически.

Одинаковыми считаются такие записи, ключи которых идентичны.

Изменение структуры

Рассмотрим другой пример.

В одно время разработчиком был создан регистр «ОтветственныеЛицаПоСкладам» структурно состоящий из двух измерений («Склад» и «Помещение») и одного ресурса («Ответственный»).

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

И теперь обновлённый register имеет только единственный профиль и ресурс:

Структура его изменилась. Но строки остались!

И в них указано, что для профиля «Помещение» — есть ответственные (ресурсы). Но что с ними делать при переходе на новый релиз — сама программа без пользователя такую задачу не решит.

Поэтому появляется ошибка 1С:»записи регистра сведений стали неуникальными». Может быть такая — имеются записи с одинаковыми измерениями.

Ручное исправление

Смысл этих сообщений сводится к тому, что новая структура содержит несколько строк с лишними измерениями и их нужно свернуть в одну:

Несколько записей с одним значением

В этом случае нужно удалить те, которые соответствуют теперь уже ненужным профилям.

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

Пропущенный релиз

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

Метод сравнения

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

Для решения такой задачи нужно войти в режим «Конфигурация» и выполнить команду «Сравнить конфигурации»:

После этого удалить найденные с помощью консоли запросов неуникальные строчки.

При небольшом их количестве это несложно сделать вручную.

Автоудаление 1

Для программного удаления очень большого количества неуникальных строчек можно воспользоваться обработкой, предложенной Евгенией Карук:

Программное удаление дублей

  • Сначала скачать и открыть обработку;
  • Открыть register сведений с неуникальными строчками;
  • Отметить те из измерений, которые нужно удалить в результате обновления;
  • Дать команду нажатием «Свернуть дубли».

Дубли строк будут найдены обработкой и свёрнуты в одну.

После проведения обработки обновление конфигурации будет проведено корректно.

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

Проверка на наличие дублей

Автоудаление 2

Другая обработка для той же цели предложена другим специалистом в этой области — Павлом Чистовым (для мобильного варианта не поддерживается).

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

Комментируйте наши публикации. Описывайте свой опыт в решении проблемных вопросов.

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

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

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

Варианты сообщения об ошибке:

  • «Имеются записи с одинаковыми измерениями»
  • «Записи регистра сведений стали неуникальными»

Важность ошибки

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

Ошибка встречается на типовых регистрах, а также при использовании распределенных информационных баз: в момент, когда из главной базы приходят изменения без учета данных в текущей базе (или применяется до их исправления). Обычно в этом случае исправление возможно только путем удаления записей в регистре.

Устранение данной ошибки

Надо убедится, что обновление верное.

Если конфигурация типовая:

  • Проверьте не вносились ли правки в регистр, если вносились при обновлении данный регистр следует исключить из списка обновления.
  • Если регистр типовой — может быть вы пропустили важное обновление от 1С — попробуйте обновлять последовательно — без пропусков версий (при обновлении запускаются специализированные обработчики, которые могут исключить данную ошибку).

Если конфигурации или объект ваш:

  • Убедитесь, что новые измерения корректны,
  • Если это так, то перед обновлением необходимо удалить дубли записей (оставить только нужные).
  • Когда в регистре записей мало, такое можно сделать вручную, в противном случае необходимо будет написать код для исправления.

При любых вариантах: первое, что необходимо — сделать копию базы данных.

Далее, чтобы удалить дубли в автоматическом режиме, воспользуйтесь обработкой

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

Ни одно, даже самое верное дело не двигается без рекламы… Обычно думают, что надо рекламировать только дрянь,- хорошая вещь и так пойдет. Это самое неверное мнение. Реклама — это имя вещи… Реклама должна напоминать бесконечно о каждой, даже чудесной вещи… Думайте о рекламе!»

— В.В. Маяковский , Статья «Агитация и реклама»

Объекты доступа документов

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

Для решения проблемы удаляем одну из записей, чтобы 1С однозначно знала, что за «Главный склад” отвечает Иванов.

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

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

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

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

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

Read Full Article

Права доступа в 1С:Предприятии 8

В 1С:Предприятии различают два типа прав – основные и интерактивные.

Основные (неинтерактивные) – проверяются всегданезависимо от способа обращения к объектам информационной базы.

Интерактивные – проверяются при выполнении интерактивных операций (например, операция «Установить пометку удаления”).

Нужно учитывать, что проверку интерактивных прав можно обойти, создав, например, при конфигурировании форму самостоятельно и заменив стандартные команды своими, а проверку неинтерактивных прав нельзя обойти ни при каких обстоятельствах. Неинтерактивными правами защищается характерная для объекта фундаментальная функциональность, за это отвечают, например, такие права, как: «Добавление”, «Чтение”, «Изменение”, «Удаление”.

Для построения защищенных прикладных решений достаточно управлять только 4-мя основными правами доступа — «Добавление”, «Чтение”, «Изменение” и «Удаление”.

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

Пример проверки прав из языка:

Копировать в буфер обменаПроцедура КнопкаНажатие(Элемент) Разрешено = ПравоДоступа(«ИнтерактивноеУдаление”, Метаданные.Документы.Документ1);ЕслиНе Разрешено Тогда Предупреждение («Удалять не разрешено”);// … необходимые действияКонецЕсли// … необходимые действияКонецПроцедуры

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

Проверка прав объектов производится только в режиме «1С:Предприятие”.
При попытке выполнить неразрешенную операцию выдается сообщение об ошибке «Нарушение прав доступа!”, и производится отмена всех начатых транзакций.

Проверка основных и интерактивных прав используется расширениями формы, табличного поля и поля ввода (расширение формы определяется ее основным реквизитом, а табличного поля и поля ввода — типом редактируемых данных). Благодаря этому, если не установлено право «Просмотр”, то форма списка или форма объекта не откроется, и будет выдано стандартное сообщение о нарушении прав доступа.

Рассмотрим проверку прав расширениями формы, табличного поля и поля ввода на примере документа:

    При открытии формы документа проверяется право «Просмотр”, после чего, если это форма нового объекта, то проверяется право «ИнтерактивноеДобавление”, а если нет — право «Редактирование”. Если выполняется запись с проведением, то проверяются права «ИнтерактивноеПроведение”, «ИнтерактивнаяОтменаПроведения” или «ИнтерактивноеПроведениеНеОперативное”, в зависимости от режима записи.
  • Расширение табличного поля для журнала документов при открытии формы, в которой журнал установлен основным реквизитом, проверяет, что право «Просмотр” установлено хотя бы у одного документа журнала. При проведении документов из журнала проверяются права «ИнтерактивнаяОтменаПроведения”, «ИнтерактивноеПроведение” и «ИнтерактивноеПроведениеНеОперативное”. При удалении документов проверяется право «ИнтерактивноеУдаление”, а при установке/снятии пометки на удаление проверяются права «ИнтерактивнаяПометкаУдаления” и «ИнтерактивноеСнятиеПометкиУдаления”. При добавлении нового документа, после выбора его типа, расширение табличного поля журнала документов проверяет право «ИнтерактивноеДобавление”.
  • Поле ввода для документа проверяет только право «ВводПоСтроке”.
  • Связанные права

    Часть прав в системе 1С:Предприятия связаны друг с другом. Это означает, что основные права доступа, такие как «Чтение”, «Изменение”, «Добавление” и «Удаление” и некоторые другие могут влиять на права, отвечающие за такие операции с объектом, которые, в конечном счете, приведут к простейшим операциям. Например, нельзя разрешить право «Изменение”, не выдав право «Чтение”.

    Интерактивные права напрямую зависят от их неинтерактивных аналогов, т.е. право «Интерактивное удаление” зависит от права «Удаление”. На практике при конфигурировании это выглядит так, что при разрешении интерактивных прав аналогичные им неинтерактивные будут автоматически разрешены, и, наоборот, при снятии неинтерактивных прав соответствующие им интерактивные автоматически будут сброшены. Допускается лишь установка неинтерактивного права и сброс интерактивного, но не наоборот. Например, нельзя разрешить интерактивное право «Интерактивное удаление” и запретить неинтерактивное «Удаление”.

    Зависимость прав может выстраиваться в сложные цепочки, например, у объекта «Документ” право «Интерактивная отмена проведения” зависит от прав «Отмена проведения” и «Просмотр” одновременно, где первое зависит от «Изменение”, которое, в свою очередь, зависит от права «Чтение” (см. рисунок).

    Ключевым является право «Чтение”, при его отсутствии автоматически пропадают любые другие права на доступ к объекту.

    Ошибки при тестировании базы 1С

    При тестировании базы 1С выдается сообщение об ошиках такого вида:

    Субконто регистров бухгалтерии. Налоговый. Проверка уникальности записей
    В таблице AccntRegED3896 обнаружены неуникальные записи со значениями полей:
    Period = DATETIME(2005,8,31,12,0,1)
    Recorder = 122:BB0C00C026A98E7511DA37E6B33D5DA3
    LineNo = 1
    Correspond = 0

    Субконто регистров бухгалтерии. Хозрасчетный. Проверка уникальности записей
    В таблице AccntRegED3875 обнаружены неуникальные записи со значениями полей:
    Period = DATETIME(2006,4,30,15,0,20)
    Recorder = 98:A43500C026A98E7511DB0B70AB54724A
    LineNo = 4
    Correspond = 1

    Версия 1С:Предприятия 8.0: 8.1.8.66
    Конфигурация: Бухгалтерия предприятия, редакция 1.5
    Версия конфигурации: 1.5.17.3

    Помогите! С чем это может быть связано и как это исправить?

    Глюк разработчиков 8.0. скорее всего.

    Т.е. на работу это может не влиять?

    Четно говоря вообще были случаи когда база падала и никто не мог ее поднять

    Но сейчас она работает. И других признаков, вроде не наблюдается.

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

    А исправить это как-то можно?

    В режиме «Тестирование и исправление” пытаюсь исправить, ставил разные комбинации флажков:

    1. Исправляю базу как есть, в результате:
    – после прохождения «Тестирование и исправление” сообщается об исправлении ошибок, так же нет ошибок после просто тестирования
    – в базе удаляются из проводок все субконто
    – при перепроведении документа формируется правильная проводка и еще в ОСВ появляется такая же сумма но отрицательная и по пустому субконто. В карточке счета эта отрицательная сумма отсутствует, т.е. какая-то «паразитная” запись еще прибавляется

    2. Снова пытаюсь исправлять, беру архивную копию и в базе отключаю все проводки у всех документов
    – после прохождения «Тестирование и исправление” сообщается об исправлении ошибок, так же нет ошибок после просто тестирования
    – после перепроведения документов формируются правильные проводки, никаких «паразитных” сумм не появляется
    – но после прохождения тестирования опять сообщается от тех же самых ошибках

    • «Имеются записи с одинаковыми измерениями»
    • «Записи регистра сведений стали неуникальными»

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

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

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

    Какой бы ни была причина появления этой ошибки, она говорит об одном: в регистре сведений есть запись с ключевыми параметрами, для которой имеется несколько значений, и программа 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С 8.3: как исправить

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

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

    или

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

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

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

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