Структура иерархии не показана в таблице SmartTree SAPUI5, созданной с помощью аннотаций метаданных - PullRequest
0 голосов
/ 18 марта 2019

Я написал XML-фрагмент для отображения дерева в

<core:FragmentDefinition xmlns="sap.m" xmlns:t="sap.ui.table" xmlns:l="sap.ui.layout" xmlns:f="sap.ui.layout.form" xmlns:core="sap.ui.core" xmlns:smartTable="sap.ui.comp.smarttable" xmlns:smartFilterBar="sap.ui.comp.smartfilterbar" xmlns:customData="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1">

<smartTable:SmartTable id="smartTreeTable" entitySet="GetDynStrucSet" tableType="TreeTable" useExportToExcel="false" useVariantManagement="false" useTablePersonalisation="true" header="Hierarchy" showRowCount="false" enableAutoBinding="true" beforeRebindTable="onBeforeRebindTable" initiallyVisibleFields="UiRowId,UiHierLevel,UiParentRowId">
</smartTable:SmartTable>

</core:FragmentDefinition>

. В контроллере я передаю фильтры для выполнения службы -

onBeforeRebindTable: function (oEvent) {
//pass selection filters before execute call
var oBindingParams = oEvent.getParameter("bindingParams");
oBindingParams.filters = this.getOwnerComponent().getModel("parameterModel").getData();
oBindingParams.parameters.numberOfExpandedLevels = 2;
}

Служба возвращает30 записей в этом формате: Выход SAP Gateway

Но SmartTable отображает данные следующим образом: SmartTable после привязки

Древовидная структура изначения строк неверны.

В моем Сервисе я использовал некоторую помощь из этого блога: https://blogs.sap.com/2015/10/23/treetable-odata-binding/

Я установил следующие атрибуты для отмеченных свойств:

UIRowId => sap: имя-узла-иерархии для

UiParentRowId => sap: имя-узла-иерархии-для

UiHierLevel => sap: уровень-для-иерархии * для 1027 *

Вывод метаданных шлюза

Почему мое дерево выглядит так и как решить эту проблему?Есть идеи?

...