مرتب سازی رکوردها
مرتب سازی (Sorting) رکوردها در Crystal Report
با استفاده از پنجره Record Sort Expert می تونید رکوردها را مرتب کنید.
در اکثر موارد، ترتیب اصلی داده، ترتیب مفیدی نیست، بنابراین باید داده را مجدداً مرتب سازی نمایید تا گزارش مفیدتری داشته باشید.
زمانی که رکوردها از منبع داده واکشی می شوند، بطور پیشفرض براساس نوع داده ها، مرتب می شوند.
در جدول زیر به طور خلاصه اولویت های مرتب سازی که در اکثر پایگاه داده ها استفاده می شود، نشان داده شده است:
نوع فیلد | اولویت مرتب سازی | توضیحات |
---|---|---|
کاراکتر |
Blanks Punctuation Numbers Uppercase letters Lowercase letters |
ابتدا فضای خالی |
رشته |
Two letters Three letters Four letters Five letters ... |
ابتدا دوکارکتری ها سپس سه کاراکتری ها سپس چهار کاراکتری ها سپس پنج کاراکتری ها و ... به عنوان مثال mm قبل از mmm می آید و ALLEN قبل از Abe |
پول |
Numeric order |
ترتیب عددی |
عدد |
Numeric order |
ترتیب عددی |
تاریخ |
Chronological order |
ترتیب وقوع |
تاریخ و زمان |
Chronological order Same-date values by time |
ترتیب وقوع |
زمان |
Chronological order |
ترتیب وقوع |
بولین |
False values (0) True values (1) |
ابتدا False |
تهی (NULL) |
NULL values Non-NULL values |
ابتدا مقدار NULL |
مرتب سازی بر اساس یک فیلد
اجازه بدهید، با ایجاد یک گزارش جدید، با مفهوم مرتب سازی، آشنا شویم.
لیست کالاها به همراه موجودی
1- بعد از اجرای Crystal Report، یک گزارش خالی (Blank Report) ایجاد کنید.
2- به پایگاه داده Xtreme.mdb متصل شده و جداول Product و Product Type و Purchases را به پنجره Selected Table اضافه نمایید.
اجازه دهید، ارتباط بین جداول را خود Crystal Reports برقرار نماید.
3- روی دکمه OK کلیک نمایید.
4- در نمای Design، فیلد های پایین را در بخش Details قرار دهید.
فیلد Product Name و Product Class (از جدول Product)
فیلد Product Type Name (از جدول Product Type)
فیلد Units in Stock و Units on Order (از جدول Purchases)
5- منوی (View=>Print Preview) را اجرا نمایید.
در این گزارش با یک نگاه، متوجه خواهید شد که برای نمایش رکوردها، یک نظم واقعی وجود ندارد. برای مثال به اطلاعات Product Name در صفحه اول نگاه کنید، تعدادی از Gloveها در بالا آمده و بعد از Helmetها دوباره Glove آمده است.
اجازه دهید، برای قابل فهم تر شدن گزارش، داده ها را مرتب کنیم. برای این منظور مراحل زیر را طی نمایید.
مرتب سازی بر اساس Product Type Name
1- منوی (Report=>Record Sort Expert) را اجرا نمایید.
2- فیلد Product Type Name را از لیست Available انتخاب نمایید.
این فیلد اصلی است که می خواهید گزارش بر اساس آن مرتب شود.
3- روی دکمه پیکانی شکل (<) کلیک نمایید.
فیلد مذکور به ناحیه Sort Fields منتقل می شود.
4- گزینه Ascending را انتخاب کنید.
(Ascending مرتب سازی صعودی است و Descending مرتب سازی نزولی)
5- روی دکمه OK کلیک نمایید.
نتیجه مطابق شکل زیر خواهد بود.
مرتب سازی چندگانه
مرتب سازی براساس یک فیلد مفید است، اما بیشتر گزارش ها به مرتب سازی چندگانه نیاز دارند، در مرتب سازی چندگانه، ابتدا رکوردها براساس فیلد اول مرتب می شوند، سپس اگر در فیلد اول مقادیر تکراری وجود داشت، در همان محدوده تکرار، براساس فیلد دوم مرتب سازی انجام می شود.
محدودیتی در تعداد فیلدهای مرتب سازی وجود ندارد، اما اگر این تعداد بیشمار باشد، ساخت گزارش، طولانی تر خواهد بود.
برای درک بهتری نسبت به مرتب سازی چندگانه، مثال زیر را دنبال نمایید. (با گزارشی که قبلاً ایجاد کردید ادامه دهید)
مرتب سازی بر اساس Product Name و Units in Stock
1- منوی (Report=>Record Sort Expert) را اجرا نمایید.
2- فیلد Product Name و Units in Stock را به لیست Sort Fields اضافه نمایید.
در مثال قبلی، فیلد Product Type Name را اضافه کردید.
3- برای فیلد Product Name گزینه Ascending و برای Unites in Stock گزینه descending را انتخاب نمایید.
4- روی دکمه OK کلیک نمایید.
توجه کنید که داده ها به صورت زیر مرتب می شوند:
-
ابتدا براساس فیلد Product Type Name، به صورت صعودی مرتب می شود.
-
سپس براساس فیلد Product Name، به صورت صعودی مرتب می شود.
-
و در آخر براساس فیلد Units In Stock، به صورت نزولی مرتب می شود.
تغییر ترتیب مرتب سازی
منظور جابه جایی فیلدهایی است که بر اساس آنها مرتب سازی انجام می شود و در مرتب سازی چندگانه معنی دارد.
برای انجام این کار می توانید از کلیدهای پیکانی شکل (بالا و پایین) در پنجره Record Sort Expert استفاده نمایید.
جابه جایی مرتب سازی Units in Stock به بالا
1- منوی (Report=>Record Sort Expert) را اجرا نمایید.
2- فیلد Units in Stock را از لیست Sort Fields انتخاب نمایید.
3- روی دکمه پیکانی شکل (بالا) مطابق شکل زیر کلیک نمایید.
با این کار فیلد Units in Stock به بالا حرکت می کند و قبل از Product Name قرار می گیرد.
4- روی دکمه OK کلیک نمایید.
حذف مرتب سازی
حذف مرتب سازی به همان آسانی اضافه کردن آن است.
برای حذف مرتب سازی مراحل زیر را دنبال نمایید:
جابه جایی مرتب سازی Units in Stock به بالا
1- منوی (Report=>Record Sort Expert) را اجرا نمایید.
2- از لیست Sort Fields فیلدی را که می خواهید انتخاب نمایید.
در ایننجا فیلد Units in Stock را انتخاب کنید.
3- روی دکمه پیکانی شکل (>) کلیک نمایید.
با این کار فیلد مرتب سازی Units in Stock حذف می شود.
4- روی دکمه OK کلیک نمایید.
- نوشته شده توسط امیر پهلوان صادق
- بازدید: 11007