При ведении упрощенной системы налогообложения (УСН) в программе 1С:Комплексная автоматизация 2.4 (а также в 1С:ERP 2.4) бухгалтеры часто сталкиваются с неприятным поведением Книги учета доходов и расходов (КУДиР). При проведении сторнирующих операций записи в книге не исчезают и не группируются «в ноль», а выводятся развернуто: сначала идет исходная строка с плюсом, а затем — точно такая же строка, но со знаком «минус». В результате итоговые суммы рассчитываются абсолютно верно, однако объем КУДиР существенно увеличивается, книга становится трудночитаемой, что вызывает обоснованное беспокойство у главных бухгалтеров.
В этой статье мы подробно разберем, почему программа ведет себя именно так, рассмотрим законодательную сторону вопроса, выясним техническую причину на уровне регистров и предложим несколько вариантов решения проблемы — как для обычных пользователей, так и для программистов 1С.
Прежде чем приступать к техническому решению проблемы, давайте проанализируем ситуацию с точки зрения налогового законодательства РФ. Главные бухгалтеры часто настаивают на полном удалении (схлопывании) сторнированных записей из книги, так как опасаются, что отрицательные значения привлекут лишнее внимание налоговых инспекторов при проверке.
Однако позиция контролирующих органов здесь однозначна:
Тем не менее, если объем документооборота в компании огромен, книга действительно может разрастись до сотен страниц, затрудняя ее распечатку и анализ. Поэтому стремление оптимизировать отчет вполне оправданно.
Выясним, почему в более ранних версиях (например, в релизах линейки 2.4.7 или 2.4.8) сторнированные записи «тихо» исчезали или перекрывали друг друга, а в современных версиях стали выводиться развернуто. Дело в изменении глобальной методологии разработки фирмы «1С».
В современных конфигурациях 1С:КА 2 и 1С:ERP 2 разработчики планомерно реализуют принцип аудиторского следа. Любое исправление в закрытом периоде или корректировка хозяйственной операции не должны приводить к бесследному исчезновению данных. Система обязана явно показать пользователю и внешнему аудитору:
Для реализации этого принципа разработчики изменили логику записи данных в регистры накопления, отвечающие за налоговый учет при УСН.
Проанализируем техническую сторону вопроса, как это сделал автор темы с помощью отладчика. Ключевая причина, по которой записи «не схлопываются» при формировании КУДиР, кроется в аналитике регистров.
При сторнировании записей КУДиР движения пишутся в специализированный регистр накопления (как правило, это КнигаУчетаДоходовРасходовРазделI). В этом регистре есть важнейшее измерение — ДокументВозникновенияДоходовРасходов (в зависимости от релиза название измерения или реквизита может незначительно отличаться, но суть остается прежней — это ссылка на первичный документ, сформировавший доход или расход).
Рассмотрим, что происходит при проведении документов:
ПриобретениеТоваровУслуг) делает запись в регистр с положительной суммой. В измерение ДокументВозникновенияДоходовРасходов записывается сам этот документ приобретения.Сторно (или специализированный документ корректировки).ДокументВозникновенияДоходовРасходов содержало ссылку на исходный документ приобретения. При формировании отчета КУДиР система видела две записи с абсолютно одинаковой аналитикой, но противоположными знаками, и успешно группировала (схлопывала) их, убирая из печатной формы.ДокументВозникновенияДоходовРасходов для сторнирующей строки ссылку на сам документ Сторно (документ-регистратор корректировки).Из-за того, что у исходной записи (с плюсом) и сторнирующей записи (с минусом) теперь заполнены разные значения в измерении ДокументВозникновенияДоходовРасходов, система компоновки данных КУДиР технически не может их объединить. Для отчета это две разные хозяйственные операции, поэтому они обе выводятся в книгу.
Если вам необходимо уменьшить объем книги учета доходов и расходов, но вы не хотите вносить изменения в программный код системы, рассмотрим штатные возможности платформы.
Способ А. Интерактивное сторнирование непосредственно из отчета
В современных редакциях 1С:КА и 1С:ERP предусмотрен удобный интерактивный механизм корректировки КУДиР. Разберем его по шагам:
Запись книги учета доходов и расходов и заполнит его корректирующими движениями. Использование этого штатного инструмента позволяет более корректно управлять записями регистров УСН.Способ Б. Ручные корректировки с помощью операции сторно
Если вам нужно полностью убрать взаимно компенсирующие строки, можно воспользоваться ручным сторнированием:
Операция, введенная вручную с видом операции «Сторно документа».Дт/Кт или Настройка регистров) и найдите вкладку, соответствующую разделу I КУДиР.Важное предупреждение: Мы настоятельно рекомендуем не злоупотреблять ручными корректировками регистров УСН в комплексных конфигурациях. Это может нарушить автоматические алгоритмы партионного учета, распределения расходов и расчета себестоимости при последующих процедурах закрытия месяца.
Если в вашей организации используется собственная обработка массового сторнирования документов или вы хотите централизованно решить проблему для всех документов сторно на уровне конфигурации, потребуется небольшая доработка кода.
Выясним, как скорректировать заполнение движений. Нам необходимо добиться того, чтобы при записи сторнирующих движений в регистр КУДиР в измерение ДокументВозникновенияДоходовРасходов принудительно записывался исходный документ, а не сам документ сторно.
Рассмотрим пример кода, который можно внедрить в модуль обработки проведения документов сторнирования или в соответствующую подписку на событие перед записью регистра:
// Пример корректировки аналитики регистра при сторнировании
Процедура КорректировкаДвиженийСторноКУДиР(ДокументОбъект) Экспорт
// Получаем набор движений по регистру КУДиР Раздел I
НаборДвижений = ДокументОбъект.Движения.КнигаУчетаДоходовРасходовРазделI;
НаборДвижений.Прочитать();
Модифицирован = Ложь;
Для Каждого СтрокаДвижения Из НаборДвижений Цикл
// Проверяем, является ли строка сторнирующей
Если СтрокаДвижения.Сторно Тогда
// Если документ возникновения указывает на сам документ сторно
Если СтрокаДвижения.ДокументВозникновенияДоходовРасходов = ДокументОбъект.Ссылка Тогда
// Находим исходный документ-основание сторнирования
ИсходныйДокумент = ДокументОбъект.ДокументОснование;
Если ЗначениеЗаполнено(ИсходныйДокумент) Тогда
СтрокаДвижения.ДокументВозникновенияДоходовРасходов = ИсходныйДокумент;
Модифицирован = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
// Если движения были изменены, записываем их обратно в базу данных
Если Модифицирован Тогда
НаборДвижений.Записать(Истина);
КонецЕсли;
КонецПроцедуры
Этот код проверяет все строки набора движений регистра КУДиР. Если строка помечена как сторно и ссылается на текущий документ-корректировку, программа подставляет ссылку на оригинальный документ-основание. При таком заполнении регистра отчет КУДиР при формировании автоматически схлопнет эти строки, и книга примет аккуратный и лаконичный вид, который так радует бухгалтеров.
Разберем, как эволюционировал этот механизм в последующих редакциях программных продуктов 1С. Разработчики учли сложности, с которыми сталкивались пользователи на редакции 2.4, и в 1С:Комплексная автоматизация 2.5 внедрили усовершенствованный контур исправительных документов.
Чтобы задействовать этот механизм, выполните следующие настройки:
Данная опция позволяет корректно регистрировать исправления прошлых (уже закрытых) периодов в текущем периоде. Система автоматически транслирует зеркальные изменения по всем взаимосвязанным регистрам (партионный учет, взаиморасчеты с контрагентами, себестоимость и налоговый учет УСН). При этом концепция детального отражения изменений («плюс» и «минус») сохраняется, но механизмы закрытия месяца работают значительно стабильнее, минимизируя расхождения в аналитике.
Таким образом, мы детально разобрали проблему несхлопывающихся строк в КУДиР в 1С:КА 2.4. Выбор метода устранения зависит от политики вашей компании: если вам важно строго следовать методологии «1С» и сохранять прозрачный аудиторский след, лучше оставить детальные строки с минусом, так как это не противоречит законодательству РФ. Если же критически важно уменьшить печатный объем КУДиР — используйте точечные интерактивные сторно-документы или воспользуйтесь приведенной программной доработкой для приведения аналитики регистра к единому первичному документу.