Администрирование · 11 мин
Почему 1С пишет «Номер не уникальный» и как это исправить
Разбираем ошибку «Номер не уникальный» в 1С: почему возникает, как найти дубли номеров документов и справочников, исправить нумерацию и не навредить базе.
Ошибка «Номер не уникальный» появляется, когда 1С пытается записать объект — документ, элемент справочника, заказ, счёт-фактуру — с номером или кодом, который уже занят другим объектом того же вида. Платформа контролирует уникальность автоматически: если в свойствах объекта конфигурации включён контроль уникальности, запись дубликата блокируется и пользователь получает сообщение об ошибке.
Чаще всего проблема возникает не из-за «случайного сбоя», а из-за сбитой нумерации: кто-то вручную изменил номер документа, восстановили старую копию базы, обмен данными привёз объект с уже существующим номером или нумерация сбилась после переноса данных. В результате встроенный нумератор продолжает выдавать номера, которые фактически уже используются.
Хорошая новость: в большинстве случаев проблему можно устранить штатными средствами — перенумерацией, поиском дублей и корректировкой номера конкретного объекта. Ниже разберём, почему возникает ошибка, как найти конфликтующие объекты и как исправить ситуацию без риска для данных.
Что именно означает ошибка «Номер не уникальный»
В 1С у каждого документа есть номер, а у элементов справочников и планов счетов — код. Для этих реквизитов в конфигурации задаётся признак контроля уникальности. Когда он включён, платформа при записи проверяет: нет ли в базе другого объекта того же вида с таким же значением. Если есть — запись отменяется, и пользователь видит сообщение о неуникальном номере.
Важно понимать: уникальность обычно проверяется в пределах периода нумерации и подчинения. Например, для документов с периодичностью «в пределах года» один и тот же номер допустим в разных годах, а для справочника, подчинённого владельцу, одинаковый код возможен у разных владельцев. Поэтому «дубль» не всегда очевиден — конфликт может касаться только конкретного периода или конкретного владельца.
Ошибка проявляется в двух типовых ситуациях: при создании нового объекта (нумератор выдал занятый номер) и при ручном изменении номера существующего объекта (пользователь ввёл значение, которое уже используется). От ситуации зависит и способ исправления.
Основные причины сбоя нумерации
Первая и самая частая причина — ручное редактирование номеров. Пользователь исправил номер документа «под нужный», например под номер первичного документа от контрагента, а нумератор об этом не знает и продолжает считать по своей логике. Через несколько документов счётчик догоняет вручную присвоенное значение, и начинаются конфликты.
Вторая причина — обмены данными и переносы. При загрузке из другой базы, из Excel или через конвертацию данных объекты могут прийти с номерами, которые пересекаются с уже существующими. Особенно это характерно для первоначального заполнения базы и для обменов между филиалами с независимой нумерацией.
Третья группа причин — восстановление из старой копии, незавершённые транзакции, работа нескольких пользователей при отключённом контроле уникальности на время загрузки данных, а также доработки конфигурации, в которых номер присваивается программно без проверки. Все эти сценарии приводят к одному: в базе физически существуют два объекта с одинаковым номером, либо нумератор отстаёт от реальности.
Как найти дубли номеров в базе
Прежде чем что-то исправлять, нужно понять масштаб: один конфликт или системная рассинхронизация. Самый простой способ — открыть список документов нужного вида, отсортировать по номеру и просмотреть область вокруг проблемного значения. Если дублей несколько, ручной просмотр не подойдёт.
Для массовой проверки используйте обработку «Поиск и удаление дублей» (в типовых конфигурациях находится в разделе администрирования) — она умеет искать дубли по совпадающим реквизитам, хотя для номеров документов её возможности ограничены. Более точный инструмент — консоль запросов или отчёт по дублям: запрос группирует объекты по номеру и показывает те, где количество больше одного.
ВЫБРАТЬ Номер, КОЛИЧЕСТВО(Ссылка) КАК Количество ИЗ Документ.РеализацияТоваровУслуг ГДЕ Дата МЕЖДУ &НачалоГода И &КонецГода СГРУППИРОВАТЬ ПО Номер ИМЕЮЩИЕ КОЛИЧЕСТВО(Ссылка) > 1Не забудьте проверить помеченные на удаление объекты: пометка не освобождает номер, пока объект физически не удалён. Частая ситуация — «дубль» оказывается старым помеченным документом, который достаточно удалить окончательно через операцию удаления помеченных объектов.
Как исправить ошибку: пошаговые способы
Способ первый, самый безопасный — обновить нумерацию. Во многих типовых конфигурациях есть команда «Обновить нумерацию» в списке документов или отдельная обработка перенумерации. Она анализирует фактические номера и устанавливает нумератор на корректное значение, после чего новые объекты получают свободные номера.
Способ второй — ручное исправление конфликта. Если дубль один, откройте один из двух объектов и присвойте ему свободный номер (например, добавьте суффикс или используйте следующий свободный номер в конце диапазона). Учтите: менять номер проведённого документа, по которому уже сформированы отчёты или отправлены данные контрагентам, следует осторожно — номер фигурирует в печатных формах и учётных регистрах.
Способ третий — полная перенумерация за период. Подходит, когда номера сбиты массово. Используйте типовую обработку «Универсальная перенумерация» или аналогичную: она последовательно переприсваивает номера всем объектам за выбранный период. Перед запуском обязательно сделайте резервную копию и выполняйте операцию в монопольном режиме, чтобы никто параллельно не создавал документы.
- 1Сделайте резервную копию базы или выгрузку .dt
- 2Найдите дубли: отсортируйте список по номеру или выполните запрос по группировке
- 3Проверьте, нет ли среди дублей помеченных на удаление объектов
- 4Обновите нумерацию штатной командой или обработкой
- 5При единичном конфликте вручную присвойте свободный номер одному из объектов
- 6Создайте тестовый документ и убедитесь, что номер присваивается без ошибки
Особые случаи: справочники, обмены и префиксы
Для справочников ошибка звучит как «Код не уникальный», но суть та же. Дополнительный нюанс — подчинение: проверяйте дубли в рамках одного владельца и одной группы, если контроль настроен в пределах подчинения. Также коды могут конфликтовать после загрузки классификаторов или импорта номенклатуры из внешних файлов.
В распределённых базах и при обменах (например, между УТ и БП) обязательно используйте префиксы информационных баз. Префикс добавляется к номеру автоматически и исключает пересечения: документы центральной базы и филиала никогда не получат одинаковый полный номер. Если ошибка возникает после каждого обмена — первым делом проверьте, что префиксы заданы и различаются у всех узлов.
Ещё один сценарий — смена года. Если периодичность нумерации «в пределах года», с 1 января нумерация начинается заново, и это норма. Проблемы возникают, когда периодичность «непериодическая», а пользователи ожидают сброса, либо когда нумератор не сбросился из-за ручных правок номеров в конце прошлого года.
Как выбрать действие
Как предотвратить повторение ошибки
Самая эффективная профилактика — дисциплина работы с номерами. Запретите пользователям ручное изменение номеров документов и кодов справочников: в типовых конфигурациях это регулируется правами и функциональными опциями. Если ручной ввод номера необходим (например, для входящих документов), используйте для этого отдельный реквизит «Входящий номер», а не штатный номер объекта.
При любых загрузках данных — из файлов, из других баз, при миграции — заранее решите вопрос нумерации: либо загружаемым объектам присваиваются новые номера, либо используется отдельный префикс. Никогда не отключайте контроль уникальности «на время загрузки» без последующей проверки дублей.
Периодически, особенно после обменов и восстановлений из копий, запускайте проверку дублей номеров и актуальность нумераторов. Это занимает несколько минут и избавляет от авральных разборов в момент, когда документ нужно срочно провести.
Как проверить результат
Номер присваивается автоматически, запись проходит без сообщений
Ошибка «Номер не уникальный» появляется снова
Запрос не возвращает строк — каждый номер встречается один раз
Есть номера с количеством больше одного
Среди дублей нет помеченных объектов
Номер занят помеченным объектом — требуется удаление помеченных
Частые вопросы
Ошибка появляется только у одного пользователя. Почему?
Скорее всего, дело не в пользователе, а в моменте: именно ему нумератор выдал занятый номер. Но проверьте также, не работает ли пользователь с другой организацией или подразделением, для которых ведётся отдельная нумерация, и не пытается ли он вручную вводить номер, который уже занят.
Можно ли отключить контроль уникальности номера?
Технически да, в конфигураторе у объекта есть соответствующее свойство, но делать это в типовой конфигурации крайне не рекомендуется: дубли номеров нарушат отчётность, печатные формы и обмены. Контроль уникальности — защитный механизм, а не источник проблемы.
После перенумерации изменятся ли номера в уже распечатанных документах?
Да, если документ попал в диапазон перенумерации, его номер в базе изменится и перестанет совпадать с ранее выданной бумажной копией. Поэтому перенумерацию закрытых периодов и документов, переданных контрагентам, выполнять нельзя — исправляйте только нумератор.
Почему дубли появились после обмена с другой базой?
Обе базы нумеруют документы независимо, и без разных префиксов номера неизбежно пересекаются. Задайте каждому узлу обмена уникальный префикс в настройках синхронизации — после этого полные номера с префиксами перестанут конфликтовать.
Помеченный на удаление документ мешает записи. Что делать?
Пометка удаления не освобождает номер — объект всё ещё физически существует в базе. Выполните штатную операцию удаления помеченных объектов (раздел администрирования), после чего номер станет свободен. Либо снимите пометку, если документ ещё нужен.
Ошибка возникла сразу после новогоднего перехода. Это нормально?
Если у документа периодичность нумерации «в пределах года», с нового года нумерация начинается заново — это штатное поведение. Если при этом возникает ошибка, значит, нумератор не сбросился или вручную введённые номера прошлого года сбили счётчик — обновите нумерацию.
Что важно запомнить
Ошибка «Номер не уникальный» — следствие рассинхронизации нумератора или ручных правок номеров. Порядок решения: резервная копия, поиск дублей, обновление нумерации или точечное исправление. Для обменов используйте префиксы, а ручное изменение штатных номеров запретите на уровне прав.