Часто при проверке взаиморасчетов с контрагентами возникает задача — найти случаи, когда по одному и тому же договору одновременно числится и задолженность покупателя, и полученный от него аванс. Такая ситуация сигнализирует о незачтенных авансах и требует внимания бухгалтера. Однако при попытке настроить стандартный отчет, например, "Оборотно-сальдовую ведомость", с отбором "Сальдо дебетовое > 0" И "Сальдо кредитовое > 0", мы получаем пустой результат. Давайте разберемся, почему так происходит и как все-таки получить нужные данные.
Основная причина кроется в особенностях работы с активно-пассивными счетами, каким и является счет 62 "Расчеты с покупателями и заказчиками". По умолчанию система показывает свернутое сальдо. Это значит, что если на счете 62.01 (расчеты с покупателями) есть дебетовый остаток в 10 000 руб., а на счете 62.02 (авансы полученные) — кредитовый остаток в 3 000 руб. по тому же контрагенту и договору, то в итоговой строке отчета по счету 62 мы увидим только дебетовое сальдо в 7 000 руб. В одной строке свернутого отчета физически не может быть одновременно и дебетового, и кредитового остатка. Поэтому условие отбора с оператором "И" никогда не выполняется.
Чтобы решить эту задачу, нам нужно заставить систему показать развернутое сальдо, то есть отобразить остатки по дебету и кредиту раздельно, в одной строке, без их взаимозачета. Рассмотрим два способа, как это сделать: через настройку стандартного отчета и с помощью прямого запроса.
Этот способ самый простой и не требует навыков программирования. Он идеально подходит для бухгалтеров и пользователей. Проанализируем на примере отчета "Оборотно-сальдовая ведомость по счету".
Выполним настройку по шагам:
62. Установите нужный период.В результате вы получите отчет, в котором по одному и тому же контрагенту и договору будут одновременно заполнены колонки "Сальдо на конец периода" по дебету и по кредиту. Это и есть те самые "зависшие" суммы, которые вы искали. Дальше можно настроить отбор в этом же отчете, чтобы скрыть строки, где одна из колонок сальдо пустая, и оставить только проблемные позиции.
Если вам нужно получить эти данные для программной обработки, внешней системы или сложного отчета, без запроса не обойтись. Автор в теме на форуме как раз пытался решить задачу этим способом, но столкнулся с той же проблемой "сворачивания" остатков.
Его запрос выглядел примерно так (упрощенная версия):
ВЫБРАТЬ
ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
ХозрасчетныйОстатки.Субконто2 КАК Договор,
ХозрасчетныйОстатки.СуммаОстатокДт,
ХозрасчетныйОстатки.СуммаОстатокКт
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(&КонДата, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками), , ) КАК ХозрасчетныйОстатки
ГДЕ
ХозрасчетныйОстатки.СуммаОстатокДт > 0
И ХозрасчетныйОстатки.СуммаОстатокКт > 0
Этот запрос возвращал пустую таблицу, потому что поля СуммаОстатокДт и СуммаОстатокКт виртуальной таблицы Остатки по умолчанию возвращают свернутое сальдо.
Для получения развернутого сальдо в языке запросов 1С существуют специальные поля. Вместо СуммаОстатокДт и СуммаОстатокКт нужно использовать СуммаКонечныйРазвернутыйОстатокДт и СуммаКонечныйРазвернутыйОстатокКт соответственно.
Правильный запрос будет выглядеть так:
ВЫБРАТЬ
ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
ХозрасчетныйОстатки.Субконто2 КАК Договор,
ХозрасчетныйОстатки.СуммаКонечныйРазвернутыйОстатокДт КАК СуммаДолга,
ХозрасчетныйОстатки.СуммаКонечныйРазвернутыйОстатокКт КАК СуммаАванса
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(
&НаДату,
Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками),
, // Массив видов субконто, оставляем пустым для получения всех
) КАК ХозрасчетныйОстатки
ГДЕ
ХозрасчетныйОстатки.СуммаКонечныйРазвернутыйОстатокДт > 0
И ХозрасчетныйОстатки.СуммаКонечныйРазвернутыйОстатокКт > 0
УПОРЯДОЧИТЬ ПО
Контрагент,
Договор
Такой запрос корректно отберет только те строки аналитики (пары "Контрагент-Договор"), по которым одновременно есть и дебетовый, и кредитовый остаток, что полностью решает поставленную задачу.
Обнаружение таких остатков — это только половина дела. Важно понять причину их возникновения и исправить ошибки в учете. Проанализируем наиболее частые сценарии.
Распространенные причины:
Поступление на расчетный счет) проведен временем 09:00, а документ отгрузки (Реализация (акт, накладная)) тем же числом, но временем 12:00. В этом случае аванс не зачтется автоматически.Операция, введенная вручную), в которых неверно или не полностью заполнены все субконто, часто приводит к таким "зависшим" суммам.Способы исправления:
Таким образом, проблема поиска незачтенных авансов является комплексной. Ее решение лежит как в плоскости правильной настройки отчетов и написания запросов, так и в области аккуратного ведения бухгалтерского учета.