SAPUI5 如何连接两个智能表的过滤器

SAPUI5 How to connect the filters of two Smart tables

我有两个智能 table,它们都有一个个性化按钮,用户可以在其中添加过滤器。 现在我需要连接 tables,应用于一个 table 的过滤器也适用于另一个 table。

我已经取得的成果:如果用户对一个 table 应用过滤器,我可以使用 beforeRebindTable 事件 在 [=11 的帮助下查看它=].之后我可以将应用于 table 的变体复制到另一个 table

var oVariantWithFilters = this.getView().byId("SmartTableOne")._oCurrentVariant

this.getView().byId("SmartTableTwo")._oCurrentVariant = oVariantWithFilters 

结果两者都被正确过滤了。

但是: 如果用户打开另一个智能 table 的个性化设置(在本例中是 SmartTableTwo 之一),他将看不到应用的过滤器也不能在这个地方删除它。

所以问题是关于如何在另一个 table 的个性化对话框中也添加过滤器信息。 (复制完整的 _oPersController 是不可能的,因为这不仅控制过滤器..还显示哪些列...)

我希望这是可以理解的。

此致, 克里斯蒂安

比预期的要容易...

var oVariantWithFilters = this.getView().byId("SmartTableOne").fetchVariant()

this.getView().byId("SmartTableTwo").applyVariant(oVariantWithFilters) = oVariantWithFilters

通过使用不复制变体的 applyVariant 函数...还创建了个性化对话框...所以这解决了我的问题。 :)