Настройка нумерации документов в 1С 8.3: от префиксов до счётчиков
Содержание
Номер документа в 1С складывается из двух частей: префикса (буквы и дефис в начале, например АБ-) и счётчика, который платформа увеличивает на единицу при создании каждого нового документа. Префикс задаётся в карточке организации или в коде, а поведение счётчика — периодичность, тип и длину — в Конфигураторе, в свойствах объекта «Документ».
Если нужно просто поменять буквы перед номером у конкретной организации — это делается в режиме Предприятия за минуту, без программиста. Если же счётчик должен сбрасываться по-другому или вести единую сквозную нумерацию по нескольким видам документов — потребуется зайти в Конфигуратор. Ниже разберём оба пути и типовые сбои, из-за которых появляются дубли и разрывы.
Из чего состоит номер и как платформа его выдаёт
У каждого документа в 1С есть два служебных реквизита — Номер и Дата. Их нельзя удалить, они встроены в объект. Номер платформа присваивает автоматически в момент, когда вы создаёте новый документ: берёт последний использованный номер за текущий период и прибавляет единицу.
Номер бывает двух типов:
- 🔢 Число — чистый счётчик без букв. Подходит для внутренних документов, где префиксы не нужны.
- 🔠 Строка — номер хранится как текст. Именно этот тип используют типовые конфигурации (БП 3.0, ЗУП 3.1, УТ 11), потому что строка позволяет добавить буквенный префикс перед цифрами.
Два других параметра задают рамки счётчика:
- Длина номера — сколько символов отводится под номер целиком, вместе с префиксом. Если длина 11, а префикс занимает 3 символа, под цифры остаётся 8.
- Периодичность — когда счётчик обнуляется: каждый год, квартал, месяц, день или никогда.
В типовых конфигурациях счётчик по умолчанию сбрасывается в пределах года. Поэтому 1 января нумерация документов начинается заново с единицы — это штатное поведение, а не ошибка.
Важная деталь: к какому периоду относится номер, определяет дата документа, а не момент создания. Если вы завели документ, а потом поменяли дату на прошлый год, платформа подберёт следующий свободный номер уже из прошлогоднего периода. Поэтому при переносе документа между периодами номер может измениться.
Контроль уникальности, если он включён, работает в границах одного периода и одного префикса. То есть номер АБ-0001 за 2025 год и такой же за 2026-й конфликтом не считаются — это разные периоды.
Как сменить префикс в режиме Предприятия
Самый частый запрос — поменять буквы в начале номера, не трогая Конфигуратор. В типовых решениях за это отвечает префикс организации.
Откройте карточку нужной организации (в БП 3.0 — раздел Главное → Организации, в УТ 11 и ЗУП 3.1 — раздел с нормативно-справочной информацией, где ведётся список организаций). В карточке есть поле «Префикс» — обычно на 2 символа. Впишите туда нужные буквы, запишите карточку.
После этого у всех новых документов этой организации перед номером появятся заданные буквы. Уже проведённые документы автоматически не перенумеруются — префикс применится только к тем, что вы создадите после изменения.
Порядок действий:
- Открыть карточку организации.
- Заполнить поле «Префикс» (латиница или кириллица, обычно до 2 знаков).
- Записать и закрыть карточку.
- Создать новый документ — убедиться, что префикс встал на место.
Если в базе несколько организаций, задайте каждой свой префикс. Иначе их документы будут делить один счётчик, и при одинаковой дате возможны одинаковые номера.
В конфигурациях на Библиотеке стандартных подсистем есть ещё префикс информационной базы — отдельные буквы, которые добавляются ко всем документам базы. Он нужен в распределённых базах (РИБ) и обменах, чтобы узлы не выдавали пересекающиеся номера. Задаётся он в настройках обмена/администрирования; трогать его без необходимости не стоит.
Когда в базе заданы оба префикса, они складываются в фиксированном порядке — сначала префикс информационной базы, затем префикс организации, и только потом цифры счётчика. Поэтому при планировании длины номера закладывайте запас под оба префикса сразу, иначе цифр останется слишком мало.
Как префиксы разделяют потоки документов
Префикс — это не украшение, а способ держать параллельные потоки нумерации в одной базе. Логика простая: номера с разными префиксами не конфликтуют между собой, потому что платформа при автонумерации сравнивает номера только внутри одного префикса.
Где это применяют:
- 🏢 Несколько организаций — у каждой свой префикс (
ЦБ-,ТД-), и счётчики у них независимые. - 🌐 Обмены и РИБ — префикс информационной базы отделяет документы одного узла от другого.
- 📑 Разные виды документов — здесь префикс обычно «вшит» разработчиком в код (например, у счёта на оплату свои буквы, у реализации — свои).
Если нужно не просто добавить буквы к номеру организации, а задать префикс для конкретного вида документа независимо от типовой логики, это делается программно — через обработчик ПриУстановкеНовогоНомера (разберём ниже).
ПриУстановкеНовогоНомера модуля документа — потребуется Конфигуратор.Сквозная нумерация и сброс счётчика
Два противоположных сценария — когда счётчик должен обнуляться и когда он должен идти непрерывно.
Сброс по периоду. За это отвечает свойство «Периодичность номера». Доступные варианты:
| Периодичность | Когда счётчик сбрасывается |
|---|---|
| Непериодический | Никогда (сквозная нумерация) |
| В пределах года | 1 января |
| В пределах квартала | В начале каждого квартала |
| В пределах месяца | 1-го числа каждого месяца |
| В пределах дня | Каждый день |
Чтобы нумерация шла без сброса — сквозной нумерацией на годы вперёд — поставьте периодичность «Непериодический». Тогда номер никогда не вернётся к единице.
Единая нумерация по нескольким видам документов. Если нужно, чтобы, скажем, два разных документа имели общий сквозной счётчик (номер 1, 2, 3 — независимо от того, какой из двух видов создали), используют объект «Нумератор».
Нумератор — это отдельный объект метаданных в Конфигураторе. Вы создаёте один нумератор, задаёте в нём тип, длину и периодичность номера, а затем в свойствах каждого нужного документа указываете этот нумератор. После этого документы перестают считать номера по отдельности и берут их из общего счётчика.
Нумератор удобен, когда по регламенту несколько родственных документов должны идти единой последовательностью — например, для сквозной нумерации в журнале.
Гибкая нумерация через регистр сведений
Штатная автонумерация присваивает номер в момент создания документа. У этого есть минус: если пользователь открыл новый документ и закрыл не записав, зарезервированный номер «теряется» — появляется разрыв.
Когда нужна строго непрерывная нумерация без дыр (например, по требованию учётной политики), применяют приём с независимым регистром сведений:
- Создают регистр сведений , который хранит последний выданный номер (в разрезе организации, вида документа и т. п.).
- В обработчике проведения или записи документа номер берут из регистра, увеличивают на единицу и сохраняют обратно.
- Номер присваивается только тем документам, что реально записаны, — черновики номер не расходуют.
Такой механизм — это уже доработка под задачу, а не штатная настройка. Делать его стоит, только если разрывы в номерах действительно недопустимы: он сложнее и требует аккуратной блокировки, чтобы два пользователя не получили один номер одновременно.
Настройка нумерации в Конфигураторе
Всё поведение счётчика задаётся в свойствах объекта «Документ». Откройте Конфигуратор, в дереве конфигурации найдите нужный документ, вызовите его свойства (палитра свойств). Отвечают за нумерацию:
- Нумерация —
АвтоматическаяилиРучная. При автоматической платформа сама подставляет следующий номер; при ручной номер вводит пользователь. - Тип номера —
СтрокаилиЧисло. - Длина номера — максимальное число символов.
- Периодичность номера — варианты из таблицы выше.
- Контроль уникальности — флаг; при включении платформа не даст записать документ с номером, который уже занят в этом периоде.
- Нумераторы — ссылка на общий нумератор, если документ должен делить счётчик с другими.
Правки в Конфигураторе меняют структуру и требуют обновления конфигурации базы данных. Для этого нужен монопольный доступ: все пользователи должны выйти из базы, иначе обновление не пройдёт. В типовых конфигурациях на поддержке меняйте свойства через расширение конфигурации, чтобы не снимать с поддержки.
Префикс в коде. Чтобы добавить или изменить префикс программно, в модуле объекта документа используют предопределённый обработчик события:
Процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс)
// Префикс — строка, которая встанет перед номером
Префикс = "АБ-";
КонецПроцедуры
Параметр Префикс вы заполняете нужной строкой — платформа подставит её перед автоматическим номером. Если оставить СтандартнаяОбработка равной Истина (по умолчанию), счётчик продолжит работать штатно, просто с вашим префиксом.
Для справочников аналогичную роль играет обработчик ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс) — он задаёт префикс кода элемента.
Несколько практических замечаний по свойствам:
- Если выключить контроль уникальности, платформа перестанет следить за повторами — дубли станут возможны при любой загрузке или ручном вводе. Отключать его стоит осознанно.
- Свойство «Нумерация: Ручная» имеет смысл для документов, номера которых приходят извне (например, входящие счета поставщика), чтобы хранить их «как есть».
- Если документ ссылается на нумератор, собственные свойства типа и длины номера у него отключаются — всё берётся из нумератора. Меняйте настройки в самом нумераторе.
После правки свойств нужно обновить конфигурацию базы данных (клавиша F7 в Конфигураторе). Именно этот шаг требует монопольного доступа и временно прерывает работу пользователей, поэтому планируйте его на нерабочее время.
Почему появляются разрывы и дубли и как их исправить
Два самых частых вопроса по нумерации — пропуски в номерах и повторяющиеся номера. Причины у них разные.
Что проверить при дублях по порядку:
- Заданы ли префиксы у всех организаций и узлов обмена — они не должны совпадать.
- Включён ли контроль уникальности у документа в Конфигураторе.
- Не редактировали ли номера вручную — ручная правка легко создаёт пересечения.
- Корректна ли периодичность: если в одной базе смешаны непериодические и годовые счётчики, в стыках периодов возможны совпадения.
Перед массовой перенумерацией или правкой свойств нумерации в Конфигураторе сделайте резервную копию базы. Перенумерация меняет номера во всех движениях и печатных формах — откатить вручную будет долго.
Частые вопросы
Можно ли ввести номер документа вручную?
Ручная. При автоматической нумерации поле номера заполняется платформой, но в типовых конфигурациях его обычно можно отредактировать в самой карточке документа — при условии, что новый номер не нарушит контроль уникальности.