水晶报表中的子报表 [英] Sub Report In Crystal Report

查看:71
本文介绍了水晶报表中的子报表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好专家,
我想在水晶报表中添加子报表.我已经在设计部分添加了子报表,但缺少参数值,但出现异常.我不知道如何在现有代码中编写代码.
请帮助我编写用于子报告的代码.

我的主要水晶报表的代码如下:-

CREngine.ReportDocument reportDoc =新的CREngine.ReportDocument();
试试
{
ConnectionInfo conInfo =新的ConnectionInfo();
如果(conn.DataSource.Equals("72.18.131.163,1533"))
{
conInfo.ServerName ="72.18.131.163,1533";
conInfo.DatabaseName ="DedStaffApproval";
conInfo.UserID ="prabodh";
conInfo.Password ="prabodh $ 123";
}
其他
{
conInfo.DatabaseName ="DedStaffApproval";
conInfo.IntegratedSecurity = true;
conInfo.ServerName ="SAHDEV";
}
//conInfo.ServerName ="SAHDEV";
////conInfo.ServerName ="acer";
//conInfo.DatabaseName ="DedStaffApproval";
/////conInfo.IntegratedSecurity = true;
/////conInfo.UserID =";
////concon.Password =";

reportDoc.Load(Server.MapPath(Path.Combine("Reports","prapatraAB.rpt"))));
this.CrystalReportViewer1.ReportSource = reportDoc;

reportDoc.SetParameterValue("@ yearid",yearid);
reportDoc.SetParameterValue("@ collegeid",cmbcollege.SelectedValue);

reportDoc.DataDefinition.FormulaFields ["Cyear1"].Text =''" + c1 +''";
reportDoc.DataDefinition.FormulaFields ["Cyear2"].Text =''" + c2 +''";
reportDoc.DataDefinition.FormulaFields ["Pyear1"].Text =''" + p1 +''";
reportDoc.DataDefinition.FormulaFields ["Pyear2"].Text =''" + p2 +";
reportDoc.DataDefinition.FormulaFields ["region"].Text =''" + rg +''";
reportDoc.DataDefinition.FormulaFields ["letnodate"].Text =''" + letdate +''";
reportDoc.DataDefinition.FormulaFields ["varIO"].Text =''" + VarIO +''";
reportDoc.DataDefinition.FormulaFields ["gdate"].Text =''" + txtdate.Text +''";
reportDoc.DataDefinition.FormulaFields ["head"].Text =''" + head +''";
CREngine.Tables rptTables = reportDoc.Database.Tables;

foreach(rptTables中的CREngine.Table rptTbl)
{
TableLogOnInfo repTblLogonInfo = rptTbl.LogOnInfo;
repTblLogonInfo.ConnectionInfo = conInfo;
rptTbl.ApplyLogOnInfo(repTblLogonInfo);
}

this.CrystalReportViewer1.ReportSource = reportDoc;
this.CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = true;
CrystalReportViewer1.Width = 100;



ExportOptions exportOpts =新的ExportOptions();
PdfRtfWordFormatOptions pdfOpts = ExportOptions.CreatePdfRtfWordFormatOptions();
exportOpts.ExportFormatType = ExportFormatType.PortableDocFormat;
exportOpts.ExportFormatOptions = pdfOpts;
reportDoc.ExportToHttpResponse(exportOpts,Response,false,"Report");



//this.CrystalReportViewer1.ReportSource = reportDoc;
//this.CrystalReportViewer1.DataBind();
//reportDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat,this.Response,true,"rptprapatraAB");

}
catch(ex ex例外)
{

}
终于
{
reportDoc.Dispose();
reportDoc.Close();
CrystalReportViewer1.Dispose();
}

Hello Experts,
I want to add sub report in crystal Report. I have added the sub report in the design part but I am getting exception missing parameter value. I dnt how to write code behind in existing code .
Please help me in writing code behind for sub report.

My code behind for main crystal report is :-

