1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

صدور پیغامهای فارسی بجای پیغامهای Error اکسس

شروع موضوع توسط minaaa ‏10/12/11 در انجمن Assembly

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    End If

    جواب کلی :
    اساسا ، هر خطا در اکسس یا
    VB یک کد تولید می کند . برنامه نویسان باید یک بانک اطلاعات از کد خطاهایی که رخ می دهد داشته باشند تا بتوانند با چک کردن شماره خطا پیغام فارسی مناسب آن خطا را صادر کنند .
    بطور کلی دو روش کنترل خطا از این قرارند:

    ۱- اگر خطا مربوط به کل فرم باشد باید از طریق رویداد OnError فرم کنترل شود .
    معمولا خطاهایی که مربوط به کدنویسی ما نبوده و صرفا توسط اکسس و در واکنش به اشتباهات کاربر صادر می شود در این رویداد کنترل می شود . در این رویداد ، پارامتر
    DataErr حاوی کد خطاست. (بعبارت واضح تر اگر می خواهید کد مربوط به هر Error را شناسایی کنید می توانید این دستور در رویداد OnError فرم بنویسید: MsgBox DataErr )
    بطور کلی بعد از اینکه کد خطاها را شناسایی کردید با نوشتن قالب برنامه زیر در رویداد OnError فرم می توانید خطاها را کنترل کنید :

    Dim Str as String
    Select Case DataErr
    Case 3022
    Str=”اطلاعات وارده تکراری است”
    Case 2237
    Str = “اطلاعات وارده در لیست وجود ندارد”
    ‘خط فوق برای مواردی است که یک مقداری که در کمبو باکس وجود ندارد ، تایپ شده باشد
    Case
    Str=…
    ….
    End Select

    Msgbox Str
    Response = acDataErrContinue
    rContinue

    2- اگر خطا مربوط به کدهایی باشد که خودمان در یک Sub نوشته ایم :
    در این روش باید در ابتدای
    Sub با دستور : <اسم زیر روال کنترل خطا> On Error Goto ، کنترل خطا را به یک روال کنترل خطا ارجاع دهیم.
    ( تمام کدهایی که ویزارد
    Command Button بطور خودکار در رویداد OnClick دکمه ها ایجاد می کند نمونه خوبی برای این روش هستند. ضمنا در این روش بکمک Err.Number کد خطا شناسایی می شود )