В типовых конфигурациях 1С, таких как Управление торговлей 11.2, для большинства документов (заказы, реализации, поступления) установлена периодичность нумерации «В пределах года». Это означает, что с наступлением 1 января каждого года счетчик обнуляется и первый документ получает номер «1». Однако в ряде бизнес-процессов, например, когда заказы выполняются более года, требуется сохранение сквозной (непрерывной) нумерации. Рассмотрим подробнее, как это реализовать и с какими техническими сложностями можно столкнуться.
Самый очевидный технический путь — изменить настройки документа в конфигураторе. Если установить свойство Периодичность в значение Непериодический, платформа перестанет обнулять номера в начале года. Проанализируем последствия этого шага:
Разберем самый простой вариант, не требующий изменения конфигурации. В начале нового года для первого созданного документа каждого вида (например, «Заказ клиента») необходимо вручную вбить номер, следующий за последним номером предыдущего года. Например, если последний заказ в декабре был №15000, то первому заказу в январе присваиваем №15001.
Преимущества:
Риски:
Если пользователь допустит ошибку в длине номера или случайно удалит ведущие нули, механизм автоинкремента может «сломаться». 1С использует строковую сортировку, и номера типа «999» и «1000» могут сортироваться некорректно, если в номере недостаточно знаков. Всегда следите за тем, чтобы количество символов в номере оставалось неизменным.
Посмотрим на ситуацию, когда важно соблюсти последовательность, но не обязательно отказываться от годовой периодичности. Можно использовать расширенные префиксы. Например, добавление префикса года (две цифры) перед основным номером документа. Таким образом, номера будут выглядеть как 16-00001, 17-00001 и так далее.
Некоторые специалисты используют формат даты в номере: ГГММДДххх. Это позволяет избежать дублей и всегда понимать дату документа по его номеру. Для реализации такого подхода потребуется программное вмешательство в процедуру ПриУстановкеНовогоНомера.
Проанализируем наиболее гибкий и безопасный метод — использование подписки на событие ПриУстановкеНовогоНомера. Это позволяет не менять свойства метаданных, но программно управлять тем, какой номер будет предложен пользователю.
Алгоритм действий будет следующим:
Номер.Пример логики поиска номера (схематично):
Процедура ПриУстановкеНовогоНомера(Источник, СтандартнаяОбработка, Префикс)
// Отключаем стандартный механизм, если нужно свое правило
// Находим последний номер в базе за все периоды
// Формируем новый номер с учетом префикса организации
КонецПроцедуры
Выясним, как сквозная нумерация соотносится с требованиями законодательства. Для первичных управленческих документов (заказы, внутренние требования) ограничений нет. Однако для Счетов-фактур ситуация сложнее. Согласно правилам ведения журналов учета, нумерация счетов-фактур должна быть возобновляемой с начала календарного года. Сквозная нумерация между годами прямо не запрещена, но она является нетипичной и может вызвать вопросы при налоговых проверках и встречных сверках с контрагентами.
Если ваша цель — «солидность» перед клиентом или удобство отслеживания длительных заказов, мы рекомендуем остановиться на варианте с ручной корректировкой первого номера года или программном добавлении префиксов. Изменение свойства «Периодичность» в метаданных — крайняя мера, которая повлечет за собой сложности при обмене с бухгалтерскими программами и может потребовать серьезной переработки правил синхронизации.
Помните: Любое ручное вмешательство в номер (удаление лидирующих нулей, добавление пробелов) может привести к тому, что автонумерация перестанет работать корректно до конца года или до ручного исправления всех «ошибочных» номеров.