При разработке отчетов по бухгалтерскому учету начинающие специалисты часто сталкиваются с вопросом: как правильно извлечь данные из регистра бухгалтерии, чтобы они были информативны и понятны пользователю? В этой статье мы подробно разберем, какие инструменты использовать для создания отчета по движениям счета с детализацией по субконто, какие поля являются обязательными и как оптимизировать запрос для работы с большими объемами данных.
Прежде всего, нам необходимо определиться, откуда мы будем получать данные. В системе 1С для работы с регистром бухгалтерии (например, Хозрасчетный) существует несколько виртуальных таблиц. Проанализируем основные варианты:
Субконто1, Субконто2 и так далее, что значительно упрощает построение отчета.Для создания полноценного отчета о движениях мы остановимся на виртуальной таблице ДвиженияССубконто.
Рассмотрим, какие данные ожидает увидеть бухгалтер в отчете по конкретному счету. Просто вывести "сумму" недостаточно. Проанализируем необходимый минимум:
Регистратор является ссылкой на документ.Контрагенты, Номенклатура, Договоры и т.д.Количество, ВалютнаяСумма и Валюта.Разберем по шагам, как составить правильный запрос. Самая распространенная ошибка — фильтрация данных в секции ГДЕ. Мы же будем использовать параметры виртуальной таблицы для ускорения работы системы.
Посмотрим на пример базового запроса:
ВЫБРАТЬ
ХозрасчетныйДвиженияССубконто.Период КАК Период,
ХозрасчетныйДвиженияССубконто.Регистратор КАК Регистратор,
ХозрасчетныйДвиженияССубконто.НомерСтроки КАК НомерСтроки,
ХозрасчетныйДвиженияССубконто.Субконто1 КАК Субконто1,
ХозрасчетныйДвиженияССубконто.Субконто2 КАК Субконто2,
ХозрасчетныйДвиженияССубконто.КорСчет КАК КорСчет,
ХозрасчетныйДвиженияССубконто.Сумма КАК Сумма,
ХозрасчетныйДвиженияССубконто.Количество КАК Количество
ИЗ
РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(&НачалоПериода, &КонецПериода, Счет = &ВыбранныйСчет, , ) КАК ХозрасчетныйДвиженияССубконто
Обратите внимание на параметр Счет = &ВыбранныйСчет. Указывая условие внутри скобок виртуальной таблицы, мы заставляем сервер базы данных выбирать только нужные записи, не сканируя весь регистр.
Выясним причину, по которой работа с субконто вызывает сложности. В 1С субконто — это дополнительные разрезы учета, типы которых зависят от конкретного счета. На счете 60 это могут быть справочники Контрагенты и Договоры, а на счете 10 — Номенклатура и Склады.
Если вы делаете отчет в Системе компоновки данных (СКД), рекомендуется выполнить следующие настройки:
Субконто1, Субконто2 укажите соответствующие роли. Это позволит системе автоматически подставлять заголовки в зависимости от выбранного счета.Субконто1.Представление), чтобы отчет был читаемым. СКД делает это автоматически, если вы просто выбираете поле ссылки.Проанализируем ситуацию: что если пользователь выбрал счет, на котором нет количественного учета? В этом случае в поле Количество будет значение NULL или 0. Чтобы отчет выглядел профессионально, мы можем использовать функцию ЕСТЬNULL в запросе или настроить условное оформление в СКД, чтобы скрывать пустые колонки.
Для валютных счетов обязательно выводите поля Валюта и ВалютнаяСумма. Помните, что в регистре бухгалтерии 1С:Бухгалтерия валютная сумма часто хранится раздельно для дебета и кредита, если речь идет о развернутых таблицах, но в ДвиженияССубконто она представлена удобно для анализа конкретной проводки.
Мы настоятельно рекомендуем использовать Систему компоновки данных вместо ручного вывода в табличный документ. Рассмотрим преимущества:
При настройке СКД не забудьте указать в параметрах запроса тип значения для счета. Это поможет системе правильно определить доступные типы субконто в конструкторе настроек.
Чтобы понять, насколько качественным получился ваш отчет, сравните его с типовым отчетом "Карточка счета" в конфигурации 1С:Бухгалтерия. Рассмотрим, какие элементы там присутствуют:
Если ваша задача — просто вывести движения, то первых двух пунктов будет достаточно. Однако добавление вывода кор. счетов (КорСчет) и их аналитики (КорСубконто1) сделает ваш отчет по-настоящему полезным инструментом для анализа учета.
Таким образом, использование виртуальной таблицы ДвиженияССубконто в сочетании с мощностью СКД позволяет создать надежный и быстрый отчет, который закроет потребности пользователя в детальном анализе движений по любому бухгалтерскому счету.