SharePoint 2013 Excel Services ECMAScript 示例之明日限行
前言:最近遇到一个“明日限行”的功能,北京的交通啊,这个不在今天讨论范围内,暂不吐槽,想想代码开发,还要写WebPart部署,很麻烦,而且部署服务器,需要领导审批,想绕过这个麻烦事儿,就想到客户端了,不过我这次没有用客户端对象模型,反而采用Excel Services服务,当然只是一个小尝试,效果还算可以吧。
一、效果展示,如下图

简单说明一下,你不需要显示下面Excel的时候,可以写下脚本隐藏,或者把WebPart最小化也可以,不一定非要展示出来。但是,作为和ECMA JavaScript脚本交互的基础,这个Excel是必须添加在页面上的。
二、配置思路
- 配置一个受信任的文档库,用于发布使用Excel Services的Excel文档,并上传明日限行文档;
- 在需要添加限行的页面上,添加Excel Web Access部件,并且选取我们上传的名为“TomorrowLimit.xslt”的Excel文档;
- 在页面上添加内容编辑器部件,用来添加读取Excel Web Access部件内Excel文档的ECMA JavaScript脚本。
三、配置步骤
1、新建一个Excel,命名为“TomorrowLimit.xslt”,如下图;

2、上传到配置好信任位置[1]的文档库中,在首页添加“Excel Web Access部件”;

3、添加内容编辑器,并添加脚本,选择编辑源可以直接添加HTML代码;

4、添加好后保存,即可看到效果;

如上图,可以将下面的“Excel Web Access部件”最小化隐藏,上面的明日限行部件,放到网站需要展示的位置即可。
四、ECMAScript(JavaScript、JScript)简介
在 SharePoint Server 2010 中,Excel Services 添加了对 JavaScript 的支持。利用 Excel Services 中的 JavaScript 对象模型,开发人员可自动执行和自定义页面上的 Excel Web Access Web 部件控件并与之交互。
通过使用 JavaScript 对象模型,可生成混合 Web 应用程序和其他集成解决方案,它们可与页面上一个或多个 Excel Web Access Web 部件控件进行交互。此外,还使您能够向工作簿添加更多功能并为其编写代码。
代码段

