Fiori元素-"保存时引发"对话框

2020-08-20 21:42发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我们使用fiori元素创建了列表报告应用。 现在,我们想引发一个关于"保存"操作的对话框,因此我们使用了对象页面扩展的扩展API

 function onDialog(oEvent){
       如果(!That._oDialog){
       sap.ui.core.Fragment.load({
       名称:" MyProject.MyDialog",
       控制器:这个
       })。then(function(oDialog){
       That._oDialog = oDialog;
       That.getView()。addDependent(That._oDialog);
       That._oDialog.getBinding(" items")。filter(oFilters);
       That._oDialog.open();
       }。那个那个));
       }其他{
       That._oDialog.getBinding(" items")。filter(oFilters);
       That._oDialog.open();
       }
 }

 sap.ui.controller(" NextGenerationMaintenanceUI.ext.controller.ObjectPageExt",{

 onAfterRendering:function(){
       调试器;
       this.extensionAPI.getTransactionController()。attachAfterSave(onDialog);
       }
  }); 

不幸的是,我们无法访问视图控制器并收到错误" TypeError :(中间值)。这不是函数"

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我们使用fiori元素创建了列表报告应用。 现在,我们想引发一个关于"保存"操作的对话框,因此我们使用了对象页面扩展的扩展API

 function onDialog(oEvent){
       如果(!That._oDialog){
       sap.ui.core.Fragment.load({
       名称:" MyProject.MyDialog",
       控制器:这个
       })。then(function(oDialog){
       That._oDialog = oDialog;
       That.getView()。addDependent(That._oDialog);
       That._oDialog.getBinding(" items")。filter(oFilters);
       That._oDialog.open();
       }。那个那个));
       }其他{
       That._oDialog.getBinding(" items")。filter(oFilters);
       That._oDialog.open();
       }
 }

 sap.ui.controller(" NextGenerationMaintenanceUI.ext.controller.ObjectPageExt",{

 onAfterRendering:function(){
       调试器;
       this.extensionAPI.getTransactionController()。attachAfterSave(onDialog);
       }
  }); 

不幸的是,我们无法访问视图控制器并收到错误" TypeError :(中间值)。这不是函数"

付费偷看设置
发送
1条回答
南山jay
1楼 · 2020-08-20 22:33.采纳回答

您打开对话框的函数在错误的位置,请尝试以下操作:

 sap.ui.define(['sap/ui/core/Fragment'],function(Fragment){
   "使用严格"


   sap.ui.controller(
     'NextGenerationMaintenanceUI.ext.controller.ObjectPageExt',
     {
       onAfterRendering:function(){
         this.extensionAPI.getTransactionController()。attachAfterSave(this.onDialog.bind(this));
       },
       onDialog:函数(oEvent){
         如果(!this._oDialog){
           Fragment.load({
             名称:" NextGenerationMaintenanceUI.MyDialog",
             管理员:这个,
           })。then(function(oDialog){
               this._oDialog = oDialog;
               this.getView()。addDependent(this._oDialog);
              //this._oDialog.getBinding('items').filter(oFilters);
               this._oDialog.open()
             } .bind(this));
         }其他{
          //this._oDialog.getBinding('items').filter(oFilters);
           this._oDialog.open();
         }
       }
     }
   )
 });
 

一周热门 更多>