Рекомендации по оптимизации программ на языке ABAP
Автор: Олег Точенюк
Издательство:
Страниц: 200



Автор
Олег Точенюк
Аннотация
Книга адресована тем, кто имеет базовые навыки в разработке и хочет получить актуальные знания для увеличения быстродействия (производительности) создаваемого программного кода. В книге также содержатся ценные рекомендации по использованию некоторых инструментов SAP-разработчика для анализа программного кода.
О книге
В настоящий момент в России количество SAP специалистов - разработчиков и консультантов - превышает 12 000 человек. Как разработчики, так и консультанты пишут на языке ABAP различные расширения системы (экзиты, замещения и т.д). Очень часто, имея только базовые знания по языку ABAP и инструментам системы, они создают программный код, работающий недопустимо медленно, что вызывает существенное падение производительности даже стандартных транзакций. В связи с этим остро встает вопрос увеличения быстродействия написанного кода.
Из этой книги вы узнаете, как сделать так, чтобы ваши ABAP-программы выполнялись в среде системы SAP быстрее. Получите практические рекомендации по оптимизации кода ваших программ. Научитесь использовать инструменты SAP для определения критических мест в написанном коде.
Обзор содержания | |
Предисловие от редакторов книги | 11 |
ПРЕДИСЛОВИЕ | 12 |
1 Выбор данных на ABAP | 17 |
1.1 Особенности использования оператора SELECT | 17 |
1.1.1 Скорость выполнения запросов |
18 |
1.1.2 Оптимизация использования памяти |
20 |
1.2 Использование агрегатных функций | 21 |
1.3 Ограничение выборки в условиях WHERE | 25 |
1.4 Проверка наличия значения в таблице | 33 |
1.5 Буферизация чтения данных | 34 |
1.6 Соединение таблиц в запросах | 36 |
2 COMMIT WORK. Использование блокирования | 45 |
2.1COMMIT WORK | 45 |
2.2COMMIT WORK и записи о блокировании объектов | 49 |
2.3Оптимизация блокирования объектов | 55 |
3 Работа с внутренними таблицами системы | 59 |
3.1 Организация внутренних таблиц | 59 |
3.2 Индексы внутренних таблиц | 63 |
3.3 Заполнение внутренних таблиц из базы данных | 66 |
3.3.1 Заполнение внутренних таблиц из таблиц базы данных |
66 |
3.3.2Работа с таблицами стандартного типа |
68 |
3.3.3 Работа с таблицами сортированного типа |
71 |
3.3.4 Дополнительные возможности построения вторичных индексов для внутренних таблиц |
77 |
3.3.5 Особенности обновления индексов при обновлении записей данных для внутренних таблиц |
81 |
3.4 SORT – Сортировка данных внутренних таблиц | 83 |
3.5 LOOP AT / READ – операторы чтения данных внутренних таблиц | 84 |
3.6 DELETE – Удаление записей | 89 |
3.7 Копирование данных внутренних таблиц | 95 |
3.8 Копирование и очистка данных для таблиц, работающих по методике совместного использования данных | 97 |
4Тестирование программ, анализ написанного кода | 99 |
4.1 Быстрая проверка времени выполнения запросов | 99 |
4.2 SLIN – Расширенная проверка программы | 100 |
4.3 SCI / SCII – SAP Code Inspector | 114 |
5 Анализ программ во время их выполнения | 122 |
5.1 ST05 – Трассировка SQL (Performanсe Analysis) | 122 |
5.2 SAT – ABAP Runtime Analysis | 128 |
6 Другие аспекты производительности | 137 |
6.1 Передача параметров функций/подпрограмм | 137 |
6.2 Оптимизация передачи данных сервер приложения – сервер презентации | 138 |
6.3 Автоматическое преобразование типов | 139 |
6.4 Параллельное выполнение процессов | 140 |
Объём
200 страниц