SAP Developer Edition

Понадобилось установить систему SAP для собственных нужд. К счастью SAP AG бесплатно распространяет систему SAP для разработчиков. Скачиваем SAP NetWeaver AS ABAP Developer Edition 7.52 SP04

Данная система устанавливается на компьютер, минимальные требования к которому — 4Gb памяти и 100Gb на жестком диске. ОС должна быть линукс. Я использовал openSuSE 15.4

Установка данной версии не предоставляет никаких сложностей. Единственно надо выделить 8Gb под swap. В качестве файловой системы я предпочитаю использовать ext4.

Читать далее «SAP Developer Edition»

BOPF. ч. 6. Практические примеры

В данной статье опишу небольшие примеры работы с объектами BOPF.

Изменение данных.

Чтобы изменить те или иные данные в БО можно воспользоваться методом modify. Для этого нужно заполнить таблицу модификаций. При этом поле change_mode может принимать значение из константы /bobf/if_frw_c=>sc_modify_update для модификации существующего значения.

Читать далее «BOPF. ч. 6. Практические примеры»

Unit-test. Ч. 2.

В первой части я кратко описал назначение unit-test и сделал unit-test для локального класса. Теперь сделаем unit-test для функционального модуля и для глобального класса.

Unit-test для функционального модуля.

Сначала создадим функциональный метод ZFM_CALCULATOR и сделаем unit-test для него

Читать далее «Unit-test. Ч. 2.»

Unit-test

Юнит-тест это автоматизированный тест изолированного от зависимостей
логического блока кода. Юнит-тест даёт возможность разрабатывать код, который можно легко развивать с течением времени. При использовании unit-тестирования разработчик гарантирует правильность работы кода, упрощает проверку качества и рефакторинг кода.

Unit-test представляет собой специализированный локальный класс, который вызывает методы основного класса, разрабатываемые функциональные модули или подпрограммы программы. Затем в локальны класс анализирует результат работы программы и сравнивает его с эталонным. Таким образом для unit-test разработка представляет собой черный ящик, который должен в зависимости от специально подготовленных исходных данных возвращать ожидаемые от него результаты. Что именно происходит внутри разработки классу тестирование не важно.

Перейдем к практической реализации unit-test.

Читать далее «Unit-test»

Фреймворк BOPF. ч 5. Создание Query и Validation

Создание QUERY

Для создания запроса, достаточно в контекстном меню выбрать пункт Create Query

Создание Query

Создадим запрос Select_all, который будет показывать всё содержимое ноды

Читать далее «Фреймворк BOPF. ч 5. Создание Query и Validation»

Фреймворк BOPF. ч 4. Создание Determination.

В третьей части мы создали свой бизнес-объект ZTS_CLIENT. Сначала создадим determination – определение, которое отобразит значение полей из transient-структуры. В данном примере напишем функционал, который будет находить бизнес-партнера с номером PARTNER и копировать его наименование в поле transient-структуры.

Создание determination в Business Object

Новый determination назовём ZDET_ROOT_NAME_ORG

Читать далее «Фреймворк BOPF. ч 4. Создание Determination.»

Фреймворк BOPF. ч. 3. Создание бизнес-объекта

Для углубленного изучения BOPF создадим новый бизнес объект. Для этого зайдем в транзакцию BOBX и создадим BO.

Создание Business Object

Заходим в меню Extras-Propose Repository Names

В разделе Node отмечаем все пункты кроме Node Class Name нажимаем на кнопку Ok

Читать далее «Фреймворк BOPF. ч. 3. Создание бизнес-объекта»