首页 > 解决方案 > 如何使用 C# 将多个参数传递给 Crystal Reports?

问题描述

我使用此代码将参数传递给 Crystal Reports,但我无法传递多个参数。如何更改此代码以将多个参数从 C# 传递到 Crystal Reports?

this.Cursor = Cursors.WaitCursor;

RPT.RPT_Sale_by_day report = new RPT.RPT_Sale_by_day();
RPT.Form_RPT frm = new RPT.Form_RPT();

report.SetParameterValue("@date1", dt_num1.Value);

frm.crystalReportViewer1.ReportSource = report;
frm.ShowDialog();

this.Cursor = Cursors.Default;

标签: c#visual-studio-2015sql-server-2014

解决方案


//Initiating created Crystal Report
    ParameterValues  Params =new ParameterValues();            // Creating collection of parameters
    ParameterDiscreteValue Par_Ref =new ParameterDiscreteValue();    // Discrete parameter that comes from SP and shows on Crystal Report

    String PARAMETER1_VALUE ="123";
    String PARAMETER2_VALUE = "ABC";

        Params.Clear();         // Cleaning data collection 
    Par_Ref.Value = PARAMETER1_VALUE; // Assigning discrete value to our variable

    Params.Add(Par_Ref);   //Adding discrete parameter to parameter collection
    report.DataDefinition.ParameterFields["PARAMETER1_NAME"].ApplyCurrentValues(Params); //Applying values from our collection to Crystal Report parameters

    Params.Clear();
    Par_Ref.Value = PARAMETER2_VALUE;
    Params.Add(Par_Ref);
    report.DataDefinition.ParameterFields["PARAMETER2_NAME"].ApplyCurrentValues(Params);

推荐阅读