PDA

View Full Version : سوال: امکان ورود داده در فرمی که اجازه ادیت ندارد



wolfstander
شنبه 07 اسفند 1389, 11:33 صبح
سلام به همه دوستان
در برنامه ای پیوست شده، فرمی دارم که میخوام توش یه دکمه بذارم که وقتی اون دکمه زده شد، به کاربر اجازه ادیت بده، در غیر اینصورت کاربر فقط بتونه دیتا رو ببینه
همون طوری که میبینید، یک لیست باکس دارم که توش کاربر باید بتونه توی یک تکست باکس، فامیلی رو جستجو کنه، اگه پیدا کرد، روی لیست باکس کلیک کنه و بعدش توسط اون دکمه اون رو ادیت کنه
ولی وقتی فرم رو به این صورت که قابل ادیت کردن نباشه باز میکنم (اونت on open و این کد AllowEdits = False)
اجازه نمیده که کاربر حتی چیزی رو جهت جستجو وارد کنه
چه راه حلی میتونم بذارم برای این کار؟
البته یه راه حل اینه که تک تک فیلدها رو اول لاک کنم، بعدش با زدن اون دکمه هه، از لاک دربیاره
ولی نمیخوام این کار رو کنم، به دلایل مختلف ، یکیش اینکه 28 تا فیلد فقط تو یه فرمه
:لبخند:
میخوام بدونم که آیا دوستان دیگه برای این مساله راه حلی دارند؟

و مساله دیگه ای که هست، اینه که نمیخوام فرم دیگه ای باز بشه برای این کار
چون اونجوری هی فرم در فرم که میشه ؛ هیچ
پیدا کردن اشکال و ایراد و این دردسر ها هم توش زیاد میشه
با تشکر از همه دوستان

انگوران
شنبه 07 اسفند 1389, 12:01 عصر
دوست عزيز، من از سابفرم استفاده مي كنم و Enabled سابفرم رو برابر False قرار ميدم و با دكمه Enabled اونو برابر True مي كنم.

wolfstander
شنبه 07 اسفند 1389, 12:27 عصر
سلام
این کار یه جورایی شدنی نیست
چون هدف من اینه که وقتی روی رکورد خاصی قرار گرفت، و کاربر خواست اون رو ادیت کنه، کلیه رکورد ها رو توی یک جدول دیگه ذخیره کنم
همین الان هم فرم برنامه ام، توش سه تا ساب فرم داره
با توجه به اینکه میخوام جستجو هم داشته باشه، قاراشمیشی شده که نگو
نکته جالب اینجاست که دیدن مفته، میگن هر تغییری که در هر فیلدی هر کسی داد، یه جای دیگه ذخیره بشه
یکی نیست بگه اخه آدم عاقل، عقل رو اختراع کردن برای همین موضوع دیگه
:لبخندساده:

stabesh
شنبه 07 اسفند 1389, 14:54 عصر
با سلام
جسارت نباشه
اگه زیر فرماتون زیاده چرا از Tab Control استفاده نمیکنید

wolfstander
شنبه 07 اسفند 1389, 15:43 عصر
سلام
بزرگوارید شما
ولی شما باید با کاربرهایی که من باهاشون سر و کله میزنم آشنا بشید تا بفهمید که قضیه چیه و چرا من مجبورم که از زیر فرم استفاده کنم
مشکل تو برنامه نیست
ولی کسی که مثلا گذاشتن هماهنگ کنه برنامه رو، فکر میکنه که تو وزارت اطلاعات داره کار میکنه
میگه هرکی هر تغییری که میده، من ببینم
و این قضیه با کلی قضیه دیگه قاطی شده و من مجبورم که از ساب فرم استفاده کنم
اگه برم سراغ TAB ، اونوقت باید حداقل 48 ساعت توضیح بدم که چرا Tab Control چپ به راسته و از راست به چپ نیست
:لبخند:
پس فقط میمونه همین راه حل که اگه اینم نشه، باید به روش زورمال متوسل بشم
با تشکر از همه

stabesh
شنبه 07 اسفند 1389, 18:15 عصر
برای راست به چپ کردن Tab خیلی گشتم تنها راهش space برای چپ ترین tab هست این قدر که بقیه رو هلشون بده به سمت راست اگه راه درستشو یه روزی پیدا کردم حتما تو انجمن میذارمش
تنها راهی که به نظرم میاد اینه که اطلاعات رو در زیر فرم میشه گذاشت مثل روش زیر اگر زیر فرمها هم زیاده میشه گذاشتشون در tab

ARData
یک شنبه 08 اسفند 1389, 08:59 صبح
توي اين فرم دکمه اي گذاشته ام که با زدن آن اجازه اديت براي کاربر داده مي شود .

wolfstander
یک شنبه 08 اسفند 1389, 09:53 صبح
توي اين فرم دکمه اي گذاشته ام که با زدن آن اجازه اديت براي کاربر داده مي شود .
با تشکر از شما دوست عزیز
ولی این کاری که شما کردید رو خودم هم کرده ام
و اصلا ً سوالم هم همین بود ای عزیز دل برادر

