Нумерация документов в 1С: настройка и исправление

· 10 мин

Содержание

Номер документа в 1С складывается из префикса и порядкового числа и присваивается автоматически в момент записи. Чтобы упорядочить нумерацию, работают с тремя рычагами: префиксом (организации и базы), периодичностью счётчика и, при необходимости, массовой перенумерацией. Пропуски номеров после удаления документов — это норма, а не сбой.

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

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

Почему номера документов сбиваются

Чаще всего обращаются с одним из этих симптомов. Определите свой случай — от него зависит способ лечения.

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

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

Разберём типичный пример с датами. Пусть за январь последняя реализация имеет номер 00000045. Пятого февраля бухгалтер вводит реализацию задним числом — 20 января. При периодичности «в пределах года» система присвоит ей 00000046, хотя по дате она должна стоять в середине января. В списке, отсортированном по дате, номера пойдут вразнобой: 44, 45, 46 (от 20.01), 47…. Формально ошибки нет, но визуально нумерация «сбита». Лечится это только перенумерацией по дате — ни настройкой префикса, ни правкой одного номера проблему не закрыть.

Как устроена автонумерация: префикс, периодичность, длина

Полный номер в 1С — это строка вида ТД‑00000123, где ТД — префикс, а 00000123 — само число фиксированной длины, дополненное нулями слева. За формирование отвечает объект «Нумератор», заданный в конфигурации.

Ключевые параметры нумерации:

  • 🔢 Длина номера — сколько знаков отводится под число. По умолчанию часто 8–11 символов.
  • 📅 Периодичность — когда счётчик обнуляется: без периодичности, в пределах года, квартала, месяца или дня. Для первичных документов обычно ставят «в пределах года».
  • 🔤 Тип номера — число или строка. От строкового типа зависит, можно ли хранить в номере буквы префикса.
  • 🚦 Проверка уникальности — если включена, система не даст записать второй документ с таким же номером в пределах периода.

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

Префиксов в типовой базе два, и они складываются:

ПрефиксГде задаётсяЗачем
Префикс организацииКарточка организации, поле префикса (обычно 2 символа)Разделяет нумерацию разных юрлиц в одной базе
Префикс информационной базыНастройки синхронизации/обменаРазделяет узлы в распределённой базе (РИБ)

Итоговый префикс = префикс базы + префикс организации. Если обе организации работают без префикса, их документы делят один счётчик — отсюда и «дубли».

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

Где настраивается автоматическая нумерация

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

Пошагово для администратора:

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

Изменение структуры (длины или типа номера) требует монопольного доступа к базе. Перед F7 убедитесь, что пользователи вышли, иначе обновление не пройдёт.

А вот то, что доступно пользователю без Конфигуратора:

  • Префикс организации — в карточке организации. Меняется в любой момент, действует на новые документы.
  • Ручная правка конкретного номера — прямо в документе (см. ниже).
  • Перенумерация обработкой — для наведения порядка в уже введённых документах.

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

Массовая перенумерация документов

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

Порядок работы с такой обработкой:

  1. Сделайте резервную копию базы — это не обсуждается.
  2. Выберите по возможности время, когда в базе никто не работает : во время перенумерации не должны вводиться новые документы того же вида.
  3. Откройте обработку через Файл → Открыть (для внешних обработок) и укажите вид документа, организацию и период.
  4. Задайте начальный номер и шаг (обычно 1).
  5. Запустите и дождитесь завершения, затем проверьте результат выборочно.

Перед запуском пройдитесь по короткому чек-листу — он закрывает типичные грабли.

Перед массовой перенумерацией
Выполнено: 0 / 5

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

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

Отдельно про границы применимости. Перенумерация хорошо работает для одного вида документов за конкретный период. Прогонять её сразу по всем видам документов за несколько лет не стоит: во-первых, это долго на больших базах, во-вторых, растёт риск задеть документы, которые уже попали в декларации и акты сверки. Разумная тактика — наводить порядок точечно, по тому виду документов и периоду, где нумерация действительно мешает работе.

Ручное исправление номера и работа с интервалами

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

Что важно помнить про ручной номер:

  • После ручного ввода свойство «номер сформирован автоматически» снимается. Такой документ при повторной записи не перенумеруется сам.
  • Следующий автоматический номер продолжится от наибольшего существующего числа в периоде, а не от вашего. Поставили вручную 500 при счётчике на 130 — новые документы пойдут с 501.
  • Если включена проверка уникальности, задать номер, который уже занят в этом периоде, система не даст.

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

