صدور پیغام مناسب قبل از ذخیره اطلاعات در فرم اکسس

یکی از مهمترین کارهایی که با استفاده از  فرم ها انجام می دهیم این است که از فرم ها جهت ورود اطلاعات در جداول خود استفاده کنیم .

اما خیلی از مواقع پیش می آید که ما اطلاعاتی را در فرم خود وارد کرده ایم .

فرض کنید که ما تغییراتی  را  در این اطلاعات اعمال می کنیم .

امروز می خواهیم کاری کنیم که وقتی این تغییرات را اعمال کردیم قبل از اینکه این تغییرات در جدول ذخیره شوند یک کادر پیغام به کاربر نمایش بدهیم. 

در این کادر به کاربر پیغام می دهیم که آیا می خواهد این تغییرات را ذخیره کند یا خیر ؟ . 

وقتی که این پیغام به کاربر نمایش داده شد دو انتخاب پیش روی کاربر است :

اگر  کاربر  دکمه تائید را بزند این تغییرات در جدول ذخیره می شود .

اما اگر کاربر دکمه لغو را بزند تغییرات جدید حذف و اطلاعات قبلی در فرم نمایش داده خواهد شد .

برای دریافت بهتر موضوع به تصویر زیر توجه کنید .

 

پیغام مناسب قبل از ذخیره اطلاعات

 

خوب برای انجام تنظیمات و ایجاد این امکان در فرم خود با هم مراحل زیر را با هم دنبال می کنیم .

مراحل ایجاد پیغام مناسب قبل از ذخیره اطلاعات

اول از همه به یک جدول حای اطلاعات نیاز داریم .

این جدول و اطلاعات هر چیزی می تواند باشد .

در قدم بعدی باید برای ورود اطلاعات مورد نظر خود در این جدول یک فرم داشته باشیم .

بعنوان مثال من از فرم زیر برای ورود اطلاعات مورد نظر خودم استفاده می کنم .

 

پیغام مناسب قبل از ذخیره اطلاعات

حالا می خواهم کاری کنم که اگر کاربر اطلاعات مربوط به نام یک کتاب را تغییر داد بلافاصله به کاربر پیغامی نمایش داده شود .

متن این پیغام شامل پرسشی خواهد بود که از کاربر تائیدیه برای ذخیره این تغییرات را سوال می کند .

پس هدف اول من نمایش این پیغام به کاربر در صورت تغییر در اطلاعات مربوط به تکس باکس نام کتاب خواهد بود .

در این فرم نام تکس باکسی که اطلاعات مربوط به نام  کتاب ها را دریافت می کند bookname  است .

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

بنابراین به سراغ رویداد Before Update می روم . 

در  رویداد  Before Update مربوط به این تکس باکس قطعه کد زیر را وارد می کنم .

بررسی کدها 

بیایید کمی وقت بگذاریم و با هم این کدها را بررسی کنیم .

در خط اول از متد Dirty  استفاده کرده ایم .

با استفاده از این متد کنترل می کنیم که آیا تغییراتی در اطلاعات این فیلد رخ داده یا نه .

اگر این تغییرات اتفاق افتاده باشد یک کادر پیغام به کاربر نمایش داده می شود .

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

برای این کار هم دو دکمه Yes  و  No  در اختیار وی قرار داده می شود .

حالا دو گزینه پیش روی کاربر است .

اگر گزینه No را انتخاب کند   که به این معنی است که کاربر از ذخیره این تغییرات منصرف شده است 

پس با استفاده از متد Undo  همه چیز را به سر جای اولش بر می گردانیم و  همان اطلاعات اصلی ر ا به کاربر نمایش می دهیم .

اما در حالت دوم اگر کاربر دکمه  Yes   را انتخاب کند یعنی می خواهد که این تغییرات در جدول ذخیره شود . 

در اینجا طبق روال معمول اطلاعات را ذخیره کرده و برای اطمینان بیشتر هم یک پیغام را به کاربر نمایش می دهیم .

تا به اینجای کار به هدف نهایی که مورد نظرمان بود رسیدیم .

اما اگر دوست دارید که کمی در این موضوع جلوتر برویم و قابلیت جدیدی را به کادر پیغام خود اضافه کنیم  پس با من همراه شوید . 

بررسی و اضافه کردن قابلیت جدید

اما این قابلیت جدید چیست ؟

قابلیتی که از آن صحبت می کنیم این است که می خواهیم کاری کنیم که در مرحله نمایش پیغام به کاربر برای اخذ تائیدیه جهت ذخیره کردن  تغییرات هم مشخصات قبلی کتاب و هم مشخصات جدید کتاب را که در قالب تغییرات از سوی کاربر اعمال شده است را به کاربر نمایش دهیم .

برای  رسیدن به این هدف چه باید کرد .

اول اجازه بدهید کدهایی را که برای این منظور نیاز داریم را درج کنم و بعد با هم به بررسی این کدها بپردازیم .

 

پیغام مناسب قبل از ذخیره اطلاعات

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

خوب من برای ذخیره نام اولیه کتاب نیاز به یک کتغیر دارم .

این متغیر را به نام  Fval  و از نوع متن و بصورت عمومی تعریف کرده ام تا در کل این ماژول قابل دسترسی باشد .

در اولین روال تعیین کرده ام که به محض اینکه کاربر در داخل تکس باکس مربوط به نام کتاب کلیک کرد مقدار آن را در متغیر Fval  ذخیره  شود .

 

حالا می رسیم به بخش اصلی کد که در رویداد Befor-Update  تکس باکس مربوط به نام کتاب درج شده است . 

در ابتدای کار هم یک متغیر تعریف کرده ام از نوع متن و به نام Fval  حالا این متغیر قرار است چکار کند .

خوب من با استفاده از دستور IF  گفته ام که به محض اینکه کاربر تغییری را در نام کتاب ایجاد کرد این تغییرات  در  این متغیر ذخیره شود .

حالا ما هم نام اولیه کتاب را داریم و هم نامی را که بواسطه تغییرات کاربر در نام کتاب ایجاد شده است ذخیره کرده ایم .

در قسمت بعد هم که از یک کادر پیغام استفاده می کنیم که هم نام قبلی کتاب و هم نام جدید را به کاربر نمایش بدهیم . 

بنابراین در اینجا می توانیم حالت پیشرفته تری را به کادر پیغام خود بدهیم تا کاربر بهتر بتواند تصمیم بگیرد که آیا این تغییرات را ذخیره کند یا خیر .

آموزش امروز ما هم در اینجا به پایان رسید .

برای دانلود فایل نمونه این آموزش هم می توانید از طریق تکمیل اطلاعات کادر زیر اقدام نمایید .


پیغام مناسب قبل از ذخیره اطلاعات

 

آموزش اکسس بازدید : 1,351 views 14 ژانویه, 2020 ۴