Узнать откуда вызвали RFC

Буквально вчера пришлось выяснять как изнутри RFC ФМ узнать систему из которой он вызвался.
Скажу кратко ФМ - 'RFC_SYSTEM_INFO' вызываем его как DESTINATION 'BACK'.
Пример вызова:

Если мы вызовем ФМ таким образом не через RFC то он ничего не возвращает.

или можно вызвать ФМ 'RFC_GET_ATTRIBUTES' тоже вернет информацию о системе

Изменить поведение стандартной кнопки в ALV GRID

Частенько у консультанта возникает желание сделать так, чтобы кнопка была стандартная и располагалась на своем обычном месте, но реакция на нажатие была несколько другоя. Особенно часто это касается кнопки выгрузки, то формуляр нужен немного другой, то какую-то постобработкку сделать и т.д. Для таких целей можно использовать событие before_user_command
Демо пример:
Читать далее «Изменить поведение стандартной кнопки в ALV GRID»

oData использование кэша для хранения данных между вызовами

Предположим, что есть некая гипотетическая ситуация, в ходе которой нужно пойти на некоторый неправильный подход с точки зрения REST. Получить данные в одном методе, а потом использовать их при следующем вызове другого метода. В этом случае можем воспользоваться классом для кэша /ui2/cl_cache_handler

Читать далее «oData использование кэша для хранения данных между вызовами»

oData обновить метаданные сервиса

Когда производятся манипуляции с сущностями oData, необходимо обновить метаданные и очистить кэш. Иначе рискуете работать с неактуальной версией сервиса.
1. Транзакция 1. /IWFND/MAINT_SERVICE - Активация и ведение сервисов

Выбираем строку с нашим сервисом и жмем "Загрузить метаданные"

Читать далее «oData обновить метаданные сервиса»

Экспортировать\импортировать oData сервис

Небольшая инструкция которая поможет перенести Odata сервис из одной системы в другую.

Для начала выгрузим исходный сервис.
Зайдем в транзакцию /IWFND/GW_CLIENT - SAP Gateway Client

Читать далее «Экспортировать\импортировать oData сервис»