<div id='resultdiv'></div>
<script type="text/javascript">
if (window.attachEvent)
{
window.attachEvent("onload", Page_Load);
}
else
{
window.addEventListener("DOMContentLoaded", Page_Load, false);
} function Page_Load()
{
Ewa.EwaControl.add_applicationReady(GetEwa);
} function GetEwa()
{
om =Ewa.EwaControl.getInstances().getItem();
var range = om.getActiveWorkbook().getRange("Limit", , , , );
range.getValuesAsync(, Limit, range);
} function Limit(asyncResult)
{
var values = asyncResult.getReturnValue();
var week = new Date().getDay();
var value;
switch(week)
{
case :
value = values[week + ][];
break;
case :
value = values[week + ][];
break;
case :
value = values[week + ][];
break;
case :
value = values[week + ][];
break;
case :
value = values[week + ][];
break;
default:
value = null;
break;
}
if(value == null)
{
document.getElementById('resultdiv').innerText = "明日不限号";
}
else
{
document.getElementById('resultdiv').innerText = "明日限号:" + value;
}
}
</script>
备注
[1]信任位置:SharePoint在发布好Excel Services服务以后,设置信任位置的文档库,才可以使用Excel Services服务,设置方式可以参考参考文献第一项。
参考文献
SharePoint 2013 配置Excel Services
http://www.cnblogs.com/jianyus/p/3326304.html
Excel Services ECMAScript(JavaScript、JScript)
http://msdn.microsoft.com/zh-cn/library/ee556354(v=office.14).aspx
SharePoint 2013 Excel Services ECMAScript 示例之明日限行的更多相关文章
- SharePoint 2013 Excel Services REST API介绍
前言:Excel Services 中的 REST API 是 Microsoft SharePoint Server 2010 的新增项.利用 REST API,可通过 URL 直接访问工作簿部件或 ...
- sharepoint 2013 reporting services 远程server返回错误: (500) 内部server错误。
在sharepoint 2013部署reporting services过程中,点击管理中心,server上的服务.系统配置.提示了一个错误: 远程server返回错误: (500) 内部server ...
- SharePoint 2013 企业搜索架构示例
博客地址:http://blog.csdn.net/FoxDave 本文参考自微软官方的Chart,我们来看一下企业中对于不同规模SharePoint搜索的场的架构是什么样的. 对于搜索场的规模, ...
- SharePoint 2013 入门教程
以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这个博客也是自己从SharePoint入门,到一个SharePoint开发的成长记录,里面记录的都 ...
- SharePoint 2013 入门教程--系列文章
转:http://www.cnblogs.com/jianyus/p/3381415.html 以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这 ...
- SharePoint 2013 入门教程 [不断更新~]
以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这个博客也是自己从SharePoint入门,到一个SharePoint开发的成长记录,里面记录的都 ...
- SharePoint 2013 配置Excel Services
前言:本文主要介绍如何启用SharePoint 2013版本Excel Services服务,并配置Excel Web Access部件,使Excel文档可以显示在Web页面中. 简单说一下流程,Sh ...
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序 Excel Services中新功能
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序 Excel Services中新功能 从S ...
- 在SharePoint 2013里配置Excel Services
配置步骤,请参看下面两篇文章 http://www.cnblogs.com/jianyus/p/3326304.html https://technet.microsoft.com/zh-cn/lib ...
随机推荐
- Bower : ENOGIT git is not installed or not in the PATH
解决方法一: 添加git到window的环境变量中.设置path路径为C:\Program Files\Git\bin 解决方法二: $ set PATH=%PATH%;C:\Program File ...
- codeforces B. Ohana Cleans Up
B. Ohana Cleans Up Ohana Matsumae is trying to clean a room, which is divided up into an n by n grid ...
- 配置 DHCP 服务 - 每天5分钟玩转 OpenStack(89)
前面章节我们看到 instance 在启动过程中能够从 Neutron 的 DHCP 服务获得 IP,本节将详细讨论其内部实现机制. Neutron 提供 DHCP 服务的组件是 DHCP agent ...
- Mobile Web中URL设计问题
自己虽然也注册了CSDN账号,但是没有在上面发表过博客等内容.不过经常在Google里面搜索相关内容时,会显示csdn的结果.这也说明国内很多IT人员都会在CSDN发表博客,记录解决问题过程或者想法. ...
- Util应用程序框架公共操作类(七):Lambda表达式公共操作类
前一篇扩展了两个常用验证方法,本文将封装两个Lambda表达式操作,用来为下一篇的查询扩展服务. Lambda表达式是一种简洁的匿名函数语法,可以用它将方法作为委托参数传递.在Linq中,大量使用La ...
- 窥探Swift系列博客说明及其Swift版本间更新
Swift到目前为止仍在更新,每次更新都会推陈出新,一些Swift旧版本中的东西在新Swift中并不适用,而且新版本的Swift会添加新的功能.到目前为止,Swift为2.1版本.去年翻译的Swift ...
- 部署Icinga-php4
关于Icinga-php4的文档信息及下载地址,可参考:http://icinga-cn.sourceforge.net/ 我这里使用的是icinga-pnp4-cn-1.12.2.tar.xz. 因 ...
- EF Code First 一对多、多对多关联,如何加载子集合?
应用场景 先简单描述一下标题的意思:使用 EF Code First 映射配置 Entity 之间的关系,可能是一对多关系,也可能是多对多关系,那如何加载 Entity 下关联的 ICollectio ...
- mysql default unix_timestamp(now())
按照mssql的创建方式,去创建mysql的默认值时间戳是不能被允许的,例如下面代码: CREATE TABLE USERINFO( CREATETIME INT NOT NULL DEFAULT U ...
- Oracle数据库备份、恢复及常见问题
通常我们都是使用PL/SQL Developer来对Oracle中的数据对象和数据进行管理.如果我们想方便快速还原或者部署Oracle到新机器上,怎么进行数据库的备份.导入恢复呢? 这里我们必须要考虑 ...