导出sap.ui.table.Table没有结果

2020-09-07 08:15发布

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

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


专家们,

我正在我的应用程序上显示一个具有搜索功能的表,并使用导出实用程序下载文件。

它只加载标头信息而不加载项目数据,从而加载excel。

我怀疑我用于行的路径不正确,请您提供帮助。

onDataExport:function(){
var oExport = new sap.ui.core.util.Export({
exportType:new sap.ui.core.util.ExportTypeCSV({splitChar:";" < br>模型:this.getView()。byId(" table")。getModel(),
行:{路径:"/在此处使用Odata实体的名称"
列:[{名称:"材料 ",模板:{内容:" {Matnr}"名称:" Description",模板:{内容:" {Description}"
oExport.saveFile("订单跟踪导出").catch(function(){
})。then(function(){oExport.destroy();

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

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


专家们,

我正在我的应用程序上显示一个具有搜索功能的表,并使用导出实用程序下载文件。

它只加载标头信息而不加载项目数据,从而加载excel。

我怀疑我用于行的路径不正确,请您提供帮助。

onDataExport:function(){
var oExport = new sap.ui.core.util.Export({
exportType:new sap.ui.core.util.ExportTypeCSV({splitChar:";" < br>模型:this.getView()。byId(" table")。getModel(),
行:{路径:"/在此处使用Odata实体的名称"
列:[{名称:"材料 ",模板:{内容:" {Matnr}"名称:" Description",模板:{内容:" {Description}"
oExport.saveFile("订单跟踪导出").catch(function(){
})。then(function(){oExport.destroy();

付费偷看设置
发送
8条回答
大道至简
1楼 · 2020-09-07 08:32.采纳回答

DC,

尝试过,下面是最新的代码,不幸的是仍然没有将行返回到电子表格

//下载按钮附带的方法

onDataExport:sap.m.Table.prototype.exportData || function(){

var oExport =新的sap.ui.core.util.Export({

//将用于生成内容的类型。 可以创建自己的ExportType以支持其他格式

exportType:新的sap.ui.core.util.ExportTypeCSV({eparatorChar:";"}),

//通过上面创建的模型

模型:this.getView()。byId(" table")。getModel(" worklistView"),

//行聚合的绑定信息

行:{路径:this.getView()。byId(" table")。getBinding(" items")。getPath()},

//具有列名和内容绑定信息的列定义

列:[{名称:"材料",模板:{内容:" {Matnr}"}}},{名称:" Description",模板:{内容:" {Description}"}}}}}); this.onExcel(oExport); },

onExcel:sap.m.Table.prototype.exportData || 函数(oExport){

//下载导出的文件

oExport.saveFile("订单跟踪导出").catch(function(oError){

//处理错误MessageBox.error("下载数据时出错。可能不支持浏览器!\ n \ n" + oError); }。

then(function(){

oExport.destroy();

}); }

通过我在WebIDE上进行开发的方式,应该从odata中读取表条目,而不仅仅是从显示的数据中读取。

该问题最终通过如下填充并向行添加过滤器而得以解决

行:{

路径:this.getView()。byId(" table")。getBinding(" items")。getPath(),

过滤器:[aFilters]},

bbpeas
2楼-- · 2020-09-07 08:55

嗨Vaibhav,

我使用了搜索方法和过滤器来推送值并进行绑定。

这是绑定的代码。

_applySearch:函数(aTableSearchState){

var oTable = this.byId(" table"),

oViewModel = this.getModel(" worklistView");

oTable.getBinding(" items")。filter(aTableSearchState," Application");

//在没有过滤器结果的情况下更改列表的noDataText

如果(aTableSearchState.length!== 0){

oViewModel.setProperty("/img/tableNoDataText",this.getResourceBundle()。getText(" worklistNoDataWithSearchText")))

}},

一周热门 更多>