บทความนี้จะแนะนำการใช้ crystal report ทำงาน ร่วมกับ ASP.net โดยการส่ง datatable ที่เรา query มาได้ โยนไปแสดงผลบน Crystal report
เริ่มแรกให้เราสร้าง crystal report ขึ้นมา เป็น blank report
หลังจากนั้นให้เรา Add new Command
ให้ใส่ Sql Query ที่เราต้องการแต่ไม่ต้องใส่ เงื่อนไข where เช่น Select column,column,column from table
นะครับ เพราะเราจะกำหนดเงื่อไขที่ตัว code เลย
หลังจากเพื่ม command เรียบร้อย เมื่อไปที่หน้า Design ให้เรา Add fomular เพื่อแสดงเงื่อนไขของ Report
และลาก command ที่ได้มาวางตามต้องการ และบันทึก
ที่ file แสดงผล ให้ลาก CrystalReportViewer control และ textbox มาวาง
EnableParameterPrompt="False" BestFitPage="True"
EnableDatabaseLogonPrompt="False"
ReuseParameterValuesOnRefresh="True" DisplayGroupTree="False" />
ที่ behide code ในที่นี้ ผมใช้ oracle นะครับ
Imports System.Data
Imports System.Data.OleDb
Imports CrystalDecisions.CrystalReports.Engine
Partial Class ddtreport_test
Inherits System.Web.UI.Page
Private ddthqcon As String = ConfigurationSettings.AppSettings("DDTHQ")
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Dt As New DataTable()
Dim Conn As New OleDbConnection
Dim Str As String
Str = " Select column,column,column from table where column='" & TextBox1.Text & "' "
Conn = New OleDbConnection(ddthqcon)
Conn.Open()
Dim da As New OleDbDataAdapter(Str, Conn)
da.Fill(Dt)
Conn.Close()
Dim cr1 As New ReportDocument
cr1.Load(Server.MapPath("~/folder/report.rpt"))
cr1.SetDatabaseLogon("user", "pass")
cr1.SetDataSource(Dt)
cr1.DataDefinition.FormulaFields("column").Text = "'" & Trim(TextBox1.Text) & "'"
CrystalReportViewer1.ReportSource = cr1
End Sub
End Class
ผลการทำงาน
บทความอื่นๆ
Create Excel by VB.net
Read More....