0

我有一个包含参数字段的水晶报表。只要我将值传递给参数字段,它就可以完美地工作。但我想要做的是我想在没有传递参数时显示所有值。当我不传递参数时,会出现一个对话框,告诉我选择要传递给参数的值。为了解决这个问题,我尝试将我使用的所有值传递给参数并将它们存储在一个数组中。我试图传递这个数组但失败了。谁能帮我解决这个问题。

PS:数组的事情只是因为我想不到别的。

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();
4

1 回答 1

0

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

StringVar ParameterList;
If IsNull({?InputParameter}) then
  // to-do assemble your entire list into one string: ThatString
  ParameterList := ThatString;
else
  ParameterList := ToText({?InputParameter});
于 2013-02-12T22:07:19.070 回答