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

一、REST 服务基于两个要求:

用于定位网络资源的寻址方案

用于返回这些资源的表示形式的方法

二、REST URL基本URI的三个组成部分是:

REST aspx 页 URI:http://<ServerName>/_vti_bin/ExcelRest.aspx

工作簿位置:/Docs/Documents/sampleWorkbook.xlsx

资源位置:/model/Ranges('nameOfTheNamedRange')

三、API简单应用及示例:

1、单元格展示:

例:http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/model/Ranges('A1')

附:完整的Excel

2、图表展示

例:特别说明” %E5%9B%BE%E8%A1%A8%201”==图表 1”的意思,经过Url编码

http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Charts('%E5%9B%BE%E8%A1%A8%201')

附:原来的Excel截屏

3、单元格范围展示(Excel如上图,范围选择不会展示出图表)

例:http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('A1|M5')

特:Sheet2!A1%7CM5,标下划线部分,可以选择工作表,半角感叹号分隔;

4、单元格范围展示并设置一个单元格的值

例:(原Excel如上面Excel所示)http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('Sheet2!A1%7CN5')?Ranges('Sheet2!N2')=88&Ranges('Sheet2!N3')=98

四、返回atomXML格式

  通过返回的XML文件,我们可以在代码中进行下一步的Coding,可以基于一个发布的Excel文件进行统计、展示等。

例:($format=atom参数)

http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('Sheet2!A1%7CN5')?Ranges('Sheet2!N2')=88&Ranges('Sheet2!N3')=98&$format=atom

右键查看源文件:

特:由于完整的XML代码所占篇幅太多,所以只截取当前屏幕,敬请见谅!

五、Excel Services REST API 中不受支持的功能

  以下是 Excel Services REST API 中当前不支持或未使用的多个重要功能的部分列表:

· 无浮动图。如果一个范围包含图,并且您通过 REST 请求该范围,则只会获取该范围。

· 无迷你图,无图标条件格式。当前不受支持。

· 无像素(理想 EWA)。REST 生成的 HTML 与 Excel Web Access 生成的 HTML 很相似。但 Excel Services REST API 无法访问 Excel Web Access 可访问的所有级联样式表 (CSS) 元素。Excel Services REST API 返回一个 HTML 片段。此 HTML 片段必须是自包含的。

· 表中不存在差异。当以 Atom 的形式请求表以查看单元格或数据是列标题、总计还是常规数据时,表中不会产生任何差异。也就是说,不存在指定单元格或数据是标题、总计还是常规数据的差异。将平等对待表中的所有表单元格。

· URL 大小限制。URL 大小将限制在约 2000 个字符。这意味着,如果工作簿中有大量参数,则可能无法设置所有参数。特别是在工作簿位于文件夹结构的较低位置时会出现此情况。

· 特殊字符。不支持如“?”和“#”这样的字符。若要正确引用包含特殊字符的工作表名称,则向带特殊字符的工作表引用公式时,基本原则是“了解 Excel 客户端执行什么操作”,并遵循相应示例。

结束语:

  本文为参考MSDN的sdk文档,做的简单示例,如有疑问请参考附后的参考文献;对于Excel Services REST API了解了一下,推翻了以前认为Excel Services只能Web展示的印象,其实还可以基于这个功能,简单开发一些新的应用。

参考文献:

Excel Services REST API 概述

http://msdn.microsoft.com/zh-cn/library/ee556842(v=office.14).aspx

Excel Services REST API 的资源 URI

http://msdn.microsoft.com/zh-cn/library/ff394530(v=office.14).aspx

SharePoint 2013 Excel Services REST API介绍的更多相关文章

  1. SharePoint 2013 Excel Services ECMAScript 示例之明日限行

    前言:最近遇到一个“明日限行”的功能,北京的交通啊,这个不在今天讨论范围内,暂不吐槽,想想代码开发,还要写WebPart部署,很麻烦,而且部署服务器,需要领导审批,想绕过这个麻烦事儿,就想到客户端了, ...

  2. SharePoint 2013 Word 转换PDF服务介绍及示例

    前言:在SharePoint使用过程中,经常会发现将文档进行格式转换的需求,之前,看到SharePoint 2013有将PPT转换PDF文档的服务,后来,才发现SharePoint 2010开始,就有 ...

  3. SharePoint 2013 术语和术语集介绍

    托管元数据是一个集中管理的术语的分层集合,我们可以定义术语和术语集,然后将其用作 SharePoint Server 2013 中项目的属性.简单的说,术语是一个可与 SharePoint Serve ...

  4. sharepoint 2013 reporting services 远程server返回错误: (500) 内部server错误。

    在sharepoint 2013部署reporting services过程中,点击管理中心,server上的服务.系统配置.提示了一个错误: 远程server返回错误: (500) 内部server ...

  5. SharePoint 2013 版本号和相关问题介绍

    今天查SharePoint 补丁,无意间发现一个非常好的链接,分享给大家! 这里面有SharePoint近期的版本号,而且不断更新,还有每个补丁可能带来的问题,对于服务器经常需要打补丁的那是非常有用, ...

  6. SharePoint 2013 入门教程

    以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这个博客也是自己从SharePoint入门,到一个SharePoint开发的成长记录,里面记录的都 ...

  7. SharePoint 2013 入门教程--系列文章

    转:http://www.cnblogs.com/jianyus/p/3381415.html 以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这 ...

  8. SharePoint 2013 入门教程 [不断更新~]

    以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这个博客也是自己从SharePoint入门,到一个SharePoint开发的成长记录,里面记录的都 ...

  9. SharePoint 2013 配置Excel Services

    前言:本文主要介绍如何启用SharePoint 2013版本Excel Services服务,并配置Excel Web Access部件,使Excel文档可以显示在Web页面中. 简单说一下流程,Sh ...

随机推荐

  1. Entity Framework Code First添加修改及删除单独实体

    对于一个单独实体的通常操作有3种:添加新的实体.修改实体以及删除实体. 1.添加新的实体 Entity Framework Code First添加新的实体通过调用DbSet.Add()方法来实现. ...

  2. 实战MEF(1):一种不错的扩展方式

    在过去,我们完成一套应用程序后,如果后面对其功能进行了扩展或修整,往往需要重新编译代码生成新的应用程序,然后再覆盖原来的程序.这样的扩展方式对于较小的或者不经常扩展和更新的应用程序来说是可以接受的,而 ...

  3. 前端学PHP之语句

    × 目录 [1]if语句 [2]switch [3]while[4]do-while[5]for语句[6]foreach[7]break[8]continue[9]goto 前面的话 任何 PHP 脚 ...

  4. 深入学习jQuery选择器系列第五篇——过滤选择器之内容选择器

    × 目录 [1]contains [2]empty [3]parent[4]has[5]not[6]header[7]lang[8]root 前面的话 本文介绍过滤选择器中的内容选择器.内容选择器的过 ...

  5. Android数据存储之Sqlite的介绍及使用

    前言: 本来没有打算整理有关Sqlite数据库文章的,最近一直在研究ContentProvider的使用,所有觉得还是先对Sqlite进行一个简单的回顾,也方便研究学习ContentProvider. ...

  6. Neutron 如何支持多种 network provider - 每天5分钟玩转 OpenStack(70)

    Neutron 的架构是非常开放的,可以支持多种 network provider,只要遵循一定的设计原则和规范.本节我们将开始讨论这个主题. 先讨论一个简单的场景:在 Neutorn 中使用 lin ...

  7. 记一次ASP.NET MVC性能优化(实际项目中)

    前言 在开发中为了紧赶项目进度而未去关注性能的问题,在项目逐渐稳定下来后发现性能令人感到有点忧伤,于是开始去关注这方面,本篇为记录在开发中遇到的问题并解决,不喜勿喷.注意:以下问题都是在移动端上出现, ...

  8. JS只能输入数字,数字和字母等的正则表达式

    1.只能输入英文 <input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')"> ...

  9. Java内存模型深度解析:基础部分--转

    原文地址:http://www.codeceo.com/article/java-memory-1.html 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何 ...

  10. C#枚举类型的常用操作总结

    枚举类型是定义了一组"符号名称/值"配对.枚举类型是强类型的.每个枚举类型都是从system.Enum派生,又从system.ValueType派生,而system.ValueTy ...