ODataTreeBinding参数treeSate的用法示例

2020-09-03 15:36发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 我目前正试图在将对...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家您好,

我目前正试图在将对TreeTable条目所做的更改保存到BE之后,从sap.ui.table.TreeTable中保持节点状态(展开/折叠)的解决方案。

场景:我有一个TreeTable绑定到SAPUI5 v 1.52.13上具有operationMode ='Client'的OData v2 Web服务上。 用户可以更改TreeTable条目的不同属性(例如:用户可以为表中的条目设置新价格)。

问题:保存对TreeTable条目所做的更改后,该表将触发请求BE重新加载数据。 此时,将重置TreeTable的状态。 展开或折叠的节点将还原为其初始状态。

在查看相应的SAPUI5文档时,我注意到有一个名为 treeState 的绑定参数。 对我来说,这似乎是一种可行的解决方案,可以在保存更改后不丢失节点的展开/折叠状态。
我的问题是文档模糊不清,我找不到任何有关此操作的示例 参数可以使用。

我不清楚以下内容:

  • 我如何访问ODataTreeBindingAdapter; 我需要这个,所以我可以在保存之前调用getCurrentTreeState以"快照" TreeTable状态
  • treeState实际上应该传递什么? 文档中提到了一个布尔变量,但是如果我查看TreeBindingAdapter,似乎treeState实际上应该是具有某些特定功能的对象。
  • 除了使用ODataTreeBindingAdapter中的getCurrentTreeState之外,还有什么方法可以创建TreeState对象?

谢谢你,祝你有美好的一天!
SePo

(93.2 kB)
付费偷看设置
发送
3条回答
追夢秋陽
1楼 · 2020-09-03 15:55.采纳回答

嗨,

在刷新之前,我们要这样做:

 this._oTreeState = this._oTable.getBinding(" rows")。getCurrentTreeState();
 this._oTable.getBinding(" rows")。setTreeState(this._oTreeState);
 this.getModel()。refresh(); 

致谢

织物

小c菟菟
2楼-- · 2020-09-03 16:07

嗯...这变得更加陌生了:-)。

我也使用1.52,绑定也类似(treeAnnotationProperties除外;我在元数据级别使用注释)。

感谢Fabrice的帮助...我想我必须更深入地研究SAPUI5代码,并了解为什么ODataTreeBindingAdapter不会将这些方法(getCurrentTreeState和setTreeState)添加到表的ODataTreeBinding中。

# p#

Hi Fabrice,

我弄清楚会发生什么...我希望具有此方法的TreeTable位于SmartTable内部。 只要enableAutoBinding = true,似乎SmartTables中TreeTables的绑定就不会获得此方法。

谢谢!

祝你有美好的一天!
SePo

Alawn_Xu
3楼-- · 2020-09-03 16:21

嗨,

对不起,我无法为您提供更多帮助。

祝你有美好的一天!

面料

一周热门 更多>