Такая ошибка возникает при добавлении нового элемента справочника, система автоматически присваивает элементу новый “Код”, но не дает сохранить объект.
Причиной является неправильная нумерация в справочнике. Происходит это когда пользователи вручную редактирует поле “Код” в элементах справочника.
Принцип нумерации справочника в 1С такой:
Код = Префикс+числовой код предыдущего элемента + 1.
Допустим код справочника состоит из 4-х символов, есть префикс “А” — он ставиться во всех элементах, остальные 3 знака используются под числовую составляющую кода. Если пользователь изменит код любого элемента справочника на “А999”, то при создании следующего элемента возникнет ошибка Значение поля “Код” не уникально, потому что система пытается прибавить к числовой составляющей кода единица, но разрядов для создания элемента с кодом А1000 не хватает. Такого рода ошибки могут всплыть не сразу, например если пользователь изменить код какого нибудь элемента на А990, то не уникальный код появится на десятом созданном впоследствии элементе.
Решить проблему можно, либо найдя неверно пронумерованный элемент и исправив его “Код” на корректный(а также перенумеровав все созданные после него элементы), либо если вручную эту работу проделать невозможно, то можно воспользоваться обработкой УниверсальныеПодборИОбработкаОбъектов (скачать можно по ссылке), при помощи нее перенумеровав все элементы справочника
При работе в 1С, особенно когда много документов или номера редактируются ручками, можно получить ошибки вида:
Значение поля «Код» не уникально или Значение поля «Номер» не уникально
Что делать? Перенумеровывать
Нужно восстановить нумерацию документов или элементов справочника:
Пользователю
Программисту:
В модуле ПередЗаписью() дописать функционал проверки:
Что делать, если при создании объектов информационной базы встречается ошибка «Значение поля «Код» не уникально» (для документов – значение поля «Номер»)?
Обычно это связано с тем, что код редактируемого справочника (номер документа) был некорректно отредактирован вручную.
Рассмотрим для наглядности пример. Для некоего справочника допустимая длина кода – 9 символов. В справочнике были созданы и стандартным образом пронумерованы элементы «000000001», «000000002», …, «000000086». Если в следующем элементе указать, например, номер «90», то программа, во-первых, автоматически дополнит указанный номер справа пробелами до 9 символов (получится «90_______» – справа 7 пробелов), во-вторых, «поймет» новый способ нумерации и следующим элементам присвоит коды «91_______», «92_______» и т.д. (те же 7 пробелов справа). После записи элемента с кодом «99_______» последующая автоматическая нумерация будет невозможна, поскольку следующий номер, сформированный по этому правилу («100_______»), не будет умещаться в допустимые 9 символов.
Для устранения ошибки необходимо воспользоваться обработкой «УниверсальныеПодборкиИОбработкаОбъектов» (можно найти на диске ИТС).
В поле «Объект поиска» необходимо указать нужный объект (справочник/документ). На закладке «Отбор по значениям реквизитов» можно осуществить отбор (в нашем случае установим отбор по коду):
При нажатии кнопки «Найти объекты» закладка «Найденные объекты» заполнится объектами, удовлетворяющими условиям отбора:
На закладке «Обработки» необходимо выбрать обработку «Перенумерация объектов». В шапке обработки указывается наименование настройки и начальный номер, с которого будет выполнена нумерация. Запуск обработки производится по нажатию кнопки «Выполнить».
После завершения обработки можно проверить измененный код в справочнике «Жильцы», а также добавить для проверки новые записи.
Источник: