PDA

View Full Version : وقفه در فست ری پورت



evinsoftwaregp
سه شنبه 02 مرداد 1386, 10:21 صبح
سلام دوستان
من برای گزارش از فست ری پورت استفاده کرده ام
موقع نمایش گزاش باید یک کلید فشرده شود یا موس حرکت کنه تا نمایش بده اگه میشه کمکم کنید.

رها
سه شنبه 02 مرداد 1386, 13:36 عصر
سوالتون رو واضحتر بگید!!
یعنی تا وقتی کلیدی رو فشار ندید یا ماوس رو حرکت ندید،گزارش نمایش داده نمی شه؟

evinsoftwaregp
سه شنبه 02 مرداد 1386, 13:50 عصر
نه اصلا
کل برنامه تحت هر شرایطی تست کردنم الان یک هفتس دارم روش کار میکنم

رها
سه شنبه 02 مرداد 1386, 14:23 عصر
اگر کد پزارش پیری تون رو بگذارید راحت تر می شه نظر داد.
به طور خلاصه باید کارهای زیر رو انجام بدید.پ


frxreport1.loadfromfile(filename);
//do any for prepare of report
frxreport1.prepareReport();
frxReport1.showPreparedReport();

evinsoftwaregp
سه شنبه 02 مرداد 1386, 19:57 عصر
ممنون من فقط از
frxReport.ShowReport(); استفاده می‌کردم.
مرسی تستش میکنم .
مرسی بای

evinsoftwaregp
سه شنبه 02 مرداد 1386, 20:25 عصر
الان کار بر عکس شد یعنی قبلا صفحه پیش نمایش ظاهر می‌شد بعد با حرکت و یا ... نمایش داده می‌شد حال تا وقتی کلیدی فشار داده نشود یا ماوس رو حرکت نکند پیش نمایش ظاهر نمی‌شود.
فکر نکنم مشکل از فست باشه چون قبلا توی یک فرم خالی تستش کردم مشکلی نداشت ولی توی برنامه که می‌یاد این مشکل پیش می‌یاد ضمنا تو محیط فست ری‌پورت این مشکل وجود ندارد.به خدا گیج شودم.
هر قسمت از کد من را که بخواهی بگین تا بدم.
متشکرم.

evinsoftwaregp
سه شنبه 02 مرداد 1386, 21:49 عصر
کمک کنید لطفا

evinsoftwaregp
سه شنبه 02 مرداد 1386, 22:12 عصر
بالاخره تلسم شکست.
امشب در ساعت 10:35 دقیقه به معنی حقیقی باگ، پی بردم.(یعنی فهمیم این حشره کوچوله با این کوچیکیش چقدر بعضی موقع ها خودش را بزرگ جلوه می‌ده)
حالا به سوال خودم جواب می دم.جاللبه نه؟ البته این نکته ای باشه واسه برنامه نویسهای دیگه.

این هم از این باگ کوچولو که متاسفانه حذف شود.



procedure Tfrm_Main.Timer1Timer(Sender: TObject);
//var
// Cheek : String[9];
// Msg : tagMSG;
begin
// FARSI OR ENGLISH
// Cheek := GetLayoutName;
//
// if Cheek = '$00000429' then
// StatusBar1.Panels[1].Text := 'صفحه کلید : فارسی'
// else
// StatusBar1.Panels[1].Text := 'صفحه کلید : انگلیسی';
// ----------
// WaitMessage;
// if PeekMessage(Msg, Application.Handle, WM_HOTKEY, WM_HOTKEY, PM_REMOVE)
// then if (HiWord(msg.lParam) = VK_F2) and (Loword(Msg.lParam) = 0) then
// N34Click(Sender);
end;

موفق و سربلند باشید.

evinsoftwaregp
سه شنبه 02 مرداد 1386, 22:14 عصر
حالا سوال اینجاست چه ربطی به فست داشت؟ :لبخندساده: :لبخندساده: :لبخندساده:

vcldeveloper
چهارشنبه 03 مرداد 1386, 03:32 صبح
این پست ربطی به FastReport نداره...
لازم نبود برای نمایش وضعیت صفحه کلید و چک کردن یک میانبر صفحه کلید از Timer استفاده کنی. می تونستی مستقیما از Application.OnIdle استفاده کنی، یا یک Action درست کنی و رویدادهای OnExecute و OnUpdate اش را استفاده کنی. این کار باعث می شد که هم میانبر صفحه کلید بطور خودکار عمل کنه، هم وضعیت صفحه کلید بطور خودکار در زمانی که Application کاری برای انجام دادن نداره ( Idle هست) آپدیت بشه.

evinsoftwaregp
شنبه 06 مرداد 1386, 02:35 صبح
متشکرم آقای کشاورز ولی مشکل این نیست مشکل :

WaitMessage;
بوده منم به ناچار حذفش کردم
از بابت راهنمایتون بسیار ممنونم