Report Services 基础知识总结

最近几天在学习Report Service,看了好多,感觉几天的了解连冰山一角都不及。不过以后要养成积累的习惯,回头再忘了就尴尬了。。。。。。

总结:

1.了解:报表的开发据目前所知,看业务大小,业务不大或者对这方面要求不是太高的,可以用VS里带的控件reportviewer,根据指导设计新报表。反之,可能需要架设报表服务器,用SQL Server里的Business Intelligence Development Studio开发报表,部署到报表服务器(需先在服务器上配置Reporting Services 配置管理器),然后再在开发环境里用reportviewer调用,从而在页面呈现。

2.Reporting Services 配置管理器:主要配置数据库等基础信息,需注意的是,里面有两个URL,一个是Web服务器URL,一个是管理器URL,顾名思义,在部署和调用时,需要使用服务器URL,登录管理器URL,则是对报表服务器的管理,包括查询、删除,配置东西,管理角色等。这个搞不清楚,很可能会出现用户名和密码输入乱七八糟的问题。

3.Business Intelligence Development Studio:专门用于开发报表的工具,在基础教程的引导下,建立基础的报表没什么大问题,不过深入的就不是一拍即合了,比如表达式这一块,自我感觉不太好弄,如果掺和下业务可能需要费点脑筋了。

4.ReportViewer使用:两种使用方式,一种直接在指引下设计新报表(暂未学到),一种用于呈现报表服务器上的报表。第二种里面涉及一个到一个报表服务器的凭据接口实现,具体代码如下:

 public class EasteaReportCredentials : IReportServerCredentials
    {
        private string _userName;
        private string _password;
        private string _domin;


        public EasteaReportCredentials(string userName, string password, string domin)
        {
            _userName = userName;
            _password = password;
            _domin = domin;
        }


        /// <summary>
        /// 提供用于连接到配置为使用 Forms 身份验证的报表服务器的信息。
        /// 如果应该使用 Forms 身份验证,则为 true;否则为 false。
        /// </summary>
        /// <param name="authCookie"></param>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <param name="authority">对用户进行身份验证时要使用的机构,如 Microsoft Windows 域。</param>
        /// <returns></returns>
        public bool GetFormsCredentials(out System.Net.Cookie authCookie, out string userName, out string password, out string authority)
        {
            authCookie = null;
            userName = _userName;
            password = _password;
            authority = _domin;


            return false;
        }


        /// <summary>
        /// 获取或设置当 Microsoft.Reporting.WebForms.ReportViewer 控件连接到报表服务器时要模拟的用户的 WindowsIdentity。
        /// </summary>
        public WindowsIdentity ImpersonationUser
        {
            get { return null; }
        }


        /// <summary>
        /// 获取或设置向报表服务器进行身份验证时使用的网络凭据。
        /// </summary>
        public ICredentials NetworkCredentials
        {
            get 
            {
                return new NetworkCredential(_userName, _password, _domin);
            }
        }
    }

其次就是控件的配置问题了


对于初学者而言,这些最基础的东西也可能要研究小半天了吧

当搞整出来界面有点小成绩的时候,总会追求下完美,比如表头固定。。。,这一下子才会发现根据设置没效果,问了别人半天终于才明白,报表控件有普通表,分组表,矩阵一说,有的可以呈现效果,有的不可以,初学者还是好好补下基础吧


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值