ورود

View Full Version : مشکل با Fast report



حمیدرضاصادقیان
یک شنبه 16 تیر 1387, 14:38 عصر
سلام دوستان. میخواستم ببینم بعضی مواقع که من میخوام فایل گزارش fastreport رو لود کنم بهم پیغام Access violation میده.ولی وقتی دو سه بار از سیستم خارج میشم مشکل حل میشه.این مشکل هم روی همه سیستمهای مشتری نیست.فقط روی تعداد خیلی کمی مشکل پیش میاد.
نمیدونم مشکل از کجاست.

حمیدرضاصادقیان
سه شنبه 16 مهر 1387, 22:47 عصر
سلام دوستان.من همچنان دارم بااین مشکل سروکله میزنم.حتی در سایت خود فست ریپورت نوشته بود قبل از چاپ بنویسید : frxreport.preparereport(true);
که با نوشتن این خط هم همچنان مشکل باقی است.جالبه روی یک سیستم که این مشکل بود یک بار دیگه exe رو کامپایل کردم و بین خطها یک showmesage قرار دادم ببینم توکدوم خط داره خطا میده که درست شد.showmessage هارو برداشتم و unit مربوطه رو dialogs رو حذف کردم. یک روز درست بود دوباره فردا به مشکل برخورد.واقعا دیگه نمیدونم باید چکار کنم.

vcldeveloper
چهارشنبه 17 مهر 1387, 00:15 صبح
اینجوری نمیشه کمک خاصی کرد! یک نمونه سورس کد بزارید که همین مشکل را تولید کنه، تا بشه آن را بررسی کرد.

حمیدرضاصادقیان
چهارشنبه 17 مهر 1387, 08:10 صبح
سلام. اخه کارخاصی نمیکنم. من فایل رو لود میکنم بعد هم preview رو فراخوانی میکنم.جالبه فقط روی چند تا سیستم از 500 مشتری این مشکل وجود داره.ایا به نظر شما مشکل از اون سیستمهاست؟؟

vcldeveloper
چهارشنبه 17 مهر 1387, 10:59 صبح
نمیدونم، شما اگر به بخش Support مربوط به FastReport هم مراجعه کنید، بهتون میگن مراحل Reproduce کردن خطا رو بهمون بدید. تا کدی نباشه که بشه آزمایشش کرد و همون خطا را بازسازی کرد، نمیشه کار خاصی کرد، غیر از اینکه بر مبنای حدس و گمان باشه.

حمیدرضاصادقیان
چهارشنبه 17 مهر 1387, 13:43 عصر
سلام.ممنون.من پیغام خطایی که داد آدرس اونو در برنامه جستجو کردم داخل یونیت frxclass روی این قسمت ایستاد.


function frxParentForm: TForm;
begin
if FParentForm = nil then
begin
FParentForm := TParentForm.CreateNew(nil);
if not ModuleIsLib then // Access denied AV inside multithreaded (COM) environment
FParentForm.HandleNeeded;
end;
Result := FParentForm;
end;


آدرسی که در AV هست ، روی این تابع می ایسته.
اینم تیکه کدی هست که خودم نوشتم


AdoSpTemp.close;
AdoSpTemp.ProcedureName:='UspReturnDetailAndHeader Factor';
AdoSpTemp.Parameters.clear;
AdoSpTemp.Parameters.AddParameter.Name:='Factor';
AdoSpTemp.Parameters[0].value:=StrToint(sh_fa.Text);
AdoSpTemp.open;
Frxdb.DataSet:=AdoSpTemp;
FrxReport.LoadFromFile('Report\FrForoshDaraye.fr3' );
Fr:=FrxReport.findobject('Memo5') as TfrxMemoView;
Fr.Text:=Co_name;
Fr:=FrxReport.findobject('Memo7') as TfrxMemoView;
Fr.Text:=CodEghtesadi;
Fr:=FrxReport.findobject('Memo9') as TfrxMemoView;
Fr.Text:=CodMelli;
Fr:=FrxReport.findobject('Memo11') as TfrxMemoView;
Fr.Text:=ostan;
Fr:=FrxReport.findobject('Memo13') as TfrxMemoView;
Fr.Text:=Shahrestan;
Fr:=FrxReport.findobject('Memo15') as TfrxMemoView;
Fr.Text:=CodePosti;
Fr:=FrxReport.findobject('Memo17') as TfrxMemoView;
Fr.Text:=shahr;
Fr:=FrxReport.findobject('Memo19') as TfrxMemoView;
Fr.Text:=Address;
Fr:=FrxReport.findobject('Memo21') as TfrxMemoView;
Fr.Text:=Tel;
Frxreport.PrepareReport(True);
FrxReport.ShowReport(true);

vcldeveloper
پنج شنبه 18 مهر 1387, 03:11 صبح
اینجوری هم نمیشه دقیقا فهمید در شرایط بروز خطا چه اتفاقی افتاده، بجای کپی بخشی از سورس کد، نمونه سورس فایلی که بشه آن را کامپایل کرد و رفتاری مشابه رفتار این بخش از برنامه شما دارد را ضمیمه کنید.

kheyri
یک شنبه 12 آبان 1387, 16:09 عصر
آقاي صادقيان عزيز
اين مشكلي كه شما ميگيد رو من هم داشتم. برنامه بعد ار كامپايل و در موقع اجرا خطاي ACCESS VIOLATION ميداد كه البته خطا مربوط ميشد به فايل NTDLL.DLL .
خلاصه ميخواستم ويندوز عوض كنم كه با يك اسكن توسط مك آفي مشخص شد دستگاهم ويروس داره و بعد از پاك كردن ويروس ، ديگه اين مشكل رو نداشتم.

حمیدرضاصادقیان
شنبه 25 آبان 1387, 10:00 صبح
سلام.ممنون از توجه دوستان. مشکل اینه که وقتی فایل رو از سی دی کپی میکنیم فایل به صورت readonly هست که وقتی readonly فایل رو برمیداریم و یک بار صفحه رو refresh میکنم مشکل حل میشه.
حالا من در Setup وقتی که دارم فایل رو کپی میکنم REadonly اونو برمیدارم.
و سیستم رو ریست میکنم ولی بازم مشکل داره. تا وقتی خودم دستی folder که برنامه توش نصب هست رو refresh کنم مشکل حل میشه.ایا میشه وقتی که readonly فایل رو برمیدارم همون موقع فولدر رو رفرش کنم.؟

حمیدرضاصادقیان
یک شنبه 26 آبان 1387, 12:13 عصر
سلام.خلاصه این مشکل بعد از کلی تحقیق حل شد. و مشکل این بود که shortcut ای که می ساختم مشکل داشت. و با ساخت Shortcut حل شد.

Kaveh-K
سه شنبه 28 آبان 1387, 05:32 صبح
خدا رو شکر ! تجربه شد که ما هم به این مشکل برخوردیم بفهمیم از چیه... ممنون، موفق باشی...

shayan_delphi
چهارشنبه 29 آبان 1387, 17:25 عصر
shortcut از چی؟