Нумераторы в 1С 8.3: просмотр, настройка и сброс нумерации документов

· 9 мин

Содержание

Нумератор в 1С — это объект конфигурации, который хранит правила нумерации документов: длину номера, его тип, периодичность и контроль уникальности. Посмотреть сам нумератор можно только в Конфигураторе — в ветке Общие → Нумераторы. В режиме Предприятия объект недоступен, но виден результат его работы: готовые номера в любом журнале документов.

Один нумератор назначают сразу нескольким видам документов — тогда у них будет сквозная, общая нумерация. Если у документа собственный нумератор не указан, он нумеруется сам по себе, отдельным счётчиком. Отсюда и большинство вопросов: почему номера идут вперемешку, почему счётчик сбрасывается 1 января и как задать для группы документов единый порядок.

Что такое нумератор и какие у него свойства

Нумератор — общий объект метаданных. В дереве конфигурации он лежит отдельной веткой Общие → Нумераторы, рядом с общими модулями и общими реквизитами. Его назначение — вынести правила нумерации в одно место и переиспользовать их, чтобы не настраивать длину и периодичность отдельно у каждого документа. Поменяли нумератор один раз — изменение разошлось по всем документам, которые на него ссылаются.

У нумератора несколько свойств. От них зависит, как будет выглядеть номер и когда счётчик обнулится. Разберём каждое, потому что именно в этих настройках кроются почти все «странности» с нумерацией.

СвойствоЧто задаёт
Длина номераМаксимальное число знаков. Для строкового типа — ширина поля
Тип номераСтрока (можно буквы и префикс) или Число (только цифры)
ПериодичностьКогда счётчик начинается заново: непериодический, в пределах года, квартала, месяца или дня
АвтонумерацияПрисваивать ли новому документу номер автоматически
Контроль уникальностиПроверять, что такого номера в периоде ещё не было

Отдельного «вида» нумератора как типа объекта в 1С нет — объект один. Но на практике различают две ситуации: общий нумератор, назначенный нескольким документам, и собственная нумерация документа, когда поле «Нумератор» у него пустое и работают его личные настройки длины и периодичности.

Два свойства часто понимают неверно:

  • 🔸 Автонумерация — если включена, новый документ сразу получает номер при создании. Если выключить, поле номера останется пустым до тех пор, пока его не заполнят вручную или программно.
  • 🔸 Контроль уникальности — если включён, система не даст записать два документа с одинаковым номером в пределах периода. Выключать его без причины не стоит: именно он защищает от дублей.

Периодичность проще понять на примере. При значении «В пределах года» счётчик уникален внутри одного года: в 2025-м номера идут 1, 2, 3…, а в 2026-м снова начинаются с 1. Полное совпадение номеров в разных годах — это не ошибка, они различаются датой. При непериодическом нумераторе номер один раз присвоенный больше не повторится никогда.

Если нужна единая нумерация, например, для всех исходящих писем разных видов — создаётся один нумератор, и он проставляется каждому документу в свойстве «Нумератор».

Как узнать текущий номер в режиме Предприятия

Сам нумератор в пользовательском режиме не открыть — это объект разработки. Зато виден его результат, и чаще всего пользователю нужно именно это: узнать, на каком номере сейчас стоит счётчик.

Порядок такой:

  1. Откройте журнал или список нужных документов (например, Продажи → Реализация (акты, накладные)).
  2. Выведите колонку «Номер», если её нет: правой кнопкой по шапке списка → настройка колонок.
  3. Отсортируйте список по дате по убыванию — верхний документ покажет последний занятый номер.

Если в списке включён отбор по периоду или по организации, последний номер вы увидите только внутри этого отбора. Чтобы оценить счётчик целиком, снимите отборы — иначе легко решить, что номеров меньше, чем есть на самом деле.

Есть нюанс: номер документа — строка, а не число. Поэтому при сортировке «по номеру» программа сравнивает строки посимвольно, и номер 000000010 встанет раньше 000000002 не всегда очевидным образом. Для надёжной оценки «последнего номера» сортируйте по дате, а не по номеру.

Номер почти всегда состоит из двух частей — префикса и собственно счётчика. Префикс задаётся не в нумераторе, а в настройках программы. Во многих типовых конфигурациях префикс организации указывается в карточке организации (поле «Префикс»), а общий префикс базы — в настройках программы раздела Администрирование. Если видите в номере буквы перед цифрами (АБ-000000123) — это и есть префикс.

Разберём типичный номер АБ-000000123 по частям:

  • АБ — префикс (код организации или базы);
  • - — разделитель, его подставляет алгоритм нумерации в модуле документа;
  • 000000123 — счётчик, дополненный нулями слева до длины номера.

Понимание этой структуры сразу снимает половину вопросов: если «номера разные у одинаковых документов», почти всегда отличается именно префикс, а счётчик совпадает.

Анализ нумерации через консоль запросов

Когда номеров много и нужно найти пропуски или дубли, удобнее не листать журнал, а выгрузить номера запросом. Для этого подойдёт внешняя обработка «Консоль запросов» — её открывают через Файл → Открыть в режиме Предприятия (нужны права на открытие внешних обработок).

Простой запрос — выбрать все номера по порядку:

