本文将介绍如何在 Windows Azure 管理入口网站建立 SQL Reporting。
【情境描述】
在过去 SQL Reporting 只能在旧版由 Silverlight 所开发的 Windows Azure 管理入口网站中使用,现在 SQL Reporting 也已经搬到新版入口管理网站了。
除此之外还有一些更新像是管理入口网站开始支持繁体中文,以及 Mobile Services 支持 Android 平台等,还有新的 Service Bus Notification Hub (Preview)服务,详细说明可以参考小朱大的这篇文章,本文就针对 SQL Reporting 在 Windows Azure 新管理入口网站的部分,请见下一节。
【详细内容】
当您登入 Windows Azure 管理入口网站后,您可以从页面左侧看到一个新的 SQL REPORTING 功能节点,请点选 CREATE REPORTING SERVICE。
您也可以点选上图网页左下角的 NEW,管理入口网站都会引导您输入 Reporting Service 的名称(SERVICE NAME)、区域(REGION)、所使用的订阅项目(SUBSCRIPTION)以及管理者的账号密码等资讯,输入完毕之后按下 CREATE SQL REPORTING SERVICE。
建立完毕之后您就可以在 SQL Reporting 管理页面上看到您刚刚建立的 Reporting Service,点选 reporting service 项目旁边的向右箭头。
跟其他? Windows Azure 服务一样会出现欢迎画面,告诉您使用这个云端服务所所需要使用的工具,以及相关的学习资源。而要开发报表并部署至 SQL Reporting 可以使用 SSDT(SQL Server Data Tools)或 Reporting Builder,前者的 SSDT 是包含在 SQL Server 2012 的安装程序当中,您必须下载 SQL Server 2012 Express with Advanced Services,于安装过程中勾选安装 SSDT;后者的 Report Builder 是设计给 Power User 可以依照需求自行设计报表的一套报表开发工具,笔者就以 SQL Server 2012 Report Builder(以下简称 Reporting Builder 3.0)做示范。此外,您也可以利用 SSDT 的前身(BIDS)来开发 SQL Reporting 报表,详见笔者之前的这篇文章。
在安装 Reporting Builder 3.0 过程当中安装程序会要求您输入 Default target server url,指的是 SQL Reporting 的 Web Service URL。
要查询您所建立的 Reporting Service 的 Web Service URL 可以点选 Reporting Service 内容页面上的 DASHBOARD。
在 Dashboard 页面中您可以用来查看您 SQL Reporting 的使用情形,或是下载报表的执行纪录等,当然还有最重要的 Web Service URL,将下图红色框框处的网址复制下来贴到安装 Report Builder 3.0 的 Default Target Server 步骤。
若您在安装 Report Builder 3.0 时有输入 Target Server URL,在当您开启程序后会立刻连线至 SQL Reporting,并要求您输入您建立 Reporting Service 的管理员账号密码。
顺利连上 SQL Reporting 后您可以利用 Getting Started 窗口所提供的功能来快速建立报表(New Report)、建立数据集(New Dataset)或开启现有报表,在此笔者选择 Blank Report(空白报表)。
接下来笔者建立一个 Data Source,用来连接 SQL Database 上的 Northwind 数据库。
接着建立 Dataset 来取得 region 数据表的数据。
有了数据来源和数据集之后,再来就是如何呈现数据的问题,您可以点选 Report Builder 3.0 功能区块【Insert > Table > Insert Table】来加入表格控件到报表主体。
在表格的 Data 区域中选择 Dataset 的 RegionID和 RegionDescription 属性,最后按下 Run 按钮来检视报表的执行结果。
若没问题的话您将看到如下图的执行结果:
当您按下保存时您会发现您保存报表的路径就是在安装 Report Builder 3.0 的过程当中您所输入的 Reporting Service Web Service URL,跟以 SSDT 或 BIDS 不同的是,使用 Report Builder 3.0 开发的报表不需要部署,他会在保存的时候直接存放至 SQL Reporting,因此您使用这种方式开发报表或是提供给 Power User 设计自己的报表时,数据来源以及数据集的权限,还有报表存取权限都应该事先规划清楚,有关安全性的部分本文暂时不进行讨论。
保存报表之后回到 Windows Azure 管理入口网站的 SQL Reporting 页面中点选 ITEMS 之后您就可以看到刚刚利用 Report Builder 3.0 开发并自动上传的报表。
您可以选择报表之后点选下方的 MANAGE PERMISSION 来设定这张报表的存取权限,权限设定的部分可以由上一层(parent)继承下来,也可以自己进行单张报表的权限指派。和 SSRS 一样的是 SQL Reporting 的权限设定依然是遵循 Role based,默认提供 BROWSER、CONTENT MANAER、MY REPORTS、PUBLISHER、REPORT BUILDER 等角色,考量到安全性及管理便利性,请尽量依照此安全性架构来指派报表的存取权限。笔者尝试建立一个 USER,其 USER NAME 为 User1。
接着再回到 ITEMS 查看 Untitled 这张报表的权限,除了原本建立 Reporting Service 所输入的管理员账号外,User1 也自动套用权限可以浏览这张报表,您可以尝试将 User1 删除藉以实验 User1 禁止存取 Untitled 报表的情境。
要如何浏览您存放在 SQL Reporting 上的报表?您可以点选 Reporting Services 项目的 WEB SERVICE URL。
您会被导到报表管理员网站这就跟使用地端的 SSRS 是一样的,输入完账号密码之后按下 Sign in。
由于目前整个 Reporting Service 只有一张 Untitled 报表,而且您使用 User1 又不具浏览报表的权限,因此进去之后空无一物。
此时回到报表的权限设定画面,将 User 1 浏览报表的权限加回去。
再回头来重新整理刚刚以 User1 登入报表管理员的网页,您就可以看到 Untitled 报表已经出现。
点选报表名称的超链接之后您就可以看到执行结果。
透过以上的说明,相信您应该对新版 Windows Azure 管理入口网站建立 SQL Reporting 以及利用 Report Builder 3.0 开发报表有基本的认识,本文就先介绍到此,至于 SQL Reporting 的其他应用再另文介绍。
【参考数据】
[Windows Azure] 关于 Windows Azure 的部分更新
Create and use a reporting service in Windows Azure SQL Reporting
初探 Windows Azure SQL Reporting
Install SQL Server Data Tools to create reports on Windows Azure
Manage SQL Reporting in the Windows Azure Management Portal
Windows Azure Updates: Android Support, SQL Reporting Services, Active Directory, More…
原文:大专栏 Windows Azure 管理入口网站功能再扩充 - SQL Reporting