اجزای فرم گرید
یک فرم گرید از سه بخش اصلی تشکیل شده است. بخش اول که در بالای فرم قرار دارد، شامل یک نوار ابزار است تا کاربر بتواند با کمک دکمه های آن به مدیریت اطلاعات فرم بپردازد (برای آشنایی با دکمه های موجود در این نوار ابزار به آموزش
نوار ابزار فرم در زی فریم مراجعه نمایید). کاربرد این دکمه ها به ترتیب از راست به چپ شامل ایجاد، ویرایش، حذف، جستجوی یک رکورد، چهار دکمه برای پیمایش، چاپ، استخراج Excel، استخراج Excel در قالب Grid و طراحی گزارش است.
در بخش دوم، اطلاعات موجود در فرم به صورت یک جدول نمایش داده می شود. که می توان مانند Excel با کشیدن لبه های هر سر ستون، عرض هر فیلد را کم و یا زیاد نمود. در بخش سوم که در پایین فرم قرار دارد هم نواری برای پیمایش و مدیریت نحوه نمایش داده های موجود در فرم قرار داده شده است تا به وسیله آن بهتر بتوان داده هایی با حجم بالا را مدیریت نمود. در تصویر زیر کارکرد المانهای موجود در این قسمت توضیح داده شده است.
با کلیک بر دکمه سفارشی سازی نمایش فیلدها، یک کادر جدید باز می شود که نحوه نمایش ستون ها در فرم گرید را می توان در آن تعیین نمود.
از ابزار موجود در این پنجره می توان برای مدیریت ستونهای گرید و اعمال تغییرات مورد نیاز به صورت زیر استفاده نمود:
✓ با استفاده از دکمه های موجود در ستون Column Size می توان ترتیب نمایش ستونها را تغییر داد.
✓ با درج یک عدد در کادرهای نوشتاری موجود در ستون Columns Index، می توان اندیس فیلدهای جدول را مدیریت کرد.
✓ با برداشتن تیک هر کدام از تیک مارک های موجود در ستون Can View می توان نمایش یا عدم نمایش یک فیلد در جدول را مشخص نمود.
✓ در نهایت پس از اعمال تغییرات لازم، می بایست بر روی دکمه تایید کنید (Accept) کلیک کنید تا تغییرات ذخیره شود.
✓ دکمه پیش فرض (Default) نیز برای برگرداندن تنظیمات به حالت پیش فرض است.
تنظیمات مرتبط با سفارشی سازی Grid برای هر کاربر به طور مجزا اعمال می شود. به عبارتی اگر کاربری دیگر به سیستم وارد شود، تنظیمات Grid آن با دیگر کاربران متفاوت خواهد بود.
خصوصیات فرم گرید
هر فرم Grid دارای خصوصیت هایی منحصر به فرد به شرح زیر است که همگی قابل مدیریت هستند.
• خصوصیت Grid Loading Mode
• خصوصیت Grid Select Text
• خصوصیت Grid Session Access
• خصوصیت Grid Count Query
برای مشاهده و مدیریت این خصوصیت ها باید ابتدا فرم مورد نظر را انتخاب نموده تا پنل Properties در سمت راست مشاهده شود.
خصوصیت Grid loading mode
زمانی که تعداد اطلاعات مربوط به یک فرم زیاد باشد (مانند لیست تراکنش های روزانه در یک بانک که ممکن است به چندین هزار رکورد برسد)، اگر کاربر برای نمایش اطلاعات ثبت شده در این جداول از Grid استفاده کند دچار مشکل خواهد شد. در نتیجه می بایست اطلاعات را به صورت صفحه به صفحه بارگذاری کند تا برای بانک اطلاعاتی و همچنین Application Server مشکلی در امر بارگذاری اطلاعات رخ ندهد. بنابراین علاوه بر آنکه باید مقدار این خصوصیت برابر با Dynamicباشد، خصوصیت Grid Count Query نیز باید مقداردهی شود. اما زمانی که حجم اطلاعات کم باشد، می توان مقدار این خصوصیت را در حالت static قرار داد.
خصوصیت Grid Select Text
زمانی که حالت نمایش یک فرم به صورت Grid در نظر گرفته شده باشد، در کنار هر رکورد از Grid یک دکمه وجود خواهد داشت که از آن برای Select کردن آن رکورد استفاده می شود. چنانچه بخواهیم عدد یا واژه ای داخل این دکمه به کاربر نشان داده شود، از این خصوصیت استفاده کرده و آن عدد یا واژه را داخل خصوصیت Grid Select Text وارد می کنیم. همچنین برای حذف کردن این دکمه می توان مقدار این خصوصیت را برابر با null قرار داد.
خصوصیت Grid Session Access
در برخی موارد نیاز است تا گزینه انتخابی توسط کاربر، داخل Session Value ذخیره شود تا بر اساس آنچه کاربر انتخاب کرده است، عملیاتی صورت گیرد. به عبارت دیگر اگر بخواهیم زمانی که کاربر بر روی یک رکورد (موجود در یک گرید) کلیک و آن را انتخاب کرد، از انتخاب او آگاه شده و بر اساس این انتخاب عملیاتی صورت دهیم، می توان id رکورد انتخاب شده را در یک Session ذخیره نماییم و برای این Session یک نام دلخواه درون خصوصیت Grid session access قرار دهیم.
برای مثال فرض کنید بخواهیم کلید دوره مالی انتخابی توسط کاربر را داخل یک Session با نام ActiveYear ذخیره کنیم. زمانی که مقدار این خصوصیت را برابر با ActiveYear قرار دهیم، اگر کاربر بر روی Grid نمایان شده در این فرم کلیک کند، مقدار موجود در کلید فرم به داخل Session ActiveYear انتقال پیدا می کند، که در ادامه می توان سازوکار برنامه را با استفاده از این مقدار پیش برد.
خصوصیت Grid Count Query
همانگونه که در بالا گفته شد، در مواقعی که حجم رکوردها بالاست، باید مقدار Grid Loading Mode در حالت Dynamic قرار گیرد. در این زمان، از آنجا که سیستم درک درستی از تعداد کل رکوردها ندارد، درنتیجه نمی تواند تعداد صفحات Grid را نمایش دهد. درنتیجه نیاز به یک Query بوده تا تعیین شود که در کل چه تعداد رکورد وجود دارد و در نتیجه برای نمایش این اطلاعات به چند صفحه نیاز است. البته این اطلاعات ممکن است در قسمتهای شاخص گذاری شده داخل بانک اطلاعاتی و یا برخی از فیلدهایی که آمار و ارقام را برای کاربر ذخیره می کنند نیز باشد. در واقع درون خصوصیت Grid Count Query یک کوئری نوشته می شود که صرفا یک عدد بر می گرداند که بیانگر تعداد رکوردهای موجود در جدول است. سیستم با استفاده از این عدد می تواند تشخصی دهد که صفحه بندی را به شکل انجام دهد.