alirezabahrami
یک شنبه 08 اسفند 1389, 15:30 عصر
سلام به همه دوستان
در برنامه ای پیوست شده، فرمی دارم که میخوام توش یه دکمه بذارم که وقتی اون دکمه زده شد، به کاربر اجازه ادیت بده، در غیر اینصورت کاربر فقط بتونه دیتا رو ببینه
همون طوری که میبینید، یک لیست باکس دارم که توش کاربر باید بتونه توی یک تکست باکس، فامیلی رو جستجو کنه، اگه پیدا کرد، روی لیست باکس کلیک کنه و بعدش توسط اون دکمه اون رو ادیت کنه
ولی وقتی فرم رو به این صورت که قابل ادیت کردن نباشه باز میکنم (اونت on open و این کد AllowEdits = False)
اجازه نمیده که کاربر حتی چیزی رو جهت جستجو وارد کنه
چه راه حلی میتونم بذارم برای این کار؟
البته یه راه حل اینه که تک تک فیلدها رو اول لاک کنم، بعدش با زدن اون دکمه هه، از لاک دربیاره
ولی نمیخوام این کار رو کنم، به دلایل مختلف ، یکیش اینکه 28 تا فیلد فقط تو یه فرمه
:لبخند:
میخوام بدونم که آیا دوستان دیگه برای این مساله راه حلی دارند؟

و مساله دیگه ای که هست، اینه که نمیخوام فرم دیگه ای باز بشه برای این کار
چون اونجوری هی فرم در فرم که میشه ؛ هیچ
پیدا کردن اشکال و ایراد و این دردسر ها هم توش زیاد میشه
با تشکر از همه دوستان
سلام
در رخداد GotFocus تکست باکس جستجو و لیست باکس کد AllowEdits = True و در رخداد LostFocus این دو کنترل، کد AllowEdits = false وارد کن !
موفق باشید

wolfstander
دوشنبه 09 اسفند 1389, 07:04 صبح
سلام
:تشویق:
تشکر فراوان
من هزار بار میگم برنامه نویسی 1 کدنویسیه و 999 ابتکار و عقله
شما میگین نه
راه حل دوست خوبم alirezabahrami دقیقا مشکل رو به صورت ابتکاری حل کرده
کاربر میتونه جستجو کنه
انتخاب کنه
ولی برای ادیت کردن، حتما ً باید دکمه ای رو که به فرم اجازه ادیت رو میده رو بزنه تا جواب بگیره
و این خیلی خوبه
با تشکر از شما

alirezabahrami
دوشنبه 09 اسفند 1389, 08:12 صبح
سلام
:تشویق:
تشکر فراوان
من هزار بار میگم برنامه نویسی 1 کدنویسیه و 999 ابتکار و عقله
شما میگین نه
راه حل دوست خوبم alirezabahrami دقیقا مشکل رو به صورت ابتکاری حل کرده
کاربر میتونه جستجو کنه
انتخاب کنه
ولی برای ادیت کردن، حتما ً باید دکمه ای رو که به فرم اجازه ادیت رو میده رو بزنه تا جواب بگیره
و این خیلی خوبه
با تشکر از شما
سلام جناب wolfstander!
با عرض پوزش ، من در پاسخی که داده بودم حواسم به ایجاد دکمه ای برای ادیت کردن نبود ؛ در نمونه ارسالی خودتان این دکمه با دکمه مکمل آن یعنی دکمه ذخیره تغییرات ایجاد نمودم .
موفق باشید

wolfstander
دوشنبه 09 اسفند 1389, 09:34 صبح
سلام
با تشکر از شما و دقت شما
دکمه ای که برای ادیت باشه، مشکل نبود
و سوال من هم درمورد اون دکمه نبود
چون بالاخره باید دونست که ایجاد اون دکمه، راحت ترین کار تو این مساله بوده
:لبخند:
مهم بخش جستجو بوده که شما لطف کرده بودید
با تشکر فراوان از شما

alirezabahrami
دوشنبه 09 اسفند 1389, 14:14 عصر
راستی جناب wolfstander عنایت داشته باش که استفاده از کلمات کلیدی اکسس بعنوان نام فیلد ایجاد اشکال می نماید مثل کلمه Name که بعنوان فیلد نام شخص از آن استفاده کرده اید .و اگر ملاحظه کرده باشید بنده در نمونه اصلاحی آن را بهName 1 تغییر دادم .و برای امتحان اگر در کدهای فوق از همان Name استفاده کنید مشاهده می فرمائید که بر روی کلمه فوق ایراد گرفته میشود .
موفق باشید

wolfstander
دوشنبه 09 اسفند 1389, 14:33 عصر
سلام
با تشکر از شما بابت تذکری که دادی
این فایل فقط یه صورت نمونه بود و در برنامه اصلی، من اسامی را با اصولی شبیه این مینویسیم
Personnle_Name
Personnel_Family
و دلیلش هم این است که چون از روابط بین جداول خیلی خیلی استفاده میکنم و معمولاً بااستفاده از lookup این کار را در همه جداولم دارم، در نتیجه اسم جدول و بعد هم فیلد را مینویسم که به دلیل عدم دقت، برنامه را بر باد فنا ندهم
:لبخند: