Документы и Печать · 13 мин
Как восстановить нумерацию кассовых документов в 1С
Как восстановить нумерацию кассовых документов в 1С: причины сбоев, ручное исправление, обработки, проверка результата и меры против повторения проблемы.
Сбой нумерации прихода и расхода кассовых ордеров (ПКО и РКО) — частая ситуация в 1С: документы получают дублирующиеся номера, в последовательности появляются пропуски или нумерация «слетает» на начало года. Для кассовых документов это особенно критично: кассовая книга требует непрерывной сквозной нумерации в хронологическом порядке, а дубли номеров вызывают вопросы при проверках и затрудняют поиск документов.
Причины сбоев обычно однотипны: ручное изменение номера пользователем, перенос документов обработками или обменом между базами, восстановление базы из копии, работа с копией базы, где вводились тестовые документы, а также особенности нумераторов при смене года. Перед исправлением важно понять масштаб проблемы: сбит один документ или нарушена вся последовательность за период.
Способов восстановления несколько: ручное переименование отдельных номеров, типовой механизм автонумерации при перепроведении, универсальные обработки перенумерации и, в сложных случаях, программная перенумерация через встроенный язык. Выбор зависит от количества документов, конфигурации (Бухгалтерия предприятия, Управление торговлей, КА, ERP) и наличия прав администратора.
Ниже разобраны диагностика проблемы, все рабочие способы восстановления, проверка результата и меры, которые не дадут нумерации сбиться снова.
Как определить, что нумерация действительно нарушена
Прежде чем что-то исправлять, убедитесь, что проблема реальна, а не кажущаяся. Откройте журнал кассовых документов (в Бухгалтерии предприятия: «Банк и касса» → «Кассовые документы»), установите отбор по организации и периоду, отсортируйте по дате и просмотрите колонку «Номер».
Типичные признаки сбоя: два разных документа с одинаковым номером, номера идут не по возрастанию относительно дат, после переноса данных появились номера с другими префиксами, либо в середине года нумерация неожиданно началась с единицы. Отдельно проверьте кассовую книгу: если в ней номера листов и ордеров расходятся с журналом, проблема затрагивает отчётность.
Важный нюанс: пропуски номеров сами по себе не всегда ошибка — удалённые или помеченные на удаление документы оставляют «дырки», и это допустимо. А вот дубли номеров в пределах одного нумератора — однозначный дефект, который нужно устранять.
Требуется перенумерация хотя бы одного из документов
Проверить, кто и когда менял номера, возможна перенумерация за период
Обычно не ошибка; исправлять не обязательно
Проверить префикс организации и настройки нумератора
Подготовка: резервная копия и анализ периода
Любые массовые изменения номеров начинайте с создания резервной копии. В файловой базе достаточно скопировать файл 1Cv8.1CD при закрытых сеансах пользователей либо выполнить выгрузку через «Администрирование» → «Выгрузить информационную базу». В клиент-серверном варианте используйте средства СУБД или выгрузку .dt через конфигуратор.
Далее определите границы периода, который будете перенумеровывать. Логично брать период с начала года или с даты, где нумерация ещё корректна. Выпишите последний правильный номер — от него пойдёт отсчёт. Проверьте, нет ли в периоде документов, номера которых уже зафиксированы во внешних бумажных документах: если ПКО распечатан и подписан, менять его номер в программе нельзя, иначе бумажный и электронный документы разойдутся.
Также проверьте, ведётся ли обмен данными с другими базами (например, выгрузка в другую бухгалтерию или на сайт). Перенумерация в узле обмена может привести к рассинхронизации, и потребуется повторная регистрация изменений.
Способ 1: ручное исправление отдельных номеров
Если сбиты один-три документа, проще всего исправить номера вручную. Откройте документ, щёлкните по полю «Номер» и введите корректное значение. В типовых конфигурациях поле номера обычно доступно для редактирования, хотя программа может выдать предупреждение о неуникальности — это нормально при исправлении дубля.
После ручного ввода номера 1С запоминает его как «последний использованный», и следующий новый документ получит номер с продолжением от введённого. Этим можно пользоваться осознанно: если нумерация сбилась и новые документы получают неправильные номера, откройте последний корректный документ, запомните номер, затем в новом документе вручную укажите следующий правильный — дальнейшая автонумерация пойдёт от него.
Ограничение способа очевидно: при десятках и сотнях документов ручная правка трудоёмка и сама становится источником ошибок. Кроме того, при ручном вводе легко нарушить длину номера или префикс, что усугубит проблему сортировки.
Способ 2: перепроведение с восстановлением автонумерации
Во многих типовых конфигурациях при записи документа с пустым или «чужим» номером срабатывает механизм автонумерации: программа присваивает следующий свободный номер по нумератору. Этим можно воспользоваться для небольших групп документов.
Порядок такой: откройте проблемный документ, очистите или скорректируйте номер и перепроведите документ. Если конфигурация настроена на автоматическую нумерацию, документ получит корректный следующий номер. Действуйте строго в хронологическом порядке — от ранних документов к поздним, иначе нумерация снова разойдётся с датами.
- 1Сделайте резервную копию базы
- 2Отсортируйте кассовые документы по дате
- 3Найдите последний документ с корректным номером
- 4Откройте следующий за ним сбитый документ и исправьте номер на следующий по порядку
- 5Перепроведите документ и повторите для остальных по хронологии
- 6Создайте тестовый новый документ и проверьте, какой номер он получил
Учтите: перепроведение кассовых документов изменяет движения по регистрам. Убедитесь, что период не закрыт для редактирования (дата запрета изменения данных в «Администрирование» → «Поддержка и обслуживание» либо в настройках пользователей и прав), иначе запись будет заблокирована.
Способ 3: перенумерация обработкой за период
Когда сбиты десятки документов, рациональнее использовать обработку перенумерации. Во многих конфигурациях есть встроенные или широко распространённые универсальные обработки вида «Перенумерация документов», а в свежих версиях Бухгалтерии предприятия часть задач решается штатными сервисами. Обработка выбирает документы заданного вида за период, сортирует по дате и времени и присваивает номера последовательно, начиная с указанного.
Ключевые параметры, которые нужно задать аккуратно: вид документа (ПКО и РКО перенумеровываются раздельно — у них разные нумераторы), период, начальный номер, длина номера и префикс. Сохраняйте ту же длину номера, что и у существующих документов: если часть номеров четырёхзначная, а часть шестизначная, сортировка в журналах будет «ломаться» (например, 10 окажется раньше 2 при строковом сравнении).
Сравнение способов восстановления
Подходит при 1–5 сбитых документах; быстро, но не масштабируется и риск опечаток
Для небольших групп в хронологическом порядке; требует открытого периода и аккуратности
Для массовых сбоев за период; нужен контроль начального номера, длины и префикса
Для нестандартных ситуаций и сложной логики; требует навыков встроенного языка и тестовой базы
После работы обработки обязательно проверьте результат: откройте журнал, убедитесь в отсутствии дублей, затем сформируйте кассовую книгу за период и сопоставьте номера в ней с журналом.
Способ 4: программная перенумерация через встроенный язык
Если логика восстановления нестандартная — например, нужно перенумеровать только документы конкретной кассы с сохранением префикса филиала — задачу решают фрагментом кода на встроенном языке, выполняемым через консоль кода или внешнюю обработку. Работать таким способом следует только на копии базы, с последующим переносом результата в рабочую.
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Док.Ссылка,
| Док.Дата
|ИЗ Документ.ПриходныйКассовыйОрдер КАК Док
|ГДЕ Док.Дата МЕЖДУ &Начало И &Конец
|УПОРЯДОЧИТЬ ПО Док.Дата";
Запрос.УстановитьПараметр("Начало", НачалоГода(ТекущаяДатаСеанса()));
Запрос.УстановитьПараметр("Конец", КонецДня(ТекущаяДатаСеанса()));
Номер = 1;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Объект = Выборка.Ссылка.ПолучитьОбъект();
Объект.Номер = Формат(Номер, "ЧЦ=6; ЧВН=");
Объект.Записать();
Номер = Номер + 1;
КонецЦикла;Пример выше иллюстрирует общий принцип: выборка документов в хронологическом порядке и последовательное присвоение номеров с фиксированной длиной. В реальной базе адаптируйте имя документа под свою конфигурацию, добавьте отбор по организации и кассе, а также учитывайте префиксацию. Перед запуском в рабочей базе прогоните код на копии и сверьте итоговые номера.
Особенности префиксов, обменов и перехода на новый год
Префикс — частая скрытая причина «сбоев». Если в настройках организации или базы задан префикс, документы с разными префиксами нумеруются независимо, и визуально кажется, что нумерация скачет. Проверьте: «Администрирование» → «Префиксы номеров» (в разных конфигурациях путь отличается) и реквизит «Префикс» в карточке организации.
При обмене данными (например, между УТ и БП) номера документов в базе-приёмнике могут отличаться от базы-источника — это штатное поведение, а не ошибка. Перенумеровывать такие документы под номера источника не нужно: при следующем обмене возможны конфликты. Ориентир для кассовой отчётности — нумерация в той базе, где формируется кассовая книга.
Переход на новый год: типовые нумераторы обычно обнуляются автоматически, если нумератор настроен с периодичностью «год». Если после 1 января нумерация продолжилась со старых номеров или, наоборот, сбилась, проверьте, не был ли документ введён задним числом в декабре и не «потянул» ли он нумератор. Исправляется ручным вводом правильного первого номера года.
Проверка результата и профилактика повторных сбоев
Контроль результата выполняйте в три шага. Первый — журнал кассовых документов: отсортируйте по дате и убедитесь, что номера возрастают и дублей нет. Второй — кассовая книга за период: номера ордеров в ней должны совпадать с журналом. Третий — создание нового документа: он должен получить следующий по порядку номер автоматически.
Как проверить результат
Номера возрастают по датам, дублей нет
Повторяющиеся номера или скачки в середине периода
Номера ордеров совпадают с журналом
Расхождения номеров между книгой и журналом
Получает следующий свободный номер
Присваивается уже занятый номер
Одинаковые у всех документов вида
Разная длина, смешение префиксов
Чтобы проблема не повторилась, ограничьте ручное редактирование номеров правами, настройте дату запрета изменения данных для закрытых периодов, а при переносах данных обработками заранее решите, как поступать с номерами: сохранять исходные или перенумеровывать в приёмнике. Регулярная сверка кассовой книги с журналом документов позволяет заметить сбой в течение дня, а не в конце квартала.
Что важно запомнить
Сначала диагностика и резервная копия, затем исправление: вручную — при единичных сбоях, обработкой — при массовых. ПКО и РКО перенумеровываются раздельно, длину номера и префикс сохраняйте, распечатанные ордера не трогайте. Завершайте работу проверкой журнала, кассовой книги и номера нового документа.
Частые вопросы
Почему в 1С появляются два кассовых документа с одинаковым номером?
Чаще всего из-за ручного изменения номера, переноса документов обработкой или обменом, восстановления базы из копии, где нумератор «отстал». Реже — из-за одновременного создания документов в режиме, где контроль уникальности срабатывает с задержкой. Исправляется перенумерацией одного из дублей.
Можно ли перенумеровывать ПКО и РКО одной обработкой вместе?
Нет, у приходных и расходных ордеров независимые нумераторы, и кассовая дисциплина требует отдельных сквозных последовательностей. Запускайте перенумерацию для каждого вида документов отдельно со своим начальным номером.
Что делать, если сбитый документ уже распечатан и подписан?
Менять номер в программе нельзя — бумажный и электронный документы разойдутся. Оставьте его как есть, перенумеруйте последующие документы от него либо оформите исправление по правилам, согласованным с главным бухгалтером, с заменой бумажного бланка.
Нумерация сбилась после обмена с другой базой — это ошибка?
Не обязательно. При обмене документы в приёмнике часто получают собственные номера по местному нумератору — это штатное поведение. Перенумеровывать под номера источника не следует, ориентируйтесь на нумерацию базы, где формируется кассовая книга.
Нужно ли устранять пропуски в номерах кассовых ордеров?
Как правило, нет. Пропуски возникают из-за удалённых или помеченных на удаление документов и не нарушают требование непрерывности в той мере, в какой оно касается дублей и хронологии. Массовая перенумерация ради устранения пропусков создаёт больше рисков, чем пользы, особенно если часть ордеров уже распечатана.
После исправления новый документ снова получает неправильный номер. Что не так?
Нумератор запоминает последний присвоенный номер. Откройте последний документ периода и убедитесь, что его номер корректен; если нет — исправьте вручную. Также проверьте префикс организации: документы с другим префиксом образуют отдельную последовательность, и нумератор может ориентироваться на неё.