Tuesday, April 22, 2014

การส่งพารามิเตอร์จาก VB.net 2005 ไป Crystal Report for .Net Framework 2.0

เคยทำ Report มาหลายโปรเจคแล้ว พอกลับมาทำ Report สำหรับโปรเจคใหม่ จะต้องมีการส่งพารามิเตอร์จาก VB.Net ไปยัง Crystal Report เขียนโค้ดยังไง ลืมอีกแล้ว (นี่ขนาดยังไม่แก่มากนะเนี่ย คงจะเริ่มแก่ทีละน้อย ๆ แล้ว อิอิ) ก็เลยเอาโค้ดมาไว้ที่นี่ เวลามีโปรเจคใหม่ ๆ จะได้เอาไปใช้ได้เลยดังนี้
  1. สร้างฟอร์มใหม่
  2. ลาก CrystalReportViewer มาใส่ไว้ในฟอร์มเฉย ๆ ไม่ต้องตั้งค่าอะไรเพิ่ม
  3. เขียนโค้ดประมาณนี้
Imports System.Data.SqlClient
Imports System.Data
Imports CrystalDecisions.Shared
Imports CrystalDecisions.CrystalReports.Engine
Public Class YourReportForm
    Private Sub ReportForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim currentReport As New YourCrystalReport
        CrystalReportViewer1.ReportSource = currentReport
        currentReport.SetDatabaseLogon("DBUser", "DBPassword")
        Dim paramFields As New ParameterFields()
        Dim paramField As New ParameterField()
        Dim discreteVal As New ParameterDiscreteValue()
        paramField.ParameterFieldName = "YourParameterName"
        discreteVal.Value = "YourParameterValue"
        paramField.CurrentValues.Add(discreteVal)
        paramFields.Add(paramField)
        CrystalReportViewer1.ParameterFieldInfo = paramFields
        CrystalReportViewer1.Zoom(85)
    End Sub
End Class

No comments:

Post a Comment