نمونه کار کریستال ریپورت در #C

s0nb0l

عضو جدید
برای گزارش گیری از داده ها، از نرم افزار های مختلفی میشه استفاده کرد اما از اونجایی Crystal Report نسخه ابتدایی اون به همرا Visual Studio به صورت رایگان عرضه میشه بسیاری دوستان از اون برای گزارش گیری استفاده می کنند .



برای گزارش گیری ابتدا یک پروژه ایجاد کرده و یک فرم به پروژه به نام FormReport اضافه کنید در این فرم از قسمت ابزار گزینه CrystalReportViewer را به فرم اضافه کنید .



از منوی Project -> Add New Item یک فایل Crystal Report را به پروژه اضافه کنید و در این قسمت با دوبار کلیک بر روی فایل تازه ایجاد شده ، صفحه Designer باز شده و به طراحی گزارش بپردازید ( توضیح این بخش مفصل بوده و از بحث این مقاله خارجه با کمی حوصله حتما می تونید که یک گزارش خوب طراحی کنید ) ،‌پس از طراحی گزارش آن را ذخیره کرده و به پروژه بر گردید .



در فرم اصلی برنامه یک عدد Button و یک عدد DataGridView قرار بدین و کدهای زیر را در فرم اصلی وارد کنید .



ابتدا یک متغییر عمومی به صورت زیر تعریف کنید (‌این روش و روشهایی دیگری که در این آموزش استفاده می شود پیشنهادی است و شما می توانید از روشهای دیگر نیز استفاده کنید)



private DataTable dataTableEmp = new DataTable();
در رویداد Load فرم نیز کد زیر را قرار دهید ( لازم به توضیح نیست که باید ابتدا کانکشن را ایجاد کنید )



dataTableEmp.Clear();
sqlConnection2.Open();
sqlDataAdapter1.Fill(dataTableEmp);
sqlConnection2.Close();
dataGridViewDB.DataSource = dataTableEmp;
و در نهایت نیز در Button مربوطه کد زیر را قرار دهید



FormReport f = new FormReport();
f.dataTableEmp = dataTableEmp;
f.ShowDialog();
من برای ارسال داده از یک متغییر عمومی به صورت Public در فرم دوم استفاده کرده ام ،‌شما می توانید از هر روشی که راحت تر هستید استفاده کنید .



در فرم دروم یعنی FormReport ابتدا یک متغییر عمومی به صورت زیر تعریف کرده



public DataTable dataTableEmp;
و در نهایت کدهای زیر را در رویداد Load فرم دوم قرار دهید



CrystalReport1 c = new CrystalReport1();
c.SetDataSource(dataTableEmp);
crystalReportViewer1.ReportSource = c;
فایل زیر یه نمونه از کریستال ریپورت با اكسس است.
 

پیوست ها

  • Crystal Report.rar
    194.5 کیلوبایت · بازدیدها: 0

Similar threads

بالا