چگونه از اجرای دوباره یک رویداد جلوگیری کنم؟

ساخت وبلاگ

دوستان سلام.
من در کدم تو رویداد BeforeUpdate کنترل کردم که اگر چنانچه کاربر مقدار یک فیلد خاص رو وارد نکرده بود ذخیره نشه و پیغام بده.
این هم کدم


Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim flag As Boolean
flag = false
If (IsNull(idNoeTazmin)) Then
MsgBox "A"
flag = False
End If
If (IsNull(idEllateTazmin)) Then
MsgBox "B", vbCritical
flag = True
End If
If (IsNull(Shomare)) Then
MsgBox "C", vbCritical
flag = True
End If
If (IsNull(Mablagh)) Then
MsgBox "D", vbCritical
flag = True
End If

Cancel = flag
End Sub


حالا مشکلی که دارم اینه که وقتی کاربر دکمه سیو رو فرم رو میزنه و این کد اجرا میشه یکی از مسیج ها نشون داده میشه بعد پیغام "No Current Record" میاد و بعد دوباره میاد تو همین رویداد و کاربر دوباره پیغامی که من نوشتم رو می بینه. یعنی کلا دوبار پیغام تکراری و یه بار هم اون پیغام انگلیسی رو نشون میده.
من تست کردم دیدم اگه مسیج رو کامنت کنم مشکلی پیش نمیاد و متد یه بار اجرا میشه. ولی اگه به خط مسیج برسه دوبار اجرا می کنه. علت چیه و راه حل چی
ضمنا من نمیخوام از تو جدول فیلد Required رو بذارم میخوام از فرم کنترلش کنم. ممنون

- - , .

برنامه نویس...
ما را در سایت برنامه نویس دنبال می کنید

برچسب : نویسنده : محمد رضا جوادیان programers بازدید : 121 تاريخ : شنبه 10 بهمن 1394 ساعت: 17:26