ورود

View Full Version : این Error گیری مسخره یعنی چی؟



سار
سه شنبه 05 خرداد 1383, 22:01 عصر
من چنین کدی نوشتم :

DE.rsSQLCmdProducts.Close
DE.rsSQLCmdProducts.Source = MySQL
DE.rsSQLCmdProducts.Open


اصلا معلوم نیست که چرا و کی Error میگیره.
یعنی صد بار اجرا میکنی درسته یه دفعه چند با پشت هم Error میده که آبجکت بازه و نمیتونید دوباره بازش کنید در صورتی که تو خط قبل بستمش و از اون خط اصلا Error نمیگیره.
این Error الکی یعنی چی و از کجا ناشی میشه؟!!!!!!!!!!!

linux
سه شنبه 05 خرداد 1383, 23:32 عصر
:))
این کامپیوتر های بدبخت فقط کارشون این هست که دستورهای مارا اجرا کنند از خودشون هیچ کاری نمی تونند انجام بدهند. پس اگر جایی ایرادی هست از ماست
ممکن رکورد ست را در فرم دیگر باز می کنید و دیگر نمی بندید.

jannati
چهارشنبه 06 خرداد 1383, 07:51 صبح
با سلام
شما اول باید چک کنید که کامپوننت شما باز است یا بسته بعد ببندیدش یا باز کنید.مثل کد زیر:


if DE.rsSQLCmdProducts.state=adstateopen then
DE.rsSQLCmdProducts.close
end if
DE.rsSQLCmdProducts.source=SQL
DE.rsSQLCmdProducts.open

یادت باشه که adstateیک کلمه کلیدی است.حتما errorرفع میشه! :wink:

سار
پنج شنبه 07 خرداد 1383, 08:18 صبح
حتما من از این راهنمایی ها استفاده میکنم
ولی همونطور که میبینید من قبل از هر کاری اون رو میبندم
دیگه چرا باید بگه اون بازه.
بازم میگم کارش حساب و کتاب نداره.
100 دفه ران میکنی درسته ولی گاهی Error میگیره!!!!!!!!!!!!!!!!!!
درضمن من تو هیچ فرمی از این رکورد ست استفاده نکردم؟!!!!!!!!!!!

سار
پنج شنبه 07 خرداد 1383, 14:25 عصر
من برای اینکه از همهچیز اطمینان حلصل کنم یک رکورد ست جدید ساختم و کد زیر رو بهش نسبت دادم

If DE.rsSQLColor.State = adStateOpen Then
DE.rsSQLColor.Close
End If
DE.rsSQLColor.Source = MySQL
If DE.rsSQLColor.State = adStateClosed Then
DE.rsSQLColor.Open
End If
میبینید که قبل از هر کاری State اون رو چک میکنم.
جالب اینجاست که در If‌ دوم وقتی برنامه رو Trace میکنم کاملا مشخص است که آبجکت من در دستورات قبلی بسته شده ولی باز هم پیغام Object is Open رو میگیرم.
جدا از این جالب تر نمیشه تو دو خط بالا تر خودش اعلام میکنه که بسته شده ولی دو خط پایین تر میگه بازه.
:خیلی متعجب: :گیج: این یعنی چی؟!
یه توضیح دیگه هم اینکه اگر در دستورات SQL که تو متغییر MySQL قرار دارن تغییری ندم همه چیز درسته ولی تا اون رو عوض میکنم این مسخره بازی شروع میشه.
باز هم لازم هست که بگم :
1)دستورات SQL کاملا درست هستن
2)از این رکورد ست در هیچ جا بجر فرم خودش استفاده نمیشه
3)‌قبل از هر کاری من اون رو میبندم
خواهش میکنم کمک کنید VB کارها!!!!!! :cry: