Link Search Menu Expand Document

;type=block

Вывод блока по условию

Время от времени в отчетах надо скрыть или показать часть данных в шаблоне. Как это сделать наиболее информативно?

image

Очередной ABAP в шаблоне

Два предыдущих случая были

  • Вывод данных по условию с их форматированием в ;cond=
  • show_if, hide_if для условного выбора из “шаблонов” строк

Дополнение ‘;type=block’

Напоминает больше всего show_if, но предназначена не для конкретного дерева или таблицы, а для написания произвольных условий


К примеру данный блок будет выведен в 2019 году ;cond=sy-datum(4) eq ‘2019’ image


12-я строка будет отображена если поле TITLE в структуре R будет содержать данные

image

Можно и было написать ;cond=value-title IS NOT INITIAL


Для PDF скрываться будет блок внутри SUBFORM для Excel & Word область действия задается таблицей

В Word границы таблиц могут быть не видны

image

Для их отображения
Таблицы -> Макет -> Отобразить сетку

image


Ранее для скрытия блока нужно было создавать специальную таблицу ABAP и заполнять ее:

  • 1 - строкой (для показа)
  • 0 - если нужно было скрыть блок

Данное дополнение просто выполняет ту же функцию только с написанием условия в самом шаблоне

Краткая форма написания

Для удобства {R-BL2;type=block;cond=strlen( value-TITLE ) gt 0} можно сократить на {R-BL2;=strlen( v-TITLE ) gt 0}

*Смотрите шаблоны 140