Как настроить и изменить автонумерацию в 1С 8.3
Содержание
Номер документа в 1С 8.3 складывается из префикса и порядкового числа, а его длину, тип и правила сброса задают в конфигураторе — в свойствах объекта. Чтобы настроить нумерацию документов и справочников под конкретную организацию, в типовом решении чаще всего хватает одного поля Префикс в карточке организации; всё остальное меняется на уровне конфигурации и действует сразу на всю базу.
Сразу разделите два уровня. Префикс, который видит бухгалтер, правится в режиме «1С:Предприятие» — в карточке организации. А длина номера, его тип и периодичность сброса живут в конфигураторе и относятся ко всей информационной базе. Путаница между этими уровнями — главная причина, почему «настройка не сработала».
Ниже — обе части: что достаточно изменить пользователю и что требует работы в конфигураторе, плюс справочники, распределённые базы и перенумерация пачкой.
Из чего состоит номер и чем он отличается от кода
У документов есть реквизит Номер, у справочников — Код. Механизм один, но настраиваются они раздельно.
Номер состоит из двух частей:
- 🔤 префикс — буквенно-цифровая приставка (например,
ЦБ), одинаковая для группы объектов; - 🔢 порядковое число — счётчик, который платформа увеличивает автоматически.
Ключевое свойство — тип номера:
Число— только цифры, без приставок. Префикс в таком номере не хранится.Строка— можно хранить буквы, разделители и префикс. В типовых конфигурациях у документов тип номера строковый именно ради префиксов организаций.
Итоговый номер в типовом решении обычно выглядит как ЦБ000000123, где ЦБ — префикс организации, а дальше идёт счётчик, дополненный нулями до заданной длины.
Длина, тип и автонумерация: настройки в конфигураторе
Базовые свойства нумерации задаются в конфигураторе. Откройте нужный объект (документ или справочник) в дереве конфигурации и посмотрите палитру свойств — группу, отвечающую за нумерацию.
Для документа там есть:
- Длина номера — сколько знаков отводится под номер целиком, вместе с префиксом. Если упёрлись в потолок счётчика — увеличивают именно её.
- Тип номера —
ЧислоилиСтрока(см. выше). - Автонумерация — флажок. Включён по умолчанию: платформа сама присваивает следующий номер при записи.
- Контроль уникальности — флажок. Запрещает два одинаковых номера в пределах периода.
- Периодичность номера — как часто счёт начинается заново (разберём отдельно).
- Нумератор — ссылка на общий объект нумерации.
Изменение этих свойств — это правка структуры конфигурации. Чтобы они вступили в силу, нужно обновить конфигурацию базы данных в монопольном режиме. Монопольный доступ оборвёт сеансы пользователей, поэтому делайте это вне рабочего времени, а перед обновлением — на копии базы.
Если Автонумерацию снять, платформа перестанет подставлять номер сама — его придётся вводить руками при каждом создании. На практике так делают редко: обычно автонумерацию оставляют включённой, а ручной ввод используют как исключение для отдельных документов.
С длиной номера есть тонкость в обратную сторону. Уменьшать её у объекта, где уже есть документы с длинными номерами, нельзя — платформа не даст обновить конфигурацию , пока существуют значения, которые в новую длину не помещаются. Увеличивать длину можно свободно.
Нумераторы (ветка Общие → Нумераторы в конфигураторе) нужны, когда несколько видов документов должны идти по одному сквозному счёту. Создаёте один нумератор с нужной длиной и периодичностью и назначаете его всем этим документам в свойстве Нумератор. Тогда, например, счета и акты получат общую непрерывную последовательность, а не две независимые.
Префикс организации и информационной базы
Для пользователя самая частая задача — чтобы номера разных организаций не пересекались и было видно, чьи они. Для этого служит префикс.
Префикс организации задаётся в режиме «1С:Предприятие». Откройте карточку организации (в «Бухгалтерии 3.0» — раздел Главное, пункт Организации) и заполните поле Префикс — обычно это 2 знака. С этого момента новые документы организации получают приставку, а уже созданные свои номера сохраняют.
Префикс информационной базы — вторая приставка, которая встаёт перед префиксом организации. В одиночной базе её, как правило, оставляют пустой. Нужна она прежде всего для обменов и распределённых баз, где у каждого узла должен быть свой префикс ИБ (об этом ниже).
Префикс в карточке организации, режим «1С:Предприятие». Конфигуратор трогать не нужно.Периодичность номера = «В пределах года» в конфигураторе, затем обновление конфигурации базы.Длину номера в конфигураторе и обновите конфигурацию базы данных.Периодичность номера и как происходит сброс счёта
Периодичность решает, как часто счётчик обнуляется. В конфигураторе у свойства Периодичность номера доступны варианты:
| Значение | Когда счёт начинается заново |
|---|---|
| Непериодический | Никогда, сквозная нумерация за всё время |
| В пределах года | 1 января |
| В пределах квартала | В начале каждого квартала |
| В пределах месяца | 1-го числа месяца |
| В пределах дня | Каждый день |
Важная деталь, из-за которой возникает много вопросов: отдельного хранимого «счётчика» в 1С нет. При записи документа платформа находит максимальный номер в текущем периоде и прибавляет единицу. Поэтому «сброс» происходит сам собой — как только начинается новый период, максимума ещё нет и счёт идёт с первого номера.
Пример. У документа стоит периодичность «В пределах месяца». В феврале последний номер был 48. Первый мартовский документ получит не 49, а снова 1 — потому что в марте максимума ещё нет. В январе следующего года счёт тоже пойдёт с начала, независимо от декабрьских номеров.
Отсюда следствия:
- 💡 Чтобы номера начинались с 1 каждый год, достаточно задать периодичность «В пределах года». Никакой кнопки «обнулить» нажимать не нужно.
- Принудительно перезапустить счёт в середине периода кнопкой нельзя. Либо меняют периодичность, либо перенумеровывают документы (см. раздел про массовую перенумерацию).
- Если в середине года завести документ с большим номером вручную, дальше автосчёт пойдёт уже от него — платформа ориентируется на максимум.
Нумерация справочников: код и серии кодов
У справочников вместо номера — код, и набор свойств немного другой. В палитре свойств справочника в конфигураторе задают:
- Длина кода и Тип кода (
ЧислоилиСтрока) — по аналогии с документами. - Автонумерация и Контроль уникальности — те же флажки.
- Длина наименования — отдельное свойство, к коду отношения не имеет, но его часто правят заодно, когда названий перестаёт хватать.
- Основное представление — что показывать как основное: код или наименование. На сам счёт не влияет, но определяет, по какому полю элемент подбирается в списках.
- Серии кодов — свойство, которого нет у документов. Оно определяет, в каких границах код должен быть уникальным и как идёт счёт.
Варианты серий кодов:
- Во всём справочнике — сквозная нумерация, код уникален по всему списку. Подходит для простых плоских справочников.
- В пределах подчинения — счёт идёт внутри каждой группы (папки) иерархического справочника отдельно.
- В пределах подчинения владельцу — для подчинённых справочников: нумерация ведётся отдельно для каждого элемента-владельца. Так, например, у договоров код может быть уникален в рамках одного контрагента.
Если в иерархическом справочнике коды «съезжают» или дублируются между папками, проверьте именно свойство Серии кодов — чаще всего дело в нём, а не в контроле уникальности.
Нумерация в распределённых базах (РИБ)
В распределённой базе узлы работают автономно и обмениваются изменениями. Если не развести нумерацию, два узла независимо создадут документ с номером 1 — и при обмене получите конфликт.
Решение штатное: каждому узлу РИБ назначается свой префикс информационной базы. Префикс встаёт в начало номера и кода, поэтому последовательности узлов не пересекаются — Ф-000000001 в филиале и Ц-000000001 в центре спокойно живут в одной объединённой базе.
Что учесть при настройке:
- Префиксы узлам задают при создании узлов обмена, до начала работы. Менять их на ходу, когда данные уже разошлись, нельзя — старые объекты префикс не поменяют.
- Контроль уникальности работает в пределах узла. Общую уникальность по всей распределённой базе обеспечивает именно разница префиксов, а не флажок.
- Если филиалы заводят документы с одинаковыми номерами, первым делом проверяйте, что у каждого узла префикс заполнен и не совпадает с соседним.
Дубли, разрывы и сбои нумерации: что проверить
Большинство «сбоев нумерации» — это штатное поведение платформы, которое просто выглядит непривычно.
Контроль уникальности и проверьте префиксы узлов.Длину номера в конфигураторе и обновите конфигурацию базы.Отдельно про уникальность: флажок Контроль уникальности держит номера неповторяющимися в пределах периода. Его иногда временно снимают, чтобы ускорить массовую загрузку данных — проверка на каждой записи заметно замедляет импорт. Но если забыть вернуть флажок обратно, дубли начнут появляться молча, без ошибок при записи. После любой загрузки с отключённым контролем стоит свериться, что уникальность восстановлена.
Ещё один источник путаницы — ручной ввод. Как только пользователь один раз вписал номер сам, автосчёт для этого периода отталкивается уже от него. Если номер оказался выше обычного, в последовательности образуется большой скачок, и «вернуть» счёт к прежнему значению без перенумерации не получится.
Массовая перенумерация и установка номера из кода
Когда нужно перенумеровать уже существующие документы (например, после смены префикса или объединения баз), вручную это не делают. Пишут обработку, которая перебирает документы и присваивает им новый номер.
Ключевой метод — УстановитьНовыйНомер(). Нюанс: он присваивает номер только если текущий пустой. Поэтому перед вызовом номер сначала очищают:
Выборка = Документы.РеализацияТоваровУслуг.Выбрать();
Пока Выборка.Следующий() Цикл
Объект = Выборка.ПолучитьОбъект();
Объект.Номер = ""; // иначе новый номер не присвоится
Объект.УстановитьНовыйНомер();
Объект.Записать(РежимЗаписиДокумента.Запись);
КонецЦикла;
Метод УстановитьНовыйНомер() можно вызвать и с префиксом — передать строку первым параметром, если нужно принудительно задать приставку. Для справочников аналогичный метод — УстановитьНовыйКод().
Перед массовой перенумерацией обязательно сделайте резервную копию базы . Операция переписывает каждый документ, а это может запустить проводки, подписки на события и блокировки.
Запускайте перенумерацию вне рабочего времени. Массовая запись документов нагружает базу и мешает пользователям, а при большом объёме лучше сначала прогнать на копии и оценить время. Режим РежимЗаписиДокумента.Запись сохраняет документ без перепроведения — движения по регистрам остаются прежними.
Частые вопросы
Можно ли изменить номер уже проведённого документа вручную?
Почему новый документ сначала показывает один номер, а после сохранения — другой?
Можно ли вставить в номер код подразделения или дату?
Строка и формируют значение кодом в обработчике записи.Нумерация не сбрасывается с нового года — в чём причина?
Непериодический или другая, отличная от «В пределах года». Проверьте свойство Периодичность номера в конфигураторе — именно оно отвечает за ежегодный перезапуск счёта.Как убрать префикс из номеров организации?
Префикс в карточке организации. Новые документы пойдут без приставки, а у ранее созданных номера останутся со старым префиксом — задним числом они не пересчитываются.