آموزش اکسس

آموزش مایکروسافت اکسس - Access Training

آموزش اکسس

آموزش مایکروسافت اکسس - Access Training

آموزش اکسس

ارائه آموزش‌ها و نکات کلیدی مربوط به نرم افزار اکسس.
جزییات و نکات ریز اکسس را با ما داشته باشید و پویایی دوباره‌ای به برنامه خودتان دهید.

آخرین نظرات

بسم الله الرحمن الرحیم

سلام

همونطور که میدونید اکسس این قابلیت رو داره تا فرمها رو به صورت متصل به جداول طراحی کنه.

این قابلیت یک مشکل رو ایجاد میکنه که داده‌ها بلافاصله در زمان ویرایش و یا حذف، در جداول ذخیره میشن و این یک عیب نسبتا بزرگ هست.

برای جلوگیری از این مشکل چند راه‌حل وجود داره که در این آموزش به یکی از این روش‌ها اشاره میکنم.

شما باید کنترل کنید که پس از بروز رسانی یک فرم و یا ایجاد هر تغییری در داده‌های فرم، اطلاعات ذخیره بشه یا با نه؟

برای همین به نمونه کد زیر دقت کنید:

Private Sub Form_BeforeUpdate(Cancel As Integer)

If vbYes = MsgBox("توجه داشته باشید که فرم جدید و یا تغییراتی در فرم جاری ایجاد شده است" & vbCrLf & "آیا تمایل به ذخیره اطلاعات جدید و یا تغییرات ایجاد شده دارید؟", vbYesNo + vbQuestion + vbDefaultButton2 + vbMsgBoxRight, "پیام سیستم") Then
    DoCmd.Save
Else
    Undo
End If

End Sub

پ.ن:

در نمونه کد بالا که در رویداد قبل از بروز رسانی فرم قرار گرفته است با یک جعبه پیام از کاربر سوال میشه که آیا تغییرات ایجاد شده در فرم رو ذخیره میکنه یا خیر؟

که در صورت تایید اطلاعات ذخیره و در صورت عدم تایید تمامی تغییرات Undo شده و به حالت قبلی بازخواهند گشت!

اگر شما راه دیگه‌ای برای مدیریت این مشکل در اکسس دارید، در بخش نظرات با بقیه دوستان به اشتراک بگذارید.

نظرات  (۳)

عالی ممنون بدردم خورد

عالی بود ممنون

  • ابوالفضل حسین زاده
  • سلام
    اگه امکان داره این دستور رو روی یه فایل آزمایشی پیاده کنید و توی سایت قرار بدید
    ممنونم

    پاسخ:
    سلام دوباره
    توضیحات کاملا مشخص هست
    یا عینا کد بالا رو در قسمت VBA فرم مورد نظرتون کپی کنید
    و یا قطعه کد زیر رو در رویداد BeforeUpdate فرم مورد نظرتون کپی کنید
    If vbYes = MsgBox("توجه داشته باشید که فرم جدید و یا تغییراتی در فرم جاری ایجاد شده است" & vbCrLf & "آیا تمایل به ذخیره اطلاعات جدید و یا تغییرات ایجاد شده دارید؟", vbYesNo + vbQuestion + vbDefaultButton2 + vbMsgBoxRight, "پیام سیستم") Then
        DoCmd.Save
    Else
        Undo
    End If

    ارسال نظر

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">