Почему при формировании КУДиР за новый месяц пропадают данные за предыдущие периоды в 1С:КА 2?

Программист 1С v8.3 (Управляемые формы) 1С:Комплексная автоматизация Налоговый учет
← На главную

В процессе ведения налогового учета по УСН в решениях на базе 1С:Комплексная автоматизация 2 (КА 2) или 1С:ERP пользователи часто сталкиваются с неочевидным поведением системы: после успешного формирования Книги учета доходов и расходов (КУДиР) за январь, выполнение аналогичной процедуры за февраль приводит к «очистке» или исчезновению данных за предыдущий месяц. Разберем детально, почему это происходит, как устроены внутренние механизмы программы и как исправить эту ситуацию.

Особенности архитектуры подсистемы УСН в КА 2 и ERP

Прежде всего, нам необходимо понять принципиальное отличие 1С:Комплексная автоматизация 2 от 1С:Бухгалтерии. В «Бухгалтерии» записи в КУДиР формируются непосредственно в момент проведения первичных документов (платежных поручений, поступлений товаров). В 1С:КА 2 используется так называемый отложенный механизм.

Проанализируем ситуацию: записи в регистр накопления КнигаУчетаДоходовИРасходов создаются не первичным документом, а специальной регламентной операцией в рамках закрытия месяца или через «Помощник формирования КУДиР». Программа собирает данные из различных регистров (например, РасходыПриУСН), анализирует выполнение условий (оплата поставщику, получение товара, реализация) и только после этого делает итоговую запись в КУДиР.

Когда мы запускаем процедуру за февраль, система анализирует данные за весь текущий отчетный период (квартал). Если логика определения дат в программе дает сбой, записи за январь могут быть «перетерты» или смещены на другие даты, из-за чего они перестают отображаться в отчете за нужный период.

Анализ программной причины: регистр «Данные первичных документов»

Одной из ключевых причин такого поведения является некорректное заполнение или отсутствие данных в регистре сведений ДанныеПервичныхДокументов. Этот регистр служит вспомогательным хранилищем для формирования печатных форм и отчетов, где требуются номера и даты входящих документов поставщиков.

Рассмотрим фрагмент кода в общем модуле УчетУСНСервер, в процедуре ПризнанныеРасходы. Именно здесь зарыт корень проблемы. Посмотрим на конструкцию запроса, которая определяет период (дату) записи в КУДиР:


ВЫБОР
    КОГДА ДанныеПервичныхДокументов.Документ ЕСТЬ NULL
        ТОГДА ЕСТЬNULL(ВЫРАЗИТЬ(ПризнанныеРасходы.Регистратор КАК Документ.КорректировкаРегистров).Дата, &КонДата)
    КОГДА НАЧАЛОПЕРИОДА(ДанныеПервичныхДокументов.Дата, КВАРТАЛ) = НАЧАЛОПЕРИОДА(&КонДата, КВАРТАЛ)
        ТОГДА КОНЕЦПЕРИОДА(ДанныеПервичныхДокументов.Дата, ДЕНЬ)
    ИНАЧЕ
        ДОБАВИТЬКДАТЕ(ДанныеПервичныхДокументов.ДатаРегистратора, МИНУТА, 1)
КОНЕЦ КАК Период

Разберем, что здесь происходит. Программа пытается определить, какой датой сделать запись в КУДиР. Если реквизит Дата входящего документа (который хранится в ДанныеПервичныхДокументов) не заполнен, система начинает использовать альтернативные алгоритмы вычисления даты, такие как добавление минуты к дате регистратора или использование конца периода. Это часто приводит к тому, что при пересчете февраля программа «передвигает» январские записи или вовсе исключает их из выборки из-за несоответствия условий НАЧАЛОПЕРИОДА.

Решение 1: Восстановление данных первичных документов

Если мы выяснили, что проблема в пустых датах входящих документов, наиболее правильным решением будет принудительное заполнение этих данных. Выясним причину: часто бухгалтеры не заполняют поля «Номер входящего документа» и «Дата входящего документа» в документах Приобретение товаров и услуг или Авансовый отчет.

Чтобы исправить ситуацию без изменения конфигурации, выполним следующие шаги:

  1. Проверим все приходные документы и авансовые отчеты за январь и февраль.
  2. Убедимся, что на вкладке «Дополнительно» (или в шапке документа) заполнены входящий номер и дата.
  3. Если документов много, можно воспользоваться групповым изменением реквизитов, установив дату входящего документа равной дате самого документа 1С.
  4. После внесения правок необходимо перезаполнить регистр сведений ДанныеПервичныхДокументов. Обычно это происходит автоматически при перепроведении документов, но в некоторых случаях может потребоваться запуск обработки по обновлению данных для КУДиР.

Решение 2: Проверка последовательности и условий признания расходов

Рассмотрим ситуацию с авансовыми отчетами, упомянутую в обсуждении. Признание расходов при УСН требует соблюдения жесткой последовательности. Проанализируем условия:

  1. Товар или услуга получены (оформлен Авансовый отчет или Приобретение товаров и услуг).
  2. Оплата произведена (деньги выданы подотчетному лицу или перечислены поставщику).

Если Авансовый отчет оформлен 15 января, а фактическая выдача денег (перерасход) произошла 5 февраля, то расход в КУДиР должен попасть именно 5 февраля. Однако, если бухгалтер сначала оформил выдачу денег, а потом изменил Авансовый отчет «задним числом» (в январе), последовательность взаиморасчетов может нарушиться.

Для исправления ситуации выполним полную процедуру «Закрытие месяца». Посмотрим на раздел «Регламентированный учет», где есть операция «Оформление документов распределения расходов». Важно, чтобы все задания в очереди Задания к расчету признанных расходов УСН были выполнены. Если процедура выполняется только через «Помощник КУДиР», она может не учитывать изменения в партионном учете и расчетах с контрагентами, которые восстанавливаются только полным закрытием месяца.

Решение 3: Программная корректировка регистратора (для разработчиков)

Если ручное заполнение входящих дат невозможно или нецелесообразно, проанализируем возможность программной корректировки. Как показал опыт решения проблемы, автор темы перезаполнил регистр Данные первичных документов, взяв за основу ДатаРегистратора.

Это можно сделать небольшой обработкой, которая переберет записи регистра за отчетный период и, если Дата пустая, установит её равной дате документа-основания. Это гарантирует, что условие в коде КОГДА ДанныеПервичныхДокументов.Документ ЕСТЬ NULL перестанет выдавать непредсказуемый результат.

Важные рекомендации

Помните: в 1С:КА 2 и ERP крайне не рекомендуется менять настройки статей затрат или учетной политики после того, как в периоде уже отражены операции. Если вы изменили признак «Принимается к налоговому учету (УСН)» в статье расходов, вам придется вручную перепровести все документы, где эта статья использовалась, так как система автоматически не анализирует старые движения при изменении справочника.

Также стоит обратить внимание на версию программы. В версиях 2.4 и выше алгоритмы КУДиР стали более зависимы от регистра РасходыПриУСН. Если при формировании отчета за февраль пропадает январь, проверьте отчет «Анализ расходов при УСН». Если в нем данные за январь есть, а в КУДиР — нет, значит, проблема именно в формировании записей регистра КнигаУчетаДоходовИРасходов (как раз то, что лечится исправлением дат первичных документов), а не в потере условий признания расходов.

Подводя итог, можно сказать, что стабильность КУДиР в комплексных конфигурациях напрямую зависит от полноты заполнения первичных данных (входящих номеров и дат) и строгого соблюдения хронологии проведения документов через «Закрытие месяца».

← На главную