View Full Version : اشکالی در ویژوال فاکس 9 (نخواندن جدول خراب)
javad_hosseiny
سه شنبه 07 تیر 1384, 07:54 صبح
به تازگی به مشکلی برخورد کردم کمی عجیب
جدولی است که در ویژوال فاکس 9 به هنگام باز کردنش با پیغام خطای آسیب دیدگی فایل و نیاز به تعمیر داشتن مواجه می شوم
(آیا مایکروسافت برای این مشکل تمهید جدیدی در نظر گرفته که پیغام می دهد تعمیرش کند (یعنی آیا برنامه تعمیرش را نیز داده))
ولی همان جدول را در ویژوال فاکس 7 یا حتی 5 باز می کنم بدون هیچ مشکلی آن را باز می کند و می خواند
و جالبتر آنکه پس از باز کردن در فاکس 7 مجددا آن را در 9 باز کردم جواب نداد ولی پس از pack کردن جدول در فاکس 7 در فاکس 9 آن را باز کرد
و جالبتر از آن اینکه جهت پیدا کردن اشکال من در فاکس 7 تمامی رکوردهای حذف شده را مجددا ری کال (بازیابی) کردم و سپس pack کردم و در فاکس 9 آن را نخواند
آیا دوستان همچین مشکلی دیده بودند و برای آن نظری دارند؟
binyaz2003
سه شنبه 07 تیر 1384, 10:56 صبح
:گیج:
توی 8 هم امتحانش کردین؟
javad_hosseiny
سه شنبه 07 تیر 1384, 10:58 صبح
توی 8 تست نکردم ولی گفتم روی 9 جواب نمی ده ولی رو بقیه آره
javad_hosseiny
سه شنبه 07 تیر 1384, 12:17 عصر
اصل فایل را برای تست آپلود می نمایم
لطفا دوستان یه کنترلی بنمایند
binyaz2003
سه شنبه 07 تیر 1384, 13:01 عصر
Table "name" has become corrupted. The table will need to be repaired before using again. (Error 2091)Either the table record count does not match the actual records in the table, or the file size on the disk does not match the expected file size from the table header.
توی 8 این خطا رو میده
javad_hosseiny
سه شنبه 07 تیر 1384, 18:31 عصر
دقیقا همون خطایی که تو نسخه 9 می ده
حال اگر اون رو با ویژوال فاکس 7 امتحان کنید می بینید که بدون کوچکترین مشکلی اون رو باز می کنه
و هیچ مشکلی نداره
(البته راه حل این که کافیه یکبار pack بشه بعد تو نسخه 9 باز می کنه)
نسخه 9 به علت حل کردن مشکل حرکت کرسر در گراید ها و دیگر اشکالات نسخه های قبلی به نظر من درحال حاضر بهترین است ولی اگر قرار باشد که همچین ایرادات آنرمال داشته باشد که خوب باز صد رحمت به نسخه 7 (چون لااقل از این ایرادات نداره و....)
rezaTavak
چهارشنبه 08 تیر 1384, 09:09 صبح
سلام
فاکس 9 grid را چکار کرده که درست شده؟؟
javad_hosseiny
چهارشنبه 08 تیر 1384, 12:10 عصر
کار کرسر رو درست کرده (حرکت به چپ با کرسر (حرکت نما) سمت چپ و حرکت به راست با کرسر سمت راست)
(حالا از اصل داستان جدا نشیم بهتره اقا رضا شما هم به فایله یه دیدی بنداز :mrgreen: )
javad_hosseiny
شنبه 11 تیر 1384, 11:47 صبح
دوستان کسی راه حلی پیدا نکرد
من با برنامه crcdbf (برنامه ای که با سی نوشته شده جهت اصلاح هدر فایلهای dbf )
و حتی با روش تصحیح دستی (قبلا تو همین فروم توضیح دادم) هدر فایل اون رو تغییر دادم ولی باز جواب نمی ده
یعنی تو فاکس 8 و 9 باز نمی کنه و پیغام خطا می ده ولی با 7 باز می کنه
(فکر کنم راه حلی نیست جز اینکه برگردم سراغ خود 7)
rezaTavak
شنبه 11 تیر 1384, 17:54 عصر
سلام
راستش چند وقته ویندوز را تعطیلش کردم و رفتم سراغ لینوکس و چشم چک می کنم.
راستی مید ونید فاکس ۹ روی لینوکس چقدر خوب جواب میده!
javad_hosseiny
شنبه 11 تیر 1384, 21:22 عصر
چه باحال تاحالا فکر می کردم برای تحت لینوکس نسخه جدا می خواهد
:mrgreen:
rezaTavak
یک شنبه 12 تیر 1384, 07:25 صبح
سلام
نسخه جدا که می خواد اما تمام نگارشها قبل از 9 را نمیشد با wine درست اجرا کرد. یعنی من هر چی سعی کردم نشد اما 9 را راحت اجرا میکنه و فقط یک مشکل هست اون اینه که Ole را نمیشه توش استفاده کرد. یعنی من که از Ocx برای فارسی کردن کنترلهای فاکس استفاده میکنم بدردم نمی خوره! و یک چیزی مثل TreeView هم.
javad_hosseiny
یک شنبه 12 تیر 1384, 08:13 صبح
البته در بحث استفاده از OLE طبیعی است که نتوان استفاده کرد چرا که این ابزار برای خود ویندوز هستند و حتی با WINE نیز نمی توان آنها را بدرستی پیدا کرد
در مورد نسخه های قبل من نیز تست کرده بودم و نشد و تصورم بر این بود به هر حال سازگاری ندارد و...
ولی خوب این نکته جدیدی بود (نسخه 9)
javad_hosseiny
شنبه 18 تیر 1384, 13:47 عصر
دوستان ، مدیر بخش و ... کسی نبود این فایل رو چک کنه (که چرا در 9 باز نمی شه و در 7 باز میشه؟ ) وراه حلی برای آن به نظرش نمی رسه؟
rezaTavak
یک شنبه 19 تیر 1384, 17:34 عصر
سلام
چک کردم اما راه حل؟؟؟؟؟؟؟
kia1349
چهارشنبه 22 تیر 1384, 06:42 صبح
فاکس 7 یه نسخه فوق العاده حرفه ای و بسیار منعطفه . از اون دسته برنامه هاست که از زیر دست مایکروسافت در رفته . حالا مشکل فایل:
اولا هدر فایل خرابه یعنی در هدر فایل قسمتی هست که تعداد رکورد های داخل بانک رو ثبت میکنه تا در زمان ریکاور کردن بتونه به تعداد واقعی برسه
حالا در زمان delete کردن امکان داره مشکلاتی برای فایل بوجود بیاد که باعث خرابی هدر فایل بشه که معمولا این مشکلات توسط فاکس ندیده گرفته می شوند و خود فاکس فایل رو مدیریت میکنه ولی در نسخه های دیگه فاکس این هوشمندی گنجانده نشده شما با همون جداول به مشکل بر میخورید
این خصیصه حرفه ای فاکس 7 در فاکس پلاس هم وجود دارد و بسیاری از فایلهای خراب در فاکس رو با فاکس پلاس درست میکنند
حالا با دستور pack تمام اطلاعات هدر فایل با شرایط بانک تطبیق داده میشود و شما میتوانید فایل رو باز کنید
javad_hosseiny
چهارشنبه 22 تیر 1384, 08:58 صبح
با تشکر از نظر آقای حیدری کیا
گویا واقعا اینگونه است و امکانات خواندن جداول خراب در فاکس 7 بسیار قدرتنمندتر است
در رابطه با هدر فایل من توسط توابع سطح پایین آن را کاملا خواندم و حرف به حرف با یک جدول سالم (همان جدول با همان تعداد رکورد) و هیچ تفاوتی نداشت (جهت تصحیح اشکال هدر فایل خراب از روی فایل سالم) (روشی که در محیط داس از آن بهره مند بودم و جواب می داد یعنی فایلهای که هدر آنها خراب بود را تصحیح می کرد)
ولی در اینجا جواب نداد چون تفاوتی رو نمی دید
برداشت من این است که در فاکس 7 واقعا به هدر فایل (مخصوص قسمت کد های 3 تا 8 که مخصوص معرفی تعداد رکورد جدول هست و ... ) توجه ندارد و خودش مدیریت جدول را کنترل می کند (در هر بار باز کردن) مشابه fox+
حالا به دنبال راه حلی هستم که ببینم آیا امکان حل این مشکل از طریق برنامه جانبی (مثلا مشابه برنامه crcdbf (توضیح در تایپیکهای قبلی) جهت حل مشکل هدر فایل) ) هست که قید امکانات فاکس 9 را نزنم و مجبور به بازگشت به محیط فاکس 7 نباشم؟
محمود شمس
جمعه 07 مرداد 1384, 05:47 صبح
سلام آقا جواد
من هم حدود یکسال پیش در پروژه ای که برای یکی از موسسات تحقیقاتی با فاکس 8 طراحی کرده بودم با این مشکل مواجه شدم. مشکل بخاطر قطع جریان برق پیش اومد. و من پس از بررسی بر روی جدول خراب اون رو در فاکس 7 امتحان کردم و دیدم درست میخونه.
برای ترمیم جدول به روش زیر عمل کردم و نتیجه گرفتم:
- جدول خراب رو در فاکس 7 باز کردم و با استفاده از دستور Copy To یک نسخه جدید از آن ایجاد کردم. جدول جدید ساخته شده به راحتی در فاکس 8 بدون خطا باز میشد.
- بعد بخاطر اطمینان خاطر پروژه رو نهایتا با فاکس 7 exe کردم.
javad_hosseiny
شنبه 08 مرداد 1384, 08:45 صبح
ممنون از نظر شما آقای شمس
در رابطه با فاکس 8 پیشنهاد می کنم از نسخه 9 آن استفاده کنید که خیلی بهتره (والبته یا برگردید سراغ همون 7 مشابه بنده))
در رابطه با بحث عنوان مشکل نیز عرض کردم راه حل آن استفاده از برنامه جانبی و یا همان روش copy to گفته شده توسط شما (که البته اگر صفحه قبل را مطالعه می کردید متوجه می شدید که گفتم به طریق دیگر نیز قابل حل است) قابل حل است.
اما اصرار بنده بر حل این مشکل توسط خود نرم افزار ویژوال فاکس 9 هست (یعنی اینکه یه برنامه exe جدا توسط فاکس 7 برای حل مشکل دیتابیس ها درست نکنیم)
و نهایتا بنده نیز مجبور به انجام همین کار شدم (خروجی برنامه را با فاکس 7 درست کردم)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.