欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

程序员文章站 2023-11-20 18:49:40
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表...
微软以往的bi产品,尽管有report builder这类ad-hoc工具,但是作为客户端开发工具仍然太麻烦,而且也无法提供灵活的分析功能。在微软新的sql server加office战略布局中,excel被提升到了非常重要的地位,除了olap前端外,excel还充当起ssas中的dm和未来pps的客户端软件。再加上moss,excel成为了集分析、报表、发布为一体的bi客户端工具。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

ssas、excel和moss的关系如下:
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


我这里在同一台机器上安装sql server 2005和moss 07,情况如下:

机器名:esestt

所在域:myhome.cheney

 

sql server 2005

实例名:mssqlserver

登录身份:myhome\administrator

在ssas中部署adventure works数据库作为样本

 

moss 2007

在80端口建立一网站集,使用报告中心模板,用作发布excel报表

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

step 1

在shared services管理站点,加入受信文件位置。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

将moss网站中要发布excel报表的库加入,以便excel文件能访问。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


加入信任位置后先不要关闭这个地址,之后的步骤还要用到。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

step 2

为用户授予olap数据源的访问权限。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


step 3

新建一excel文档。在文档中连接到olap服务器。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

随意选择一个adventure works的视图或者立方体。然后点完成。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

这时会询问是否建立透视表或者数据透视图,选确定。

step 4

点击数据连接属性,在“使用状况”中可以设定excel中数据刷新频率,以及是否从olap数据库中读取数据颜色、格式等属性。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

再看“定义”
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

注意“连接文件”这项,是一个odc文件,这个文件存储着外部数据源连接的信息,是在之前建立olap数据库连接时excel自动建立的。

需要解释一下,excel获取外部数据源连接信息的方式有两种,一是通过外部数据连接文件,就是这里的odc文件;二是嵌入数据连接信息,就是上图中的连接字符串。当excel无法从外部连接文件中获取正确的外部数据连接时,会尝试通过嵌入连接信息连接到外部数据源。

 

再回到step 1中加入的信任文件位置页面,点击之前加入的库地址以修改信任设置,注意在有一栏是关于外部数据设置。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

在允许外部数据这里是设置可以使用何种连接方式,受信任的数据连接库是指在库中的外部odc文件。这里选中“受信任的数据连接库和嵌入连接”表明可以在excel中使用外部odc连接和嵌入连接。顺便取消选中“启用刷新警告”。修改后选确定。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

step 5

在excel数据连接属性中可看到odc文件是保存在本地硬盘上的,如果将excel文件发布到moss上,odc文件也要发布到moss上才行。

跟发布excel文件的库需要受信任一样,odc所在的数据连接库也要受信任。

在shared services管理中心,点“受信任数据连接库”。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

加入要发布odc文件的库地址。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


step 6

在连接属性中点击“验证设置”,可看到excel services的验证有三种。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

下面分别介绍三种认证方式的配置方法

 

(a)无身份验证:

在excel连接属性中选择无身份验证。

在shared services管理中心中编辑excel services设置。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

为外部数据源设置一个默认的帐户,当excel中的没有使用认证方式时,则尝试使用此帐户连接数据源。


(b)sso

首先开启sso服务,并为sso设置足够权限的帐户。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

在moss的管理中心中选“管理单一登录的设置”
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

在下一界面中选“管理服务器设置”, 设置管理帐户和sso数据库。这里的帐户必须是ad中的帐户。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


完成后回到前一界面,选“管理企业应用程序定义设置”,新建一项目。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


设置sso的名称,帐户类型等,我这里选的是组,选中windows验证。

完成后,回到前一界面,选“管理企业应用程序定义的帐户信息”

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

输入组帐户,我这里用的是域用户组。

点设置,输入用以访问外部数据源的帐户。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

完成后,在指定用户组中的成员将可以使用同样的权限访问外部数据源。

 

(c)windows认证

相比前两种认证方式,windows认证无疑是最佳方案。

首先要安装windows server支持工具,可以从win server 03 sp1光盘中或微软的网站上找到,详见

然后配置kerberos认证,下面的配置过程参照了微软网站文档,详见:

http://msdn2.microsoft.com/en-us/library/aa302392.aspx

http://technet2.microsoft.com/office/en-us/library/fb6928ce-49f8-492a-abff-5bd00ed588e21033.mspx?mfr=true

 

完整的kerberos认证方式如下图:

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

1 默认情况下,ssp获取方式是“trusted subsystem”,如果之前没有更改过可使用stsadm.exe更改,stsadm.exe用法如下:
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


像我这里使用命令行:stsadm -o set-ecssecurity -ssp sharedservices -accessmodel delegation

sharedservices是我共享服务的名称。

2 用于发布报表的web应用程序必须是kerberos认证,如果最初建立应用程序时使用的是ntlm认证,可在moss管理中心修改。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

3 在支持工具目录中,执行下面两条语句:

setspn.exe -a msolapsvc.3/esestt.myhome.cheney myhome\administrator

setspn.exe -a msolapsvc.3/esestt myhome\administrator

这里的esestt是我的运行ssas机器名称,myhome.cheney是域名,myhome\administrator是sql server运行帐户。

 

完成上面两条语句后可以检测一下是否成功

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

4 继续执行下面两条命令:

setspn -a http/esestt.myhome.cheney myhome\administrator

setspn -a http/esestt myhome\administrator

这里的esestt是我的运行moss网站集机器名称,因为我的ssas和moss在同一机器上,所以名称相同,myhome.cheney是域名,myhome\administrator发布报表网站集的应用程序池帐户。

 

5 在ad用户的管理窗口,为moss和ssas帐户启用委托,我这里的帐户都是administrator,所以只为administrator启用委托即可。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


step 7

完成上一步的认证设置后,回到excel中的数据连接属性。在验证设置中,选择一种之前设置的验证方式。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

然后将odc文件导出到受信任的数据连接库中。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

在数据连接库中,批准刚才在excel中导出的odc文件。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

step 8

在excel中设计报表。

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


step 9

设计好报表后,将excel文档发布到excel services

使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表

可以选择发布哪些内容。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表


发布excel报表后就可以使用web形式察看报表了,但web形式的图形跟在excel中看到的还是有些差别的。
使用 Excel Services ,结合 Analysis Services 在 SharePoint 中发布报表