zoukankan      html  css  js  c++  java
  • 去掉VS2005中水晶报表的登录界面(ZT)

     新建一个水晶报表文件(.rpt),打开,在最上面的菜单上会多出来(Crystal Report(R)),点菜单,选"注册/更改地址"
    注册码:6707437608

          在CSDN中经常有朋友问在ASP.NET下用水晶报表的网站会出现水晶报表的登录界面,我来用实例说明如何去掉这个界面(PULL模式)
          首先,为了登录方便,将数据库的用户名和密码先写到Web.config中:
    <appSettings>
        <add key="DBServerName" value="你的数据库服务器" />
        <add key="DBUserID" value="sa" />
        <add key="DBPassWord" value="UU1Tc3lzdGVt" />
    </appSettings>

         然后写个类来统一验证登录
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Configuration;

    namespace BLL
    {
        
    public class LoginCrystalReport
        
    {        
            
    public void Login( CrystalDecisions.CrystalReports.Engine.ReportDocument report)
            
    {
                
    string serverName=ConfigurationManager.AppSettings["DBServerName"];
                
    string userId = ConfigurationManager.AppSettings["DBUserID"];

                
    string passWord=ConfigurationManager.AppSettings["DBPassWord"];
               
                
    //Set Database Logon to main report
                foreach (CrystalDecisions.Shared.IConnectionInfo connection in report.DataSourceConnections)
                
    {
                    
    if (connection.ServerName == serverName)
                    
    {
                        connection.SetLogon(userId, passWord);
                    }

                }


                
    //Set Database Logon to subreport
                foreach (CrystalDecisions.CrystalReports.Engine.ReportDocument subreport in report.Subreports)
                
    {
                    
    foreach (CrystalDecisions.Shared.IConnectionInfo connection in subreport.DataSourceConnections)
                    
    {
                        
    if (connection.ServerName == serverName)
                        
    {
                            connection.SetLogon(userId, passWord);
                        }

                    }

                }

            }


           
        }

    }


           现在准备工作已经做好了,下面开始制作水晶报表.对于如何设计水晶报表我在这里就不讲了.
    报表做好后,新建一个WEB页,先拖一个水晶报表查看器,再拖一个水晶报表数据源,这些在VS2005的工具箱中都有,然后将查看器的数据源设置成刚才拖进来的水晶报表数据源,再将水晶报表数据源的数据源设置成刚才完成好的报表,这时候切换到代码,开始编写代码:
    protected override void OnInit(EventArgs e)
        
    {
            
    base.OnInit(e);
            BLL.LoginCrystalReport logCR 
    = new BLL.LoginCrystalReport();
            logCR.Login(
    this.CrystalReportSource1.ReportDocument);
            
        }

          OK,运行一下,发现登录界面没有了,水晶报表出来了.
          还想说明一点,Web.config文件中敏感信息的加密要由你自己完成.
          我打算写一些关于VS2005下水晶报表的系列文章,毕竟园子里关于水晶报表的不多,请弟兄们多多支持
  • 相关阅读:
    Django框架13 /缓存、信号、django的读写分离
    linux09 /消息队列、saltstack工具
    会话管理之AbpSession
    ABP之事件总线(5)
    依赖注入容器之Castle Windsor
    ABP之事件总线(4)
    ABP之事件总线(3)
    ABP之事件总线(2)
    ABP之事件总线(1)
    ABP之展现层(Datatables分页)
  • 原文地址:https://www.cnblogs.com/ma/p/680140.html
Copyright © 2011-2022 走看看