SAP UI5 sap.ui.export.Spreadsheet API 介绍

简介: SAP UI5 sap.ui.export.Spreadsheet API 介绍

本 API 创建一个新的电子表格导出对象。使用此对象从表格数据构建和下载 Office Open XML 电子表格格式的电子表格文件。此功能通常与 UI5 表一起使用。


该类使用来自指定数据源的表格数据构建 Office Open XML 电子表格格式的电子表格。检索数据并在浏览器的工作线程中异步构建文档。 进程的状态在可以被设置为隐藏的进度对话框中直观地呈现给用户。 用户可以使用对话框的取消按钮取消该过程。


此类提供用于电子表格导出的低级 API。 sap.ui.comp.smarttable.SmartTable 控件在内部实现它并提供开箱即用的导出功能。


除了上述默认功能外,该 API 还支持下列可选功能:


  • 隐藏进度对话框。
  • 弃用 worker 并在主线程中运行文档生成过程。
  • 配置导出的文件名。

要开始导出,请创建一个新的 sap.ui.export.Spreadsheet 对象并调用构建方法。 必须在构造函数中提供列配置、数据源和导出设置。 build 方法打开一个进度对话框并启动一个异步导出过程。 导出过程从数据源获取数据行,在工作线程中在浏览器中构建电子表格,最后将文档下载到客户端。


示例代码:


var oSpreadsheet = new sap.ui.export.Spreadsheet(mSettings);
  oSpreadsheet.build();


此外,还可以附加 onprogress 事件侦听器以接收有关导出进度的通知,并跟踪返回的 Promise 的完成状态。


例子代码:


var oSpreadsheet = new sap.ui.export.Spreadsheet(mSettings);
  oSpreadsheet.onprogress = function(iValue) {
    {@link sap.base.Log#debug Log.debug}("Export: %" + iValue + " completed");
  };
  oSpreadsheet.build()
    .then( function() { {@link sap.base.Log#debug Log.debug}("Export is finished"); })
    .catch( function(sMessage) { {@link sap.base.Log#error Log.error}("Export error: " + sMessage); });


column configuration 的例子:


 var aColumns = [];
  aColumns.push({
    label: "Name",
    property: "name"
  });
  aColumns.push({
    label: "Salary",
    property: "salary",
    type: "number",
    scale: 2
  });
  var mSettings = {
    workbook: {
      columns: aColumns,
      context: {
        application: 'Debug Test Application',
        version: '${version}',
        title: 'Some random title',
        modifiedBy: 'John Doe',
        metaSheetName: 'Custom metadata',
        metainfo: [
          {
            name: 'Grouped Properties',
            items: [
              { key: 'administrator', value: 'Foo Bar' },
              { key: 'user', value: 'John Doe' },
              { key: 'server', value: 'server.domain.local' }
            ]
          },
          {
            name: 'Another Group',
            items: [
              { key: 'property', value: 'value' },
              { key: 'some', value: 'text' },
              { key: 'fu', value: 'bar' }
            ]
          }
        ]
      },
      hierarchyLevel: 'level'
    },
    dataSource: mDataSource,
    fileName: "salary.xlsx"
  };
  var oSpreadsheet = new sap.ui.export.Spreadsheet(mSettings);
  oSpreadsheet.build();
相关文章
|
5月前
|
前端开发 JavaScript API
SAP UI5 sap.ui.require.toUrl 的作用介绍
SAP UI5 sap.ui.require.toUrl 的作用介绍
|
Java API
SAP Commerce Cloud 里的 Site API 调用方式讲解
SAP Commerce Cloud 里的 Site API 调用方式讲解
|
XML 存储 大数据
使用 SAP UI5 sap.ui.export.Spreadsheet API 进行 Excel 导出的一些限制
使用 SAP UI5 sap.ui.export.Spreadsheet API 进行 Excel 导出的一些限制
|
XML 前端开发 API
SAP UI5 sap.ui.export.Spreadsheet API 介绍
SAP UI5 sap.ui.export.Spreadsheet API 介绍
|
存储 JavaScript 前端开发
SAP UI5 应用中的 sap.ui.require.toUrl 使用场景
SAP UI5 应用中的 sap.ui.require.toUrl 使用场景
|
XML JSON 前端开发
SAP UI5 应用中的 sap.ui.require 使用场景
SAP UI5 应用中的 sap.ui.require 使用场景
|
XML 前端开发 JavaScript
关于 SAP UI5 接口 sap.ui.core.IAsyncContentCreation 的问题讨论
关于 SAP UI5 接口 sap.ui.core.IAsyncContentCreation 的问题讨论
|
Web App开发 前端开发 API
关于 SAP UI5 Device API 的使用介绍
设备 API ( sap.ui.Device ) 是一个 API,它提供有关设备细节的信息,例如操作系统及其版本、浏览器和浏览器版本、屏幕尺寸、当前方向以及对特定功能的支持,如触摸事件支持, 方向变化等等。
|
XML 前端开发 JavaScript
sap.ui.core.IAsyncContentCreation 这个标记接口在 SAP UI5 框架中的应用
sap.ui.core.IAsyncContentCreation 这个标记接口在 SAP UI5 框架中的应用
|
Web App开发 API 开发者
SAP 电商云 Spartacus UI 同 SAP Customer Data Cloud 集成运行时的 api
SAP 电商云 Spartacus UI 同 SAP Customer Data Cloud 集成运行时的 api
163 0
SAP 电商云 Spartacus UI 同 SAP Customer Data Cloud 集成运行时的 api