В процессе ведения кассовых операций бухгалтеры периодически сталкиваются с ситуацией, когда отчет Кассовая книга начинает выводить некорректный начальный остаток по кассе за определенное число. При детальном анализе выясняется, что все документы расхода (РКО) и прихода (ПКО) за предыдущие дни проведены, суммы в проводках присутствуют, оборотно-сальдовая ведомость по счету 50 сходится, а в самой кассовой книге нужные документы отображаются в дневных листах. Однако входящее сальдо упорно рассчитывается с ошибкой ровно на сумму конкретных кассовых ордеров. Разберем механизм работы отчета, выясним скрытые причины такого сбоя и рассмотрим способы его исправления как с открытием периода, так и без изменения закрытых дат.
Чтобы понять источник проблемы, проанализируем, откуда отчет берет числовые показатели. В типовых конфигурациях 1С (включая «Управление производственным предприятием» 1.3) алгоритм построения кассовой книги комбинированный:
Хозрасчетный по счету 50.01 («Касса организации») в валюте регламентированного учета.ПриходныйКассовыйОрдер и РасходныйКассовыйОрдер.Если сумма по документу присутствует в физической таблице движений или отображается в списке ордеров, но по какой-то причине не учтена в агрегатах (таблицах итогов) регистра бухгалтерии, отчет выдает разрыв. На следующий день кассовая книга снова берет начальный остаток из регистра, и расчетное сальдо «ломается».
Выделим основные технические и учетные причины возникновения данной коллизии:
00:00:00 или совпадает с моментом среза остатков, виртуальная таблица может исключить его из выборки входящего сальдо.ДенежныеСредства, но не отражается в бухгалтерском регистре.Самое простое решение, подтвержденное на практике, — временное снятие запрета редактирования данных и перепроведение проблемных документов. Разберем этот порядок действий:
РасходныйКассовыйОрдер.Важное предупреждение для пользователей УПП: перепроведение документов задним числом может сдвинуть границу последовательности партионного учета и взаиморасчетов, если РКО оформлен с контрагентом по счетам 60, 62 или 76. Кроме того, если в документе была включена ручная корректировка проводок, стандартное перепроведение сотрет все ручные правки.
Если период закрыт, сдана отчетность и трогать первичные документы категорически запрещено, проблему можно решить обновлением таблиц итогов регистра бухгалтерии без изменения документов.
В режиме «1С:Предприятие» перейдем в меню Операции → Управление итогами. Проверим дату, по которую рассчитаны итоги. Если расчет выполнен на прошлый месяц, сдвинем дату вперед и нажмем кнопку Пересчитать итоги.
Также можно воспользоваться внешней обработкой или консолью кода для точечного пересчета итогов регистра Хозрасчетный за конкретный интервал:
НачалоПериода = Дата(2023, 1, 1);
КонецПериода = Дата(2023, 1, 31);
РегистрыБухгалтерии.Хозрасчетный.ПересчитатьИтогиЗаПериод(НачалоПериода, КонецПериода);
Этот метод принудительно актуализирует агрегаты базы данных, не перезаписывает регистраторы и не сдвигает границы последовательностей конфигурации.
Если пересчет итогов не исправил проблему конкретного документа, можно перезаписать движения проблемного РКО программно. Для этого используется свойство ОбменДанными.Загрузка = Истина, которое отключает проверки даты запрета изменения и механизмы перепроведения:
НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Значение = СсылкаНаРКО;
НаборЗаписей.Прочитать();
НаборЗаписей.ОбменДанными.Загрузка = Истина;
НаборЗаписей.Записать();
При выполнении записи набора платформа пересчитывает итоги именно для указанного регистратора, благодаря чему начальный остаток в кассовой книге восстанавливается без снятия даты запрета редактирования.
Перед исправлением убедимся, что проводка действительно не попадает в итоги: