如果没有值传递给水晶报表中的参数,如何显示所有值?

时间:2013-02-12 21:27:08

标签: c# crystal-reports crystal-reports-2008

我有一个包含参数字段的Crystal Report。只要我将值传递给参数字段,参数字段就可以正常工作。但我想要做的是,我希望在没有参数传递时显示所有值。当我没有传递任何参数时,会出现一个对话框,告诉我选择要传递给参数的值。为了解决这个问题,我试图将我使用的所有值复制到参数并将它们存储在数组中。我试图传递这个数组但失败了。任何人都可以帮助我过去。

P.S:阵列的原因只是因为我想不出别的什么。

rpt_Uni uniRpt = new rpt_Uni();  
uniRpt.SetDataSource(UniDS.Tables["Uni"]);

if (cmb_Report.SelectedIndex == 0)
{ uniRpt.SetParameterValue("UniParam", txt_UniName.Text); }
else
{ 
    uniRpt.SetParameterValue("UniParameter", ""); 
}

crystalReportViewer1.ReportSource = uniRpt;
crystalReportViewer1.Refresh();

1 个答案:

答案 0 :(得分:0)

如果您可以访问整个参数值列表(或者它是静态的并且不会发生变化),您可以执行以下操作:

StringVar ParameterList;
If IsNull({?InputParameter}) then
  // to-do assemble your entire list into one string: ThatString
  ParameterList := ThatString;
else
  ParameterList := ToText({?InputParameter});