Как добавить документ «Корректировка поступления» в отчет по капитальным вложениям (счет 08.03)?

Программист 1С v8.3 (Управляемые формы) Бухгалтерский учет Промышленность, строительство и АПК
← На главную

При работе со специализированными решениями, такими как «1С:Бухгалтерия строительной организации» (БСО), часто возникает необходимость расширения функционала типовых или внешних отчетов. Рассмотрим ситуацию, когда в существующий отчет по капитальным вложениям (счет 08.03) нужно добавить данные из документа Корректировка поступления. Это критично для корректного отображения стоимости объектов строительства, когда после первичного поступления затрат происходят изменения в объемах или ценах по согласованию с поставщиком.

Анализ структуры существующего отчета

Прежде чем вносить изменения, проанализируем код запроса, на котором построен отчет. В представленной обработке запрос базируется на использовании временных таблиц (ВТ) и последующем их объединении. Основная логика строится на выборке данных из различных документов (Поступление товаров и услуг, ИмпСправкаОСтоимостиРаботКС3, ОперацияБух) и их соединении с данными РегистраБухгалтерии.Хозрасчетный.Обороты.

Ключевым узлом запроса является временная таблица с именем объед. Именно в нее стекаются данные из всех предварительно подготовленных таблиц через оператор ОБЪЕДИНИТЬ ВСЕ. Наша задача — подготовить аналогичный пакет данных для корректировок и включить его в этот поток.

Шаг 1: Подготовка данных из документа «Корректировка поступления»

Выясним, какие данные нам необходимы. Документ Корректировка поступления в БСО может содержать несколько табличных частей. Для счета 08.03 наиболее важны ОбъектыСтроительства и Услуги. Рассмотрим пример формирования временной таблицы для выборки из объектов строительства:


ВЫБРАТЬ
    Корректировка.Ссылка КАК Ссылка,
    Корректировка.ОбъектыСтроительства.ОбъектСтроительства КАК ОбъектСтроительства,
    Корректировка.ОбъектыСтроительства.СтатьяЗатрат КАК СтатьяЗатрат,
    Корректировка.ОбъектыСтроительства.Сумма КАК Сумма,
    Корректировка.ОбъектыСтроительства.СуммаНДС КАК СуммаНДС
ПОМЕСТИТЬ ВТ_КорПостСтроительство
ИЗ
    Документ.КорректировкаПоступления КАК Корректировка
ГДЕ
    Корректировка.Проведен = ИСТИНА
    И Корректировка.Дата МЕЖДУ &Дата00 И &Дата
;

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

Шаг 2: Соединение с регистром бухгалтерии

Для того чтобы данные корректировки корректно сопоставились с остальными данными отчета (аналитикой по счетам и субконто), необходимо выполнить соединение с виртуальной таблицей оборотов хозрасчетного регистра. В исходном коде отчета мы видим активное использование РегистрБухгалтерии.Хозрасчетный.Обороты с фильтрами по кодам счетов (например, 60.01).

Рассмотрим, как добавить пакет для корректировок, аналогично существующим блокам ТЧ2 или ТЧ12КС0:


ВЫБРАТЬ
    ХозрасчетныйОбороты.Регистратор КАК Ссылка0,
    ХозрасчетныйОбороты.Субконто3 КАК Субконто300,
    ХозрасчетныйОбороты.Субконто1 КАК Субконто100,
    ХозрасчетныйОбороты.Регистратор.ДоговорКонтрагента КАК РегистраторДоговорКонтрагента,
    ХозрасчетныйОбороты.КорСчет КАК КорСчет,
    ХозрасчетныйОбороты.СуммаОборотДт КАК Сумма,
    ХозрасчетныйОбороты.Субконто2 КАК Субконто200,
    ХозрасчетныйОбороты.Период КАК Период
ПОМЕСТИТЬ ТЧ_Корректировки
ИЗ
    ВТ_КорПостСтроительство КАК ВТ_КорПост
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Обороты(&Дата00, &Дата, Запись, 
        Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.СтроительствоОбъектовОсновныхСредств), , , 
        КорСчет.Код = "60.01") КАК ХозрасчетныйОбороты
    ПО ВТ_КорПост.Ссылка = ХозрасчетныйОбороты.Регистратор
ГДЕ
    ХозрасчетныйОбороты.Регистратор ЕСТЬ НЕ NULL
;

Шаг 3: Объединение в итоговую таблицу «объед»

Теперь, когда у нас есть временная таблица ТЧ_Корректировки, нам нужно интегрировать ее в финальную таблицу объед. Проанализируем структуру полей в существующем блоке ОБЪЕДИНИТЬ ВСЕ. Нам необходимо строго соблюдать порядок и типы колонок:

  1. Ссылка0 (Документ-регистратор)
  2. СуммаНДС0 (Сумма НДС)
  3. Субконто10 (Объект строительства)
  4. Субконто30 (Статья затрат / Субконто3)
  5. РегистраторДоговорКонтрагента (Договор)
  6. КорСчет (Корреспондирующий счет)
  7. Субконто20 (Дополнительная аналитика)
  8. СуммаНРег (Сумма не в рег. учете, если применимо)
  9. Сумма (Чистая сумма затрат)
  10. Период (Дата операции)

Добавим наш фрагмент кода в конец секции формирования ВТ объед:


ИЗ
    ТЧ12КС0 КАК ТЧ12КС0

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ТЧ_Корректировки.Ссылка0,
    0, -- Если НДС нужно считать отдельно, добавьте аналогичную логику через 19.КВ
    ТЧ_Корректировки.Субконто100,
    ТЧ_Корректировки.Субконто300,
    ТЧ_Корректировки.РегистраторДоговорКонтрагента,
    ТЧ_Корректировки.КорСчет,
    ТЧ_Корректировки.Субконто200,
    0,
    ТЧ_Корректировки.Сум,
    ТЧ_Корректировки.Период
ИЗ
    ТЧ_Корректировки КАК ТЧ_Корректировки

Особенности учета НДС при корректировках

Проанализируем работу с НДС в данном отчете. В коде используются временные таблицы НДСКВ и счет 19.КВ. При корректировке поступления сумма НДС также может измениться. Чтобы эти изменения попали в отчет, необходимо убедиться, что проводки документа Корректировка поступления по счету 19.КВ также подхватываются запросом.

Выясним причину, если суммы не сходятся: часто это связано с тем, что в Корректировке поступления НДС может отражаться не только по Дт 19, но и через восстановление НДС. Проверьте настройки счета НДСпоЗатратамНаКВ (19.08 или аналоги в БСО) в параметрах виртуальных таблиц оборотов.

Рекомендации по отладке

Для того чтобы убедиться в правильности подключения документа, выполните следующие действия:

Таким образом, системный подход к расширению пакета запроса позволяет добавить неограниченное количество типов документов в отчет, сохраняя при этом общую структуру группировок и итогов по объектам строительства.

← На главную