یکی از خواستههای همیشگی کاربران نرمافزارهای مبتنی بر پایگاه دادهها، امکان نمایش انواع مختلف فیلدهای اطلاعاتی در گزارشات چاپیِ فرمهای عملیاتی یا گزارشی است. برخی از این فیلدها مرتبط با موضوع گزارش چاپی هستند (مثل انواع اطلاعات مربوط به «فاکتور فروش» در گزارش چاپی فاکتور فروش) و انتظار میرود نرمافزار، امکان نمایش این دسته از اطلاعات را در گزارش چاپی بدون هیچگونه محدودیتی فراهم کند. اما، بعضاً، درخواستها دربردارندۀ امکان نمایش فیلدهای اطلاعاتی به دست آمده از محاسبات پیچیده و یا مربوط به فیلدهای اطلاعاتی نامرتبط یا با ارتباط دور با موضوع اصلی گزارش است (مثلاً امکان نمایش جمع کل چکهای برگشتی دریافتی از مشتری در فاکتور فروش صادر شده برای او).
یکی از نقاط قوت نرمافزار مالی و اداری تدبیر، گزارشساز قدرتمند آن است که با اتکا به مجموعۀ وسیعی از توابع از پیش آماده و ایندکسهای چاپی؛ امکان پاسخگویی بسیاری از درخواستهای کاربران در این زمینه را بدون نیاز به اعمال تغییر در کد اصلی برنامه و انتظار جهت انتشار بستۀ نهایی فراهم میآورد. با این وجود، نظر به وسعت پایگاه دادههای سیستم، همواره پاسخگویی به برخی از درخواستها نیازمند اضافه شدن توابع یا اندیسهای چاپی جدید در کد برنامه بوده و با توجه به زمان مورد نیاز جهت کنترل کیفیت و رفع اشکالات احتمالی تا رسیدن به نقطۀ پایداری، کاربر باید در این موارد خاص انتظار چندماههای را تا دریافت بستۀ جدید نرمافزار تحمل کند.
ارائۀ طرحی برای حل این مشکل و کاهش زمان انتظار کاربران، یکی از اهداف اصلی تعیین شده برای آخرین نسخۀ نرمافزار مالی تدبیر بود که هماکنون در نسخۀ ۷٫۶۹ در قالب قابلیتهای «امکان استفاده از توابع پارامتریک در گزارشات چاپی» و همینطور «امکان توسعۀ موجودیتهای پارامتریک» انجام شده و در دسترس قرار گرفته است. در این مطلب، با ارائۀ چند مثال کاربردی نحوۀ استفاده از این قابلیتها را برای پاسخگویی به نیازهای کاربران در گزارشات چاپی شرح میدهیم.
برای شروع کار تلاش میکنیم مسئلۀ سادهای را که قبلاً با استفاده از راه حلهای قدیمیتر حل شده با استفاده از توابع پارامتریک حل کنیم. «فاکتور خرید» را در نظر بگیرید، فرض کنیم میخواهیم در این فاکتور «نام مشتری فاکتور» را با استفاده از راهکار جدید نمایش دهیم.
طبق روال طراحی گزارشات چاپی، روی فرم فاکتور خرید با فشردن کلید ترکیبی Alt+Q (پیشنمایش چاپ) از پنجرۀ «مدیریت گزارشات» یکی از گزارشات چاپی آمادۀ فاکتور خرید را انتخاب کرده، با فشردن دکمۀ «تغییر فرم» گزارشساز را باز میکنیم و با فشردن کلید ترکیبی Alt+Z آن را به نام دیگری ذخیره میکنیم و در گزارش جدید روی برچسب اطلاعاتی روبروی «فروشنده» کلیک راست میکنیم. در گزارش چاپی فعلی، نام فروشنده از طریق یک اندیس چاپی نمایش داده میشود و ما میخواهیم به جای این کار از توابع پارامتریک استفاده کنیم. از منوی کلیک راست پنجرۀ ویژگیهای فیلد، عنوان «تابع پارامتریک» را انتخاب میکنید یا با فشردن کلید ترکیبی Alt+P در این پنجره، فرمان متناظر را اجرا کنید. با اجرای فرمان یاد شده، پنجرۀ تعریف تابع پارامتریک باز میشود، از کمبوی «سیستم» عنوان «خرید و فروش»، از کمبوی «نوع» عنوان «موجودیتهای عملیاتی» و از لیست موجودیتها «فاکتور خرید» را انتخاب و باز کنید.
نکتۀ دیگری که از مثال بالا میتوان به آن پی برد آن است که ساختار توابع پارامتریک چاپی وابسته به «موجودیتهای گزارشات پارامتریک» است. «گزارشات پارامتریک» که از طریق منوی «امکانات» سیستم مالی در دسترس قرار میگیرد اطلاعات موجودیتهای تدبیر را به زبان کاربر در اختیار میگذارد و میتوان با ترکیب فیلدهای اطلاعاتی و اضافه کردن شرطهای جدید با استفاده از آن گزارشات جدیدی را به سیستم اضافه کرد. در مثال بالا، فیلد مورد نظر ما یک فیلد ساده و آماده و دم دست از موجودیت «فاکتور خرید» بود (نام مشتری). اما اگر فیلد مورد نظر ما به صورت آماده در اطلاعات موجودیتهای گزارشات وجود نداشته باشد و باید از طریق محاسبات دیگر به دست بیاید باید چه کار کنیم؟ مثال بعدی روش حل مسائلی با این درجه از پیچیدگی را هم به ما یاد میدهد.
دوشنبه ۳۰ اردیبهشت ۱۳۹۲
حمیدرضا محمدی کارشناس نرم افزار شرکت پردازش موازی سامان
این مطلب ادامه دارد… (استفاده از توابع پارامتریک در طراحی گزارشات چاپی تدبیر-بخش دوم)