استفاده از ابزار StimulSoft Designer برای گزارش گیری
همانگونه که در ابتدا گفته شد راه دیگر گزارش نویسی، استفاده از ابزار StimulSoft Designer است که قابل نصب بر روی کامپیوتر می باشد. پس از اینکه این وب اپلیکیشن بر روی کامپیوتر نصب شد، مطابق شکل ذیل نیاز است که کاربر برای استفاده از آن یک login بر روی سیستم داشته باشد. می توان از سیستم احراز هویت موجود در گوگل برای ورود به این نرم افزار استفاده نمود.
پس از اینکه وارد نرم افزار شدید، یک کادر جدید برای تعیین نوع نرم افزار گشوده خواهد شد. می توان بر روی گزینه basic کلیک نمود.
(در صورتی که با انجام مراحل ذیل، ارتباط تصحیح نشد، می توان کل ارتباط را پاک کرده و از نو ایجاد کرد. کافیست که با کلیک راست بر روی ارتباط CnnEducation و انتخاب گزینه Delete آن ارتباط را پاک کرده و سپس بر روی Data Source کلیک راست کرد تا بتوان یک ارتباط جدید را با انتخاب گزینه New Data Source ایجاد کرد. باقی مراحل مانند بالا می باشد. )
برای اینکار کافیست تا بر روی ارتباط CnnEducation کلیک کنید تا فرم ویرایش ارتباط مشاهده شود. در این مرحله می بایست که مطابق شکل ذیل بر روی دکمه Wizard ساخت یک ارتباط کلیک شود:
پس از کلیک بر روی دکمه Wizard وارد فرم ایجاد ارتباط خواهید شد. پس در فرم جدید در نام سرور، در صورت استفاده از Host محلی نقطه گذاشته و سپس در کادر بعدی، از Use Windows Authentication استفاده می کنید. سپس در کادر آخر از کشویی انتخاب پایگاه داده، Education را مطابق شکل زیر انتخاب کرده و سپس بر روی دکمه OK کلیک می کنید.
مجددا به فرم ویرایش ارتباط باز خواهید گشت. کافیست در این مرحله بر روی دکمه کلیک کنید تا بتوان یک تست از صحت ارتباط گرفت. در این صورت، مشابه با تصویر ذیل پیام موفقیت آمیز بودن ارتباط مشاهده خواهد شد:
از طرف دیگر هم در کادر Dictionary علامت ضربدر مربوط به عدم وجود ارتباط از بین رفته است:
مساله ای که از این به بعد اهمیت دارد پرس و جویی است که شما می زنید. چرا که بوسیله آن پرس و جوها، DataSet هایی ایجاد می گردند و در نتیجه آن DataSet هاست که گزارش تکمیل می گردد. حتی مشابه با تصویر بالا، کلیه جداول از پایگاه داده واکشی شده اند. پس حتی اگر ارتباط CnnEducation هم تصحیح نشد، می توان یک ارتباط تازه ایجاد نمود و در نتیجه آن ارتباط، کلیه جداول را مشاهده نمود. تنها نکته ای که اهمیت دارد پرس و جو هایی است که شما می زنید. پس مشابه با تصویر بالا بر روی دکمه New Query کلیک می کنید تا کادر مربوطه گشوده شود. حال کافیست تا پرس و جوی مربوط به جدول Duration را در کادر Query قرار دهید تا پرس و جو تکمیل شود. همچنین در کادر Columns & Parameters لیست متغیرهایی که تعریف کرده اید، آمده اند. در این مثال تنها متغیر Duration_ID تعریف شده بود.
در بالای کادر پرس و جو سه دکمه قرار گرفته است. از دکمه ! برای تست ارتباط استفاده می شود. در صورت کلیک بر آن، کادری مشابه تصویر ذیل گشوده خواهد شد که طی آن متوجه خواهید شد ارتباط ایجاد شده صحیح بوده است یا خیر:
با کلیک بر دکمه وسطی، یک ویرایشگر متنی مطابق با شکل ذیل گشوده خواهد شد که بوسیله آن می توان به ویرایش پرس و جو پرداخت. در این تصویر پرس و جوی جدول Duration آورده شده است.
در تصویر ذیل هم پرس و جوی VIEW ساخته شده آورده شده است:
همچنین با کلیک بر دکمه View Query هم می توان خروجی پرس و جوی زده شده را مشاهده نمود. در تصویر ذیل خروجی جدول Duration را مشاهده می کنید:
در کنار این 3 دکمه هم دکمه دیگری به نام Run Build Query قرار گرفته است که برای اجرای پرس و جو بوده و به ما یک خروجی در نمای طراحی را می دهد. در شکل ذیل خروجی این نما را برای VIEW ایجاد شده مشاهده می کنید. همانگونه که مشاهده می کنید، تمامی فیلدها هم وارد شده اند.
مشابه با تصویر ذیل از دکمه Retrieve Columns هم برای مشاهده فیلدهای ایجاد شده داخل کادر View Query استفاده می شود. کافیست بر روی این گزینه کلیک کرده و در داخل آن بر روی اولین گزینه که Retrieve Columns and Parameters است کلیک کنید.
مشابه با یک روند، برای هر دو جدول Duration و VIEW ایجاد شده، یک پرس و جو را ذخیره می کنید. پس از ذخیره سازی دو پرس و جو، مشاهده خواهید کرد که در ارتباط موجود، دو مجموعه داده تعریف شده است که پیشتر نبودند. از همین دو مجموعه داده برای ایجاد گزارشات استفاده می شود:
برای بخش محتوای گزارش هم راه های مختلفی وجود دارد. در یکی از این روش ها می توان مشابه با تصویر ذیل، از نوار ابزار موجود بر روی گزینه Data کلیک کرده و سپس در داخل گزارش با درگ کردن ماوس، ابعاد کادر انتخابی را مشخص نمود:
بلافاصله پس از رها کردن دکمه ماوس، مشاهده خواهید کرد که کادر جدیدی باز می شود. حال در آنجا می بایست که مجموعه داده انتخابی را جهت bind کردن با کادر انتخاب نمائید.
یکی دیگر از این راه ها، درگ نمودن خود مجموعه داده درون کادر گزارش گیری است. برای اینکار بر روی نام خود مجموعه گزارش کلیک می کنید و آنرا به داخل کادر گزارش درگ می کنید. اینبار هم پس از رهاسازی ماوس یک پنجره جدید جهت انتخاب فیلدهای مد نظر گشوده می شود. در آنجا هر فیلدی را که می خواهید انتخاب نموده و در آخر بر روی دکمه تأیید کلیک می کنید. فقط دقت کنید که تعداد فیلدها با تعداد Value معین شده در هنگام ایجاد متغیر همخوانی داشته باشد. در آنجا عدد 8 انتخاب شده بود.
حال کافیست که بر روی دکمه Preview در منوی اصلی برنامه کلیک کنید تا نتیجه نهایی را مشاهده نمایید. همچنین می توان بر روی متغیر ساخته شده که همان Duration_ID بود هم کلیک کرد و در آنجا مطابق شکل ذیل بر روی گزینه Request From User کلیک نمود:
با کلیک بر روی این check box یک کادر جدید گشوده خواهد شد. در آنجا هم بر روی دکمه تأیید کلیک می کنید:
حال اگر بر روی دکمه Preview کلیک کنید، متوجه می شوید که یک کادر جدیدجهت تنظیم مجدد تعداد ستون ها ایجاد شده است. می توان با کم و زیاد کردن این اعداد به نتیجه مطلوب دست یافت:
مشاهده می کنید که کادر سمت چپ تغییر پیدا کرده است. حال کافیست که بر روی دکمه By Stimul Report کلیک کنید و در کادر باز شده، فایل گزارش ساخته شده را انتخاب کنید.
پس از انتخاب فایل و کلیک بر دکمه تأیید، یک کادر جدید گشوده می شود. در این کادر به صورت خودکار پارامتر انتخابی هم آمده است. در این کادر می بایست که یک نام و Caption برای گزارش انتخاب شود و سپس بر روی دکمه Create و بعد آن هم بر روی دکمه تأیید کلیک گردد:
مشاهده می شود که در کادر سمت چپ گزارش وارد شده است. این گزارش فاقد داده و دارای یک پارامتر می باشد:
کافیست در قسمت Properties تغییرات زیر را اعمال نمائید:
حال می بایست به بخش فرم ها مراجعه کنید و فرمی را که می خواهید برایش گزارش نمایش داده شود را انتخاب نمائید. سپس در قسمت Properties تغییرات زیر را اعمال نمائید:
حال با کلیک بر روی دکمه Application Cache Management و بعد از آن کلیک بر روی دکمه Clear Cache Data تغییرات را در برنامه اعمال کنید. سپس با مراجعه به مرورگر و refresh کردن صفحه، می توانید تغییرات را مشاهده نمائید. برای اینکار تنها کافیست تا مشابه با تصویر ذیل، بر روی فرم کلیک نموده و سپس در آنجا بر روی آیکون پرینتر کلیک کنید تا گزارش ایجاد شود:
نتیجه نهایی چیزی شبیه به تصویر ذیل خواهد بود:
همانگونه که مشاهده می کنید، در نوار ابزار موجود گزینه هایی جهت تنظیمات رایج چاپ و ذخیره سازی قرار داده شده است. به عنوان مثال با کلیک بر روی گزینه Print پنجره ذیل باز می شود که قابل تنظیم است:
همچنین می توان با برداشتن تیک از Check Box موجود در فرم تنظیمات متغیر تحت عنوان Request From User که پیشتر درمورد آن توضیح داده شد، تنظیمات ستون ها را از کاربر سلب نمایید.
پس از اینکه وارد نرم افزار شدید، یک کادر جدید برای تعیین نوع نرم افزار گشوده خواهد شد. می توان بر روی گزینه basic کلیک نمود.
معرفی پایگاه داده به برنامه
در ادامه هم با کلیک بر روی فایل گزارش گیری ایجاد شده، وارد محیط برنامه می شوید. با کمی دقت، می توان متوجه شد که محیط هر دو ابزار، چه تحت وب و چه تحت ویندوز مشابه هم می باشند. پس ادامه مراحل تهیه گزارش را با استفاده از نسخه تحت ویندوز ادامه خواهیم داد. در محیط تحت ویندوز مشاهده می شود که Dictionary در سمت راست قرار گرفته است و مشابه با وضعیت Dictionary است که در محیط وب داشتیم. تنها می بایست در صورتی که ارتباط با جداول برقرار نبود و مشابه با تصویر ذیل، علامت ضرب روبروی ارتباط قرار داشت، مشکل ارتباط را برطرف کنیم .
(در صورتی که با انجام مراحل ذیل، ارتباط تصحیح نشد، می توان کل ارتباط را پاک کرده و از نو ایجاد کرد. کافیست که با کلیک راست بر روی ارتباط CnnEducation و انتخاب گزینه Delete آن ارتباط را پاک کرده و سپس بر روی Data Source کلیک راست کرد تا بتوان یک ارتباط جدید را با انتخاب گزینه New Data Source ایجاد کرد. باقی مراحل مانند بالا می باشد. )
برای اینکار کافیست تا بر روی ارتباط CnnEducation کلیک کنید تا فرم ویرایش ارتباط مشاهده شود. در این مرحله می بایست که مطابق شکل ذیل بر روی دکمه Wizard ساخت یک ارتباط کلیک شود:
پس از کلیک بر روی دکمه Wizard وارد فرم ایجاد ارتباط خواهید شد. پس در فرم جدید در نام سرور، در صورت استفاده از Host محلی نقطه گذاشته و سپس در کادر بعدی، از Use Windows Authentication استفاده می کنید. سپس در کادر آخر از کشویی انتخاب پایگاه داده، Education را مطابق شکل زیر انتخاب کرده و سپس بر روی دکمه OK کلیک می کنید.
مجددا به فرم ویرایش ارتباط باز خواهید گشت. کافیست در این مرحله بر روی دکمه کلیک کنید تا بتوان یک تست از صحت ارتباط گرفت. در این صورت، مشابه با تصویر ذیل پیام موفقیت آمیز بودن ارتباط مشاهده خواهد شد:
از طرف دیگر هم در کادر Dictionary علامت ضربدر مربوط به عدم وجود ارتباط از بین رفته است:
ایجاد پرس و جو
حال اگر بر روی ارتباط دوبار کلیک کنید، کادر دیگری گشوده خواهد شد که در آن کلیه جداول قرار داده شده اند. در تصویر ذیل کادر مذکور را می توانید مشاهده نمایید:
مساله ای که از این به بعد اهمیت دارد پرس و جویی است که شما می زنید. چرا که بوسیله آن پرس و جوها، DataSet هایی ایجاد می گردند و در نتیجه آن DataSet هاست که گزارش تکمیل می گردد. حتی مشابه با تصویر بالا، کلیه جداول از پایگاه داده واکشی شده اند. پس حتی اگر ارتباط CnnEducation هم تصحیح نشد، می توان یک ارتباط تازه ایجاد نمود و در نتیجه آن ارتباط، کلیه جداول را مشاهده نمود. تنها نکته ای که اهمیت دارد پرس و جو هایی است که شما می زنید. پس مشابه با تصویر بالا بر روی دکمه New Query کلیک می کنید تا کادر مربوطه گشوده شود. حال کافیست تا پرس و جوی مربوط به جدول Duration را در کادر Query قرار دهید تا پرس و جو تکمیل شود. همچنین در کادر Columns & Parameters لیست متغیرهایی که تعریف کرده اید، آمده اند. در این مثال تنها متغیر Duration_ID تعریف شده بود.
در بالای کادر پرس و جو سه دکمه قرار گرفته است. از دکمه ! برای تست ارتباط استفاده می شود. در صورت کلیک بر آن، کادری مشابه تصویر ذیل گشوده خواهد شد که طی آن متوجه خواهید شد ارتباط ایجاد شده صحیح بوده است یا خیر:
با کلیک بر دکمه وسطی، یک ویرایشگر متنی مطابق با شکل ذیل گشوده خواهد شد که بوسیله آن می توان به ویرایش پرس و جو پرداخت. در این تصویر پرس و جوی جدول Duration آورده شده است.
در تصویر ذیل هم پرس و جوی VIEW ساخته شده آورده شده است:
همچنین با کلیک بر دکمه View Query هم می توان خروجی پرس و جوی زده شده را مشاهده نمود. در تصویر ذیل خروجی جدول Duration را مشاهده می کنید:
در کنار این 3 دکمه هم دکمه دیگری به نام Run Build Query قرار گرفته است که برای اجرای پرس و جو بوده و به ما یک خروجی در نمای طراحی را می دهد. در شکل ذیل خروجی این نما را برای VIEW ایجاد شده مشاهده می کنید. همانگونه که مشاهده می کنید، تمامی فیلدها هم وارد شده اند.
مشابه با تصویر ذیل از دکمه Retrieve Columns هم برای مشاهده فیلدهای ایجاد شده داخل کادر View Query استفاده می شود. کافیست بر روی این گزینه کلیک کرده و در داخل آن بر روی اولین گزینه که Retrieve Columns and Parameters است کلیک کنید.
مشابه با یک روند، برای هر دو جدول Duration و VIEW ایجاد شده، یک پرس و جو را ذخیره می کنید. پس از ذخیره سازی دو پرس و جو، مشاهده خواهید کرد که در ارتباط موجود، دو مجموعه داده تعریف شده است که پیشتر نبودند. از همین دو مجموعه داده برای ایجاد گزارشات استفاده می شود:
تهیه گزارش
مشابه با تصویر بالا، مشاهده می کنید که دو مجموعه داده ایجاد شده به همراه همه فیلدهای تعریف شده آمده اند. در صورت نبودن فیلدها، مشابه با توضیحات صفحه قبل، می بایست که از دکمه Retrieve Columns واقع در View Query استفاده شود. حال کافیست هرکدام از فیلدها را که می خواهید در صفحه گزارش قرار داده شوند را به داخل آن درگ کنید. سپس در کنار آن یک برچسب برای معرفی قرار دهید. به عنوان مثال در اینجا سه فیلد Title,StartDate و EndDate آمده اند و در کنار هرکدام، یک برچسب جهت معرفی بهتر، قرار داده شده است:
برای بخش محتوای گزارش هم راه های مختلفی وجود دارد. در یکی از این روش ها می توان مشابه با تصویر ذیل، از نوار ابزار موجود بر روی گزینه Data کلیک کرده و سپس در داخل گزارش با درگ کردن ماوس، ابعاد کادر انتخابی را مشخص نمود:
بلافاصله پس از رها کردن دکمه ماوس، مشاهده خواهید کرد که کادر جدیدی باز می شود. حال در آنجا می بایست که مجموعه داده انتخابی را جهت bind کردن با کادر انتخاب نمائید.
یکی دیگر از این راه ها، درگ نمودن خود مجموعه داده درون کادر گزارش گیری است. برای اینکار بر روی نام خود مجموعه گزارش کلیک می کنید و آنرا به داخل کادر گزارش درگ می کنید. اینبار هم پس از رهاسازی ماوس یک پنجره جدید جهت انتخاب فیلدهای مد نظر گشوده می شود. در آنجا هر فیلدی را که می خواهید انتخاب نموده و در آخر بر روی دکمه تأیید کلیک می کنید. فقط دقت کنید که تعداد فیلدها با تعداد Value معین شده در هنگام ایجاد متغیر همخوانی داشته باشد. در آنجا عدد 8 انتخاب شده بود.
حال کافیست که بر روی دکمه Preview در منوی اصلی برنامه کلیک کنید تا نتیجه نهایی را مشاهده نمایید. همچنین می توان بر روی متغیر ساخته شده که همان Duration_ID بود هم کلیک کرد و در آنجا مطابق شکل ذیل بر روی گزینه Request From User کلیک نمود:
با کلیک بر روی این check box یک کادر جدید گشوده خواهد شد. در آنجا هم بر روی دکمه تأیید کلیک می کنید:
حال اگر بر روی دکمه Preview کلیک کنید، متوجه می شوید که یک کادر جدیدجهت تنظیم مجدد تعداد ستون ها ایجاد شده است. می توان با کم و زیاد کردن این اعداد به نتیجه مطلوب دست یافت:
نکته
فایل گزارش ایجاد شده می بایست در مسیر WorkSpace > ZF > build > web > ReportRepository > stimul که مسیر build برنامه بود قرار داده شود تا قابل استخراج باشد.
مشاهده گزارش در زی فریم
تا به حال توانستیم یک گزارش را توسط این برنامه و در محیط ویندوز ایجاد کنیم. حال اگر بخواهیم همین گزارش را در زی فریم هم ببینیم کافیست که به برنامه مراجعه نموده و بر روی دکمه Report List کلیک کنیم:
مشاهده می کنید که کادر سمت چپ تغییر پیدا کرده است. حال کافیست که بر روی دکمه By Stimul Report کلیک کنید و در کادر باز شده، فایل گزارش ساخته شده را انتخاب کنید.
پس از انتخاب فایل و کلیک بر دکمه تأیید، یک کادر جدید گشوده می شود. در این کادر به صورت خودکار پارامتر انتخابی هم آمده است. در این کادر می بایست که یک نام و Caption برای گزارش انتخاب شود و سپس بر روی دکمه Create و بعد آن هم بر روی دکمه تأیید کلیک گردد:
مشاهده می شود که در کادر سمت چپ گزارش وارد شده است. این گزارش فاقد داده و دارای یک پارامتر می باشد:
کافیست در قسمت Properties تغییرات زیر را اعمال نمائید:
حال می بایست به بخش فرم ها مراجعه کنید و فرمی را که می خواهید برایش گزارش نمایش داده شود را انتخاب نمائید. سپس در قسمت Properties تغییرات زیر را اعمال نمائید:
حال با کلیک بر روی دکمه Application Cache Management و بعد از آن کلیک بر روی دکمه Clear Cache Data تغییرات را در برنامه اعمال کنید. سپس با مراجعه به مرورگر و refresh کردن صفحه، می توانید تغییرات را مشاهده نمائید. برای اینکار تنها کافیست تا مشابه با تصویر ذیل، بر روی فرم کلیک نموده و سپس در آنجا بر روی آیکون پرینتر کلیک کنید تا گزارش ایجاد شود:
نتیجه نهایی چیزی شبیه به تصویر ذیل خواهد بود:
همانگونه که مشاهده می کنید، در نوار ابزار موجود گزینه هایی جهت تنظیمات رایج چاپ و ذخیره سازی قرار داده شده است. به عنوان مثال با کلیک بر روی گزینه Print پنجره ذیل باز می شود که قابل تنظیم است:
همچنین می توان با برداشتن تیک از Check Box موجود در فرم تنظیمات متغیر تحت عنوان Request From User که پیشتر درمورد آن توضیح داده شد، تنظیمات ستون ها را از کاربر سلب نمایید.
نکته
با هر بار build برنامه، تمامی گزارش های ایجاد شده و ذخیره شده در مسیر build پاک می شوند. لذا می بایست یه نسخه از گزارشات ساخته شده در کامپیوتر ذخیره گردد.