Отчеты и Аналитика · 10 мин
Как добавить поле в отчет в 1С
Как добавить поле в отчет 1С: через настройки варианта, конструктор СКД и расширение конфигурации. Пошаговые инструкции, проверка результата и частые ошибки.
Добавить поле в отчет 1С можно тремя способами: через пользовательские настройки варианта отчета, через конструктор схемы компоновки данных (СКД) в конфигураторе и через расширение конфигурации. Выбор зависит от того, есть ли нужное поле уже в источнике данных отчета и есть ли у вас права на изменение конфигурации.
Самый простой случай — поле уже присутствует в запросе отчета, но просто не выведено на форму. Тогда достаточно режима «Ещё → Изменить вариант отчета» прямо в пользовательском режиме, без программирования. Если поля в источнике данных нет, потребуется доработка запроса в СКД или обращение к разработчику.
Ниже разобраны все три сценария с пошаговыми действиями, способами проверки результата и типичными ошибками, из-за которых добавленное поле не отображается или выводится пустым.
Определите, какой у вас сценарий
Прежде чем что-то менять, ответьте на два вопроса: есть ли нужное поле в данных отчета и где именно вы хотите его видеть. От этого зависит весь дальнейший путь.
Проверить наличие поля просто: откройте отчет, нажмите «Ещё → Изменить вариант отчета» (в некоторых конфигурациях — «Настройки») и разверните список доступных полей. Если поле есть в списке, но не отмечено флажком — это пользовательский сценарий, решается за минуту. Если поля нет в списке вообще — значит, его нет в запросе СКД, и нужна доработка в конфигураторе.
Как выбрать действие
Добавление поля через настройки варианта отчета
Это основной способ для типовых отчетов на СКД: «Продажи», «Остатки товаров», «Оборотно-сальдовая ведомость» и подобных. Никаких прав разработчика не требуется — достаточно прав на настройку отчетов.
- 1Откройте отчет и сформируйте его, чтобы убедиться, что данные выводятся
- 2Нажмите «Ещё → Изменить вариант отчета» (или кнопку «Настройки»)
- 3Перейдите на закладку «Поля» или в раздел структуры, где выводятся колонки
- 4Найдите нужное поле в списке доступных и установите флажок либо перетащите его в выбранные поля
- 5При необходимости задайте заголовок поля и порядок следования колонок
- 6Нажмите «Закрыть и сформировать» и проверьте, что колонка появилась и заполнена
- 7Сохраните вариант отчета через «Ещё → Сохранить вариант отчета», чтобы настройка не пропала
Обратите внимание на иерархию настроек: поле можно добавить как на уровень всего отчета, так и внутрь конкретной группировки. Если добавить поле «в корень», а структура отчета построена на группировках, колонка может не появиться — тогда добавляйте её именно в выбранные поля нужной группировки.
Для полей ссылочного типа доступны реквизиты «через точку»: например, у поля «Номенклатура» можно вывести «Номенклатура.Артикул» или «Номенклатура.ЕдиницаИзмерения». Раскройте поле знаком «+» в списке доступных полей — часто нужный реквизит уже там, и дорабатывать запрос не нужно.
Добавление пользовательского поля без конфигуратора
В отчетах на СКД есть механизм пользовательских полей: можно создать вычисляемую колонку прямо в режиме предприятия. Это удобно для простых формул — например, разницы между двумя суммами или процента выполнения.
Откройте «Изменить вариант отчета», перейдите на закладку «Пользовательские поля» и нажмите «Добавить». Выберите тип: «Новое поле выражение» для формулы или «Новое поле выбор» для значения по условию. В редакторе выражения используйте доступные поля отчета и арифметические операции. После создания пользовательское поле появится в списке доступных и добавляется обычным флажком.
Ограничение способа: язык выражений СКД поддерживает не все функции встроенного языка 1С, а сложные вычисления с обращением к другим таблицам здесь невозможны. Для такой логики нужна доработка запроса или вычисляемое поле в схеме.
Добавление поля через схему компоновки данных
Когда поля нет в источнике данных, работа ведется в конфигураторе. Откройте конфигурацию, найдите нужный отчет в дереве метаданных и откройте его основную схему компоновки данных (действие «Открыть схему компоновки данных»).
На закладке «Наборы данных» откройте запрос и дополните его нужным полем. Проще всего это сделать через конструктор запроса: добавьте таблицу или реквизит, при необходимости настройте соединение с другой таблицей. После выхода из конструктора нажмите кнопку обновления полей на закладке «Вычисляемые поля»/«Настройки» — СКД подтянет новое поле из запроса.
Затем на закладке «Настройки» схемы добавьте поле в выбранные поля варианта по умолчанию — иначе оно будет доступно пользователю, но не выведется автоматически. Проверьте также закладку «Ресурсы»: если поле числовое и должно суммироваться по группировкам, его нужно добавить в ресурсы с выражением Сумма(ИмяПоля).
// Фрагмент запроса СКД: добавлено поле Артикул
ВЫБРАТЬ
Продажи.Номенклатура КАК Номенклатура,
Продажи.Номенклатура.Артикул КАК Артикул,
СУММА(Продажи.СуммаОборот) КАК Сумма
ИЗ
РегистрНакопления.Продажи.Обороты(&НачПериода, &КонПериода, , ) КАК Продажи
СГРУППИРОВАТЬ ПО
Продажи.НоменклатураДобавление поля через расширение конфигурации
Если конфигурация типовая и находится на поддержке, прямое изменение отчета затруднит обновления. Правильный путь — расширение: в конфигураторе откройте «Конфигурация → Расширения конфигурации», создайте новое расширение и добавьте в него нужный отчет через «Добавить в расширение».
В расширении можно изменить схему компоновки данных отчета: дополнить запрос, добавить вычисляемые поля и настройки. Для конечного пользователя отчет будет выглядеть как обычно, а обновления типовой конфигурации пройдут без конфликтов — расширение накладывается поверх.
Проверка результата и типичные ошибки
После добавления поля сформируйте отчет и проверьте три вещи: колонка отображается, в ней есть данные, итоги по группировкам считаются корректно. Пустая колонка почти всегда означает одну из типовых проблем, перечисленных ниже.
Как проверить результат
Поле видно в шапке таблицы, порядок колонок соответствует настройкам
Колонки нет — проверьте уровень настроек и сохраненный вариант
Поле заполнено данными, соответствующими другим колонкам строки
Все значения пустые — поле не связано с данными или ошибка в соединении таблиц
Числовое поле суммируется на уровнях группировок и в общем итоге
Итоги пустые — поле не добавлено в ресурсы СКД
Если отчет открывается у разных пользователей по-разному, проверьте, какой вариант отчета используется: личные сохраненные варианты имеют приоритет над настройками по умолчанию. После доработки схемы имеет смысл сообщить пользователям, что вариант нужно обновить или установить стандартные настройки.
Ограничения и когда нужен разработчик
Пользовательскими средствами поле добавляется, только если оно уже есть в данных отчета или выводится простой формулой из существующих полей. Обращение к другим регистрам, сложные условия, нестандартные итоги и вывод полей в печатную форму отчета — задачи для конфигуратора.
Отдельный случай — внешние отчеты (файлы .erf). Они дорабатываются так же, как встроенные: откройте файл в конфигураторе через «Файл → Открыть», измените схему и сохраните. Внешний отчет удобен тем, что вообще не затрагивает конфигурацию.
Что важно запомнить
Сначала проверьте, есть ли поле в доступных настройках варианта отчета — чаще всего доработка не нужна. Если поля нет, дополните запрос в схеме компоновки данных, обновите поля и добавьте числовые поля в ресурсы. Изменения типовой конфигурации выполняйте через расширение и только после создания резервной копии.
Частые вопросы
Почему добавленное поле не видно в отчете после сохранения настроек?
Чаще всего поле добавлено на уровень всего отчета, а данные выводятся через группировки — настройки группировки перекрывают общие. Откройте структуру отчета, выделите нужную группировку и добавьте поле в её выбранные поля. Также проверьте, не работаете ли вы со старым сохраненным вариантом отчета.
Можно ли добавить в отчет реквизит справочника, которого нет в списке полей?
Если в отчете есть ссылка на этот справочник (например, поле «Контрагент»), раскройте его в списке доступных полей — реквизиты доступны «через точку». Если самой ссылки в запросе нет, реквизит добавляется только доработкой запроса в схеме компоновки данных.
Как добавить колонку с вычислением, например процент от суммы?
В режиме предприятия используйте «Пользовательские поля» на закладке настроек варианта: создайте поле-выражение с формулой от существующих полей. Для сложных вычислений с условиями и функциями добавьте вычисляемое поле на соответствующей закладке схемы компоновки данных в конфигураторе.
Добавил поле в запрос СКД, но в настройках оно не появляется. Что делать?
После изменения запроса схема не всегда обновляет поля автоматически. На закладке «Наборы данных» откройте поля набора и обновите их список, затем проверьте закладку «Настройки» — поле должно появиться в доступных. Также убедитесь, что у поля в запросе задан псевдоним (КАК ИмяПоля).
Числовое поле выводится в строках, но итоги по нему пустые. В чем причина?
Поле не добавлено в ресурсы схемы компоновки данных. Откройте закладку «Ресурсы» в СКД, добавьте поле с выражением Сумма(ИмяПоля) и укажите, по каким группировкам оно рассчитывается. После этого итоги появятся на всех уровнях.
Безопасно ли менять типовой отчет напрямую в конфигураторе?
Технически возможно, но не рекомендуется: при обновлении конфигурации доработка будет затерта или заблокирует автообновление. Используйте расширение конфигурации или внешний отчет. Перед любыми изменениями обязательно создайте резервную копию базы.