还有select出来的字段名是英文的比如select Name,那么我如何在显示的时候把Name替换成“姓名”?
解决方案 »
- 前台 判断 GirdView模板列的值(里面带有一个复选框)
- wcf
- 想做一个自动登录某网站的程序,可以吗?
- vs2003 的项目遇到的问题!!!!!!!!
- 两个asp.net(2005)网站怎么共享session?最后3分了
- 写一个简单的Ajax通用类,刚写一点出错,帮解决!
- 巫术,巫术,这是JS弄的巫术,Copy东西后面都加了××××,这是怎么弄的啊?
- 出现以下错误:NO_DATA - no error information available (100分)
- 按纽不支持回车键
- 数据源控件SqlDataSource怎么接受不同页面传递过来的参数?
- 一个唯一字段问题
- asp.net的网站,想要在指定的一个时间内执行一段程序,怎么做?
第一个关注中..
一、CrystalReportViewer
通过 CrystalReportViewer.ParameterFieldInfo 属性……1、CrystalReportViewer 成员
公共实例属性
ParameterFieldInfo(从 CrystalReportViewerbase 继承) ParameterFields。获取或设置参数字段集合。 二、ReportDocument
通过 ReportDocument.DataDefinition.ParameterFields 属性……1、ReportDocument 成员
公共实例属性
DataDefinition DataDefinition。获取 DataDefinition 对象。 2、DataDefinition 成员
公共实例属性
ParameterFields ParameterFieldDefinitions。获取 ParameterFieldDefinitions 集合。 三、参数字段运行时自定义(CrystalReportViewer)参考:
设置参数 | Windows 窗体查看器的绑定选项 | Web 窗体查看器的绑定选项 可支持用户在 Crystal 报表中通过参数进行输入。这种参数有多种用途。例如:
使参数基于数据库字段并允许用户指定该字段的值,以便对报表中的数据进行筛选。
使用参数字段将条件格式应用于报表。
使用参数字段来定义排序顺序。
下列示例说明如何在运行时通过代码设置参数字段值。此例解释了如何设置两个不同的参数:第一个是多值离散参数,第二个是区域值参数。在运行时修改参数字段[Visual Basic]
' 声明将参数传递给
'查看器控件所需的变量。
Dim paramFields As New ParameterFields()
Dim paramField As New ParameterField()
Dim discreteVal As New ParameterDiscreteValue()
Dim rangeVal As New ParameterRangeValue()' 第一个参数是具有多个值的离散参数。' 设置参数字段的名称,它必须
'和报表中的参数相符。
paramField.ParameterFieldName = "客户姓名"' 设置第一个离散值并将其传递给该参数
discreteVal.Value = "AIC Childrens"
paramField.CurrentValues.Add(discreteVal)' 设置第二个离散值并将其传递给该参数。
' discreteVal 变量被设置为新值,这样,以前的设置
'就不会被覆盖。
discreteVal = New ParameterDiscreteValue()
discreteVal.Value = "Aruba Sport"
paramField.CurrentValues.Add(discreteVal)' 将该参数添加到参数字段集合。
paramFields.Add(paramField)' 第二个参数为区域值。paramField 变量
'被设置为新值,这样,以前的设置就不会被覆盖。
paramField = New ParameterField()' 设置参数字段的名称,它必须
'和报表中的参数相符。
paramField.ParameterFieldName = "客户 ID"' 设置区域的开始值和结束值并将区域传递给该参数。
rangeVal.StartValue = 42
rangeVal.EndValue = 72
paramField.CurrentValues.Add(rangeVal)' 将第二个参数添加到参数字段集合。
paramFields.Add(paramField)' 将参数字段集合放入查看器控件。
crystalReportViewer1.ParameterFieldInfo = paramFieldscrystalReportViewer1.ReportSource = "c:reportsmy report.rpt"[C#]
// 声明将参数传递给
//查看器控件所需的变量。
ParameterFields paramFields = new ParameterFields ();
ParameterField paramField = new ParameterField ();
ParameterDiscreteValue discreteVal = new ParameterDiscreteValue ();
ParameterRangeValue rangeVal = new ParameterRangeValue ();// 第一个参数是具有多个值的离散参数。// 设置参数字段的名称,它必须
//和报表中的参数相符。
paramField.ParameterFieldName = "客户姓名";// 设置第一个离散值并将其传递给该参数。
discreteVal.Value = "AIC Childrens";
paramField.CurrentValues.Add (discreteVal);// 设置第二个离散值并将其传递给该参数。
// discreteVal 变量被设置为新值,这样,以前的设置
//就不会被覆盖。
discreteVal = new ParameterDiscreteValue ();
discreteVal.Value = "Aruba Sport";
paramField.CurrentValues.Add (discreteVal);// 将该参数添加到参数字段集合。
paramFields.Add (paramField);// 第二个参数为区域值。paramField 变量
//被设置为新值,这样,以前的设置就不会被覆盖。
paramField = new ParameterField ();// 设置参数字段的名称,它必须
//和报表中的参数相符。
paramField.ParameterFieldName = "客户 ID";// 设置范围的开始值和结束值并将该范围传递给
//该参数。
rangeVal.StartValue = 42;
rangeVal.EndValue = 72;
paramField.CurrentValues.Add (rangeVal);// 将第二个参数添加到参数字段集合。
paramFields.Add (paramField);// 将参数字段集合放入查看器控件。
crystalReportViewer1.ParameterFieldInfo = paramFields;[C++]
// 声明将参数传递给
//查看器控件所需的变量。
ParameterFields* paramFields = new ParameterFields ();
ParameterField* paramField = new ParameterField ();
ParameterDiscreteValue* discreteVal = new ParameterDiscreteValue ();
ParameterRangeValue* rangeVal = new ParameterRangeValue ();// 第一个参数是具有多个值的离散参数。
// 设置参数字段的名称,它必须
//和报表中的参数相符。
paramField->ParameterFieldName = "客户姓名";// 设置第一个离散值并将其传递给该参数。
String* val = "AIC Childrens";
discreteVal->Value = val;
paramField->CurrentValues->Add (discreteVal);// 设置第二个离散值并将其传递给该参数。
// discreteVal 变量被设置为新值,这样,以前的设置
//就不会被覆盖。
discreteVal = new ParameterDiscreteValue ();
val = "Aruba Sport";
discreteVal->Value = val;
paramField->CurrentValues->Add (discreteVal);// 将该参数添加到参数字段集合。
paramFields->Add (paramField);// 第二个参数为区域值。paramField 变量
//被设置为新值,这样,以前的设置就不会被覆盖。
paramField = new ParameterField ();// 设置参数字段的名称,它必须
//和报表中的参数相符。
paramField->ParameterFieldName = "客户 ID";// 设置范围的开始值和结束值并将该范围传递给
//该参数。
rangeVal->StartValue = __box(42);
rangeVal->EndValue = __box(72);
paramField->CurrentValues->Add (rangeVal);// 将第二个参数添加到参数字段集合。
paramFields->Add (paramField);// 将参数字段集合放入查看器控件。
crystalReportViewer1->ParameterFieldInfo = paramFields;crystalReportViewer1->ExportReport();
{
protected CrystalDecisions.Web.CrystalReportViewer Rptvcust;
DataTable TermTable = new DataTable("TermTable");
protected System.Web.UI.HtmlControls.HtmlForm Form1;
protected CrystalDecisions.Web.CrystalReportViewer Rptvcust1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
Assembly();
} /// <summary>
/// 生成报表
/// </summary>
/// <param name="StatSN"></param>
private void Assembly()
{
ReportDocument oRpt = new ReportDocument();
string path1,path2;
path1 = Server.MapPath("../Report_Rpt");
path2 = path1+"\\Crtcust_dept.rpt";
oRpt.Load (path2);
oRpt.SetDataSource(LoadCustomerByDept());
Rptvcust1.ReportSource = oRpt;
TextObject SName;
//RTitle=oRpt.ReportDefinition.ReportObjects["text16"] as TextObject;
SName=oRpt.ReportDefinition.ReportObjects["text19"] as TextObject;
//RTitle.Text="客户花名册";
// SName.Text="ddsf";
SName.Text="制表人:"+Session["UserName"].ToString();
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
private DataTable LoadCustomerByDept()
{
CreatTable();
string dept="005";
try
{
/*
if(Request.QueryString.Count>0)
{
dept=Request.QueryString["dept"].ToString();
}
*/
decimal i2=Convert.ToDecimal(dept.Length);
BASE_CUSTOMERS customer = new BASE_CUSTOMERS();
DataSet ds =new DataSet();
customer.PROC_GETCUSTINFO_monthDS(dept,4,"111111111111111111","199910",ref ds);
for(int i=0 ;i<ds.Tables[0].Rows.Count;i++)
{
DataRow tempRow;
tempRow = TermTable.NewRow();
tempRow["dptcode"]=ds.Tables[0].Rows[i]["dptcode"].ToString();
tempRow["dptname"]=ds.Tables[0].Rows[i]["dptname"].ToString();
tempRow["dptcode_p"]=ds.Tables[0].Rows[i]["dptcode_p"].ToString();
tempRow["ACCCODE"]=ds.Tables[0].Rows[i]["ACCCODE"].ToString();
tempRow["dpname1"]=ds.Tables[0].Rows[i]["PAYMN"].ToString();
tempRow["dpname2"]=ds.Tables[0].Rows[i]["SAVMN"].ToString();
TermTable.Rows.Add(tempRow);
}
return TermTable;
}
catch(Exception ex)
{
throw ex;
}
}
#region //建临时表
private void CreatTable()
{
TermTable.Columns.Add("dptcode",Type.GetType("System.String"));
TermTable.Columns.Add("dptcode_p",Type.GetType("System.String"));
TermTable.Columns.Add("dptname",Type.GetType("System.String"));
TermTable.Columns.Add("termid",Type.GetType("System.Decimal"));
TermTable.Columns.Add("termname",Type.GetType("System.String"));
TermTable.Columns.Add("ACCCODE",Type.GetType("System.String"));
TermTable.Columns.Add("dpname1",Type.GetType("System.String"));
TermTable.Columns.Add("dpname2",Type.GetType("System.String"));
}
#endregion
}