При работе с программой 1С:Бухгалтерия 8 (особенно начиная с релизов ветки 3.0.35 и выше) пользователи часто сталкиваются с неприятной ситуацией: при попытке сформировать отчет «Кассовая книга» программа выдает предупреждение «Обороты по документам и проводкам не совпадают». При этом остаток на начало дня может отображаться как нулевой, хотя в карточке счета 50 «Касса» все данные верны. В этой статье мы подробно разберем причины возникновения этой ошибки и пошагово пройдем по методам ее решения.
Давайте проанализируем, как 1С формирует кассовую книгу. В отличие от простого отчета по счету, кассовая книга в современных версиях конфигурации опирается не только на бухгалтерские проводки (регистр бухгалтерии), но и на оперативные данные, хранящиеся в специализированных регистрах сведений и накопления. Основная причина расхождения заключается в том, что система «видит» движение денег по счету 50.01 в бухгалтерском учете, но не может сопоставить его с записями в регистрах денежных средств или настройками подразделений.
Чаще всего это происходит из-за программного сбоя при обновлении, когда в информационной базе (особенно в Базовых версиях) принудительно или ошибочно включаются функции, которые в норме должны быть недоступны или отключены.
Это самое распространенное решение, которое помогло большинству пользователей. В базовых версиях 1С:Бухгалтерии полноценный учет по подразделениям не предусмотрен, однако после обновления константа ВестиУчетПоПодразделениям может принять значение Истина.
Выполним следующие действия для исправления:
Проанализируем ситуацию: когда этот флаг взведен, программа требует наличия аналитики «Подразделение» в каждой проводке по счету 50. Если в документах Приходный кассовый ордер (ПКО) или Расходный кассовый ордер (РКО) подразделение не указано или указано некорректно, кассовая книга не может «собрать» данные, что приводит к нулевым остаткам.
Если отключение константы не помогло или вы используете версию ПРОФ, где учет по подразделениям необходим, рассмотрим проблему глубже. Нужно убедиться, что подразделение, указанное в шапке документа, совпадает с подразделением, зафиксированным в проводках.
Выясним причину расхождения через групповую обработку:
Приходный кассовый ордер и Расходный кассовый ордер.Подразделение. Часто бывает, что в старых документах оно пустое, а в новых заполнено значением «Основное подразделение». Для корректной работы кассовой книги за период аналитика должна быть единообразной.Важный нюанс: В релизах 3.0.35 появилось понятие «Головное подразделение». Если вы случайно поменяли в документах «Основное подразделение» на «Головное», это также вызовет ошибку несовпадения оборотов, так как для программы это разные объекты аналитики.
Рассмотрим случай, когда кассовая книга «не видит» конкретный документ, например, выплату зарплаты. Это часто случается с Расходными кассовыми ордерами на выплату заработной платы. Проблема может крыться в последовательности записей в регистрах.
Проанализируем шаги по исправлению:
Движения денежных средств.Если визуально в документах все верно, а кассовая книга по-прежнему выдает ошибку «Обороты не совпадают», воспользуемся системными средствами восстановления данных. Простое перепроведение из списка документов часто не обновляет вспомогательные регистры так, как это делает регламентная процедура.
Пошаговый алгоритм:
Пересчет итогов и Реиндексация таблиц информационной базы.Ниже приведем пример того, как логически можно проверить соответствие оборотов с помощью небольшого программного кода (актуально для программистов, проверяющих базу через консоль запросов):
// Пример логики проверки расхождений
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК ОборотБухгалтерия,
| ДенежныеСредстваОбороты.СуммаОборот КАК ОборотРегистр
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет = &Счет50, , ) КАК ХозрасчетныйОстаткиИОбороты
| ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ДенежныеСредства.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ДенежныеСредстваОбороты
| ПО ХозрасчетныйОстаткиИОбороты.Организация = ДенежныеСредстваОбороты.Организация";
Этот пример показывает, что система сравнивает два разных источника данных. Если ОборотБухгалтерия не равен ОборотРегистр, программа выдаст заветную ошибку.
Чтобы ваша кассовая книга всегда формировалась корректно, придерживайтесь следующих правил:
Вести учет по подразделениям, она должна быть выключена.Следуя этим инструкциям, вы сможете быстро локализовать проблему и вернуть кассовую книгу в рабочее состояние.