1с ошибка код не уникален

Такая ошибка возникает при добавлении нового элемента справочника, система автоматически присваивает элементу новый “Код”, но не дает сохранить объект.

Причиной является неправильная нумерация в справочнике. Происходит это когда пользователи вручную редактирует поле “Код” в элементах справочника.

Принцип нумерации справочника в 1С такой:

Код = Префикс+числовой код предыдущего элемента + 1.

Допустим код справочника состоит из 4-х символов, есть префикс “А” — он ставиться во всех элементах, остальные 3 знака используются под числовую составляющую кода. Если пользователь изменит код любого элемента справочника на “А999”, то при создании следующего элемента возникнет ошибка Значение поля “Код” не уникально, потому что система пытается прибавить к числовой составляющей кода единица, но разрядов для создания элемента с кодом А1000 не хватает. Такого рода ошибки могут всплыть не сразу, например если пользователь изменить код какого нибудь элемента на А990, то не уникальный код появится на десятом созданном впоследствии элементе.

Решить проблему можно, либо найдя неверно пронумерованный элемент и исправив его “Код” на корректный(а также перенумеровав все созданные после него элементы), либо если вручную эту работу проделать невозможно, то можно воспользоваться обработкой УниверсальныеПодборИОбработкаОбъектов (скачать можно по ссылке), при помощи нее перенумеровав все элементы справочника

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

Но есть особые случаи, когда такой способ решения проблемы не поможет: например, когда диапазон номеров, выделенных для данного справочника, закончился. В этом случае текст ошибки будет выглядеть так: «Значение 999 поля код не уникально». В этом случае рекомендуется выполнить следующие действия:

  1. Попытаться высвободить свободные коды, удалив помеченные на удаление объекты;
  2. Затем, выполнить процедуру перенумерации объектов (справочника, плана видов характеристик и т.п.) и вызвать программно метод ОбновитьНумерациюОбъектов() для проблемного объекта метаданных;
  3. Если не помогло, увеличить в конфигураторе длину кода объекта метаданных (справочника, плана видов характеристик и т.п.) и также программно вызвать метод ОбновитьНумерациюОбъектов() для проблемного объекта метаданных;

Поделиться страницей в соц.сетях

Чаще всего эта ошибка возникает при работе непосредственно со справочниками договоров, контрагентов, номенклатуры и т. д. Пользователь добавляет в любой из справочников новую запись, при этом система 1С: Предприятие 8 автоматически присваивает ему код, но при сохранении записи выдает ошибку «Код не уникален!», а, следовательно, сохранить объект не удается.

Ошибка не уникального кода при создании новой записи в справочнике 1С

В чем причина появления данной ошибки?

А причина может быть в некорректной нумерации объектов справочника. Как это происходит? Обычно при создании новой записи в каком-то из справочников программа сама генерирует код записи. Если в предыдущих записях пользователь редактировал код вручную, то в последствии есть вероятность того, что при создании последующих записей разрядность кода увеличится на один знак и перестает помещаться в поле, а значит генерация кодов начнется сначала. Только вот хранить объекты с одинаковыми кодами в справочниках 1С нельзя, а, значит, пользователь в такой ситуации будет получать на экран сообщение об ошибке.

Как исправить ошибку «Код не уникален»?

Безусловно, решение этой проблемы предусмотрено разработчиками 1С. Заключается оно в полной перенумерации элементов справочника. Для этого на диске информационно-технологического сопровождения 1С (1с итс) есть специальная обработка, которая называется «УниверсальныеПодборИОбработкаОбъектов.epf». Она располагается в каталоге 1CITSEXEExtRepsUNIREPS81UniversalSelection.

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

Как предотвратить появление ошибки «Код не уникален»?

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

Рекомендуем также еще статьи по программам 1С:

  • Выбор режима проведения документов в 1С
  • Настройка доступа к подсистемам программ 1С 8.2
  • Установка 1С: Предприятие 8.0

Вы можете получать новые материалы сайта по RSS-каналу или можете подписаться на новости 1С от Информ Актив и получать их еженедельно на Ваш e-mail .

Содержание:

  1. Причина ошибки в 1С
  2. Как исправить ошибку в 1С 8.3

В программе 1С Бухгалтерия предприятия 3.0 часто возникает ошибка: «Поле номер не уникально в 1С». В данной статье рассмотрим причины возникновения ошибки и способы ее устранения. 

1.     Причина ошибки в 1С

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

В программе 1С Бухгалтерия предприятия 3.0 существует автонумерация документов. Так, например, при изменении номера в ручном режиме, программа 1С Бухгалтерия предприятия 3.0 подстраивается к новому типу формирования номеров документов. Номер документа в 1С 8.3 может принимать значения от 0000-000001 до 0000-999999. При этом для документов можно настроить префиксы. Например, при создании новой организации можно указать префикс, который будет использоваться при формировании номера документа в 1С 8.3 касательно данной организации.

Ошибка неуникальности номера

Рис. 1

Поле номер не уникально в 1С

Рис. 2

Нумерацию документов легко «сбить», корректируя номер вручную. Допустим, пользователь исправил номер документа в 1С 8.3, сократив его до 1 или 2-х знаков. В таком случае, если в программе 1С Бухгалтерия предприятия 3.0 номер документа превысит два знака, программа выдаст ошибку «Поле номер не уникально», так как ограниченное двумя знаками поле «Номер» достигло своего лимита и не может занять свободный номер.  

2.     Как исправить ошибку в 1С 8.3 

Для исправления ошибки «Поле номер не уникально» в первую очередь проверим номера документов 1С 8.3, с которыми возникает данная проблема. Если при проверке выясняется, что таких документов было немного, то значение номера каждого документа можно изменить вручную. При редактировании номера необходимо добавить нужное количество нулей перед значением (номером). Обычно при попытке изменить номер в программе 1С Бухгалтерия предприятия, появляется сообщение об ошибке при редактировании номера: «Номер заполняется при записи автоматически. Продолжить редактирование?». В случае исправления проблем с нумерацией нажимаем кнопку «Да» в соответствующем диалоговом окне.

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

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

Шачнева Елена Андреевна

   bebibo

02.02.22 — 14:17

Всем привет!

Есть рабочая серверная база. Снимаю с неё копию и загружаю в серверную тестовую базу.

При создании ЛЮБОГО документа в тестовой базе возникает ошибка Значение поля «Код» не уникально. В рабочую захожу — всё работает хорошо — ошибок нет. Как такое может быть?

Временные файлы удаляли, тестирование и исправление делали

   lubitelxml

1 — 02.02.22 — 14:18

ОбновитьНумерациюОбъектов делали?

   shuhard

2 — 02.02.22 — 14:19

(0)[Как такое может быть? ] легко

ты же нумерацию объектов не сбросил

   pechkin

3 — 02.02.22 — 14:19

(1) когда же наконец в бсп встроят

   ДенисЧ

4 — 02.02.22 — 14:23

(3) А зачем? Я, например, у себя во всех конфигурациях сам вставил…

   acht

5 — 02.02.22 — 14:29

(3) Когда оно в режиме разделения данных работать научится

   pechkin

6 — 02.02.22 — 14:31

(4) там можно дойти до того вообще все с 0 писать

   1Сергей

7 — 02.02.22 — 14:51

(4) по расписанию бахает?

   ДенисЧ

8 — 02.02.22 — 14:53

(7) При старте проверяет, что это копия и тогда бахает.

   1Сергей

9 — 02.02.22 — 14:56

(8) у меня очень редко, но в боевой базе слетает нумерация

   ДенисЧ

10 — 02.02.22 — 15:04

(9) Ну если очень редко — то можно и руками ткнуть.

   bebibo

11 — 02.02.22 — 15:07

(1) Делали, помогло. Но слетели все документы. Интересно почему просто…

   Chai Nic

12 — 02.02.22 — 15:10

Как вообще можно «обновлять нумерацию» просто так, если номер документа — это значимый и где-то важный реквизит? А первичку бумажную тоже перепечатывать при этом? Хрень какая-то. Вообще, в восьмерке и к номеру и к дате какое-то неадекватно расслабленное отношение. Например, время документа может двигаться само по себе при проведении, для обеспечения последовательности.

   bebibo

13 — 02.02.22 — 15:14

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

   ДенисЧ

14 — 02.02.22 — 15:15

(12) Обновление нумерации — это не перенумерация. Это сброс счётчика номеров и установка его на последний использованный номер.

   Garikk

15 — 02.02.22 — 15:20

(13) это черещ sql бекап грузишь и так получается?

   Lama12

16 — 02.02.22 — 15:24

(15) Скорее всего на сервере приложений кэш не чистили. А удаление базы чистит серверных кэш.

   1Сергей

17 — 02.02.22 — 15:31

(16) +1

(14) +1

(11) Что значит «слетели все документы»?

   bebibo

18 — 02.02.22 — 15:41

(15) Да

   bebibo

19 — 02.02.22 — 15:42

(17) НУмерация то есть слетела, у всех документов

   acht

20 — 02.02.22 — 15:56

(13) Нет там никакого «кэша»…

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

А когда вы базу добавляете/удаляете, она считается новой, соответственно никакого состояния нумераторов для этой базы нет.

   Chai Nic

21 — 02.02.22 — 15:59

(14) А, понял, пардон

   Garikk

22 — 02.02.22 — 16:00

(20) < хранится в потрохах сервера приложений, ни в каком не в «кэшэ».>

как бы странно это не звучало, но вы как раз это и описали, ‘потроха сервера’ и есть кэш относительно БД

   Garikk

23 — 02.02.22 — 16:02

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

вообще интересно, в (0) <Временные файлы удаляли>

так откуда сервер продолжает об этом помнить если его рестартили? или удалили кэш без рестарта службы?

===

я мож чёто уже забыл…давно не трогал одинесину

   acht

24 — 02.02.22 — 16:34

(22) > и есть кэш

Нет. Эти данные, хотя и могут быть сброшены на диск в ходе работы, но при рестарте сервера они не перечитываются, а создаются заново по текущему состоянию SQL базы.

  

acht

25 — 02.02.22 — 16:37

(23) > если провод из розетки выдернули у сервера

То от него отваливаются все сеансы.

И информация о том, что номер 123 был зарезервирован за РН сеанса №5, становится бессмысленной.

  • 1с ошибка исключительной блокировки информационной базы com соединение
  • 1с ошибка интерфейса модуля криптографии набор ключей зарегистрирован недействительным
  • 1с ошибка инициализации модуля регламентное задание
  • 1с ошибка инициализации защищенных функций
  • 1с ошибка идентификация пользователя не выполнена неправильное имя или пароль пользователя