Ошибка возникает в том случае, когда выполняется попытка сохранить объект (элемент или группу справочника, плана видов характеристик и т.п.) с кодом, который уже имеется в информационной базе. В большинстве случаев при интерактивной работе, достаточно изменить код объекта вручную (увеличив на единицу) и попытаться сохранить его снова.
Но есть особые случаи, когда такой способ решения проблемы не поможет: например, когда диапазон номеров, выделенных для данного справочника, закончился. В этом случае текст ошибки будет выглядеть так: «Значение 999 поля код не уникально». В этом случае рекомендуется выполнить следующие действия:
- Попытаться высвободить свободные коды, удалив помеченные на удаление объекты;
- Затем, выполнить процедуру перенумерации объектов (справочника, плана видов характеристик и т.п.) и вызвать программно метод ОбновитьНумерациюОбъектов() для проблемного объекта метаданных;
- Если не помогло, увеличить в конфигураторе длину кода объекта метаданных (справочника, плана видов характеристик и т.п.) и также программно вызвать метод ОбновитьНумерациюОбъектов() для проблемного объекта метаданных;
Поделиться страницей в соц. сетях
В программе 1С Бухгалтерия предприятия 3.0 часто возникает ошибка: «Поле номер не уникально в 1С». В данной статье рассмотрим причины возникновения ошибки и способы ее устранения.
Причина ошибки в 1С
Ошибка неуникальности номера возникает чаще всего в документах поступлений, реализаций (рис. 1) и других документах, содержащих на форме доступный для пользователя реквизит «Номер» (рис. 2).
В программе 1С Бухгалтерия предприятия 3.0 существует автонумерация документов. Так, например, при изменении номера в ручном режиме, программа 1С Бухгалтерия предприятия 3.0 подстраивается к новому типу формирования номеров документов. Номер документа в 1С 8.3 может принимать значения от 0000-000001 до 0000-999999. При этом для документов можно настроить префиксы. Например, при создании новой организации можно указать префикс, который будет использоваться при формировании номера документа в 1С 8.3 касательно данной организации.
Нумерацию документов легко «сбить», корректируя номер вручную. Допустим, пользователь исправил номер документа в 1С 8.3, сократив его до 1 или 2-х знаков. В таком случае, если в программе 1С Бухгалтерия предприятия 3.0 номер документа превысит два знака, программа выдаст ошибку «Поле номер не уникально», так как ограниченное двумя знаками поле «Номер» достигло своего лимита и не может занять свободный номер.
Как исправить ошибку в 1С 8
Для исправления ошибки «Поле номер не уникально» в первую очередь проверим номера документов 1С 8.3, с которыми возникает данная проблема. Если при проверке выясняется, что таких документов было немного, то значение номера каждого документа можно изменить вручную. При редактировании номера необходимо добавить нужное количество нулей перед значением (номером). Обычно при попытке изменить номер в программе 1С Бухгалтерия предприятия, появляется сообщение об ошибке при редактировании номера: «Номер заполняется при записи автоматически. Продолжить редактирование?». В случае исправления проблем с нумерацией нажимаем кнопку «Да» в соответствующем диалоговом окне.
Чтобы решить возникающую проблему с неуникальностью нумерации документов, необходимо выровнять номера документов. Обычно достаточно исправить последние документы, после чего программа автоматически «подхватывает» новый формат нумерации.
Специалист компании ООО «Кодерлайн»
Шачнева Елена Андреевна
В обработке нужно выбрать тип метаданных «Документы», в появившемся списке выбрать тип документа и нажать на кнопку «Выполнить».
Обработка простая и содержит одну процедуру ОбновитьНумерациюОбъектов(), которая восстановит нумерацию.
Платформа версии 8.3.17.1037.
Скачать файлы
Коллеги, всё что делает метод ОбновитьНумерациюОбъектов() — это сбрасывает «заготовленные» номера в сервисе нумерации кластера. То есть никаких манипуляций с данными не происходит. Ни конфигурация, ни версия платформы, ни какие-либо реестры для данного метода не имеют ровным счетом никакого значения.
Чаще всего ошибка «Значение поля «Номер» не уникально» возникает, когда в тестовую базу залили копию из рабочей, средствами СУБД, а не загрузкой через dt-файл. Или после восстановления из бэкапа, тоже средствами СУБД.
По большому счету, выбор типа объекта для «исправления» нумерации тоже не имеет значения, т.к. по сути — это просто закешированные номера. Никто ведь не чистит кеш базы выборочно. Здесь тоже достаточно просто вызвать метод ОбновитьНумерациюОбъектов() без параметров. Просто номера для новых объектов будут сгенерированы заново когда потребуются.
Вообще, желательно после загрузки базы из бэкапа СУБД всегда выполнять такой метод, не дожидаясь ошибки.
Значение поля «Номер» не уникально 1с 8
Программа 1С сообщает пользователю, что номер 0000-0006 уже существует.
Нумерация документов в программе осуществляется автоматически. При этом, каждому новому документу присваивается номер в хронологическом порядке, который состоит из определенного количества цифр.
В 1С:Бухгалтерия предприятия 3.0, номер состоит из двух частей:
- префикс информационной базы — может быть задан, если есть обмен с другими базами 1С;
- сам номер документа.
В том случае, если пользователь начинает изменять нумерацию вручную или случайно изменил номер, сбив при этом нумерацию документов, программа продолжает нумерацию от номера, содержащего меньшее количество знаков. Изначально, мы видим, что в 1С заложено для номера документа:
- 4 позиции для префикса;
- 6 позиций под номер.
Таким образом, сам номер может принимать значение от 0000-000001 до 0000-999999. Если пользователь вручную сокращает длину номера, то она продолжает нумерацию от нового значения. При внесении изменения в префикс, нумерация все равно продолжается от последнего номера, содержащего наименьшее количество знаков. В нашем примере при сбое в нумерации она продолжилась, используя под номер 4 знака: 0000-0005, 0000-0006 и т.д.
Получите понятные самоучители 2021 по 1С бесплатно:
В базе уже есть номер 0000-0006, поэтому при попытке ввести его повторно, программа выдаст сообщение о том, что значение поля номер 0000-0006 не уникально.
Рассмотрим ситуацию далее.
Что произойдет, если пользователь сократит числовой резерв для номера до двух или, куда хуже, до одного знака?
Программа 1С будет присваивать номера до тех пор, пока не будет пройден последний максимальный номер. Например, изменив вручную в документе номер на 0000-01, программа сможет автоматически присвоить всего 99 номеров. После номера 0000-99 возможность автоматической нумерации документов закончится и придется каждый раз исправлять номер вручную
После номера 0000-99 при вводе каждого нового документа будет выдаваться сообщение, что значение номера 0000-99 не уникально.
Когда пользователь сокращает длину номера документа (договора и т.п.) — это приводит к сбою нумерации. Поэтому, если возникает необходимость изменить номер документа вручную, надо использовать максимально допустимое число символов.
Как поступить в случае появления такой ошибки? В первую очередь, необходимо просмотреть нумерацию документов. В случае, если исправленных документов было не много, значение номера можно изменить вручную, добавив нужное количество нулей перед значением. При попытке изменить номер, программа выдаст сообщение о редактировании номера, на что мы отвечаем:
После этого добавляем нули перед значением номера.
После приведения в порядок нумерации, ошибка появляться не будет.
Если исправлений в номерах было много, то можно воспользоваться обработкой для автоматической перенумерации объектов.
Если Вы еще не являетесь подписчиком системы БухЭксперт8:
После оформления подписки вам станут доступны все материалы по 1С Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Похожие публикации
- Нулевое значение показателя расчета зарплаты (ЗУП 3.1.1).
- Значение госрегистрации для признания объекта недвижимостьюУ вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.
- Значение не является значением объектного типа 1СКонфигурация 1С состоит из объектов: Константы, Документы, Регистры и ряда.
Карточка публикации
(3 оценок, среднее: 4,67 из 5)
Вы можете задать еще вопросов
Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8
Спасибо! Профессиональная подача материала. Логично , структурно и с большим терпением к слушателям. Испытала огромное удовольствие!
Значение поля “Код” (“Номер”) не уникально
Что делать, если при создании объектов информационной базы встречается ошибка «Значение поля «Код» не уникально» (для документов – значение поля «Номер»)?
Обычно это связано с тем, что код редактируемого справочника (номер документа) был некорректно отредактирован вручную.
Для устранения ошибки необходимо воспользоваться обработкой «УниверсальныеПодборкиИОбработкаОбъектов» (можно найти на диске ИТС).
В поле «Объект поиска» необходимо указать нужный объект (справочник/документ). На закладке «Отбор по значениям реквизитов» можно осуществить отбор (в нашем случае установим отбор по коду):
При нажатии кнопки «Найти объекты» закладка «Найденные объекты» заполнится объектами, удовлетворяющими условиям отбора:
На закладке «Обработки» необходимо выбрать обработку «Перенумерация объектов». В шапке обработки указывается наименование настройки и начальный номер, с которого будет выполнена нумерация. Запуск обработки производится по нажатию кнопки «Выполнить».
После завершения обработки можно проверить измененный код в справочнике «Жильцы», а также добавить для проверки новые записи.
Материалы по теме
Такая ошибка возникает при добавлении нового элемента справочника, система автоматически присваивает элементу новый “Код”, но не дает сохранить объект.
Причиной является неправильная нумерация в справочнике. Происходит это когда пользователи вручную редактирует поле “Код” в элементах справочника.
Принцип нумерации справочника в 1С такой:
Допустим код справочника состоит из 4-х символов, есть префикс “А” — он ставиться во всех элементах, остальные 3 знака используются под числовую составляющую кода. Если пользователь изменит код любого элемента справочника на “А999”, то при создании следующего элемента возникнет ошибка Значение поля “Код” не уникально, потому что система пытается прибавить к числовой составляющей кода единица, но разрядов для создания элемента с кодом А1000 не хватает. Такого рода ошибки могут всплыть не сразу, например если пользователь изменить код какого нибудь элемента на А990, то не уникальный код появится на десятом созданном впоследствии элементе.
Поле номер не уникально в 1С Бухгалтерия предприятия 3
В программе 1С Бухгалтерия предприятия 3.0 часто возникает ошибка: «Поле номер не уникально в 1С». В данной статье рассмотрим причины возникновения ошибки и способы ее устранения.
В программе 1С Бухгалтерия предприятия 3.0 существует автонумерация документов. Так, например, при изменении номера в ручном режиме, программа 1С Бухгалтерия предприятия 3.0 подстраивается к новому типу формирования номеров документов. Номер документа в 1С 8.3 может принимать значения от 0000-000001 до 0000-999999. При этом для документов можно настроить префиксы. Например, при создании новой организации можно указать префикс, который будет использоваться при формировании номера документа в 1С 8.3 касательно данной организации.
Ошибка возникает при создании нового документа. При записи программа 1С 8.3 автоматически присваивает элементу новый номер, но сохранить новые данные не может, где-то в журнале документов уже есть объект с таким же номером.
Причиной этой ошибки чаще всего служит ручное исправление номеров документов.
(5) Petrovichka, Полный интерфейс, сервис — настройки стратегии редактирования номеров (кодов) объектов. но походу не поможет, это аналог ОбновитьНумерациюОбъектов()
Посмотрите что за номер 1с генерит перед записью документа, может станет ясно куда смотреть
Глобальный контекст (Global context) ОбновитьНумерациюОбъектов (RefreshObjectsNumbering) Синтаксис:
Тип: Массив; Объекты метаданных. Объект метаданного или массив объектов метаданных, для объектов которого будет выполнено обновление. Если значение параметра не указано, то обновление будет выполнено для всех типов объектов. Описание:
Выполняет обновление номеров в соответствии с номерами, записанными в базе данных. После вызова данного метода все выданные, но не записанные номера, становятся невалидными, т.к. не гарантируется их уникальность. Данный метод разрешено вызывать только администратору системы.
Сервер, толстый клиент, внешнее соединение.
(плюс заполнение всех необходимых реквизитов, не стал писать) И до некоторых пор это работало без сбоев.
Да, и сбой проявлялся последовательно. Сначала в одной из обработок создавалась пара Списание-Оприходование, Оприходование стало отказывать в записи с этой ошибкой. Затем еще одна обработка, которая создавала Реализацию-Поступление, Реализация стала вылетать. Закономерность не ясна. Оприходование после подобного передергивания глючить перестало. Надо попробовать, может и реализацию тоже уже не нужно так дергать.
Коллеги, столкнулся с этим и нашел возможное решение.
У меня возникла ситуёвина, что существующий документ прошлого года программно перезаписывался в текущем. Номер ему не переприсваивался, а брался прошлогодний. Но в этом году уже такой номер в базе есть. В итоге в каждом году номер вроде бы уникальный, а ситуация вызывает ошибку. Скорее всего и у вас та же проблема, если, конечно она не вызвана платформой. Если вызвана платформой, то ОбновитьНумерациюОбъектов() и очистка кеша должна помочь. ОбновитьНумерациюОбъектов() можно сделать из встроенной обработки редактирования стратегии нумерации объектов.