Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mencipta dan Melaksanakan Pertanyaan Tersuai untuk Pengambilan Data Kompleks dalam Laporan Kristal menggunakan VB.NET dan C#?
Buat Pertanyaan untuk Pengambilan Data Kompleks dalam Laporan
Aplikasi VB anda mencetak laporan menggunakan ODBC. Jadual ditambah melalui pakar pangkalan data dan Laporan Kristal direka bentuk. Timbul persoalan di mana hendak meletakkan pertanyaan tersuai untuk mendapatkan semula data khusus untuk laporan.
Mencari Medan Pertanyaan dalam Laporan Kristal
Navigasi ke Wizard Laporan Kristal dan cari sambungan ODBC yang anda buat dengan nama pengguna dan kata laluan. Medan "Teks Perintah" akan hadir di mana anda boleh memasukkan pertanyaan tersuai anda.
Pertanyaan Contoh
Pertanyaan yang disediakan mendapatkan semula data daripada berbilang jadual:
SELECT ts.`SCHEDIDNO`, ts.`DAYNAME`, DATE_FORMAT(ts.`TIMESTART`, '%h:%i %p') as TIMESTART, DATE_FORMAT(ts.`TIMEEND`, '%h:%i %p') as TIMEEND, ts.`GRADELEVEL`, ts.`SECTIONNAME`, ts.`SUBJECTNAME`, ts.`FACFULLNAME`, ts.`ROOMNAME`, tf.`FACFULLNAME` as PERSONNEL, tf.`DEPARTMENT`, tse.`Adviser` FROM `tblschedule` ts, `tblfaculty` tf, `tblsection` tse WHERE ts.`GRADELEVEL` = " & lblgrade.Text & " AND ts.`SECTIONNAME` = '" & lblsect.Text & "' AND ts.`DEPARTMENTNAME` = tf.`DEPARTMENT` AND tf.`ADMINISTRATOR` = 1 AND tse.`SECTIONNAME` = '" & lblsect.Text & "'
VB.NET Kod
Private CRPT As New ReportDocument Private APPPATH As String Private PARAM As New ParameterFields Public PARAM_DESC As New ParameterDiscreteValue Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load APPPATH = Application.StartupPath & "\REPORT\sample.rpt" CRPT.Load(APPPATH) Me.CrystalReportViewer1.ReportSource = CRPT PARAM = CRPT.ParameterFields PARAM_DESC.Value = Format(DatePicker1.Value, "yyyyMMdd") PARAM("DATEP").CurrentValues.Clear() PARAM("DATEP").CurrentValues.Add(PARAM_DESC) Me.CrystalReportViewer1.Refresh() End Sub
Kod C#
CRPT = new ReportDocument(); APPPATH = Environment.CurrentDirectory + "Sample.rpt"; CRPT.Load(APPPATH); Report_Viewer.Refresh(); CRPT.SetParameterValue("syear", Servercls.year); CRPT.SetParameterValue("smonth", Servercls.month); CRPT.SetParameterValue("sday", Servercls.day); CRPT.SetParameterValue("datevalue", Servercls.Datevalue); Report_Viewer.ReportSource = CRPT; sc.configureCrystalReport(); Report_Viewer.Refresh();
Ingat untuk menentukan nama parameter yang sama dalam kod anda seperti dalam reka bentuk Crystal Report.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta dan Melaksanakan Pertanyaan Tersuai untuk Pengambilan Data Kompleks dalam Laporan Kristal menggunakan VB.NET dan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!