zoukankan      html  css  js  c++  java
  • SSRS报表服务随笔(rdl报表服务)-创建一个简单的报表

    这段时间一直在敲rdl报表,在国内的不这么留在,在国外的话,还是挺流行的,国内的话,这方面的资料很少很少,也踏过不少坑

    先从SSRS了解起,SSRS全称 SQL Server Reporting Services,是依赖于数据库运行的,是微软开发的重量级别的BI产品

    有什么优却点呢?

      因为是重量级的,所以上手容易,开发简单,有数据库服务器就可以了,不需要依赖于IIS运行,而且好像可以自动发送邮件

      可扩展性比较低,(有用么,做好一个报表就直接用了,扩展的可能性本来就低),对比那些其他报表来说,确实比较好

      在国内,我看到有好多友友是把rdl报表嵌在C#项目里开发的,rdl只是一个显示窗口,用C# 的各种空间做输入,其实完全用不着,微软提供的rdl报表参数挺好用的

    废话不多说了,开发rdl报表,有两种方式,一种是SSDT,一种就是SSRS

      在这里说下SSDT

      对应的数据库版本不同,名称也有点差别,在SqlServer2008,叫做SQL Server Business Intelligence Development Studio,是集成在数据库安装包的,属于SqlServer的开发工具,同时呢,SSRS也集成在数据库安装包里,

      SqlServer2012,名称忘了叫啥了,图标和名称与2008的都很相似

      因为SqlServer2014没有使用过,所以,跳过

      在SqlServer2016以后,画风大变,在安装选项里只有一个SSRS选项,SSDT给了Vs了,在VS2017可以安装SSDT组件

      SqlServer2017呢,SSDT和SSRS都需要独立安装,不同的是,SSDT属于VS的实例,SSRS属于SQLServer的实例

      在SSRS和SSDT都可以开发rdl报表,SSRS是依托于服务器开发,包括创建报表都是从服务器上操作,SSDT就像平常的开发,建立一个空的商业智能项目,开发完成后可上传到SSRS服务器,也可以直接连接SSRS服务器开发

      先贴上我拿来演示的数据

      

    CREATE TABLE STUDENT
    (
    	GID VARCHAR(50) UNIQUE,
    	ID INT IDENTITY,
    	NAME VARCHAR(20),
    	SEX BIT,
    	CHINESE INT,
    	MATHEMATICS INT,
    	ENGLIST INT
    );
    GO
    INSERT INTO STUDENT(GID,NAME,SEX,CHINESE,MATHEMATICS,ENGLIST) VALUES (NEWID(),'张三',0,95,90,75);
    INSERT INTO STUDENT(GID,NAME,SEX,CHINESE,MATHEMATICS,ENGLIST) VALUES (NEWID(),'李四',0,95,90,75);
    INSERT INTO STUDENT(GID,NAME,SEX,CHINESE,MATHEMATICS,ENGLIST) VALUES (NEWID(),'王五',1,95,90,75);
    INSERT INTO STUDENT(GID,NAME,SEX,CHINESE,MATHEMATICS,ENGLIST) VALUES (NEWID(),'赵六',0,95,90,75);
    GO
    

      

      个人呢喜欢用SSDT开发,比SSRS好操作,更灵活

    1. 配置SSRS
    •   先配置SSRS服务器,打开Reporting Server 配置管理器,选择报表服务器实例

      

    •   配置账户
    • 配置本地服务器,用内置账户就可以了,要是给别人用的,选择配置其他账户,在其他账户里,注意用户名是域/用户名的格式,不知道是什么的可以看看你的系统说明,保存秘钥,确认

    • Web服务URL
    • 在这里,点击高级,可以添加,可以修改,在以后做子报表的时候需要用这个

    •  更改数据库
    • 本地服务器的话,默认就好,远程服务器的话,需要报表模式为Sql账户,凭据也是

    • Web门户URL
    • 这个了,就随便了,这个是你SSRS报表管理页面的配置,配置完成的话,现在就可以访问了

      2.  现在开始创建报表:

        SSRS方式

        打开你的SSRS管理页面,在右上角点击加号(新建)新建文件夹与报表,在SqlServer2012之前,点击添加报表,在2016以及2016之后,区分了移动报表,分页报表

        点击加号(新建),可以新建文件夹,KPI报表,移动报表,分页报表,数据源,数据集

          

        分页报表

        新建分页报表会打开Reporting Builder,没有的话在弹出的页面选择获取Reporting Builder;

        在Reporting Builder首先会给你弹出一个向导,有表格矩阵,图表,地图向导,空白报表

        

         首先,选择创建数据集(可以使用共享数据集),

         然后,创建数据源,点击新建,输入连接字符串,或是生成字符串

         第三步,通过Sql完成数据集的创建,可以通过可视化操作,也可以点击编辑为文本输入sql

          (在这里需要的是,字段名称不能有重复的,不能同时写两个以上的查询语句或不能包含函数操作类的语句)

         第四部,分组

          

        第五步:选择布局

        SqlServer2012之前会有第六步选择样式外观

        最后点击完成,这样,一个最简单的报表就出来了

        SSDT方式(支持中文)

        Sqlserver2012(包含)之前的版本,打开SQL Server Business Intelligence Development Studio,选择商业智能项目,创建报表服务项目

        VS2017(包含)之后,打开VS,打开VS2017或VS2017 SSDT,选择商业智能项目,创建报表服务项目

        你的电脑数据库为2016/2017的,VS为2017以下的,抱歉了,只能通过SSRS创建报表

        选择项目路径以及名称

        打开解决方案资源管理器,右击报表,选择添加新报表

        选择或新建数据源,点击编辑可以生成连接字符串

        输入查询的sql语句

        选择表格或矩阵

        分组

        输入报表名称

        完成

        下班了,明天继续

  • 相关阅读:
    355. Design Twitter
    54. Spiral Matrix
    143. Reorder List
    324. Wiggle Sort II
    365. Water and Jug Problem
    洛谷 P3527 [POI2011]MET-Meteors 解题报告
    洛谷 P4592 [TJOI2018]异或 解题报告
    单调序列 解题报告
    洛谷 P4735 最大异或和 解题报告
    洛谷 P1527 [国家集训队]矩阵乘法 解题报告
  • 原文地址:https://www.cnblogs.com/linjierd/p/10251606.html
Copyright © 2011-2022 走看看