treeview - UI5树表为什么重复节点?

标签 treeview odata sapui5

我正在尝试将 OData 绑定(bind)到 sap.ui.table.TreeTable 中 OData 示例之后的树表

我已经尝试过设置 treeAnnotationProperties 的基本绑定(bind)。在 xml 和注释绑定(bind)中(我检查了 $metadata 查询,它有 sap:hierarchy- 等)。

但是,这两次我都会得到重复的节点,例如:

Id    | Title     | Hierarchy Level | ParentID 
----------------------------------------------------
1     | izparent  | 0               | 0
|--1  | izparent  | 0               | 0
|  |-- ...
|--2  | izchild   | 1               | 1
2     | izchild   | 1               | 1

我得到一个 ID 为 1 的节点,它是可扩展的,而节点 2 是不可扩展的。但是如果我展开节点 1,我会再次得到可扩展的节点 1 和节点 2,我可以重复展开节点 1 以获得相同的结果。

我感觉我遇到了与这里类似的问题,但也没有为此提供答案:How to define tree table annotation (XML view)

我正在使用 OData 2.0 版和我的 et_entity我只提供一个SELECT * FROM根据样本,我认为我需要的结构的表。

表格内容:
Id | Title    | HierarchyLevel | ParentID | Drillstate
1    izparent   0                0          expanded
2    izchild    1                1          leaf

这里可能是什么问题?

最佳答案

我发现添加 operationMode: 'Client'rows参数解决了这个问题。

扩展似乎触发了另一个服务器调用(额外的 $batch 出现在调试网络选项卡下),因此必须在 GetEntitySet 中包含额外的逻辑。处理扩展的方法在较低的层次结构级别上进行,因此它不再提供完整的层次结构(例如 if hierarchy level = ..., then select only hierarchy level < ... )。
由于我处理的数据量允许operationMode: client ,我没有进一步的附加逻辑方法。

关于treeview - UI5树表为什么重复节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57587963/

相关文章:

sapui5 - 从 NavContainer 调用 "to"后获取下一页传递的数据

javascript - 将模型导出到 csv

c# - 在 RichTextBox 中打开 TreeView 中选定的文件

javascript - metro 风格的 HTML/JS TreeView

wpf - 在 WPF TreeView 中递归绑定(bind)

javascript - 如何使用 dtree javascript 树

asp.net-mvc-4 - WebAPI OData 5.0 Beta - 访问 GlobalConfiguration 引发安全错误

java - 如何通过Web动态查询数据库?

c# - 有没有办法在 OData 中说 "Expand Everything"?

sapui5 - Fiori——跨应用导航;处理启动参数?