zoukankan      html  css  js  c++  java
  • Web调用水晶报表

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.OleDb;
    using CrystalDecisions.Shared;
    using CrystalDecisions.CrystalReports.Engine;
    using System.Text;
    using System.Data.Odbc;

    public partial class Purchase : System.Web.UI.Page
    {
        public static OdbcDataAdapter daerp = new OdbcDataAdapter();
        public ReportDocument report = new ReportDocument();
        public DataTable rptdt = new DataTable();

        protected void Page_Load(object sender, EventArgs e)
        {
            ParameterFields paraFields = new ParameterFields();
            ParameterField paraField = new ParameterField();
            ParameterDiscreteValue paravalue = new ParameterDiscreteValue();

            paraField.Name = "單號";
            paravalue.Value = Session["pur_nbr"].ToString();
            paraField.CurrentValues.Add(paravalue);
            paraFields.Add(paraField);

            #region prevent login dialog

            #region 依據廠別加載rpt
            if (Session["rpt_fac"].ToString().Trim() == "'1'")
            {
                report.Load(Server.MapPath("1.rpt"));
            }
            if (Session["rpt_fac"].ToString().Trim() == "'2'")
            {
                report.Load(Server.MapPath("2.rpt"));
            }
            if (Session["rpt_fac"].ToString().Trim() == "'3'")
            {
                report.Load(Server.MapPath("3.rpt"));
            }
            #endregion

            TableLogOnInfo loginfo = new TableLogOnInfo();
            #region
            //loginfo.ConnectionInfo.ServerName = "192.168.1.1";
            loginfo.ConnectionInfo.ServerName = "Server1";
            loginfo.ConnectionInfo.DatabaseName = "Database1";
            loginfo.ConnectionInfo.UserID = "sa";
            loginfo.ConnectionInfo.Password = "sa.";

            report.Database.Tables[2].ApplyLogOnInfo(loginfo);
            report.Database.Tables[8].ApplyLogOnInfo(loginfo);

            TableLogOnInfo loginfo1 = new TableLogOnInfo();
            if (Session["rpt_fac"].ToString().Trim() == "'1'")
            {
                loginfo1.ConnectionInfo.ServerName = "Server2";
                loginfo1.ConnectionInfo.DatabaseName = "Database2";
                loginfo1.ConnectionInfo.UserID = "sa";
                loginfo1.ConnectionInfo.Password = "";
            }
            if (Session["rpt_fac"].ToString().Trim() == "'2'")
            {
                loginfo1.ConnectionInfo.ServerName = "Server3";
                loginfo1.ConnectionInfo.DatabaseName = "Database3";
                loginfo1.ConnectionInfo.UserID = "sa";
                loginfo1.ConnectionInfo.Password = "";
            }
            if (Session["rpt_fac"].ToString().Trim() == "'3'")
            {
                loginfo1.ConnectionInfo.ServerName = "Server4";
                loginfo1.ConnectionInfo.DatabaseName = "Database4";
                loginfo1.ConnectionInfo.UserID = "sa";
                loginfo1.ConnectionInfo.Password = "";
            }
       
            //report.Database.Tables[0].ApplyLogOnInfo(loginfo);
            report.Database.Tables[0].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[1].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[3].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[4].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[5].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[6].ApplyLogOnInfo(loginfo1);
            report.Database.Tables[7].ApplyLogOnInfo(loginfo1);
            #endregion
            #endregion

            try
            {
                #region old
                //report.SetDataSource(rptdt);
                //CrystalReportViewer1.ReportSource = report;
                //CrystalReportViewer1.DataBind();
                #endregion
                CrystalReportViewer1.ReportSource = report;
                CrystalReportViewer1.ParameterFieldInfo = paraFields;
                CrystalReportViewer1.DataBind();
            }
            catch(Exception ex)
            {
                Response.Write(ex.Message);
            }

        }

        private void InitializeComponent()
        {
            this.Unload += new System.EventHandler(this.Purchase_Unload);

        }
        private void Purchase_Unload(object sender, EventArgs e)
        {
            rptdt.Reset();
            report.Dispose();
            report.Close();
        }
    }

  • 相关阅读:
    MySQL 快速删除大量数据(千万级别)的几种实践方案——附源码
    Elasticsearch 通过Scroll遍历索引,构造pandas dataframe 【Python多进程实现】
    MySQL LOAD DATA INFILE—从文件(csv、txt)批量导入数据
    【Java】 NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException、ArrayIndexOutOfBoundsException、ArrayStoreException、ArithmeticException等没有异常堆栈信息
    技术人“结构化思维”训练的一点想法和实践
    gitlab内存消耗大,频繁出现502错误的解决办法
    Tesseract-OCR 4.1.0 安装和使用— windows及CentOS
    Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码、测试数据和训练集下载地址
    记一次Elasticsearch OOM(内存溢出)的优化过程—基于segments force merge 和 store type 转为 hybridfs
    ElasticSearch如何一次查询出全部数据——基于Scroll
  • 原文地址:https://www.cnblogs.com/gerryge/p/2361493.html
Copyright © 2011-2022 走看看