Варианты селекционного экрана знает каждый. Если не знает, то срочно надо узнать что это. Они сильно облегчают жизнь пользователя и САПера. Особенно для отчетов, а, если еще и к ним ALV вариант настроить, то совсем красиво получается. Так вот, есть еще такие вариант, как системные. Это те, которые просто так не изменить. Помогает сохранить пользователям руки и не отрывать их, когда они что-нибудь перезатирают друг у друга.

Системные варианты начинаются с SAP& для саповских вариантов и CUS& для клиентских. Эти варианты хранятся в 000 манданте и переносятся транспортными запросами.

А еще в вариантах можно делать подстановки:

  • Даты
  • Пользовательские переменные
  • Табличные переменные TVARVC
Создаем вариант (я выбрал программу отчет по видам оплаты). Жмакаем F4 на поле ‘Selection variant’ и выбираем способ для указания данных. 
Настройки варианта селекционного экрана

Настройки варианта селекционного экрана

Если тип ‘D’ D: Dynamic date calculation, то встаем на поле Name of variable и нажимаем F4. Выбираем нужную нам математику. Удобно, когда нужно строить отчеты по четким границам (например, по календарному месяцу). Или запускать программы с фильтами. Фантазируйте! Мечты сбываются 🙂

Для пользовательских переменных нужен маленький абап. Если это ваша программа, то в ней при объявлении параметров селекционного экрана нужно указать MEMORY ID <XXX>, где <XXX> это пользовательское имя параметра. После этого в варианте появится возможность выбрать именно это поле. А значение задать можно в транзакции SU3 для пользователя индивидуально или в основной записи учетки (SU01, SU10D).

Для табличных переменных есть волшебная штука — табличка TVARVC. Запускаем транзакцию STVARV, создаем свою переменную и присваиваем значения, которые должны подставиться на селекционнике  в варианте. Получается шоколадная штука. Мы создаем системный вариант, в нем указываем переменную для видов оплаты (например, фонд оплаты труда), а в TVARVC прописываем все виды оплаты. И эту переменную используем во всех отчетах. Красота!

Источник Variant Maintenance