Администрирование · 12 мин
Где хранится последний номер документа в 1С и как исправить нумерацию
Где 1С хранит последний номер документа, как работает нумерация, почему возникают дубли и как безопасно исправить номер вручную или обработкой.
Каждый документ в 1С получает номер при записи, и многие пользователи сталкиваются с ситуацией, когда нумерация «сбивается»: появляются пропуски, дубли или номера с неожиданными префиксами. Чтобы понять, как это исправить, нужно знать, где платформа хранит информацию о последнем выданном номере и как именно работает механизм нумерации.
Коротко: в 1С нет отдельной таблицы «последних номеров», куда пользователь может зайти и посмотреть значение. Платформа вычисляет следующий номер на основе уже записанных документов с учётом периодичности, префиксов и настроек нумератора. Поэтому «сбой нумерации» — это чаще всего не сломанный счётчик, а наличие документа с неожиданным номером, от которого система продолжает отсчёт.
Ниже разобрано, как устроен механизм нумерации, где физически хранятся номера, как найти документ, который «сдвигает» счётчик, и как безопасно восстановить правильную последовательность в типовых конфигурациях и через код.
Как устроена нумерация документов в 1С
Номер документа — это обычный реквизит таблицы документа в базе данных. Когда пользователь создаёт новый документ, платформа в момент записи определяет для него очередной номер. Для этого система ищет максимальный существующий номер среди документов того же вида в границах периода нумерации и с тем же префиксом, затем увеличивает его на единицу.
Ключевые свойства, влияющие на нумерацию, задаются в конфигураторе для каждого вида документов: длина номера, периодичность (в пределах года, квартала, месяца, дня или неограниченно), контроль уникальности и автонумерация. Если автонумерация включена, пользователю не нужно ничего вводить — номер подставится автоматически при записи.
Важно понимать: номер хранится как строка, а не как число. Поэтому «000000009» и «9» для платформы — разные строки, и сравнение идёт с учётом формата. Именно поэтому ручная правка номера в нестандартном формате способна «сломать» последующую автонумерацию.
Где физически хранятся номера документов
В файловой базе номера хранятся внутри файла 1Cv8.1CD в таблицах соответствующих документов. В клиент-серверном варианте (MS SQL, PostgreSQL, Oracle) — в таблицах вида _DocumentXXX на стороне СУБД, где номер содержится в поле Number. Прямой доступ к этим таблицам средствами SQL не предназначен для работы пользователя и не поддерживается вендором.
Отдельного «счётчика последнего номера», который можно открыть и посмотреть, в типовой поставке нет. Следующий номер вычисляется динамически: платформа выполняет поиск максимального номера с учётом префикса и границ периода. Именно поэтому «обнулить счётчик» напрямую нельзя — можно только повлиять на данные, от которых он считается.
Исключение — механизм «Обновление нумерации объектов», который в некоторых ситуациях помогает платформе перестроить служебную информацию о нумерации. Он доступен через код и в некоторых типовых обработках, но он не редактирует номера документов, а лишь корректирует внутреннее состояние нумераторов.
Почему нумерация сбивается: типичные причины
Самая частая причина — ручное изменение номера. Пользователь вводит номер в свободном формате, например «123-ю» или «А-5», и платформа начинает считать следующие номера от этого значения или не может корректно увеличить его. Вторая причина — обмен данными: документы из другой базы приходят со своими префиксами и номерами, которые попадают в общий диапазон.
Третья группа причин — удаление и восстановление документов. Если удалить последний документ, при новой записи номер может быть переиспользован, что при обмене с контрагентами вызывает путаницу. Также на нумерацию влияет смена префикса организации или информационной базы: номера с новым префиксом начинаются заново.
Реже встречаются ситуации после восстановления базы из копии, переноса данных обработками и обновления конфигурации, когда меняются настройки нумераторов или периодичность. Во всех этих случаях «счётчик» не сломан — изменились исходные данные, от которых он вычисляется.
Найдите документ с максимальным или нестандартным номером в текущем периоде
Проверьте префиксы организаций и настройки нумерации вида документа
Проверьте дату документа и префикс базы в настройках
Откройте документ и приведите номер к стандартному формату
Как найти документ, который сдвигает нумерацию
Откройте список документов нужного вида и отсортируйте его по колонке «Номер» в обратном порядке. Документ с самым «большим» номером будет вверху — именно от него платформа вычисляет следующий. Обратите внимание на номера с нестандартным форматом: буквы, дефисы, лишние нули, пробелы.
Убедитесь, что смотрите на правильный период. Если нумерация ведётся в пределах года, документ прошлого года не влияет на текущую нумерацию. Отберите список по текущему году (или иному периоду, заданному в настройках вида документа) и повторите сортировку.
Если номера выглядят одинаково, но дубли всё равно возникают, проверьте префиксы. В типовых конфигурациях префикс может задаваться у организации и у информационной базы, а при обмене — у узла плана обмена. Два документа с номером «000000015», но с разными префиксами, для платформы уникальны.
- 1Откройте журнал нужного вида документов и установите отбор по текущему периоду нумерации
- 2Отсортируйте список по колонке «Номер» по убыванию
- 3Найдите документ с нестандартным или максимальным номером
- 4Проверьте префикс документа и организацию
- 5Откройте документ и исправьте номер на корректный либо перенесите документ в конец периода
- 6Создайте новый документ и убедитесь, что номер присваивается правильно
Как исправить нумерацию штатными средствами
Самый безопасный способ — исправить номер проблемного документа вручную. Откройте документ, переведите его в режим редактирования номера (в типовых конфигурациях поле номера может быть недоступно — тогда используйте команду «Ещё» → «Редактировать номер» или аналогичную) и укажите корректное значение в стандартном формате с лидирующими нулями.
В типовых конфигурациях есть служебные обработки для массового перенумерования, например в разделах администрирования или в составе «Инструментов разработчика». Перенумерация изменяет номера сразу у группы документов — применяйте её только после резервного копирования и при отсутствии документов, уже переданных контрагентам или в отчётность.
Если сбой связан со служебным состоянием нумераторов, можно вызвать метод платформы ОбновитьНумерациюОбъектов() для конкретного вида документов. Это безопасная операция: она не меняет номера существующих документов, а лишь обновляет внутреннюю информацию, по которой вычисляется следующий номер.
ОбновитьНумерациюОбъектов(Метаданные.Документы.РеализацияТоваровУслуг);Особенности: префиксы, обмены и периодичность
Префикс — полноценная часть номера. При обмене между базами каждой базе назначается свой префикс, чтобы номера не пересекались. Если префикс базы случайно изменили или очистили, новые документы начнут нумероваться заново и рано или поздно столкнутся с существующими номерами.
Периодичность нумерации определяет, когда отсчёт начинается заново. При годовой периодичности с первого января нумерация стартует с единицы — это норма, а не сбой. Если же документ ошибочно провели датой из следующего периода, он создаст «якорь», от которого пойдёт отсчёт в новом периоде.
В распределённых базах и при обмене с сайтом или ЭДО номера могут приходить извне. Такие документы записываются с номером источника, и если он попадает в диапазон вашей нумерации, следующий автономер сместится. Решение — выделить для внешних документов отдельный префикс.
Способы исправления нумерации
Подходит для единичного сбоя. Ограничение: нельзя трогать документы, уже ушедшие контрагентам или в отчётность
Подходит для массового сбоя внутри закрытого периода. Требует копии базы и проверки связанных данных
Подходит при рассогласовании служебных данных нумератора. Не меняет существующие номера, безопасно, но не лечит ручные правки
Подходит при конфликте нумерации из обменов. Ограничение: меняет формат номеров для всех новых документов
Типичные ошибки и границы самостоятельной работы
Главная ошибка — править номера «как попало», без учёта формата. Если стандартный номер имеет вид «000000123», то ввод «123» создаст строку меньшей длины, и автонумерация может пойти непредсказуемо. Всегда сохраняйте длину и структуру номера, принятую в конфигурации.
Вторая ошибка — перенумерация прошлых периодов, по которым сдана отчётность. Номера счетов-фактур и УПД фигурируют в книге покупок и продаж, и их изменение после сдачи декларации создаёт расхождения с данными налогового учёта.
Третья ошибка — попытка «починить счётчик» прямым редактированием таблиц базы данных. Это неподдерживаемый сценарий, который может повредить базу. Если штатные средства не помогают, а сбой массовый, задача относится к зоне ответственности администратора или разработчика 1С.
Как проверить результат
Номер продолжает правильную последовательность в стандартном формате
Номер снова начинается с единицы или содержит лишние символы
Номера идут последовательно без пропусков нестандартного вида
В середине списка номера с другим форматом или префиксом
Каждый номер встречается один раз в пределах префикса и периода
Найдено несколько документов с одинаковым номером и префиксом
Частые вопросы
Можно ли посмотреть последний номер документа без создания нового?
Да. Откройте журнал нужного вида документов, установите отбор по текущему периоду нумерации и отсортируйте по колонке «Номер» по убыванию — верхняя строка покажет максимальный номер, от которого пойдёт отсчёт. Отдельного окна «последний номер» в интерфейсе нет.
Почему в начале января нумерация началась с единицы — это сбой?
Нет, если у вида документов установлена периодичность «в пределах года» — это штатное поведение. Проверить настройку можно в конфигураторе в свойствах документа на закладке «Нумерация» или уточнить у администратора.
Что делать, если два документа имеют одинаковый номер?
Сначала проверьте префиксы: одинаковый номер с разными префиксами допустим. Если префиксы совпадают, измените номер более позднего документа на свободный, соблюдая стандартный формат, и проверьте, не отключён ли контроль уникальности в настройках нумерации.
Безопасно ли перенумеровывать документы за прошлый квартал?
Только если по этим документам не сдавалась отчётность и они не передавались контрагентам. Номера счетов-фактур и УПД попадают в налоговые регистры, поэтому их изменение после отчётности недопустимо. Перед любой массовой перенумерацией сделайте резервную копию базы.
Документ удалили, и его номер выдался заново — как избежать путаницы?
Платформа переиспользует освободившийся максимальный номер, это нормальное поведение. Если документ с этим номером уже печатался или передавался, вручную назначьте новому документу следующий свободный номер, чтобы внешние и внутренние данные не смешивались.
Чем обновление нумерации отличается от перенумерации?
Обновление нумерации (метод ОбновитьНумерациюОбъектов) корректирует только служебные данные платформы о нумераторах и не трогает номера документов. Перенумерация физически изменяет номера записанных документов и потому требует осторожности и резервной копии.
Что важно запомнить
Последний номер в 1С не хранится отдельным счётчиком — он вычисляется по максимальному номеру записанных документов с учётом префикса и периода. Чтобы исправить нумерацию, найдите документ с некорректным номером и приведите его к стандартному формату, не трогая документы, ушедшие в отчётность и к контрагентам. Массовые операции выполняйте только после резервного копирования.