水晶報表
經常有網友問這個問題,長時間不看自己也忘記了,今天又碰到一個網友提問,沒轍,花了點下班時間把幾個步驟記錄如下,請指正!
1、建立一個windows application:CristalTest;
2、新添加一個資料集DataSet1.xsd
3、在DataSet1裡添加表DataTable1
在DataTable1裡添加四列Column1,Column2,Column3,Column4 ,儲存
4、添加一個水晶報表檔案CrystalReport1.rpt
設定資料來源:項目資料(Project Data)-->Ado.net DataSets-->***.DataSet1-->DataTable1
5、把Column1,Column2,Column3,Column4拖到水晶報表的細節(Details)中
6、添加一個控制項CrystalReportViewer1到Form1中
7、然後添加Form1_Load的代碼
Dim m_sqlConn As SqlConnection
Dim m_strSqlConn As String
m_strSqlConn = "Data Source=localhost; initial catalog=pubs;User id=sa;password="
m_sqlConn = New SqlConnection(m_strSqlConn)
Try
Dim sqlAdp As SqlDataAdapter
Dim strSql As String
Dim ds = New DataSet()
m_sqlConn.Open()
strSql = "SELECT au_lname AS Column1, au_fname AS Column2, phone AS Column3, address AS Column4 FROM dbo.authors"
sqlAdp = New SqlDataAdapter(strSql, m_sqlConn)
sqlAdp.Fill(ds)
Dim crReportDocument = New CrystalReport1()
crReportDocument.SetDataSource(ds.Tables(0))
CrystalReportViewer1.ReportSource = crReportDocument
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
8、在form1.vb檔案頭加
Imports System.Data
Imports System.Data.SqlClient
9、 m_strSqlConn = "Data Source=localhost; initial catalog=pubs;User id=sa;password="這個可能要修改成你的機器的Sql Server串連資訊