CREngine.ReportDocument reportDoc = new CREngine.ReportDocument();
try
{
ConnectionInfo conInfo = new ConnectionInfo();
if (conn.DataSource.Equals("72.18.131.163,1533"))
{
conInfo.ServerName = "72.18.131.163,1533";
conInfo.DatabaseName = "DedStaffApproval";
conInfo.UserID = "prabodh";
conInfo.Password = "prabodh$123";
}
else
{
conInfo.DatabaseName = "DedStaffApproval";
conInfo.IntegratedSecurity = true;
conInfo.ServerName = "SAHDEV";
}
//conInfo.ServerName = "SAHDEV";
////conInfo.ServerName = "acer";
//conInfo.DatabaseName = "DedStaffApproval";
////conInfo.IntegratedSecurity = true;
////conInfo.UserID = "";
////conInfo.Password = "";

reportDoc.Load(Server.MapPath(Path.Combine("Reports", "prapatraAB.rpt")));
this.CrystalReportViewer1.ReportSource = reportDoc;

reportDoc.SetParameterValue("@yearid", yearid);
reportDoc.SetParameterValue("@collegeid", cmbcollege.SelectedValue);

reportDoc.DataDefinition.FormulaFields["Cyear1"].Text = "''" + c1 + "''";
reportDoc.DataDefinition.FormulaFields["Cyear2"].Text = "''" + c2 + "''";
reportDoc.DataDefinition.FormulaFields["Pyear1"].Text = "''" + p1 + "''";
reportDoc.DataDefinition.FormulaFields["Pyear2"].Text = "''" + p2 + "''";
reportDoc.DataDefinition.FormulaFields["region"].Text = "''" + rg + "''";
reportDoc.DataDefinition.FormulaFields["letnodate"].Text = "''" + letdate + "''";
reportDoc.DataDefinition.FormulaFields["varIO"].Text = "''" + VarIO + "''";
reportDoc.DataDefinition.FormulaFields["gdate"].Text = "''" + txtdate.Text + "''";
reportDoc.DataDefinition.FormulaFields["head"].Text = "''" + head + "''";
CREngine.Tables rptTables = reportDoc.Database.Tables;

foreach (CREngine.Table rptTbl in rptTables)
{
TableLogOnInfo repTblLogonInfo = rptTbl.LogOnInfo;
repTblLogonInfo.ConnectionInfo = conInfo;
rptTbl.ApplyLogOnInfo(repTblLogonInfo);
}

this.CrystalReportViewer1.ReportSource = reportDoc;
this.CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = true;
CrystalReportViewer1.Width = 100;



ExportOptions exportOpts = new ExportOptions();
PdfRtfWordFormatOptions pdfOpts = ExportOptions.CreatePdfRtfWordFormatOptions();
exportOpts.ExportFormatType = ExportFormatType.PortableDocFormat;
exportOpts.ExportFormatOptions = pdfOpts;
reportDoc.ExportToHttpResponse(exportOpts, Response, false, "Report");



//this.CrystalReportViewer1.ReportSource = reportDoc;
//this.CrystalReportViewer1.DataBind();
//reportDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat, this.Response, true, "rptprapatraAB");

}
catch (Exception ex)
{

}
finally
{
reportDoc.Dispose();
reportDoc.Close();
CrystalReportViewer1.Dispose();
}

推荐答案

123;
}
其他
{
conInfo.DatabaseName ="DedStaffApproval";
conInfo.IntegratedSecurity = true;
conInfo.ServerName ="SAHDEV";
}
//conInfo.ServerName ="SAHDEV";
////conInfo.ServerName ="acer";
//conInfo.DatabaseName ="DedStaffApproval";
/////conInfo.IntegratedSecurity = true;
/////conInfo.UserID =";
////concon.Password =";

reportDoc.Load(Server.MapPath(Path.Combine("Reports","prapatraAB.rpt"))));
this.CrystalReportViewer1.ReportSource = reportDoc;

reportDoc.SetParameterValue("@ yearid",yearid);
reportDoc.SetParameterValue("@ collegeid",cmbcollege.SelectedValue);

reportDoc.DataDefinition.FormulaFields ["Cyear1"].Text =''" + c1 +''";
reportDoc.DataDefinition.FormulaFields ["Cyear2"].Text =''" + c2 +''";
reportDoc.DataDefinition.FormulaFields ["Pyear1"].Text =''" + p1 +''";
reportDoc.DataDefinition.FormulaFields ["Pyear2"].Text =''" + p2 +";
reportDoc.DataDefinition.FormulaFields ["region"].Text =''" + rg +''";
reportDoc.DataDefinition.FormulaFields ["letnodate"].Text =''" + letdate +''";
reportDoc.DataDefinition.FormulaFields ["varIO"].Text =''" + VarIO +''";
reportDoc.DataDefinition.FormulaFields ["gdate"].Text =''" + txtdate.Text +''";
reportDoc.DataDefinition.FormulaFields ["head"].Text =''" + head +''";
CREngine.Tables rptTables = reportDoc.Database.Tables;

