sap.ui.table.Table的exportData()方法以空值导出Excel。

2020-08-24 02:25发布

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

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


您好,UI5大师,

在我看来,我有一个使用sap.ui.table库创建的表,我给它提供了一个自定义ID" TAB2"

现在在控制器端,我已经编写了用于下载Table控件数据的代码,并附带了屏幕截图。

我正在下载Excel文件,但其内容为空。

任何人都可以提出建议,什么需要纠正。

谢谢

四进

(35.5 kB)

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

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


您好,UI5大师,

在我看来,我有一个使用sap.ui.table库创建的表,我给它提供了一个自定义ID" TAB2"

现在在控制器端,我已经编写了用于下载Table控件数据的代码,并附带了屏幕截图。

我正在下载Excel文件,但其内容为空。

任何人都可以提出建议,什么需要纠正。

谢谢

四进

(35.5 kB)
付费偷看设置
发送
4条回答
土豆飞人
1楼-- · 2020-08-24 03:02

我也尝试过SAP文档中提到的内容,但是它也给出了空白内容。

https://help.sap.com/saphelp_nw74/ helpdata/zh-CN/f1/ee7a8b2102415bb0d34268046cd3ea/frameset.htm

xfwsx85
2楼-- · 2020-08-24 03:04

嗨,伊凡,

我同意您的观点,即致电odata服务以在excel中下载数据。 可以在对象页表中的sap.ui.table/网格表中实现此功能?

我必须启用对象页面部分中的下载按钮-Fiori 1.52版的对象页面中的表数据。

这可能吗?

谢谢

Soumya

大简至美
3楼-- · 2020-08-24 02:54

嗨,Sijin,

表对象很棘手。 您是否尝试过:

 var oTable = this.getView()。byID(" TAB2");
//oTableRows将以json格式包含表格中的可见数据-因此您可以将其传递给sap.ui.core.util.ExportTypeCSV
 var oTableRows = oTable.getBindingInfo(" rows");
 

这仅仅是开始。 我必须开发一个实用程序库才能导出数据。 这是因为视图组件(表)将仅包含显示的值。 如果执行过滤器或任何种类的分类器,则导出将无用。 假设您将表格限制为5行。 您的导出将只有5行。

正确的解决方案应该是将导出功能基于完整的OData输出。 因此,您需要检索过滤器,排序器和选定的列,以"模拟"用户"认为"他们正在查看的数据,然后再次调用该服务,将值传递回导出功能。

关于,
伊万

zhangjiyang1323
4楼-- · 2020-08-24 03:06

嗨,思金,

请查看以下代码:

 OnExcelAssets:函数(oEvt){
             var oModel = this.getView()。getModel(" masterView");
             var oData = oModel.getData();
             var oTab = this.getView()。byId(" TAB2");
             var oBinding = oTab.getBinding(" items");
             var oExport = new Export({
                 exportType:新的ExportTypeCSV({
                     spacerChar:";"
                 }),
                 模型:this.getView()。getModel(" masterView"),
                 行:{
                     路径:"/img/myAssets",
                     过滤器:oBinding.aFilters
                 },
                 列 : [{
                     名称:this.getResourceBundle()。getText(" actCol1"),
                     模板:{
                         内容:" {Anln1}"
                     }
                 },{
                     名称:this.getResourceBundle()。getText(" actCol2"),
                     模板:{
                         内容:" {Txt50}"
                     }
                 },{
                     名称:this.getResourceBundle()。getText(" actCol6"),
                     模板:{
                         内容:" {Zzestadotxt}"
                     }
                 }]
             });
             this.onExcel(oExport);
         },

 onExcel:sap.m.Table.prototype.exportData || 函数(oExport){
             var vText = this.getResourceBundle()。getText(" errorPressExcel");
            //下载导出的文件
             oExport.saveFile()。catch(function(oError){
                //处理您的错误
             })。then(function(){
                 oExport.destroy();
             });
         },

此致

约翰。

一周热门 更多>