将令牌从 ValueHelpDialog 转换为 SAPUI5 中的过滤器
Convert Token from ValueHelpDialog into Filters in SAPUI5
我正在使用具有范围支持的 ValueHelpDialog
。因此,这些标记是根据选择和输入的值生成的。例如对于“contains
”,会生成像 *abc*
这样的令牌,对于“equal to
”,会生成 =abc
。这些令牌可以通过单击 ValueHelpDialog
上的 OK
获取,如下所示。
我需要为这些选择创建一个 sap.ui.model.Filter
。如何评估令牌以检索 FilterOperator 和要过滤的值?
请帮忙,谢谢!
您可以使用 data 函数从令牌中检索过滤器数据。
const oProperties = oToken.data("range");
/*
{
exclude: false,
operation: "Contains",
keyField: "PROPERTY_PATH",
value1: "abc",
value2: null
}
*/
const oFilter = new Filter({
path: oProperties.keyField,
operator: FilterOperator[oProperties.operation],
value1: oProperties.value1
});
我们可以直接获取运营商。按照以下步骤在 valuehelp 对话框上点击确定按钮即可获得它。
- oEvent.getParameters().tokens
- 展开上述步骤的结果并转到 maggregations->customdata
我正在使用具有范围支持的 ValueHelpDialog
。因此,这些标记是根据选择和输入的值生成的。例如对于“contains
”,会生成像 *abc*
这样的令牌,对于“equal to
”,会生成 =abc
。这些令牌可以通过单击 ValueHelpDialog
上的 OK
获取,如下所示。
我需要为这些选择创建一个 sap.ui.model.Filter
。如何评估令牌以检索 FilterOperator 和要过滤的值?
请帮忙,谢谢!
您可以使用 data 函数从令牌中检索过滤器数据。
const oProperties = oToken.data("range");
/*
{
exclude: false,
operation: "Contains",
keyField: "PROPERTY_PATH",
value1: "abc",
value2: null
}
*/
const oFilter = new Filter({
path: oProperties.keyField,
operator: FilterOperator[oProperties.operation],
value1: oProperties.value1
});
我们可以直接获取运营商。按照以下步骤在 valuehelp 对话框上点击确定按钮即可获得它。
- oEvent.getParameters().tokens
- 展开上述步骤的结果并转到 maggregations->customdata