foreach(rptTables中的CREngine.Table rptTbl)
{
TableLogOnInfo repTblLogonInfo = rptTbl.LogOnInfo;
repTblLogonInfo.ConnectionInfo = conInfo;
rptTbl.ApplyLogOnInfo(repTblLogonInfo);
}

this.CrystalReportViewer1.ReportSource = reportDoc;
this.CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = true;
CrystalReportViewer1.Width = 100;



ExportOptions exportOpts =新的ExportOptions();
PdfRtfWordFormatOptions pdfOpts = ExportOptions.CreatePdfRtfWordFormatOptions();
exportOpts.ExportFormatType = ExportFormatType.PortableDocFormat;
exportOpts.ExportFormatOptions = pdfOpts;
reportDoc.ExportToHttpResponse(exportOpts,Response,false,"Report");



//this.CrystalReportViewer1.ReportSource = reportDoc;
//this.CrystalReportViewer1.DataBind();
//reportDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat,this.Response,true,"rptprapatraAB");

}
catch(ex ex例外)
{

}
终于
{
reportDoc.Dispose();
reportDoc.Close();
CrystalReportViewer1.Dispose();
}
123";
}
else
{
conInfo.DatabaseName = "DedStaffApproval";
conInfo.IntegratedSecurity = true;
conInfo.ServerName = "SAHDEV";
}
//conInfo.ServerName = "SAHDEV";
////conInfo.ServerName = "acer";
//conInfo.DatabaseName = "DedStaffApproval";
////conInfo.IntegratedSecurity = true;
////conInfo.UserID = "";
////conInfo.Password = "";

reportDoc.Load(Server.MapPath(Path.Combine("Reports", "prapatraAB.rpt")));
this.CrystalReportViewer1.ReportSource = reportDoc;

reportDoc.SetParameterValue("@yearid", yearid);
reportDoc.SetParameterValue("@collegeid", cmbcollege.SelectedValue);

reportDoc.DataDefinition.FormulaFields["Cyear1"].Text = "''" + c1 + "''";
reportDoc.DataDefinition.FormulaFields["Cyear2"].Text = "''" + c2 + "''";
reportDoc.DataDefinition.FormulaFields["Pyear1"].Text = "''" + p1 + "''";
reportDoc.DataDefinition.FormulaFields["Pyear2"].Text = "''" + p2 + "''";
reportDoc.DataDefinition.FormulaFields["region"].Text = "''" + rg + "''";
reportDoc.DataDefinition.FormulaFields["letnodate"].Text = "''" + letdate + "''";
reportDoc.DataDefinition.FormulaFields["varIO"].Text = "''" + VarIO + "''";
reportDoc.DataDefinition.FormulaFields["gdate"].Text = "''" + txtdate.Text + "''";
reportDoc.DataDefinition.FormulaFields["head"].Text = "''" + head + "''";
CREngine.Tables rptTables = reportDoc.Database.Tables;

foreach (CREngine.Table rptTbl in rptTables)
{
TableLogOnInfo repTblLogonInfo = rptTbl.LogOnInfo;
repTblLogonInfo.ConnectionInfo = conInfo;
rptTbl.ApplyLogOnInfo(repTblLogonInfo);
}

this.CrystalReportViewer1.ReportSource = reportDoc;
this.CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = true;
CrystalReportViewer1.Width = 100;



ExportOptions exportOpts = new ExportOptions();
PdfRtfWordFormatOptions pdfOpts = ExportOptions.CreatePdfRtfWordFormatOptions();
exportOpts.ExportFormatType = ExportFormatType.PortableDocFormat;
exportOpts.ExportFormatOptions = pdfOpts;
reportDoc.ExportToHttpResponse(exportOpts, Response, false, "Report");



//this.CrystalReportViewer1.ReportSource = reportDoc;
//this.CrystalReportViewer1.DataBind();
//reportDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat, this.Response, true, "rptprapatraAB");

}
catch (Exception ex)
{

}
finally
{
reportDoc.Dispose();
reportDoc.Close();
CrystalReportViewer1.Dispose();
}


这篇关于水晶报表中的子报表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