我有一个包含参数字段的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();
答案 0 :(得分:0)
如果您可以访问整个参数值列表(或者它是静态的并且不会发生变化),您可以执行以下操作:
StringVar ParameterList;
If IsNull({?InputParameter}) then
// to-do assemble your entire list into one string: ThatString
ParameterList := ThatString;
else
ParameterList := ToText({?InputParameter});