如何将参数值传递给 crystal 报告的数据源

How to pass parameter value to crystal report's data source

我有一个存储过程,我在我的 crystal 报告中得到了它

CREATE FUNCTION [dbo].[SP_MainContent]
(       @from int,
        @to int,
        @year int,
        @office varchar(MAX),
        @fund varchar(MAX)
)
RETURNS TABLE
AS
RETURN (
  SELECT AccntTbl.Id,
         AccntTbl.accnt,
         ISNULL(SupplyTbl.Supply, 0) AS Supply,
         AccntTbl.office,
         AccntTbl.exp,                 
         AccntTbl.dateCreated 
  FROM AccntTbl 
  LEFT JOIN
     (SELECT idAccnt, 
             SUM(amount) AS Supply
     FROM SuppyTbl AS SupplyTbl1
     WHERE MONTH(dateCreated) BETWEEN @from AND @to 
       AND YEAR(dateCreated) = @year 
       AND fund = @fund
     GROUP BY idAccnt) AS SupplyTbl     
  WHERE YEAR(AccntTbl.dateCreated) = @year 
    AND AccntTbl.office = @office 
    AND AccntTbl.fund = @fund 
  GROUP BY AccntTbl.Id,
           AccntTbl.accnt,
           AccntTbl.appro,
           Supply.Supply
);

并在 VB.NET

Dim ad As New SqlDataAdapter("SP_MainContent '" & 1 & "', '" & 2 & "', '" & 2016 & "', " & _
                             "               'office', 'food'", conn)
Dim ds As New DataSet
Dim rpt As New CRreport
ad.Fill(ds, "SP_MainContent")
rpt.SetDataSource(ds)

CrystalReportViewer1.Refresh()
CrystalReportViewer1.ReportSource = rpt

但是每次打开报告都会弹出这个window,太烦人了。

如何阻止它弹出?每当我在 vb.net

中打开我的报告时

很高兴得到任何帮助..tnx :)

您应该传递如下参数值

  rpt.SetParameterValue("@param_name", the_value)