Как в Универсальном отчете сделать отбор по виду документа-регистратора?

Пользователь 1С v8.3 (Управляемые формы) Управленческий учет IT и автоматизация бизнеса
← На главную

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

Разберем причины такого поведения платформы и подробно рассмотрим все рабочие варианты решения задачи в пользовательском режиме и с помощью механизмов системы компоновки данных (СКД).

Почему в стандартном отборе нельзя напрямую выбрать вид документа

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

Для решения этой задачи в режиме 1С:Предприятие можно применить несколько подходов.

Способ 1. Использование пользовательских полей СКД (для типовых конфигураций на БСП)

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

Разберем по шагам, как настроить отбор через пользовательское поле:

  1. Откроем отчет и перейдем в форму настроек, нажав кнопку Настройки.
  2. Переключим вид настроек в режим Расширенный.
  3. Перейдем на вкладку Пользовательские поля (или Дополнительно в зависимости от версии интерфейса) и нажмем Добавить → Новое поле-выражение.
  4. В поле заголовка укажем понятное имя, например: ЭтоСписаниеДС.
  5. В поле выражения пропишем проверку типа с помощью конструкции ТипЗначения или логического оператора ССЫЛКА:

ВЫБОР 
    КОГДА Регистратор ССЫЛКА Документ.СписаниеБезналичныхДенежныхСредств 
        ТОГДА Истина 
    ИНАЧЕ Ложь 
КОНЕЦ

Также можно использовать выражение получения типа:


ТипЗначения(Регистратор) = Тип("ДокументСсылка.СписаниеБезналичныхДенежныхСредств")
  1. Нажмем Завершить редактирование.
  2. Перейдем на вкладку Отборы, добавим наше новое поле ЭтоСписаниеДС, выберем вид сравнения Равно и установим значение Да (Истина).
  3. Нажмем Закрыть и сформировать. В отчет попадут только движения нужного вида документа.

Способ 2. Отбор по реквизиту-маркеру или виду операции документа

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

Рассмотрим два варианта такой фильтрации:

  1. Отбор по виду операции: большинство расчетных и кассовых документов содержат реквизит ВидОперации или ХозяйственнаяОперация. В настройках отбора разверните поле Регистратор, найдите Вид операции, установите вид сравнения В списке и отметьте все операции, относящиеся к целевому документу.
  2. Отбор по уникальному реквизиту (реквизиту-маркеру): если у документа есть уникальный реквизит, отсутствующий у остальных регистраторов (например, специфический счет списания, статья ДДС определенного типа или признак проведения), разверните Регистратор, выберите этот реквизит и установите вид сравнения Заполнено. Для всех остальных типов документов это поле вернет NULL, и они будут автоматически исключены из выборки.

Способ 3. Смена типа источника в Универсальном отчете

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

Разберем алгоритм переключения источника:

  1. В шапке Универсального отчета в поле Тип объекта вместо значения Регистр накопления выберем Документ.
  2. В поле Имя объекта укажем нужный документ, например: Списание безналичных ДС.
  3. В поле Имя таблицы выберем табличную часть (например, РасшифровкаПлатежа) или таблицу движений по нужному регистру (если данный источник доступен в конфигурации).
  4. Настроим необходимые поля, группировки и сформируем отчет. При таком подходе отбор по типу регистратора не требуется, так как источником изначально выступает целевой документ.

Совет: после успешной настройки любого из предложенных вариантов обязательно сохраните вариант отчета через меню Варианты отчета → Сохранить как..., чтобы использовать его в дальнейшей работе без повторного ввода формул и условий.

← На главную