PDA

View Full Version : تله on error Go to (خطاگذاري در سطح فرم)



sh2007
شنبه 26 اردیبهشت 1388, 10:55 صبح
با سلام خدمت دوستان
دوستان يه سوالي برام پيش اومده كه ما معمولا توي يه ساب پرسيجر تله خطا بذاريم مثلا
On error go to er
'
'
er:
if err.number = 2500 then exit sub
unload me

اينا مثلا بود
حالا اگه بخوايم اين تله خطا رو در سطح فرم بذاريم كه تمام رويداد ها و كدنويسي سطح فرم بتونه از اين خط تله خطا پشتيباني كنه چكار بايد انجام بديم
آيا راه حلي داره
اينرو به اين خاطر مي گم كه اگه بتونيم خطا رو در سطح فرم كنترل كنيم بهتر مي تونم نتيجه بگيرم تا در سطح يه پروسيجر
ممنون از تمامي اساتيد

xxxxx_xxxxx
شنبه 26 اردیبهشت 1388, 20:47 عصر
حالا اگه بخوايم اين تله خطا رو در سطح فرم بذاريم كه تمام رويداد ها و كدنويسي سطح فرم بتونه از اين خط تله خطا پشتيباني كنه چكار بايد انجام بديم

من منظورتونو از "سطح فرم" متوجه نشدم!
شما هر كدي كه مي نويسيد تو يك ساب قرار ميگيره. فرقي نميكنه اون ساب مربوط به يكي از رويدادهاي اشياء باشه يا خودتون اونو تعريف كرده باشيد. شما مي تونيد تو همه اينها از on error استفاده كنيد.

vbhamed
یک شنبه 27 اردیبهشت 1388, 08:59 صبح
سلام

كنترل كردن خطا در سطح فرم كار اصولي نيست چون وقتي خطايي پيش بياد حتما در سابروتين جاري اتفاق افتاده و نيازي نيست مثلا در Main مورد بررسي قرار بگيره

اما اگر به هر دليل نياز به اين كار داريد به روش زير عمل كنيد

1 - يك ماژول به برنامه اضافه كنيد
2 - داخل ماژول يك پروسيجر عمومي بنويسيد كه به عنوان پارامتر شماره خطا رو بگيره و عمل مورد نظر رو انجام بده
3 - داخل سابروتين ها دستور بدام اندازي خطا رو گذاشته و هنگام كنترل خطا، پروسيجر نوشته شده با شماره خطا رو فراخواني كنيد