Как печатать отчеты в пакетном режиме, передавая несколько значений - PullRequest
0 голосов
/ 10 октября 2018

У меня есть список студентов, я хочу распечатать квитанцию ​​об оплате для каждого студента, для которого я использую хранимую процедуру SQL для получения данных и отчеты Crystal Reports.Что я хочу сделать, так это открыть все ReportViewer, передать все studentIds и показать их в разделе предварительного просмотра.

Я сделал:

ReportDocument rd = new ReportDocument();

private void MetroWindow_Loaded(object sender, RoutedEventArgs e)
{
    rd.Load(@"C:\\Program Files (x86)\CognitiveDev\TKS Management System\Reports\FeeSlip.rpt");

    try
    {
        SqlConnection conn = new SqlConnection();
        conn.ConnectionString = ConfigurationManager.ConnectionStrings["Other"].ConnectionString;
        conn.Open();

        SqlDataAdapter sda = new SqlDataAdapter("PrintFeeSlip", conn);
        sda.SelectCommand.CommandType = System.Data.CommandType.StoredProcedure;

        foreach (int gotId in gotList)
        {
           sda.SelectCommand.Parameters.AddWithValue("@AdmissionNumber", gotId);

            DataSet ds = new DataSet();
            sda.Fill(ds, "FeeSlip");
            rd.SetDataSource(ds);

            reportView.ViewerCore.ReportSource = rd;
            reportView.ViewerCore.RefreshReport();
        }
    }
    catch (Exception err)
    {
        MessageBox.Show(err.ToString());
    }
}

Этот код работает для одного, ночто я должен сделать для нескольких stdID

enter image description here

...