SapUI5. Пример Master Detail Application

Вступление

Приложение показывает две таблицы sap.m.Table, в верхней (заголовок) – информация по материалу (MARA), в нижней (позиции) – наличие материала на заводе (MARC).

Я заранее подготовил oData сервис на стороне Backend системы.

Он содержит два набора данных – PRODUCT – информация из MARA, и MARC – соответственно из MARC.

Так же для того, чтобы работали sap.ui.model.Filter я использовал класс ZSERVICENAME_DPC_EXT (Расширение Data Provider Controller, которые генерируются при создании сервиса), метод COLLECTIONNAME_GET_ENTITYSET. На входе есть таблица с переданными Filters. Ее нужно использовать для формирования динамического условия запроса.

Например так.

 

JS часть

Представление

Очень важный момент :

Для того, чтобы можно было корректно изменять данные в модели позиций, таблицу нужно забиндить с пустым значением items

<Table items=”{}” />

Далее в контроллере.

Назначаем модели данных, биндим. И при необходимости используем фильтры.