Excel Services 开发路线图

上次修改时间: 2010年4月14日

适用范围: SharePoint Server 2010

本文内容
Excel Web Services
用户定义函数 (UDF)
Excel Web Access
ECMAScript(JavaScript、JScript)
REST API

Excel Services 的一个重要方面是,解决方案开发人员可在自己的应用程序中以编程方式使用它的功能。这些解决方案可以是业务线 (LOB) 产品或组织内部开发的自定义企业解决方案。

以下是这些应用程序的示例:

  • 多层应用程序,其中的表示层作为调用 Excel Web Services 的 Web 应用程序(例如,ASP.NET 应用程序)实现。

  • Microsoft SharePoint Server 2010 中的或者与 LOB 产品集成的应用程序。

可使用 Excel Services 执行以下五类开发:

  • 使用 Excel Web Services 开发解决方案

  • 使用用户定义函数 (UDF) 扩展 Excel Services 中的 Microsoft Excel 函数库

  • 自定义 Excel Web Access Web 部件

  • 使用 ECMAScript(JavaScript、JScript) 开发解决方案

  • 使用 REST API 对 Excel 工作簿执行操作

Excel Web Services

以下是 Excel Web Services 的主要方案:

  • Server-side Excel calculation

    此方案以应用程序为中心。在此方案中,您使用的模型是在 Excel 工作簿中定义的,并将作为应用程序逻辑的一部分在服务器上进行计算。

  • Automating workbook updates on the server

    此方案以文件为中心。在此方案中,Excel Web Services 会处理工作簿,并保存工作簿或快照的副本。

  • Opening workbooks in edit sessions

    Excel Web Services 支持在 SharePoint Server 2010 中的编辑会话中打开工作簿。在此方案中,可使用编码编辑工作簿。

服务器端 Excel 计算

对于服务器端 Excel 计算,自定义应用程序通常会将 Excel 模型用作其逻辑的一部分。业务用户可继续在服务器位置上维护 Excel 中的模型,而不必使用编程语言重新编写 Excel 工作簿业务逻辑的代码。开发人员决不需要在使用由业务用户创建的模型的应用程序中更改代码行。

在此方案中,自定义应用程序会反复调用 Excel Web Services,而它会将调用发送到后端计算服务。Excel Calculation Services 可执行以下操作:

  • 加载指定的 Excel 工作簿

  • 接收输入

  • 处理工作簿(例如,刷新数据或执行计算)

  • 将结果发送到自定义应用程序

在服务器上自动执行工作簿更新

当开发人员自动化服务器上的 Excel 工作簿更新时,他们通常有两个目标:

  • 使用 Open XML 格式生成 Excel 文件或修改 Excel 模板,然后计算生成的 Excel 文件。

  • 定期打开 Excel 文件以刷新外部数据(每个用户可打开该文件一次或多次),并计算生成的工作簿,然后将其保存或通过电子邮件将其发送给各个用户。

在这种情况下,自定义应用程序使用 Excel Web Services 执行下列操作:

  • 加载指定的 Excel 工作簿

  • 输入参数

  • 处理工作簿(例如,刷新数据或执行计算)

自定义应用程序检索工作簿或快照的实时版本,然后使用 Excel Web Services 保存工作簿或快照。

备注

对工作簿进行更改(例如,使用 Excel Web Services 将值设置为某个区域)时,仅为该特定的会话保留对工作簿所做的更改。所做的更改并不会保存或在原始工作簿中保留。如果当前工作簿会话结束(例如,调用 CloseWorkbook 方法或会话超时),所做的任何更改将会丢失。

若要保存对工作簿所做的更改,可以使用 GetWorkbook 方法,然后使用 SaveWorkbook 方法或 SaveWorkbookCopy 方法保存该工作簿。有关 Excel Web Services API 的详细信息,请参阅 Microsoft.Office.Excel.Server.WebServices

使用 Excel Web Services

可以通过以下方式使用 Excel Web Services:

  • 通过 SOAP over HTTP 调用 Web 方法,将其用作常规 Web 服务。

  • 通过直接链接到 Microsoft.Office.Excel.Server.Webservices.dll,将其用作本地程序集。

有关何时应直接链接到 Microsoft.Office.Excel.Server.Webservices.dll 的详细信息,请参阅环回 SOAP 调用和直接链接

有关 Excel Web Services API 的信息,请参阅 Microsoft.Office.Excel.Server.Webservices 命名空间引用文档。有关如何使用 Excel Web Services 开发自定义应用程序的示例,请参阅演练:使用 Excel Web Services 开发自定义应用程序

用户定义函数 (UDF)

Excel Services 支持托管代码 UDF。借助 Excel Services UDF,您能够在单元格中使用公式来调用使用托管代码编写并部署到 SharePoint Server 2010 中的自定义函数。您可以创建 UDF 来执行以下操作:

  • 调用自定义数学函数。

  • 从自定义数据源获取数据并存入工作表。

  • 通过 UDF 调用 Web 服务。

  • 在现有本机代码库函数中封装调用 — 例如,现有的 Excel UDF。

有关 Excel Services UDF 的详细信息,请参阅了解 Excel Services UDF

使用 UDF

有关 Excel Services UDF 定义的信息,请参阅 Microsoft.Office.Excel.Server.Udf 命名空间参考文档。

有关如何创建托管代码 UDF 的示例,请参阅演练:开发托管代码 UDF

Excel Web Access

可以使用 Excel Web Access Web 部件的可扩展属性执行以下操作:

  • 以编程方式配置 Excel Web Access。

  • 以编程方式更改 Excel Web Access属性。

  • 使用级联样式表 (CSS) 应用一个主题或打造 Web 部件页的品牌。

使用 Excel Web Access Web 部件扩展

有关以下内容的信息:

  • Excel Web Access 可扩展属性,请参阅 Microsoft.Office.Excel.Server.WebUI 命名空间参考文档。

  • Excel Web Access CSS,请参阅 CSS 参考文档。

  • 如何以编程方式配置 Web 部件,请参阅 SharePoint Foundation SDK。

ECMAScript(JavaScript、JScript)

在 SharePoint Server 2010 中,Excel Services 添加了对 JavaScript 的支持。利用 Excel Services 中的 JavaScript 对象模型,开发人员可自动执行和自定义页面上的 Excel Web Access Web 部件控件并与之交互。通过使用 JavaScript 对象模型,可生成混合 Web 应用程序和其他集成解决方案,它们可与页面上一个或多个 Excel Web Access Web 部件控件进行交互。此外,还使您能够向工作簿添加更多功能并为其编写代码。

有关 Excel Services 中的 JavaScript 对象模型的详细信息,请参阅 Ewa 命名空间的参考文档。

使用 ECMAScript(JavaScript、JScript)

有关 JavaScript 的详细信息,请参阅以下链接:

  • 有关 Excel Services 中的 JavaScript 对象模型的详细信息,请参阅 Ewa 命名空间参考文档。

  • 有关如何使用内容编辑器 Web 部件与 Excel Services 中的 JavaScript 对象模型进行交互的示例,请参阅演练:使用内容编辑器 Web 部件进行开发

REST API

Excel Services 中的 REST API 是 SharePoint Server 2010 中的新增功能。利用 REST API,可通过 URL 直接访问工作簿部件或元素。

利用 Excel Services REST API 中内置的发现机制,开发人员和用户可通过提供包含有关驻留在特定工作簿中的元素信息的 Atom 源,以手动或编程方式浏览工作簿内容。可通过 REST API 访问的资源为区域、图表、表和数据透视表。

使用 REST API 提供的 Atom 源可更轻松地获取所需的数据。此源包含可遍历的元素,这些元素允许任何代码发现工作簿中存在的元素。

有关详细信息,请参阅 Excel Services REST API

使用 REST API

有关以下内容的信息:

  • 在 Excel Services 中访问 REST 服务和查看 REST 服务的示例 URL 的信息,请参阅访问 Excel Services REST API

  • 访问 Excel Services 中的 REST 服务架构的信息,请参阅访问架构

请参阅

任务

演练:使用 Excel Web Services 开发自定义应用程序

如何:以编程方式向页面添加 Excel Web Access Web 部件

概念

Excel Services 概述

Excel Services 体系结构

支持和不支持的功能

Excel Services 博客、论坛和资源