ВЫБРАТЬ
    Номер,
    Дата
ИЗ
    Документ.РеализацияТоваровУслуг
УПОРЯДОЧИТЬ ПО
    Дата

Найти задвоенные номера — сгруппировать по номеру и отобрать те, что встречаются больше одного раза:

ВЫБРАТЬ
    Номер,
    КОЛИЧЕСТВО(Ссылка) КАК Повторов
ИЗ
    Документ.РеализацияТоваровУслуг
СГРУППИРОВАТЬ ПО
    Номер
ИМЕЮЩИЕ
    КОЛИЧЕСТВО(Ссылка) > 1

Посмотреть максимальный номер по годам — полезно, чтобы понять, сбрасывается ли счётчик:

ВЫБРАТЬ
    ГОД(Дата) КАК Год,
    МАКСИМУМ(Номер) КАК МаксимальныйНомер
ИЗ
    Документ.РеализацияТоваровУслуг
СГРУППИРОВАТЬ ПО
    ГОД(Дата)

Помните, что МАКСИМУМ по строковому номеру работает как сравнение строк, а не чисел. Для грубой оценки этого хватает, но для точного «самого большого числа» номер в запросе лучше привести к числу через ВЫРАЗИТЬ, предварительно убрав префикс.

Консоль запросов удобна ещё и тем, что ничего не меняет в базе — это инструмент только для чтения. Поэтому запускать её на рабочей базе безопасно, монопольный доступ не нужен. Главное — не путать её с обработками, которые массово меняют документы: вот их на рабочей базе без копии запускать нельзя.

Где посмотреть и изменить нумератор в Конфигураторе

Сам объект правят только в Конфигураторе. Чтобы его найти:

  1. Откройте Конфигуратор (Конфигуратор в окне запуска 1С).
  2. Откройте дерево конфигурации: Конфигурация → Открыть конфигурацию.
  3. Разверните ветку Общие → Нумераторы.
  4. Дважды кликните по нужному нумератору — откроется палитра свойств.

Чтобы увидеть, каким нумератором пользуется конкретный документ, откройте документ в дереве (Документы → ...) и посмотрите свойство «Нумератор». Пустое значение означает, что документ нумеруется собственными настройками, они тут же рядом — «Длина номера», «Тип номера», «Периодичность номера».

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

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

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

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

Если конфигурация типовая и стоит на поддержке, менять нумераторы напрямую — не лучшая идея: при следующем обновлении правки могут конфликтовать с поставкой. В таком случае нужный алгоритм номера аккуратнее вынести в расширение конфигурации , не трогая основную.

Сброс и автоматизация нумерации

Отдельной кнопки «сбросить счётчик» в 1С нет. Счётчик не хранится как отдельное число — очередной номер вычисляется от уже существующих документов: берётся максимальный номер в текущем периоде и увеличивается на единицу.

Отсюда два практических вывода.

Автоматический сброс делает периодичность. Поставьте нумератору периодичность «В пределах года» — и 1 января нумерация пойдёт заново с первого номера, потому что в новом году ещё нет документов. Нужен сброс каждый месяц — выберите «В пределах месяца». Непериодический нумератор не сбрасывается никогда, номера растут сквозняком.

Начать нумерацию с нужного числа проще, чем кажется. Счётчик всегда отталкивается от максимального существующего номера. Если задать первому документу номер вручную — например, 000001000 — следующий документ в этом же периоде получит 000001001. Так делают, когда переносят учёт из другой программы и хотят продолжить прежнюю нумерацию без разрыва. Главное, чтобы длины номера хватало на нужную величину, иначе номер обрежется, а контроль уникальности не даст записать второй документ с тем же числом.

Ручной сброс — это, по сути, перенумерация существующих документов. Безопасной штатной операции для этого нет. Менять номера проведённых документов задним числом опасно: ломается хронология, печатные формы, ссылки в других документах.

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

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

Частые проблемы с нумерацией

Большинство жалоб сводится к нескольким типовым ситуациям. Найдите свою и действуйте по подсказке.

Диагностика: выберите симптом

Частые вопросы

Можно ли посмотреть нумератор в режиме Предприятия без Конфигуратора?
Сам объект — нет, это метаданные. Но текущие номера и остаток счётчика видно в журнале документов: отсортируйте список по дате и посмотрите последний занятый номер.
Чем нумератор отличается от префикса?
Нумератор задаёт правила счётчика (длину, периодичность, уникальность). Префикс — это буквы или код перед счётчиком (АБ-000...), он добавляется отдельно, в настройках организации и базы, а не в самом нумераторе.
Почему в нумерации пропадают номера?
Номер резервируется при записи документа. Если документ потом удалили, его номер уже не вернётся — получается пропуск. Это штатное поведение, а не ошибка.
Как сделать, чтобы несколько видов документов нумеровались подряд?
Назначьте всем этим документам один общий нумератор из ветки Общие → Нумераторы. Счётчик станет сквозным для всей группы.
Нужен ли монопольный доступ, чтобы изменить нумератор?
Да, если меняется структура номера (длина, тип, периодичность). После правки выполняется обновление конфигурации базы данных, а оно требует завершить все пользовательские сеансы.