Работа с интервалами — это когда нужно освободить или зарезервировать диапазон номеров (например, под документы, которые придут позже). Варианты:

  • Сдвинуть счётчик вперёд. Запишите «технический» документ с номером, с которого должна продолжиться нумерация, затем при необходимости пометьте его на удаление. Освободившийся интервал останется как пропуск.
  • Выделить диапазон префиксом. Если часть документов должна жить в своём интервале, проще дать им отдельный префикс (через отдельную организацию или доработку), чем вручную держать границы.
  • Перенумеровать участок. Когда интервал уже «съехал», ровнее всего перестроить его обработкой за конкретный период.

Руками правьте единичные номера. Как только правок больше пяти-десяти — переходите на перенумерацию обработкой, вручную вы собьётесь.

Нумерация документов в распределённой базе (РИБ)

В распределённой базе узлы работают автономно и обмениваются данными. Если у узлов нет своих префиксов, они независимо выдадут номера 00000001, 00000002 и так далее — и после обмена вы получите дубли. Поэтому главное правило РИБ: каждому узлу — свой уникальный префикс информационной базы.

Как это устроено:

  • Префикс ИБ задаётся отдельно на каждом узле (центральном и периферийных). Обычно это одна-две буквы или цифры, однозначно указывающие на узел.
  • Префикс добавляется к номеру при записи, поэтому документы разных узлов не пересекаются даже при одинаковых порядковых числах.
  • Менять префиксы узлов после начала обмена нельзя без согласования: ранее введённые документы останутся со старыми номерами, и в базе будут соседствовать два варианта префикса.

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

Перед настройкой или сменой префиксов в РИБ сделайте резервные копии всех узлов и проведите тестовый обмен. Ошибка в префиксах тиражируется по всей сети узлов.

Программные способы и нестандартные случаи

Когда стандартных настроек не хватает, номера меняют на встроенном языке. Это задача для специалиста, но знать о механизме полезно и бухгалтеру — чтобы понимать, что обещает подрядчик.

Основной инструмент — метод объекта документа УстановитьНовыйНомер(). Он присваивает следующий свободный номер с учётом префикса и периодичности. Простейшая логика перенумерации выглядит так:

Выборка = Документы.РеализацияТоваровУслуг.Выбрать();
Пока Выборка.Следующий() Цикл
    Объект = Выборка.ПолучитьОбъект();
    Объект.Номер = ""; // очищаем, чтобы номер присвоился заново
    Объект.УстановитьНовыйНомер();
    Объект.Записать();
КонецЦикла;

Полезные свойства и приёмы:

  • УстановитьНовыйНомер(Префикс) — можно передать нужный префикс явно.
  • Свойство НомерАвтоматическиСформирован показывает, ставился номер автоматически или вручную.
  • Для смены длины, типа или периодичности номера правят нумератор в Конфигураторе — кодом эти свойства не поменять.

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

Нестандартные случаи, с которыми чаще всего приходят:

  • Нужна сквозная нумерация по всем организациям. Уберите префиксы организаций — но тогда следите за уникальностью вручную или оставьте проверку уникальности включённой.
  • Требуется буквенно-цифровой номер (СЧ‑2024/15). Возможно только при строковом типе номера; формат собирают доработкой, типовой автонумератор так не умеет.
  • Номера нужно выстроить по дате оплаты, а не по дате документа. Штатная автонумерация идёт по дате документа; другую сортировку даёт только обработка.

Если точного названия метода или свойства в вашей конфигурации вы не знаете — не угадывайте, а посмотрите синтакс-помощник в Конфигураторе по слову «номер».

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

Пропущенные номера документов — это нарушение?
Нет. Законодательство не требует сплошной нумерации без пропусков. Пропуски после удаления или отмены записи документов — нормальное поведение системы, исправлять их не нужно.
Сбросится ли нумерация автоматически с 1 января?
Только если у нумератора стоит периодичность «в пределах года». При периодичности «без периодичности» счётчик продолжит расти сквозь годы. Параметр меняется в Конфигураторе.
Повлияет ли перенумерация на отчётность и проводки?
Движения документов, суммы и проводки не меняются — меняется только номер. Но печатные формы, уже выданные контрагентам, перестанут совпадать с базой, поэтому закрытые периоды обычно не перенумеровывают.
Как сделать единую нумерацию для двух организаций в одной базе?
Очистите префиксы у обеих организаций — тогда они будут делить один счётчик. Следите, чтобы была включена проверка уникальности, иначе появятся дубли.
Можно ли задать нужную длину номера, например 5 знаков?
Да, но только через Конфигуратор: длина задаётся в свойствах нумератора и требует обновления конфигурации базы данных в монопольном режиме.