نمایش نتایج 1 تا 2 از 2

نام تاپیک: نحوه استفاده از دو dataset در یک report viewer

  1. #1

    نحوه استفاده از دو dataset در یک report viewer

    سلام به همه دوستان من با استفاده از ریپورت ویرور خود سی شارپ یک تکت ساختم و اونو چاپ میکنم و مشکلی نیست مشکل وقتی است که حالا میخوام برای تکت ته برگ و سربرگ بزارم و من یک تیبل تو دیتابیس خودم دارم که مشتری از تنظیمات ته برگ و سربرگ تکت خودش را انتخاب میکنه مثلاً نام فروشگاه یا شرکت حالا وقتی من توی دیتاسیت یک تیبل دگه انزیرت میکنم و توی ریپورت میخوام ازش کار بگیرم اصلاً ریپورت کار نمیکنه هیچ ریکورد را هم نمیاره حتی جدول را هم نمیاره کسی میدونه چه کنم

  2. #2
    کاربر دائمی آواتار bitasoft.ir
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    جنگلهای تاریک اصفهان
    سن
    44
    پست
    279

    نقل قول: نحو استفاده از دو dataset در یک report viewer

    برای استفاده از دو DataSet مختلف در یک ReportViewer، شما باید اطمینان حاصل کنید که تنظیمات و رابطه مناسبی بین گزارش و دیتاست‌ها داشته باشید. در ادامه توضیحاتی را ارائه می‌دهم که به شما کمک می‌کند این کار را به درستی انجام دهید:
    تهیه گزارش جدید:
    برای استفاده از دو DataSet مختلف در یک گزارش، ابتدا باید یک گزارش جدید ایجاد کنید یا گزارش موجود خود را باز کنید.
    اضافه کردن دیتاست‌ها به گزارش:
    برای اضافه کردن دو DataSet به گزارش، به عنوان مثال DataSet1 و DataSet2، از مراحل زیر پیروی کنید:

    • در قسمت Solution Explorer، روی گزارش خود کلیک راست کنید و "Design" را انتخاب کنید.
    • در پنجره گزارش، روی منوی Report در بالای صفحه کلیک کنید و سپس "Report Data" را انتخاب کنید.
    • در پنجره "Report Data"، روی "Data Sources" کلیک کنید و سپس "Add Data Source" را انتخاب کنید.
    • وارد نام DataSet1 خود شوید و دیتابیس مورد نظر خود را انتخاب کنید و بعد از اتصال به داده‌ها، آنها را به گزارش اضافه کنید.
    • مراحل مشابه را برای اضافه کردن DataSet2 انجام دهید.

    استفاده از داده‌ها در گزارش:
    حالا می‌توانید از داده‌های دو DataSet در گزارش‌تان استفاده کنید. شما می‌توانید توابع GetData و Fill را برای هر DataSet فراخوانی کنید تا داده‌ها به گزارش منتقل شوند.
    تنظیم منابع داده در گزارش:
    به قسمت "Report Data" در گزارش بروید و منابع داده‌های DataSet1 و DataSet2 را به عنوان منابع داده‌های گزارش تنظیم کنید.
    استفاده از داده‌ها در گزارش‌های RDLC:
    در گزارش‌های RDLC (Report Definition Language Client-Side)، می‌توانید از داده‌های دو DataSet مختلف با استفاده از نقطه دسترسی (dot notation) به عنوان منابع داده در فیلدها، گروه‌ها و سایر اجزای گزارش استفاده کنید.
    با این مراحل، می‌توانید دو DataSet مختلف را به گزارش خود اضافه کرده و از آنها در طراحی گزارش‌هایتان استفاده کنید. مطمئن شوید که نام دیتاست‌ها و نقطه دسترسی به داده‌ها در گزارش به درستی تنظیم شده باشد.
    به عنوان یک نمونه ساده، اینجا یک کد برای استفاده از دو DataSet مختلف در یک گزارش RDLC (Report Definition Language Client-Side) در C#‎ آورده شده است. در این مثال، فرض می‌شود که شما دو DataSet به نام DataSet1 و DataSet2 دارید و می‌خواهید از آنها در گزارش استفاده کنید:
    using System;
    using System.Data;
    using System.Windows.Forms;
    using Microsoft.Reporting.WinForms;


    namespace WindowsFormsApp
    {
    public partial class ReportViewerForm : Form
    {
    public ReportViewerForm()
    {
    InitializeComponent();
    }


    private void ReportViewerForm_Load(object sender, EventArgs e)
    {
    // ایجاد دو دیتاست مثالی
    DataSet dataSet1 = new DataSet("DataSet1");
    DataSet dataSet2 = new DataSet("DataSet2");


    // اضافه کردن داده‌ها به DataSet1 و DataSet2 (اینجا فرض شده است که داده‌ها به صورت DataTable و با نام "Table1" اضافه شوند)
    DataTable table1 = new DataTable("Table1");
    DataTable table2 = new DataTable("Table2");
    // اضافه کردن ستون‌ها و داده‌ها به DataTable1 و DataTable2
    // اینجا فرض شده است که داده‌های متنی به صورت ساده به DataTable‌ها اضافه شوند.
    table1.Columns.Add("Name", typeof(string));
    table1.Columns.Add("Age", typeof(int));
    table1.Rows.Add("John", 30);
    table1.Rows.Add("Alice", 25);

    table2.Columns.Add("Product", typeof(string));
    table2.Columns.Add("Price", typeof(decimal));
    table2.Rows.Add("Laptop", 1200.50M);
    table2.Rows.Add("Smartphone", 699.99M);


    dataSet1.Tables.Add(table1);
    dataSet2.Tables.Add(table2);


    // تنظیم منابع داده برای گزارش
    reportViewer.LocalReport.DataSources.Clear();
    reportViewer.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", dataSet1.Tables[0]));
    reportViewer.LocalReport.DataSources.Add(new ReportDataSource("DataSet2", dataSet2.Tables[0]));


    // تنظیم مسیر فایل RDLC گزارش
    reportViewer.LocalReport.ReportPath = @"Path\To\YourReport.rdlc";


    // بارگذاری گزارش در گزارش ویور
    reportViewer.RefreshReport();
    }
    }
    }
    در این کد:

    • دو DataSet به نام DataSet1 و DataSet2 ایجاد شده و داده‌ها به آنها اضافه می‌شوند.
    • داده‌ها به صورت DataTable به DataSetها اضافه می‌شوند.
    • منابع داده برای گزارش تنظیم می‌شوند و مسیر فایل RDLC گزارش مشخص می‌شود.
    • گزارش در گزارش ویور بارگذاری می‌شود و نمایش داده‌ها در گزارش انجام می‌شود.



    نقل قول نوشته شده توسط esagraphic مشاهده تاپیک
    سلام به همه دوستان من با استفاده از ریپورت ویرور خود سی شارپ یک تکت ساختم و اونو چاپ میکنم و مشکلی نیست مشکل وقتی است که حالا میخوام برای تکت ته برگ و سربرگ بزارم و من یک تیبل تو دیتابیس خودم دارم که مشتری از تنظیمات ته برگ و سربرگ تکت خودش را انتخاب میکنه مثلاً نام فروشگاه یا شرکت حالا وقتی من توی دیتاسیت یک تیبل دگه انزیرت میکنم و توی ریپورت میخوام ازش کار بگیرم اصلاً ریپورت کار نمیکنه هیچ ریکورد را هم نمیاره حتی جدول را هم نمیاره کسی میدونه چه کنم

تاپیک های مشابه

  1. سوال: چاپ مستقیم report viewer
    نوشته شده توسط saman_hm در بخش C#‎‎
    پاسخ: 6
    آخرین پست: سه شنبه 21 فروردین 1397, 14:29 عصر
  2. استفاده از viewer Report در MVC
    نوشته شده توسط Chita789 در بخش ابزارهای گزارش سازی
    پاسخ: 0
    آخرین پست: دوشنبه 27 مرداد 1393, 20:44 عصر
  3. پاسخ: 2
    آخرین پست: شنبه 18 آذر 1391, 13:07 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •