Как в 1С:Бухгалтерия 3.0 вывести остатки по счету в Универсальном отчете с группировкой по неделям в колонках?

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

В типовой конфигурации «1С:Бухгалтерия предприятия 3.0» пользователи часто сталкиваются с необходимостью получить данные, которые стандартные бухгалтерские отчеты (Оборотно-сальдовая ведомость по счету или Анализ счета) не могут вывести в нужном виде. Типичный пример — необходимость увидеть остатки материалов по 10 счету в виде кросс-таблицы: чтобы названия материалов располагались в строках, а периоды (например, недели или месяцы) — в колонках.

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

Почему стандартные отчеты не всегда подходят?

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

Для решения задачи «Материалы — по вертикали, Недели — по горизонтали» идеально подходит Универсальный отчет, который при правильной настройке превращается в мощный инструмент построения сводных таблиц.

Шаг 1. Выбор правильного источника данных

Для начала откроем Универсальный отчет (раздел Отчеты — Стандартные отчеты — Универсальный отчет). Первым делом нам необходимо правильно определить объект, из которого отчет будет брать данные.

Проанализируем доступные варианты. Если мы выберем тип данных Регистр бухгалтерии и таблицу Остатки, отчет покажет данные только на одну конкретную дату (конец периода). Это нам не подходит, так как мы хотим видеть динамику по неделям.

Разберем правильный алгоритм выбора:

  1. В поле Тип объекта выбираем Регистр бухгалтерии.
  2. В поле Имя объекта выбираем Хозрасчетный.
  3. В поле Таблица обязательно указываем Остатки и обороты. Именно эта виртуальная таблица позволяет системе «развернуть» данные во времени.

Шаг 2. Настройка отборов по счету

Прежде чем переходить к структуре, необходимо ограничить выборку данных. Если мы не укажем конкретный счет, отчет попытается собрать данные по всему плану счетов, что приведет к ошибке или неверному отображению субконто.

Зайдем в Настройки, перейдем на вкладку Отборы и добавим условие:

Счет Равно 10.01 (или другой нужный вам субсчет).

После установки отбора по счету система поймет, что в качестве Субконто1 выступает справочник Номенклатура.

Шаг 3. Изменение структуры отчета (Кросс-таблица)

Теперь перейдем к самому важному — превращению обычного плоского списка в таблицу с колонками-неделями. Для этого нам понадобится расширенный режим настроек СКД.

  1. Нажмем кнопку Настройки, затем кнопку Расширенный.
  2. Перейдем на вкладку Структура.
  3. По умолчанию там создана группировка «Детальные записи». Нам нужно ее удалить или изменить.
  4. Нажмем Добавить и выберем тип Новая таблица.

Теперь проанализируем структуру созданной таблицы:

Шаг 4. Настройка ресурсов и показателей

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

Шаг 5. Тонкая настройка периодичности и дополнения

Рассмотрим ситуацию: по какому-то материалу не было движений в течение второй недели месяца. По умолчанию СКД может просто пропустить эту колонку, и визуальный ряд «недель» прервется. Чтобы этого избежать, воспользуемся функцией Дополнение периодов.

В настройках поля ПериодНеделя (в окне редактирования схемы или варианта) необходимо убедиться, что установлен тип дополнения Неделя. Также важно проверить параметры виртуальной таблицы: в поле Периодичность должно стоять значение Неделя или Авто.

Шаг 6. Редактирование схемы в пользовательском режиме

Если стандартный интерфейс настроек «Универсального отчета» не позволяет добиться нужной вложенности, можно воспользоваться скрытой возможностью редактирования схемы.

Как указано в материалах форума, в некоторых версиях для этого требуется запуск в Толстом клиенте, однако в актуальных редакциях БП 3.0 (на платформе 8.3.15+) можно выполнить следующие действия:

  1. Нажать кнопку Ещё — Прочее — Изменить вариант....
  2. В открывшемся окне вы увидите дерево структуры отчета. Здесь можно перетаскивать поля, создавать вложенные таблицы и настраивать условное оформление (например, выделять отрицательные остатки красным цветом).

Использование внешних схем (XML)

Если задача требует сложной логики (например, вывода не только бухгалтерской суммы, но и количества, а также расчета отклонений между неделями), проще всего подготовить схему компоновки данных (файл .xml) в консоли отчетов.

Рассмотрим, как загрузить готовую схему в Универсальный отчет:

  1. В меню Ещё выберите пункт Варианты отчета.
  2. Найдите команду Загрузить схему из файла.
  3. После загрузки отчет перестроится полностью в соответствии с вашим XML-описанием, сохранив при этом возможность использовать стандартные отборы Универсального отчета.

Пример настройки полей в СКД

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


Выбранные поля:
    - Субконто1 (Заголовок: "Материал")
    - ПериодНеделя (Заголовок: "Неделя")
    - СуммаКонечныйОстаток (Заголовок: "Остаток")

Группировки:
    - Строки: Субконто1
    - Колонки: ПериодНеделя

Важный нюанс: при работе с 10 счетом помните, что субконто может быть несколько. Если вам нужна детализация по складам, просто добавьте Субконто2 (Склад) в группировку строк под Субконто1. Тогда вы получите иерархический список: Склад -> Материал -> Остатки по неделям.

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

← На главную