Нумерация документов в 1С: настройка и исправление
Содержание
Номер документа в 1С складывается из префикса и порядкового числа и присваивается автоматически в момент записи. Чтобы упорядочить нумерацию, работают с тремя рычагами: префиксом (организации и базы), периодичностью счётчика и, при необходимости, массовой перенумерацией. Пропуски номеров после удаления документов — это норма, а не сбой.
Большинство «проблем с нумерацией» на деле — следствие ввода документов задним числом, нескольких организаций в одной базе или ручной правки номера. Разберём, где это настраивается и как навести порядок, не поломав уже проведённые документы.
Любые массовые изменения номеров делайте только после резервной копии базы. Номер попадает в печатные формы, которые уже ушли контрагентам.
Почему номера документов сбиваются
Чаще всего обращаются с одним из этих симптомов. Определите свой случай — от него зависит способ лечения.
Главный вывод: прежде чем перенумеровывать документы, убедитесь, что это действительно ошибка, а не нормальный пропуск или разница префиксов. В половине случаев трогать ничего не нужно.
Разберём типичный пример с датами. Пусть за январь последняя реализация имеет номер 00000045. Пятого февраля бухгалтер вводит реализацию задним числом — 20 января. При периодичности «в пределах года» система присвоит ей 00000046, хотя по дате она должна стоять в середине января. В списке, отсортированном по дате, номера пойдут вразнобой: 44, 45, 46 (от 20.01), 47…. Формально ошибки нет, но визуально нумерация «сбита». Лечится это только перенумерацией по дате — ни настройкой префикса, ни правкой одного номера проблему не закрыть.
Как устроена автонумерация: префикс, периодичность, длина
Полный номер в 1С — это строка вида ТД‑00000123, где ТД — префикс, а 00000123 — само число фиксированной длины, дополненное нулями слева. За формирование отвечает объект «Нумератор», заданный в конфигурации.
Ключевые параметры нумерации:
- 🔢 Длина номера — сколько знаков отводится под число. По умолчанию часто 8–11 символов.
- 📅 Периодичность — когда счётчик обнуляется: без периодичности, в пределах года, квартала, месяца или дня. Для первичных документов обычно ставят «в пределах года».
- 🔤 Тип номера — число или строка. От строкового типа зависит, можно ли хранить в номере буквы префикса.
- 🚦 Проверка уникальности — если включена, система не даст записать второй документ с таким же номером в пределах периода.
Номер присваивается в момент записи документа, а не при проведении. Пока документ новый и не сохранён, в поле номера стоит прочерк или <авто>. Поэтому, если вы создали документ, но не записали, его «номер» ничего не занимает.
Префиксов в типовой базе два, и они складываются:
| Префикс | Где задаётся | Зачем |
|---|---|---|
| Префикс организации | Карточка организации, поле префикса (обычно 2 символа) | Разделяет нумерацию разных юрлиц в одной базе |
| Префикс информационной базы | Настройки синхронизации/обмена | Разделяет узлы в распределённой базе (РИБ) |
Итоговый префикс = префикс базы + префикс организации. Если обе организации работают без префикса, их документы делят один счётчик — отсюда и «дубли».
Если в базе одна организация и нет обменов, префиксы можно оставить пустыми — сквозная нумерация будет сама по себе аккуратной.
Где настраивается автоматическая нумерация
Параметры нумерации документа (длина, периодичность, тип, проверка уникальности) задаются не в пользовательском режиме, а в Конфигураторе — в свойствах документа или его нумератора. Это разработческая настройка: чтобы её изменить, нужны права на конфигурацию и обновление базы.
Пошагово для администратора:
- Откройте базу в режиме
Конфигуратор. - В дереве конфигурации найдите нужный документ, откройте его свойства.
- В группе свойств, отвечающей за нумерацию, проверьте периодичность, длину и тип номера. Если документы используют общий «Нумератор» — правьте сам нумератор, тогда изменения коснутся всех связанных документов.
- Обновите конфигурацию базы данных (
F7).
Изменение структуры (длины или типа номера) требует монопольного доступа к базе. Перед F7 убедитесь, что пользователи вышли, иначе обновление не пройдёт.
А вот то, что доступно пользователю без Конфигуратора:
- Префикс организации — в карточке организации. Меняется в любой момент, действует на новые документы.
- Ручная правка конкретного номера — прямо в документе (см. ниже).
- Перенумерация обработкой — для наведения порядка в уже введённых документах.
Если типовая конфигурация снята с поддержки и дорабатывалась, названия полей и путь к нумератору могут отличаться — ориентируйтесь на свойства документа в дереве метаданных.
Массовая перенумерация документов
Когда нужно выстроить номера строго по дате и подряд, одного документа мало — нужна массовая перенумерация. В типовых конфигурациях (Бухгалтерия, ЗУП, Управление торговлей) нет штатной кнопки «перенумеровать всё». Задачу решают внешней обработкой перенумерации: она перебирает документы выбранного вида за период, сортирует по дате и присваивает новые последовательные номера.
Порядок работы с такой обработкой:
- Сделайте резервную копию базы — это не обсуждается.
- Выберите по возможности время, когда в базе никто не работает : во время перенумерации не должны вводиться новые документы того же вида.
- Откройте обработку через
Файл → Открыть(для внешних обработок) и укажите вид документа, организацию и период. - Задайте начальный номер и шаг (обычно 1).
- Запустите и дождитесь завершения, затем проверьте результат выборочно.
Перед запуском пройдитесь по короткому чек-листу — он закрывает типичные грабли.
Перенумерация меняет номера уже проведённых документов. На движения, суммы и проводки это не влияет, но печатные формы, которые вы раньше выдали контрагентам, перестанут совпадать с базой. Для закрытых налоговых периодов перенумерацию обычно не делают.
Если дорабатывать и ставить внешние обработки не хочется, тот же результат даёт небольшая обработка на встроенном языке — о ней в разделе про программные способы.
Отдельно про границы применимости. Перенумерация хорошо работает для одного вида документов за конкретный период. Прогонять её сразу по всем видам документов за несколько лет не стоит: во-первых, это долго на больших базах, во-вторых, растёт риск задеть документы, которые уже попали в декларации и акты сверки. Разумная тактика — наводить порядок точечно, по тому виду документов и периоду, где нумерация действительно мешает работе.
Ручное исправление номера и работа с интервалами
Поправить один номер можно прямо в карточке документа. Откройте документ и измените значение в поле номера. Система предупредит, что вы нарушаете автонумерацию, — это нормально, соглашайтесь, если делаете осознанно.
Что важно помнить про ручной номер:
- После ручного ввода свойство «номер сформирован автоматически» снимается. Такой документ при повторной записи не перенумеруется сам.
- Следующий автоматический номер продолжится от наибольшего существующего числа в периоде, а не от вашего. Поставили вручную 500 при счётчике на 130 — новые документы пойдут с 501.
- Если включена проверка уникальности, задать номер, который уже занят в этом периоде, система не даст.
Отдельная история — исправить номер у проведённого документа. Снимать проведение ради этого не обязательно: поле номера доступно для редактирования и у проведённого документа, движения при смене номера не пересчитываются. Но если документ входит в закрытый период, лишний раз его лучше не трогать: любая перезапись меняет дату последнего изменения и может попасть под внимание при сверке.
Работа с интервалами — это когда нужно освободить или зарезервировать диапазон номеров (например, под документы, которые придут позже). Варианты:
- Сдвинуть счётчик вперёд. Запишите «технический» документ с номером, с которого должна продолжиться нумерация, затем при необходимости пометьте его на удаление. Освободившийся интервал останется как пропуск.
- Выделить диапазон префиксом. Если часть документов должна жить в своём интервале, проще дать им отдельный префикс (через отдельную организацию или доработку), чем вручную держать границы.
- Перенумеровать участок. Когда интервал уже «съехал», ровнее всего перестроить его обработкой за конкретный период.
Руками правьте единичные номера. Как только правок больше пяти-десяти — переходите на перенумерацию обработкой, вручную вы собьётесь.
Нумерация документов в распределённой базе (РИБ)
В распределённой базе узлы работают автономно и обмениваются данными. Если у узлов нет своих префиксов, они независимо выдадут номера 00000001, 00000002 и так далее — и после обмена вы получите дубли. Поэтому главное правило РИБ: каждому узлу — свой уникальный префикс информационной базы.
Как это устроено:
- Префикс ИБ задаётся отдельно на каждом узле (центральном и периферийных). Обычно это одна-две буквы или цифры, однозначно указывающие на узел.
- Префикс добавляется к номеру при записи, поэтому документы разных узлов не пересекаются даже при одинаковых порядковых числах.
- Менять префиксы узлов после начала обмена нельзя без согласования: ранее введённые документы останутся со старыми номерами, и в базе будут соседствовать два варианта префикса.
Если дубли уже появились из-за не настроенных префиксов, сначала задайте префиксы узлам, а старые пересекающиеся документы разведите перенумерацией на одном из узлов — и только потом синхронизируйте.
Перед настройкой или сменой префиксов в РИБ сделайте резервные копии всех узлов и проведите тестовый обмен. Ошибка в префиксах тиражируется по всей сети узлов.
Программные способы и нестандартные случаи
Когда стандартных настроек не хватает, номера меняют на встроенном языке. Это задача для специалиста, но знать о механизме полезно и бухгалтеру — чтобы понимать, что обещает подрядчик.
Основной инструмент — метод объекта документа УстановитьНовыйНомер(). Он присваивает следующий свободный номер с учётом префикса и периодичности. Простейшая логика перенумерации выглядит так:
Выборка = Документы.РеализацияТоваровУслуг.Выбрать();
Пока Выборка.Следующий() Цикл
Объект = Выборка.ПолучитьОбъект();
Объект.Номер = ""; // очищаем, чтобы номер присвоился заново
Объект.УстановитьНовыйНомер();
Объект.Записать();
КонецЦикла;
Полезные свойства и приёмы:
УстановитьНовыйНомер(Префикс)— можно передать нужный префикс явно.- Свойство
НомерАвтоматическиСформированпоказывает, ставился номер автоматически или вручную. - Для смены длины, типа или периодичности номера правят нумератор в Конфигураторе — кодом эти свойства не поменять.
Любая обработка, меняющая данные, запускается только после резервной копии. Операции со структурой (длина, тип номера) выполняются в монопольном режиме, иначе обновление конфигурации не пройдёт и сеансы пользователей оборвутся.
Нестандартные случаи, с которыми чаще всего приходят:
- Нужна сквозная нумерация по всем организациям. Уберите префиксы организаций — но тогда следите за уникальностью вручную или оставьте проверку уникальности включённой.
- Требуется буквенно-цифровой номер (
СЧ‑2024/15). Возможно только при строковом типе номера; формат собирают доработкой, типовой автонумератор так не умеет. - Номера нужно выстроить по дате оплаты, а не по дате документа. Штатная автонумерация идёт по дате документа; другую сортировку даёт только обработка.
Если точного названия метода или свойства в вашей конфигурации вы не знаете — не угадывайте, а посмотрите синтакс-помощник в Конфигураторе по слову «номер».