В работе бухгалтера государственного учреждения часто возникает необходимость сравнить показатели остаточной стоимости основных средств не только на текущую дату, но и в динамике за прошлые периоды (например, на конец 2020, 2021 и 2022 годов). Типовой отчет Ведомость остатков ОС в конфигурации 1С:Бухгалтерия государственного учреждения 2.0 (БГУ 2.0) по умолчанию настроен на работу с одной конкретной датой. Разберем подробно, почему так происходит и какими способами можно решить эту задачу, начиная от простых настроек в пользовательском режиме и заканчивая созданием внешнего отчета.
Проанализируем структуру типового отчета. Ведомость остатков ОС построена на базе Системы компоновки данных (СКД). Основной запрос отчета обращается к виртуальным таблицам остатков (регистры накопления или регистр бухгалтерии). Особенность виртуальных таблиц остатков в том, что они принимают один обязательный параметр — &Период (или &НаДату).
В пользовательском режиме мы видим этот параметр как поле Дата отчета. Поскольку запрос внутри отчета жестко привязан к этой единственной точке во времени, стандартная настройка через кнопку Изменить вариант не позволяет добавить еще одну колонку с остатками на другую дату. Система просто не знает, откуда взять данные для второго «среза» времени в рамках одного набора данных.
Рассмотрим самый простой обходной путь, не требующий программирования. В БГУ 2.0 существует отчет Ведомость движения ОС. В отличие от ведомости остатков, он работает с периодом времени.
Период, Год.Стоимость на конец периода и Амортизация на конец периода.Хотя этот отчет может не вывести готовую колонку Остаточная стоимость (как разность), мы получим данные по первоначальной стоимости и накопленной амортизации на конец каждого года в одной таблице. Это позволит быстро сопоставить цифры.
Разберем, как использовать Универсальный отчет для получения нужных данных. Этот инструмент позволяет обращаться напрямую к регистрам накопления, где информация хранится в более «сыром», но гибком виде.
Выясним, какие регистры нам понадобятся. Основные данные по ОС хранятся в регистре накопления Стоимость объектов ОС, НМА, НПА. Чтобы получить остаточную стоимость, нам также нужны данные из регистра Амортизация объектов ОС, НМА, НПА.
Посмотрим на алгоритм настройки:
Стоимость объектов ОС, НМА, НПА.Если нам необходимо видеть именно колонки «Остаточная стоимость 2020», «Остаточная стоимость 2021» в одном окне, проанализируем техническое решение через конфигуратор. Это самый надежный способ, который рекомендуют опытные специалисты.
Суть метода заключается в создании нескольких Наборов данных в схеме компоновки. Мы создадим три набора данных, каждый из которых будет получать остатки на свою дату.
Пропишем пример структуры запроса для одного из наборов данных (на конец 2020 года):
ВЫБРАТЬ
СтоимостьОстатки.ОсновноеСредство КАК ОС,
СтоимостьОстатки.СтоимостьОстаток - АмортизацияОстатки.АмортизацияОстаток КАК ОстаточнаяСтоимость2020
ИЗ
РегистрНакопления.СтоимостьОбъектовОСНМА_НПА.Остатки(&Дата2020, ) КАК СтоимостьОстатки
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.АмортизацияОбъектовОСНМА_НПА.Остатки(&Дата2020, ) КАК АмортизацияОстатки
ПО СтоимостьОстатки.ОсновноеСредство = АмортизацияОстатки.ОсновноеСредство
Повторим эту логику для каждой нужной даты (2021, 2022 годы), создавая соответствующие параметры &Дата2021 и &Дата2022. Затем в СКД на закладке Связи наборов данных свяжем их по полю ОсновноеСредство.
Важный момент: Чтобы отчет не тормозил, убедитесь, что установлены правильные индексы и условия по организации в параметрах виртуальных таблиц.
Выясним, как проверить корректность данных перед созданием отчета. Для этого воспользуемся Консолью запросов. Мы можем написать сложный запрос, который объединяет данные из регистра бухгалтерии (счет 101.00 и 104.00).
Рассмотрим логику расчета остаточной стоимости на произвольную дату через регистр бухгалтерии ЕПСБУ:
ВЫБРАТЬ
ЕПСБУОстатки101.Субконто1 КАК ОсновноеСредство,
ЕПСБУОстатки101.СуммаОстатокДт КАК Стоимость,
ЕСТЬNULL(ЕПСБУОстатки104.СуммаОстатокКт, 0) КАК Амортизация,
ЕПСБУОстатки101.СуммаОстатокДт - ЕСТЬNULL(ЕПСБУОстатки104.СуммаОстатокКт, 0) КАК ОстаточнаяСтоимость
ИЗ
РегистрБухгалтерии.ЕПСБУ.Остатки(&ДатаКонецГода, Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.ЕПСБУ.ОсновныеСредства)), , ) КАК ЕПСБУОстатки101
ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.ЕПСБУ.Остатки(&ДатаКонецГода, Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.ЕПСБУ.Амортизация)), , ) КАК ЕПСБУОстатки104
ПО ЕПСБУОстатки101.Субконто1 = ЕПСБУОстатки104.Субконто1
Этот запрос позволяет получить точные данные, соответствующие бухгалтерскому балансу. Получив результат в консоли, мы можем убедиться, что алгоритм расчета верный, и перенести его в СКД внешнего отчета.
Если база находится на поддержке и мы не хотим менять типовую конфигурацию, воспользуемся механизмом Расширений. Рассмотрим пошагово:
&ДатаПредыдущегоГода).ОБЪЕДИНИТЬ ВСЕ или дополнительные соединения.Преимущество этого метода: при обновлении БГУ 2.0 ваши настройки не пропадут, а отчет останется в интерфейсе на своем привычном месте.
При работе с остатками за несколько лет отчет может стать «тяжелым». Чтобы ускорить работу, проанализируем следующие советы:
Организации и, если возможно, по Группе ОС или КФО.СУММА(ВычислитьВыражениеСГруппировкойТаблица(...))).Таким образом, хотя штатная Ведомость остатков ОС не поддерживает многопериодность «из коробки», использование внешних отчетов или расширений с модифицированным запросом СКД позволяет полностью решить задачу и предоставить пользователю удобный инструмент для анализа динамики стоимости государственного имущества.