View Full Version : خطای گزارش
mehran_337
شنبه 19 دی 1388, 14:06 عصر
در هنگام نمایش گزارش اخیرا همش این پیغام خطا میاد با ایگنور نمایش انجام می شه
گزارش بسیار ساده است و هیچ ارتباطی هم به هم نداره فقط یک جدوله
Program Error
The specified Key already exists.
kia1349
یک شنبه 20 دی 1388, 07:10 صبح
احتمالا از کالکشن ها یا آرایه ها داری استفاده میکنی و نام کلیدی رو که تعریف کردی از قبل در اختیار سیستمه
یا باید از یه نام دیگه استفاده کنی و یا کلیدهای از قبل تعریف شده رو آزاد کنی
mehran_337
یک شنبه 20 دی 1388, 08:39 صبح
این فقط یه گزارش ساده است یعنی اول یه کوئری و سپس نمایش گزارش به همین ادگی.
در ضمن وقتی reportbehaviar برابر با 80 می شه این پیغام نمایش داده نمی شه
Esikhoob
یک شنبه 20 دی 1388, 11:48 صبح
اگر میخواهید فقط مشکل حل شود ، شاید این کمک کند:
یک report جدید بسازید و همه چیز را از report قبلی Copy -- Paste کنید به report جدید.
mehran_337
یک شنبه 20 دی 1388, 12:11 عصر
واقیعت اینه که مدتیه با این پیغام مواجه هستم یعنی هر گزارشی می سازم با مد 90 هز از گاهی این پیغامو می ده.
البته پروژه فعلی من یک گزارشیه که ستونهاش کم و زیاد می شه یعنی کاربر فیلدهای مورد نظر رو برای گزارش تیک می زنه اینجا نمی تونم محتویات رو توی گزارش دیگه کپی کنم.
مشکل دیگه اینه که بعضی وقتها یک رکورد و فقط نمایش می ده.
دوستان راهی بنظرشون می رسه؟
kia1349
یک شنبه 20 دی 1388, 16:44 عصر
از طریق دیباگینگ جلو برو تا به جائی برسی که ارور خودشو نشون میده.اونجا محدوده عملیات رو بهتر میشه مورد بررسی قرار داد.
mehran_337
یک شنبه 20 دی 1388, 16:53 عصر
اگر از این ارور صرفنظر کنیم دلیل اینکه بعضی مواقع فقط رکورد اول رو نمایش می ده چیه؟
در حالیکه وقتی فرم و می بندم و همون گزارش رو باز می کنم و سپس پیش نمایش می زنم درست نشون می ده
برنامه ای نیست که فقط فیلدهای دلخواه کاربر و گزارش درست کنه؟
البته یه برنامه ای بود که اول گزارشی با تمام فیلدها باید می ساختیم بعد تیک می زدیم
اما مد نظر من گزارش سازیه که هر بانکی رو گزارش بده شرط و رلیشن هم نیاز ندارم
binyaz2003
یک شنبه 20 دی 1388, 20:43 عصر
اول گفتيد فقط يک گزارش ساده است که؟آقاي حسيني در برنامه مبدل کد پيج در قسمت چاپ فيلدهاي درخواستي رو چاپ ميکنند که فکر کنم حتما ميدونيد چه جوري.شما چطور کار کرديد؟
mehran_337
دوشنبه 21 دی 1388, 10:14 صبح
مشکل بنده در مورد گزارشات ساده هم وجود داردو اما روش من در برنامه گزارش ساز :
در ابتدا طول فیلدهایی که کاربر انتخاب می کند محاسبه می شود و بر اساس اندازه کاغذ طول فیلد ها با در نظر گرفتن 1 سانت از دو طرف کم و زیاد می گردد تا فیت کاغذ گردد
سپس یک گزارش الگو دارم که خط افقی و عمودی و لیبل و فیلد و چند شی مورد نظر (تاریخ - شماره صفحه و ...) در آن گزارش وجود دارد.
در برنامه رکورد این اشیا کپی شده و در گزارش جدید با تغییر سایز و رنگ و فونت و غیره اضافه می گردد.
به این صورت کاربر گزارشی دارد که هم خط کشی شده است هم تیتر هدر با عبارات دلخواه و فونت مورد نظر دارد و هم دیتیل گزارش یک در میان های لایت دارد .کلا یه گزارش دلخواه کاربر.
اما در روش creat report x from tblname گزارش هیچ آرایش خوبی ندارد
Esikhoob
دوشنبه 21 دی 1388, 19:55 عصر
شاید ReportListener که خود VFP اختصاص میدهد اشکالی پیدا کرده ، با یک Reportlistener دیگر امتحان کنید:
ox = createobject("ReportListener")
REPORT FORM worker.frx OBJECT ox
arashkhaan2002
سه شنبه 22 دی 1388, 12:55 عصر
من واسه ایینجور گزارشها ، گزارشم رو از پیش صفحشو طراحی کردم با فیلدهای به یه اندازه استاندارد و گزارش sql رو بارامتری میگیرم یعنی اسم فیلدها رو میریزم تو متغیر های exp_t1.....exp_tn بعد و در دستور sql به جای اسم فیلد exp_t1& میگذارم جواب میده.
mehran_337
سه شنبه 22 دی 1388, 13:36 عصر
خب این در صورتیه که فقط یک گزارش ثابت داشته باشید. در ضمن در صورت کم شدن تعداد فیلدها اندازه فیلدها برای چاپ و خطوط عمودی کنارشون هم باید تغییراتی داده شوند
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.