gpt4 book ai didi

odata - Fiori Elements - 自定义 $batch 查询

转载 作者:行者123 更新时间:2023-12-03 17:29:21 24 4
gpt4 key购买 nike

我有使用 fiori 元素的 Fiori 应用程序,我想调整 UI5 在 $batch 中为 OData 生成的 odata 查询调用。

我为列表报告启用了 livemode 以及用于选择/过滤器的智能过滤器和 list of values使用 ValueList 注释。但问题是当我在选择字段中输入过滤器值时(可以说是卖给)$batch调用触发 OData 的以下查询。

../invoice_list.xsodata/vlsoldto?sap-client=100&$skip=0&$top=10&$filter=startswith(SOLDTO___T,%27TEST%27)

我想调整 odata 调用以使用 'substringof' 而不是 'startswith'.. 所以像下面这样。
../invoice_list.xsodata/vlsoldto?sap-client=100&$skip=0&$top=10&$filter=substringof(%27TEST%27,CRM_SOLDTO___T)

我不知道在哪里可以进行此自定义。我知道如何进行 Fiori 元素扩展,但是如果它是扩展,则查找一些信息,然后是哪种类型的扩展,哪个事件,或者如果不是扩展,则需要任何其他方法。我不知道从哪里开始。

任何帮助表示赞赏。

最佳答案

您可以在 SmartFilterBar 中添加您自己的字段,然后创建您自己的自定义过滤器:

https://sapui5.hana.ondemand.com/#/topic/3a515829ffd74239878ebc0d453d001d

编辑:如果你想使用现有的字段,你可以使用 sap.ui.model.FilterOperator.Contains 推送一个新的过滤器。在 beforeRebindTable 事件。

第 1 步:在您的 中注册您的分机manifest.json 文件

"extends": {
"extensions": {
...
"sap.ui.controllerExtensions": {
...
"sap.suite.ui.generic.template.ListReport.view.Details": {
...
"controllerName": "com.acme.app.controller.ListReportExtension",
...
}
}
...

第二步:实现 Controller 方法:
sap.ui.controller("com.acme.app.controller.ListReportExtension", {
onBeforeRebindTableExtension: function(oEvent) {
var oBindingParams = oEvent.getParameter("bindingParams");
oBindingParams.parameters = oBindingParams.parameters || {};

var oSmartTable = oEvent.getSource();
var oSmartFilterBar = this.byId(oSmartTable.getSmartFilterId());
var vCategory;
if (oSmartFilterBar instanceof sap.ui.comp.smartfilterbar.SmartFilterBar) {
//Custom price filter
var oCustomControl = oSmartFilterBar.getControlByKey("CustomPriceFilter");
if (oCustomControl instanceof sap.m.ComboBox) {
vCategory = oCustomControl.getSelectedKey();
switch (vCategory) {
case "0":
oBindingParams.filters.push(new sap.ui.model.Filter("Price", "LE", "100"));
break;
case "1":
oBindingParams.filters.push(new sap.ui.model.Filter("Price", "GT", "100"));
break;
default:
break;
}
}
}
}
});

关于odata - Fiori Elements - 自定义 $batch 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57553700/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com