您的位置首页百科问答

怎么在Crystal Report动态改变.rpt里面数据库的SQL语句

怎么在Crystal Report动态改变.rpt里面数据库的SQL语句

在C#中,使用Crystal Report制作报表时,您可以动态指定数据源和及时更新报表内容。您可以通过DataSet的方式来访问后台数据库,这样您需要手动编码来提取数据,填充DataSet,并传递到报表文件中。在这里,您可以动态指定报表数据源。下面提供一些基本的步骤,关判侍于更详细的信息,请参考禅磨下面的链接:1.Solution Explorer/Add/Add New Item…/DataSet,按照提示建立DataSet;2.Solution Explorer/Add/Add New Item…/Crystal Report,在建立数据库链接时(Database Expert窗口),请选择,利用上一步建立的DataSet。如下提供一段示例代码供您参考(用来建立数据库链接,填充DataSet,并绑定到报表文件中):Private Sub BindReport()SqlConnection myConnection = New SqlConnection();myConnection.ConnectionString = "Server=localhost;database=pubs;uid=sa;pwd=sa";SqlCommand myCommand = New SqlCommand();myCommand.Connection = myConnection;//在这里根据您的情况,动态指定设定SQL语句myCommand.CommandText = "Select * from Stores";myCommand.CommandType = CommandType.Text;SqlDataAdapter myDA = New SqlDataAdapter();myDA.SelectCommand = myCommand;//这里的Dataset1为上面创建报表时建立Dataset1 myDS =New Dataset1();myDA.Fill(myDS, "Stores"掘袭吵);CrystalReport1 oRpt= New CrystalReport1();oRpt.SetDataSource(myDS);CrystalReportViewer1.ReportSource = oRpt;End Sub