PDA

View Full Version : انتخاب تعداد مشخص از رکورد ها



ibd_iran
شنبه 07 اردیبهشت 1387, 10:00 صبح
با سلام خدمت دوستان

من در گزارش با Crystal Report می خواهم درقسمت detalis تعداد مشخصی رکورد چاپ شود واگر از آن تعداد بیشتر شود یک صفحه جدید ایجاد کند در کل برای هر شخص از گزارش یک صفحه ایجاد کند فرمول که درقسمت فرمول نویسی باید بنویسم چه است اگر ممکن است یک مثال از این کد با یک فیلد فرضی بذارید مثلا از فیلد شماره دانشجوی یک چاب شود بعدی در صفحه جدید ایجاد شود
با تشکر از ................................

Moslemu
شنبه 14 اردیبهشت 1387, 09:27 صبح
سلام.
اگر كه مي‌خوايد تحت شرايط خاصي اطلاعات قسمت Detail به صفحه‌ي بعدي منتقل بشه، مي‌تونيد از اين راه استفاده كنيد:
روي detail كليك راست كنيد و Section Expert رو انتخاب كنيد.
گزينه‌ي New Page Afer رو انتخاب كنيد و توي قسمت كد نويسي مي‌تونيد شرايط رو تعريف كنيد.
مثلاً:


if recordNumber mod 7 =0 then true

اين كد باعث مي‌شه كه بعد از هر هفت ركورد، اطلاعات به صفحه‌ي بعدي منتقل بشن.

sm
یک شنبه 15 اردیبهشت 1387, 11:12 صبح
راه حل دوستمون دقيقا درست هست.
اين تاپيك رو بعنوان حل شده تيك برنين.

موفق باشيد

ibd_iran
یک شنبه 22 اردیبهشت 1387, 21:06 عصر
تعداد رکورد ها مشخص نیست اون را چگونه به دست آورم

sm
دوشنبه 23 اردیبهشت 1387, 08:05 صبح
چه نيازي هست كه تعداد كل رو بدست بيارين ؟
مي تونين تعداد رو همراه كوئري از بانك بگيرين.

موفق باشيد

ibd_iran
شنبه 28 اردیبهشت 1387, 12:52 عصر
چه نيازي هست كه تعداد كل رو بدست بيارين ؟
مي تونين تعداد رو همراه كوئري از بانك بگيرين.

موفق باشيد
نه منظور من تعداد كل نيست
مثلا برنامه من جوري هست كه مي خوام براي هر دانشجو تعداد دروسي كه انتخاب واحد كرده چاپ شود.
اين تعداد براي هر دانشجو فرق داره
مثلا يكي 4 درس
يكي 5 درس
مي خوام هر دانشجو در يك صفحه جداگانه ليست شود


if recordNumber mod 7 =0 then true

اين شرط براي هر 7 درس به صفحه بعد مي رود
اينو چجوري تغيير بدم كه براي هر دانشجو به تعداد دروسي كه دارد به صفحه بعد برود؟

Moslemu
یک شنبه 29 اردیبهشت 1387, 06:16 صبح
شما مي‌تونيد يه مقدار مثل شماره دانشجويي يا يه فيلد مشخص از اون دانشجو رو ، اول هر صفحه توي يه متغير ذخيره كنيد و براي هر ركورد بعدي اونو با مقدار جديدش مقايسه كنيد.
اگر مقدارش تغيير كرده بود، اونوقت true رو قرار بديد.

MAHDIACTION
شنبه 14 خرداد 1390, 17:22 عصر
ممنون........................................ ......

mn_zandy63
یک شنبه 15 خرداد 1390, 20:01 عصر
سلام دوست من،

راه حل دوستمون Moslemu به نظر درست میاد. اما راه حل ساده تری هم هست.
به نظر میاد شما مشکلت به سادگی با ایجاد یک گروه روی داوطلب حل میشه.
میتونی یک گروه روی داوطلب ایجاد کنی و تنظیم کنی که بعد از هر گروه به صفحه جدید بره.
اینکار هم اصولی تر هست، هم هزینه نگهداری در آینده رو پایین تر میاره و امکان تغییر گزارش رو در آینده برات ساده تر میکنه، ضمن اینکه امکان استفاده از Group Footer و Group Header رو هم بهت میده.

موفق باشی