crystal report:如何在传递给crystal report的参数上获取多行

时间:2012-06-18 08:14:15

标签: c# crystal-reports

我有一张桌子tbl_invoice。我想在此表中显示数据的水晶报告。对于每张发票,我都有invoiceid(主键)和账号。每个发票的主键都会更改,但billno保持不变。我得到max invoiceid的billno并将其传递给水晶报告。但它只显示了水晶报告中的最后一条记录。如何显示与该法案相匹配的所有记录? 我写了这段代码

private void button1_Click(object sender, EventArgs e)
    {
        SalesInvoice_Caret crt = new SalesInvoice_Caret();
        crt.SetParameterValue("BillNo", txtBillNo.Text);
        crystalReportViewer1.ReportSource = crt;
        crystalReportViewer1.Refresh();
    }

    private void crt_sales_invoice_viewer_Load(object sender, EventArgs e)
    {
        string getBill = "Select top 1 BillNo from tbl_sales_invoice order by SalesInvoiceId desc";
        SqlCommand cmd = new SqlCommand(getBill, con);
        con.Open();
            object obj = cmd.ExecuteScalar();
        con.Close();

        MessageBox.Show(obj.ToString());
        txtBillNo.Text = obj.ToString();


    }

1 个答案:

答案 0 :(得分:0)

我认为您需要在创建“SalesInvoice_Caret”对象时传递所有invoiceid号码和想要的数据。创建一个查询,其中包含所选帐单号的所有invoiceid号码。并将数据传递给报告。在报告中,您需要使用组专家为每个invoiceid-billno对创建特定报告。