gpt4 book ai didi

sapui5 - 从 Fiori 收件箱中删除 "Claim"按钮

转载 作者:行者123 更新时间:2023-12-04 08:15:40 24 4
gpt4 key购买 nike

我想从 SAP Fiori 收件箱的页脚中删除或至少禁用“声明”按钮。
我已经找到 this question但它只描述了删除批准/拒绝按钮,这些按钮在 oOptions 中有自己的属性.
claim 按钮可能位于 buttonList数组,但这样设置它没有效果:

sap.ui.define([
"sap/m/MessageToast",
"sap/m/Dialog",
"sap/base/Log",
"sap/ui/model/Filter",
"sap/ui/model/FilterOperator",
"sap/ui/model/Sorter",
"sap/ui/core/mvc/Controller"
], function (MessageToast, Dialog, Log, Filter, FilterOperator, Sorter, Controller) {
"use strict";

return Controller.extend("something.controller.App", {
onInit: function () {
this._headerFooterOptions = {
buttonList: []
};
this.setHeaderFooterOptions(this._headerFooterOptions);
// ...
}
});
});
另一种可能的方法是通过 this.setBtnEnabled(sid, false); 禁用按钮但因为我不知道 sID claim 按钮,我无法检查这个。
我真的很感激这个问题的帮助!
编辑:我无权访问后端,以防有人遇到同样的问题但可以访问后端,请参阅 @MrNajzs answer .

最佳答案

网关/后端解决方案:
有一个选项可以通过网关/后端类隐藏按钮,如转发、发布、声明。 IMO 你应该采用这种方法,而不是通过扩展 MyInbox UI5 应用程序。

  • 基于类 /IWPGW/CL_TGW_FACADE_BWF_V2 在您的网关中创建一个子类.
  • 重新定义方法 MAP_TASK_ADDITIONAL_FLAGS .例如,如果任务 id = XXX,则不显示 Forward、Claim、...
    CALL METHOD SUPER->MAP_TASK_ADDITIONAL_FLAGS
    CHANGING
    IS_TASK = is_task
    .

    if is_task-TASK_DEF_ID CS 'XXX'. "your workitem task id
    clear: is_task-TASK_SUPPORTS-FORWARD,
    is_task-TASK_SUPPORTS-CLAIM,
    is_task-TASK_SUPPORTS-TASKOBJECT,
    is_task-TASK_SUPPORTS-RESUBMIT.
    ENDIF.
  • 在网关系统中的 spro 中打开提供程序实现(sry 为德语)
    enter image description here
  • 用标准类替换你的 zclass /IWPGW/CL_TGW_FACADE_BWF_V2 enter image description here

  • enter image description here

  • 前端解决方案:
    如果您无法访问后端,请通过 WEBIDE 扩展 MyInbox。
    在您的情况下,您可以扩展整个 Controller (S3.controller.js)或实现 UI Controller Hook (S3.controller.js->extHookChangeFooterButtons)。有关 SAP 标准应用程序的可扩展性,请查看 SAP Fiori Apps Reference Library
    示例(S3.controller.js - UI Controller Hook 实现):
        extHookChangeFooterButtons: function (oButtonList) {
    var sTaskDefinitionId = this.getView().getBindingContext().getProperty("TaskDefinitionID");
    switch (sTaskDefinitionId) { //Define your condition
    case "XXX":
    oButtonList.aButtonList = []; // No Buttons
    break;
    case "XYZ":
    oButtonList.aButtonList.splice(1,1) //No Claim Button
    break;
    default:
    break;
    }
    }

    关于sapui5 - 从 Fiori 收件箱中删除 "Claim"按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65718427/

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