在 SAPUI5 SmartTable 事件 beforeRebindTable 添加一些过滤器
In SAPUI5 SmartTable on event beforeRebindTable adding some filters
我的要求是在我的控制器的 smartTable 上放置一些过滤器。
在事件 beforeRebindTable 中,我使用以下代码放置过滤器,该代码运行良好。
onBeforeRebindTable: function (oEvent) {
var oBindingParams = oEvent.getParameter("bindingParams");
statFilter = new sap.ui.model.Filter("Claim_TYPE", "EQ", "1234");
oBindingParams.filters.push(statFilter);
}
但问题是当用户再次点击过滤器上的 table 列时,我在上面的代码中添加的过滤器在选择对话框中不可见。用户可能需要删除此过滤器,如果它在对话框中不可见,他们将无法删除它。
我无法确定 link 为什么对话框没有更新,或者我应该在其他地方添加它。
谢谢
索纳尔
onBeforeRebindTable: function (oEvent) {
var oSmartTable = oEvent.getSource();
if (this._isOnInit == null) this._isOnInit = true;
if (this._isOnInit) {
oSmartTable.applyVariant(
{
filter: {
filterItems: [{
columnKey: "YourSelectedColumn",
exclude: false,
operation: "EQ",
value1: "SomeEnteredValue",
value2: ""
}]
}
}
);
this._isOnInit = false;
}
}
我的要求是在我的控制器的 smartTable 上放置一些过滤器。
在事件 beforeRebindTable 中,我使用以下代码放置过滤器,该代码运行良好。
onBeforeRebindTable: function (oEvent) {
var oBindingParams = oEvent.getParameter("bindingParams");
statFilter = new sap.ui.model.Filter("Claim_TYPE", "EQ", "1234");
oBindingParams.filters.push(statFilter);
}
但问题是当用户再次点击过滤器上的 table 列时,我在上面的代码中添加的过滤器在选择对话框中不可见。用户可能需要删除此过滤器,如果它在对话框中不可见,他们将无法删除它。
我无法确定 link 为什么对话框没有更新,或者我应该在其他地方添加它。 谢谢 索纳尔
onBeforeRebindTable: function (oEvent) {
var oSmartTable = oEvent.getSource();
if (this._isOnInit == null) this._isOnInit = true;
if (this._isOnInit) {
oSmartTable.applyVariant(
{
filter: {
filterItems: [{
columnKey: "YourSelectedColumn",
exclude: false,
operation: "EQ",
value1: "SomeEnteredValue",
value2: ""
}]
}
}
);
this._isOnInit = false;
}
}