PDA

View Full Version : پرسش از کاربر جهت ذخیره اطلاعات



metal13
پنج شنبه 05 خرداد 1390, 16:06 عصر
سلام
سوالی که داشتم اینکه چطوری فرمی را طراحی کنم که از کاربر جهت ذخیره اطلاعات سوال نه (یعنی وقتی رو یک دکمه کلیک کنه ازش سوال کنه که می خواد اطلاعات رو ذخیره کنه یا نه) و سوال دیگه ای که داشتم اینکه چطوری میشه که وقتی رو یک دکمه کلیک کنه ازش سوال کنه که میخواد اطلاعات را حذف کنه یا نه.
مرسی

hasanr
پنج شنبه 05 خرداد 1390, 18:38 عصر
اگه نمونه بزارین راحتتر میشه جواب داد اما روند منطقی اینه :

1 - بوسیله یک مسیج باکس از کاربر بپرس که میخاد اطلاعات رو ذخیره کنه یا نه
اگر پاسخ مثبت بود اطلاعات رو Save کن و در غیر اینصورت undo کن

2 - بوسیله یک مسیج باکس از کاربر بپرس که میخاد اطلاعات رو حذف کنه یا نه
اگر پاسخ مثبت بود اطلاعات رو حذف کن

چنین مواردی بارها توی فروم پاسخ داده شده و یا اینکه در نمونه هایی که توسط دوستان قرار داده شده موجوده ، با صرف وقت و جستجو سریعتر به پاسخ میرسین

metal13
پنج شنبه 05 خرداد 1390, 19:25 عصر
اگه نمونه بزارین راحتتر میشه جواب داد اما روند منطقی اینه :

1 - بوسیله یک مسیج باکس از کاربر بپرس که میخاد اطلاعات رو ذخیره کنه یا نه
اگر پاسخ مثبت بود اطلاعات رو Save کن و در غیر اینصورت undo کن

2 - بوسیله یک مسیج باکس از کاربر بپرس که میخاد اطلاعات رو حذف کنه یا نه
اگر پاسخ مثبت بود اطلاعات رو حذف کن

چنین مواردی بارها توی فروم پاسخ داده شده و یا اینکه در نمونه هایی که توسط دوستان قرار داده شده موجوده ، با صرف وقت و جستجو سریعتر به پاسخ میرسین

میشه لطف کنید یک نمونه هم بذارید؟؟؟ من هر چی سرچ کردم چیزی پیدا نکردم.

mahmoot
پنج شنبه 05 خرداد 1390, 20:00 عصر
تو باید یک فرم جدید ایجاد کنی و تو اونجا از کاربر سوالتو بپرسی. حالا چه جوری؟این کار رو یا با استفاده از ارسال پارامتر به فرم مربوط به کاربر با استاده از متغیر های مربوط یا با استفاده از data procedure مربوط به آنها که در شرایط داشتن database باید تمام غالب روال خودتو بعد از استفاده از قرار دادن این کدها و ذخیره در database و در نهایت گرفتن جواب از کاربر که آن هم با استاده از چند تابع امکان پذیر می شود .اگر ت.ضیحات بیشتری خواستی بیا پیشم تا کدا رو هم بهت بدم.

metal13
پنج شنبه 05 خرداد 1390, 22:14 عصر
لطفا نمونه بذارید. ممنون

hasanr
پنج شنبه 05 خرداد 1390, 22:18 عصر
لطفا نمونه ناقص رو بزارین تا بنده یا سایر دوستان تکمیلش کنیم
انصافا تهیه یک نمونه شامل جدول و فرم و ... حداقل برای من یکی ، وقت گیره بنابر این کدها رو می نویسم

کدهای دکمه مربوط به حذف اطلاعات :


Private Sub CmdDelRec_Click()
DoCmd.SetWarnings (warningoff)
If MsgBox("are you sure", vbYesNo + vbDefaultButton2 + vbQuestion, "hoshdar") = vbYes Then
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
DoCmd.SetWarnings (warningon)
End If
End Sub


کدهای دکمه مربوط به ذخیره اطلاعات :


Private Sub CmdSaveRec_Click()
If MsgBox("are you sure", vbYesNo + vbDefaultButton1 + vbQuestion, "hoshdar") = vbYes Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , ac
else
Me.undo
End If
End Sub

metal13
پنج شنبه 05 خرداد 1390, 22:39 عصر
ممنون از کدهایی که گذاشتی. ولی هیچکدوم کار نکردن.

This error occurs when an event has failed to run because Microsoft Office Access cannot evaluate the location of the logic for the event. For example, if the OnOpen property of a form is set to =[Field], this error occurs because Access expects a macro or event name to run when the event is fired.

hasanr
جمعه 06 خرداد 1390, 01:39 صبح
لطفا نمونه بزارین تا براتون درستش کنم چون این کدها رو از برنامه در حال استفاده خودم برداشتم و درست کار میکنن
به نظرم شما کد بنده رو کامل در برنامتون کپی کردین و نام دکمه های خودتون رو با نام دکمه های بنده عوض نکردین . نام دکمه های خودتون رو به جای این نامها بگذارین CmdDelRec و CmdSaveRec

navardi
شنبه 07 خرداد 1390, 08:16 صبح
با تشكر از لطفتون
من گذاشتم run_ time error 424 مي دهد و object required ميدهد لطفا راهنمائي كنيد

michkadol
شنبه 07 خرداد 1390, 09:34 صبح
خوش تیپ تا نمونه نزاری نمیشه کمکت کرد. چون باید رو نمونه ات ببینیم مشکلت کجاست.
حتما نیازی نیست نمونه طراحی شده ات رو بزاری
یک جدول و یک فرم طراحی کن این میشه نمونه !!!!!! اکی!!!

انگوران
شنبه 07 خرداد 1390, 10:10 صبح
اين نمونه رو ببينيد.

Fatollah_ghazi
یک شنبه 08 خرداد 1390, 14:23 عصر
سلام در رويداد Befor Update فرمت اي كد رو بنويس

If Msgbox( " پيغام مورد نظر ",vbquestion+vbmsgboxright+vbyesno," عنوان مورد نظر " ) =vbno then
Cancel=true
End if

metal13
دوشنبه 09 خرداد 1390, 17:26 عصر
اين نمونه رو ببينيد.

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

انگوران
سه شنبه 10 خرداد 1390, 06:22 صبح
سلام دوست عزيز، برنامه فوق كامل نيست فقط يه نمونه بود تا با كدش آشنا بشين در صورت نياز ميشه با كدهاي ديگر موارد ديگر رو هم كنترل كنين. در ضمن در صورتي كه فرم به جداول باند باشه من از دكمه استفاده نمي كنم و در صورت نياز از كدي كه آقاي قاضي گذاشتن استفاده مي كنم.

abdoreza57
سه شنبه 10 خرداد 1390, 19:35 عصر
ضمن تشكر از استاد عزيزم انگوران گل
دوست گرامي پيشنهاد مي كنم كتاب اكسس اقاي انگوران را حتما تهيه كن و بخون واقعا كارگشاست
علي ايحال با اجازه آقاي انگوران نمونه تو اصلاح مي كنم

Fatollah_ghazi
پنج شنبه 12 خرداد 1390, 18:37 عصر
با سلام
البته بنده هم به اين نكته در پاسخ خودم اشاره كردم كه متاسفانه مورد توجه قرار نگرفت .
بهر حال مهم رفع مشكل دوستان بود كه خداروشكر حل شد.

مهدی قربانی
یک شنبه 15 خرداد 1390, 17:47 عصر
سلام
دوست گرامی چنانچه شما تمایل داشته باشید در زمان خروج از فرم ذخیره شدن اطلاعات وارده تائید یا رد بشه برای این حالت بهترین راه حل استفاده از یک فرم Unbound و رکوردست هست چرا که در فرمهای Bound شده به جداول شما بمحض ترک رکورد جاری عملاً تغییرات اون رکورد رو بدون هیچ سئوالی از طرف برنامه ذخیره کردید و بکارگیری پرسش از کاربر در خصوص ذخیره یا عدم ذخیره دیتای ثبت شده منطقی بنظر نمیرسه لذا اگر اصرار بر طرح سئوال از کاربر دارید بهترین گزینه همون روشیه که خدمتتون عرض کردم در این روش شما یک فرم با تکست باکسهایی مشابه فیلدهای جدول ایجاد کرده وبا بهره گیری از کدهای VBA و شیئ رکوردست بعد ار سئوال از کاربر و تائید رکوردها رو به جدول مورد نظر اضافه می کنید در این راستا نمونه های مختلفی در بخش موجوده اما اگر برای شما پرسش از کاربر برای ثبت هر رکورد کاربرد داشته باشه می تونید از روش ارائه شده توسط دوستان و یا این پست (http://barnamenevis.org/showthread.php?87658-%D9%86%D9%85%D9%88%D9%86%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C-%D9%88-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C-VBA&p=433632&viewfull=1#post433632) هم کمک بگیرید .