Попробовал тут сделать виртуальный признак с атрибутами...
В общем пока атрибуты display - всё ок
При попытке сделать атрибут навигационным - дамп при попытке выполнить отчет.
RSROA_OLAP_BADI - кстати прикольная вещь, но только в 7.3
RSR_OLAP_BADI
понедельник, 9 ноября 2015 г.
воскресенье, 8 ноября 2015 г.
Оптимизация запроса ABAP
[ABAP] Учимся правильно использовать FOR ALL ENTRIES IN
По мотивам статьи...
Да, сам видел в ST04N как данные куба считываются по кусочкам (по 5 значений).
Количество значений передаваемых в оператор IN регулируется настроченным параметром SAP - max_in_blocking_factor
Но чем больше параметр, тем больше нужно памяти для хранения результата.
Хинты для "локального" преодоления параметра
%_hints db2 '&max_in_blocking_factor 500&' или
%_hints oracle '&max_in_blocking_factor 500&'
Пример:
select * from (table) appending corresponding fields of table lt_table for all entries in lt_tmp where x = lt_tmp-x
%_hints db2 '&max_in_blocking_factor 500&'.
Альтернатива - RANGE
Вместо for all entries использовать range, но есть ньюансы:
- Если range будет содержать более 2000 строк, то он выйдет за размер SQL запроса передаваемого в базе. Результат - DBIF_RSQL_INVALID_RSQL
- т.о. возникает потребность следить за range
По мотивам статьи...
Да, сам видел в ST04N как данные куба считываются по кусочкам (по 5 значений).
Количество значений передаваемых в оператор IN регулируется настроченным параметром SAP - max_in_blocking_factor
Но чем больше параметр, тем больше нужно памяти для хранения результата.
Хинты для "локального" преодоления параметра
%_hints db2 '&max_in_blocking_factor 500&' или
%_hints oracle '&max_in_blocking_factor 500&'
Пример:
select * from (table) appending corresponding fields of table lt_table for all entries in lt_tmp where x = lt_tmp-x
%_hints db2 '&max_in_blocking_factor 500&'.
Альтернатива - RANGE
Вместо for all entries использовать range, но есть ньюансы:
- Если range будет содержать более 2000 строк, то он выйдет за размер SQL запроса передаваемого в базе. Результат - DBIF_RSQL_INVALID_RSQL
- т.о. возникает потребность следить за range
Подписаться на:
Сообщения (Atom)