ایجاد گزارش RDLC درASP.NET
پنجشنبه 9 اردیبهشت 1395RDLC مخفف Report Definition Language Client Side است . که از آن برای ایجاد گزارش با استفاده از Microsoft Reporting Technology استفاده می شود.
مزایا:
قابل اجرا روی سمت کلاینت
اجرا بر اساس تنها یک Dataset
اجرا بر اساس یکData Source
بدون نیاز به نصب هیچ Reporting Service Instance
این مقاله درباره ی مراحل ایجاد یک گزارش RDLC جدید در C # می باشد.
مرحله 1: یک وب سایت جدید ویژوال استودیو 2008 ایجاد کنید ، از File ،روی New Web Site کلیک کنید.
سپس مسیر مورد نظر برای ذخیره سازی و نام پروژه را انتخاب و وارد میکنیم.
در اینجا، نام وب سایت را RDLC قرار میدهیم.
شکل 1 : ایجاد یک وبسایت جدید
سپس دکمه OK را بزنید.
مرحله 2: در حال حاضر به یک DataSet برای گزارش گیری نیاز داریم. در اینجا مراحل عبارتند از:
روی پروژه راست کلیک کرده و گزینه Add new Item و سپس DataSet را انتخاب میکنیم.
شکل 2 :ایجاد Dataset
نامی برای Dataset انتخاب کرده و سپس دکمه ADD را برای کاوش در پنجره Dataset فشار میدهیم.
حالا dataset RDLC را در پوشه ی App_Code قرار میدهیم و بعد از آن پنجره Dataset باز میشود.
شکل 3: پنجره Dataset
مرحله 3: در قسمت working area پنجره Dataset کلیک راست کنید،Add، و سپس DataTable را انتخاب کنید.
شکل4: افزودن Data Table
data tableرا مانند زیر به dataset در working area اضافه میکنیم.
شکل 5 :Data Table
پس از ایجاد جدول ، روی جدول راست کلیک کرده و سپس Add ، و سپس Column را برای اضافه کردن ستون جدید انتخاب کنید.
شکل 6: افزودن ستون
پس از اضافه کردن ستون نیاز به تغییر نام جدول به نام tblStudent داریم.
شکل 7: ستون فیلد اضافه شده
حالا data set آماده برای اتصال به گزارش است.
گام 4: پس از ایجاد Dataset ، RDLC را ایجاد میکنیم.
روی پوشه وب سایت راست کلیک کرده ، گزینه Add new Item ، و سپس Report Wizard را انتخاب میکنیم.
شکل8: ایجاد Report
نام گزارش را Student.rdlc میگذاریم ، و سپس روی دکمه Add کلیک میکنیم. پس از کلیک روی دکمه Add پنجره ای باز خواهد شد.در این پنجره Next را فشار میدهیم.
شکل 9: پنجره PopUp
پس از کلیک برروی Next ، در پنجره بعدی data source خود را انتخاب میکنیم.
شکل 10: پنجره انتخاب Data Source
این پنجره برای انتخاب data source است که dataset جدول tblstudent را انتخاب و سپس روی دکمه Next کلیک کنید.
سپس نوع گزارش Tabular را انتخاب کنید و روی Next را بزنید. تب های زیر نمایش داده میشود. در این تب فیلدهایی که نیاز به نمایش آن در گزارش خود دارید را انتخاب کنید. سپس دکمه Page را فشار دهید تا آن را به ستون فیلد های نمایش داده شده ، اضافه کنید. سپس table layout مورد نظر خود انتخاب و پس از آن table style را انتخاب کنید و روی Next کلیک کنید . در اینجا table style ، forest. را انتخاب کرده ایم وپس از آن با کلیک بر روی دکمه Finish از ویزارد ایجاد گزارش خارج میشویم.
در حال حاضر گزارش ها به فرمت های زیر نمایش داده میشوند.
شکل11 :RDLC Report
مرحله 5 : در این مرحله یک reporting viewer در صفحه وب اضافه میکنیم.
در گزارش RDLC ما نیاز به افزودن reporting viewer داریم. این بدان معناست که ما نیاز به یک Script manager که Ajaxcontroltoolkit.dll آن به رفرنس صفحه وب ما اضافه شده باشد ،داریم.
انتخاب ScriptManager در Ajax Extension جعبه ابزار
شکل 12: افزودن Script Manager
و سپس از قسمت Reporting جعبه ابزار، ReportViewer را انتخاب میکنیم.
شکل13 : افزودن ReportViewer
کدهای بایند یک گزارش از دیتابیس
اضافه کردن رفرنس به کد صفحه مانند زیر
using System.Data; using System.Data.Sql; using System.Data.SqlClient; using Microsoft.Reporting.WebForms; public partial class_Default: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { SqlConnection con = newSqlConnection("Data Source=sql Server name ;Initial Catalog=ResultDB;Integrated Security=True"); if (!IsPostBack) { string strQuery = "SELECT * FROM tblStudent"; SqlDataAdapter da = newSqlDataAdapter(strQuery, con); DataTable dt = newDataTable(); da.Fill(dt); RDLC ds = newRDLC(); ds.Tables["tblStudent"].Merge(dt); ReportViewer1.ProcessingMode = ProcessingMode.Local; ReportViewer1.LocalReport.ReportPath = Server.MapPath("Student.rdlc"); ReportDataSource datasource = newReportDataSource("RDLC", ds.Tables[0]); ReportViewer1.LocalReport.DataSources.Clear(); ReportViewer1.LocalReport.DataSources.Add(datasource); } } }
پس از اجرا خطای زیر را میبینید،و میتوانید آن را معنی کنید
شکل14: Error
کد زیر را در web.confige وارد کنید.
<addverb="*"path="Reserved.ReportViewerWebControl.axd"type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- ASP.net
- 4k بازدید
- 4 تشکر