Как быстро изменить тему Web Dynpro приложения
Рассмотрим ситуацию, когда внешний вид Web Dynpro приложения нам надоел. Нет, не очень правдоподобно. Рассмотрим ситуацию, когда на почту пришло письмо от пользователя, в котором он попросил рассмотреть возможность изменения внешнего вида какого-либо Web Dynpro приложения, с которым ему приходится часто работать. Звучит уже лучше. Хотя, конечно же, варианты могут быть разные, как от «хотелки» бизнес-пользователя, так и до пересмотра цветовой схемы всего портала. Но про последний кейс поговорим как-нибудь в другой раз.
А сейчас рассмотрим ситуацию, когда для Web Dynpro приложения консультанту необходимо быстро применить какую-нибудь цветовую схему. Для примера, рассмотрим Web Dynpro приложение HRESS_A_PTARQ_LEAVREQ_APPL (Create Leave Request / Создание заявки на отпуск).
Для запуска Web Dynpro приложения можно воспользоваться ранее предложенным вариантом. Запустим приложение с конфигурацией HRESS_AC_PTARQ_LEAVREQ, согласно документации:
Внешний вид приложения должен быть примерно следующим:
Передать новое значение темы в Web Dynpro можно через определенный параметр. Список всех возможных параметров, которые можно передать в Web Dynpro, вежливо собран SAP-ом в соответствующем разделе справочного портала. А именно: Application Parameters and URL Parameters.
Применительно к нашей задаче, остановимся на параметре WDTHEMEROOT. В справочной таблице также предоставлена информация:
- об URL-параметре (о нем поговорим чуть дальше);
- о списке возможных значений, относящихся к этому параметру;
- текстовое описание параметра
Пробуем передать параметр WDTHEMEROOT с каким-нибудь новым значением, и посмотрим, что же поменяется.
Для этого корректируем параметры запуска Web Dynpro приложения из области «Избранное», добавлением параметра WDTHEMEROOT, со значением sap_hcb:
Стартуем. Ужасаемся/любуемся (нужное выбрать):
Вернемся к таблице, предоставленной SAP-ом, и обратим внимание на столбец с URL-параметром. Как можно использовать этот URL-параметр? Очень просто.
Открываем Web Dynpro приложение HRESS_AC_PTARQ_LEAVREQ в транзакции SE80, и копируем значение поля URL:
Пробуем запустить в браузере:
Что-то пошло не так. Скорее всего данное приложение не может работать без конфигурации. Возвращаемся к таблице, с описанием параметров, находим URL-параметр SAP-WD-CONFIGID. В адресной строке браузера добавляем данный параметр через знак «?» (значение запускаемой конфигурации оставляем такое же HRESS_AC_PTARQ_LEAVREQ) и нажимаем Enter. Конфигурация приложения должна загрузиться:
Добавляем, теперь через знак амперсанд, URL-параметр SAP-THEME со значением sap_corbu и нажимаем на Enter:
URL-параметры идентичны по своим свойствам с параметрами приложения. Единственное, на что, наверное, нужно обратить внимание, так это на приоритет их обработки. Смотрим справочную информацию:
Order of Evaluation
The setting options are evaluated in the order below:
- In the parameters determined by the URL
- The standard parameters defined for the Web Dynpro application
A URL parameter always overrides an application parameter.
Возвращаемся на несколько шагов назад, когда начали запускать Web Dynpro приложение с темой **sap_hcb **из меню «Избранное» пользователя. После запуска приложения, обращаем внимание на адресную строку браузера. Среди многих параметров и значений там представленных, можно найти параметр WDTHEMROOT, который мы определили со стартовым значением sap_hcb:
Попробуем изменить значение параметра с sap_hcb на **sap_corbu **прямо в адресной строке браузера. Новая тема будет применена к приложению по нажатию на клавишу Enter. Теперь, попробуем изменить наименование параметра с WDTHEMROOT=sap_corbu на SAP-THEME=sap_corbu. Приложение будет перезапущено, при этом цветовая схема sap_corbu останется активной.
Резюмируем все вышесказанное: для оперативного просмотра тем, идущих в «коробке» SAP, применительно к какому-нибудь приложению, необходимо:
- Добавить Web Dynpro приложение в область меню «Избранное»;
- Задать начальное значение темы через параметр WDTHEMROOT или через параметр SAP-THEME;
- После запуска приложения, вручную изменять значение параметра в адресной строке браузера
Если нужная тема выбрана, ее можно применить на портале через свойства iView, которое создано для вашего Web Dynpro приложения. Просто пропишите в свойствах параметр WDTHEMEROOT или SAP-THEME с нужным значением.