Use Crystal Report + Datatable by ASP.net

บทความนี้จะแนะนำการใช้ 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

ไม่มีความคิดเห็น: