PDA

View Full Version : سوال: ايجاد فرم تاييد براي حذف ركورد



mahdytaherian
سه شنبه 14 آذر 1391, 23:27 عصر
با سلام
مي خواهم در فرمم دكمه اي براي حذف يك ركورد بزارم اما نه از طريق ويزارد باتتن ، بازدن دكمه فرمي جهت تائيد
حذف يا انصرف باز شود . (البته جستجو كردم ) لطفا نمونه زيرا برسي كنيد

با تشكر

Abbas Amiri
سه شنبه 14 آذر 1391, 23:39 عصر
فایل شما اصلاح شد. باید ملاحظاتی هم درنظر گرفته شود مثلا در زمان بازکردن فرم حذف رکورد جدید نباشد یعنی ID نول نباشد

mahdytaherian
چهارشنبه 15 آذر 1391, 20:54 عصر
با تشكر

من هم با يك روش ديگه به جواب سوالم رسيدم كه شايد براي كساني كه زياد كد نويسي بلد نيستن

جالب باشه ، براي دوستان ميذارم انشاا... كه مفيد باشه .

com12151337
دوشنبه 20 آذر 1391, 15:28 عصر
دوستان سلام
جناب امیری آیا در یک برنامه نه نسبتا" بزرگ اگر برای هر حذفی که بخواهیم انجام دهیم یک فرم درست کنیم آیا حجم برنامه بیشتر نمی شود ؟

Abbas Amiri
دوشنبه 20 آذر 1391, 18:49 عصر
دوستان سلام
جناب امیری آیا در یک برنامه نه نسبتا" بزرگ اگر برای هر حذفی که بخواهیم انجام دهیم یک فرم درست کنیم آیا حجم برنامه بیشتر نمی شود ؟
سلام
احتیاجی به فرمهای متعدد نیست . میتوانید نام فرمی که میخواهید رکورد آن حذف شود و شرط حذف را بعنوان خصوصیت OpenArgs در دستور بازکردن فرم حذف درج کنید و در فرم حذف با توجه به این مقادیر فرمان حذف را صادر کنید

Abbas Amiri
دوشنبه 20 آذر 1391, 22:26 عصر
با سلام مجدد
ازآنجا که احتمالا شما وبعضی دوستان دیگر متوجه منظور بنده نشده اید و باتوجه به نقش مهم خصوصیت OpenArgs فرمها وگزارشات ، در فایل فوق تغییرات جهت ایجاد یک فرم پویا برای استفاده پیغام حذف تمامی فرمها اعمال گردید.
و برای دوستان مبتدی آموزنده میباشد.

com12151337
سه شنبه 21 آذر 1391, 09:20 صبح
جناب امیری سلام
اگر درست متوجه شده با شم با ید 2 یا چند فرم داشته باشیم و هرکدام را با کلید درخواست حذف تعریف کنیم بنده این کار کردم ولی متاسفانه ایراد میگیرد

com12151337
سه شنبه 21 آذر 1391, 09:25 صبح
جناب امیری سلام
لطفا" این فایل را ملاحظه بفرمایید اگر مشکلی دارد بفرمایید که استفاده کنیم

Abbas Amiri
سه شنبه 21 آذر 1391, 19:23 عصر
جناب امیری سلام
لطفا" این فایل را ملاحظه بفرمایید اگر مشکلی دارد بفرمایید که استفاده کنیم
با سلام شما هیچ توجهی به فایل وعرایض بنده نکرده بودید و فقط آنچه به ذهنتان رسید بود را انجام داده بودید . فایل زیر راببینید:

foo0z0ool
چهارشنبه 22 آذر 1391, 11:10 صبح
من نمونه جناب آقای com12151337 (http://barnamenevis.org/member.php?222551-com12151337) رو دیدم ایرادش اینه که وقتی حذف رو میزنی اگه 20 تا فرم هم باز باشه از هر 20 تا فرم رکورد جاری رو حذف میکنه.

اما در نمونه آخر جناب آقای امیری پست شماره 9 این روش خوب عمل میکنه

اما اگه 2 فرم داشته باشیم که بر اساس ID باشند و هر 2 تافرم رو با هم باز کنیم برنامه دچار مشکل میشه و ایرور میگیره.

من با 4 تا فرم تست کردم ایراد میگرفت.

من از این روش استفاده میکنم فارسی نیست اما خوبه




Private Sub Command85_Click() On Error GoTo Err_Command85_Click

DoCmd.SetWarnings False

If MsgBox(" آيا مي خواهيد اين رکورد حذف شود؟ ", vbYesNo + vbCritical + vbDefaultButton2, "حذف ") = vbNo Then Exit Sub Else

DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdDeleteRecord

End If
Exit_Command85_Click:
Exit Sub
Err_Command85_Click:
MsgBox "موردي براي حذف موجود نيست"
Resume Exit_Command85_Click

End Sub

Abbas Amiri
چهارشنبه 22 آذر 1391, 17:35 عصر
اما اگه 2 فرم داشته باشیم که بر اساس ID باشند و هر 2 تافرم رو با هم باز کنیم برنامه دچار مشکل میشه و ایرور میگیره.سلام
امکان باز بودن همزمان دوفرم وجود ندارد چون "فرم حذف" در حالت acDialog یا همان Modal باز میشود. ودر صورت بروز این حالت اطلاعات آخرین فرم حذف میشود.