3.5.4. Экран редактирования Покупателя со списком Заказов
Займемся задачей отображения списка заказов в окне редактирования покупателя.
-
Перейдите на вкладку GENERIC UI на панели навигатора. Выделите экран
customer-edit.xml
и нажмите на кнопку Edit. -
На странице дизайнера экрана перейдите на вкладку DATASOURCES и нажмите на кнопку New.
-
Выделите только что созданный источник данных в списке. В правой части страницы отобразятся его характеристики.
-
В поле Type укажите
collectionDatasource
. -
В списке Entity выберите сущность
Order
. -
В поле Id будет автоматически заполнено значение идентификатора источника данных −
ordersDs
. -
В списке View выберите представление
_local
. -
В поле Query введите следующий запрос:
select o from sales$Order o where o.customer.id = :ds$customerDs order by o.date
Здесь запрос содержит условие отбора Заказов с параметром
ds$customerDs
. Значением параметра с именем видаds${datasource_name}
будет идентификатор сущности, установленной в данный момент в источнике данныхdatasource_name
, в данном случае − идентификатор редактируемого Покупателя. -
Нажмите на кнопку Apply для сохранения изменений.
-
Далее перейдите на вкладку LAYOUT в дизайнере экрана и в палитре компонентов найдите компонент
Label
. Перетащите этот компонент на панель иерархии компонентов экрана, междуfieldGroup
иwindowActions
. Перейдите на вкладку PROPERTIES на панели свойств. В поле value введите значение компонента:Orders
.TipЕсли разрабатываемое приложение предполагает локализацию на несколько языков, используйте кнопку
рядом с полем value, чтобы создать новое сообщение
msg://orders
и задать его значение на требуемых языках. -
Перетащите компонент
Table
из палитры компонентов на панель иерархии компонентов междуlabel
иwindowActions
. Выделите компонент в иерархии и перейдите на вкладку PROPERTIES. Задайте размеры таблицы: в поле width укажите100%
, в поле height установите значение200px
. Из списка доступных источников данных выберитеorderDs
, после этого в поле id с помощью кнопкисгенерируйте идентификатор таблицы:
ordersTable
. -
Для сохранения изменений в экране редактирования Покупателя нажмите на кнопку OK в верхней панели.