PDA

View Full Version : سوال: یک سوال در مورد qreport



ali_sadri
سه شنبه 25 فروردین 1388, 08:07 صبح
با سلام
من یک ریپورت دارم شبیه یک لیست حضور و غیاب کلاس ، وقتی که تعداد لیست از یک حد بالا می رود مثلا به 30 ردیف ، و می خواهم متد Preview را اجرا می کنم گزینه پرینت در toolbar غیر فعال می شو د و کامپیوتر هنگ می کند بعد از بررسی متوجه شدم در درایو c یک فایل بسیار بزرگ با پسوند tmp ایجاد می شود و کل c را اشغال می کند وقتی متد print مستقیم اجرا کردم متوجه شدم تعداد خیلی زیاد صفحه خالی با سربرگ مربوطه (بدون ردیف) چاپ می شود
اگه کسی می تونه کمک کنه ممنون می شم :متفکر::متفکر::متفکر:

mafazel
سه شنبه 25 فروردین 1388, 12:04 عصر
خود QReport که مشکل نداره. یه جایی یه حلقه while یا Repeat گذاشتید که به پایان نمی رسه.
وقتی تعداد رکورد ها کمه مثلا 10 تا، بدون اشکال و بدون مورد تکراری چاپ میشه؟

ali_sadri
چهارشنبه 26 فروردین 1388, 12:14 عصر
سلام
ممنون که جواب دادی
آره وقتی تعداد کمه هیچ مشکلی نداره ولی وقتی تعداد کمی زیاد شد حدود 7000 صفحه خالی پشت سرش ایجاد می شه که فایل temp آن درایو c را اشغال می کنه حجم فایل حدودا 1.3 گیگا بایت می شه و استک اور فلو می ده
ضمنا از هیچ حلقه ای هم استفاده نکردم فقط یک query است که نتیجه ان را به یک qreport اختصاص می دم ولی در bifor print یک کد نوشتم که چیز خاصی نداره فقط چک می کنه یک سری فیلد های خاص اگر 1 باشه یک سری از label هارا کاراکتر خاص مثل علامت تیک قرار بدهد(روی ریپورت)

mafazel
چهارشنبه 26 فروردین 1388, 15:09 عصر
با سلام
هنوز از توی مطالبی که نوشتید نمیشه مشکل رو حدس زد اما دو مسئله زیر را بررسی کنید شاید خطا رو پیدا کنید:
1- طبعا وقتی برای 10 رکورد مشکل نداره اما برای 30 رکورد مشکل داره سعی کنید از روش تنصیف تعداد مشکل دار رو پیدا کنید. مثلا با 20 رکورد امتحان کنید اگر مشکل داشت با 15 رکورد امتحان کنید تا تعدادی که باعث مشکل میشود را پیدا کنید ببینید بازائ این تعداد چه شرط یا حالتی هست که این مشکل رو بوجود میاره.
2- شاید مشکل از تعداد رکورد نباشه. احیانا جایی (با یک شرطی، مثل همون که توی BeforePrint گفتید) دستور Query.First اجرا نمی شه؟
اگر ممکنه نمونه کد بذارید.
موفق باشید.

daffy_duck376
چهارشنبه 26 فروردین 1388, 15:31 عصر
به نظر من شما یه جایی یه کم بد کد نویسی کردید و یا کی سری دستورات چند بار اجرا میشوند . من توصیه میکنم یرنامه رو TRACE کنید بیبینید در تعداد رکورد بالا برنامه چه کد هایی رو اجرا میکنه

ali_sadri
چهارشنبه 26 فروردین 1388, 17:00 عصر
سلام
حل شد
جهت اطلاع دوستان عرض می کنم
مشکل این بوده که در قسمت property ، detail band خاصیت forcenewpage=true شده بود من متوجه نبودم
از این که لطف کردی ممنون