انجمن تخصصی اکسس

جامع ترین انجمن تخصصی اکسس در خانه اکسس ایران

sara_p
sara_p
آفلاین
0

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

تشکر ها

پاسخ پذیرفته شده

korakamsina
korakamsina
آفلاین
سه شنبه 11 - آذر - 1393 11:26:50 - #لینک دائمی
0
با سلام

لطفا نمونه فایل پیوست را دانلود کنید
موفق باشید-آریان
پیوست ها:
پاسخ به درستی کمینه شد نمایش
پاسخ ها (18)
  • پاسخ پذیرفته شده

    دوشنبه 26 - آبان - 1393 11:46:49 - #لینک دائمی
    0
    سلام
    اصولا چون در اکسس از روش bound استفاده می شود به محض عبور از یک رکورد تمامی فیلدهای مرتبط با آن ذخیره می شوند .
    برای رسیدن به این هدف می توانید در محل های عبور از رکورد یعنی دکمه هایی مانند next record ، last record ، first record , previous record , new record , و همچنین به موقع خروج از فرم و هر فعالیتی که منجر به ذخیره رکورد می شود خط زیر را دوبار تکرار کرد :
    me.undo
    me.undo با اینکار تمامی فعالیت های کاربر روی آخرین رکورد حذف می گردد و کاربر تنها زمانی می تواند رکورد را ذخیره کند که دکمه ای با کد
    DoCmd.RunCommand acCmdSaveRecord را اجرا نماید تا اطلاعات رکورد جاری ذخیره گردد و undo بی تاثیر شود .
    البته قبل از undo کردن می توان با یک پیام چگونگی اجرای آن را نیز کنترل کرد .
    با سپاس
    کاویان
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    ptaher
    ptaher
    آفلاین
    دوشنبه 26 - آبان - 1393 16:02:35 - #لینک دائمی
    0
    سلام
    یه راه ساده تر اینه که یه فیلد بذارید توی جدولتون به نام مثلا IsDrafted که نوعش Yes/No باشه و بصورت پیش فرض هم Yes باشه یعنی تیک خورده باشه. (یا برعکسش مثلا IsSaved که بصورت پیش فرض تیک نخورده باشه یا همون No باشه).
    بعدش هر بار که کاربر کارش تموم میشه یه دکمه ی Save بذارید و یه کد پشتش بنویسید که اون مثلا IsSaved به Yes تغییر مقدار بده.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    دوشنبه 26 - آبان - 1393 16:59:05 - #لینک دائمی
    0
    سلام
    این هم تکنیک خوبیه . فقط باید یه راه حل برای عدم نمایش رکوردهای ذخیره نشده پیدا کنیم . یا اینکه اونها هنگام مرور رکوردها حذف کنیم . یا موقع ورود به فرم و یا خروج از فرم .
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    ptaher
    ptaher
    آفلاین
    سه شنبه 27 - آبان - 1393 08:41:59 - #لینک دائمی
    0
    سلام. من با روش خودم برات انجام دادم. فقط حتما باید Enable Content بزنی وقتی اکسس میاد بالا. چون از ماکرو استفاده کردم و کردی!
    یه کنترل CheckBox و یه لیبل به نام IsSaved گذاشتم. که میتونی خودت بعدا Visible شون رو به False ست کنی که موقع Load فرمت دیده نشن اصن. من اینکار و نکردم که ببینی چه اتفاقی افتاده.
    پیوست ها:
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    سه شنبه 27 - آبان - 1393 08:58:58 - #لینک دائمی
    0
    با سلام.خیلی ممنونم از پاسخ شما.
    فقط وقتی اکسس بالا میاد،چطوری Enable content رو بزنم! چون ماکرو ها رو قبلا فعال کردم.و هنوزم خودکار ثبت میشه.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    یکشنبه 02 - آذر - 1393 08:57:32 - #لینک دائمی
    0
    با سلام.میبخشید اقای کاویان ایا ممکنه در فایل ارسالی راهنمایی بفرمایید تا چگونه از درج خودکار جلوگیری شود.میخواستم بعد از زدن دکمه این پیغام نمایش داده شود."ایا ثبت شود"اگر پاسخ بلی بود ثبت شود در غیر این صورت ثبت نشود.فایل(2)2


    (خیلی وقت گذاشتم اما نشد،لطفا راهنمایی بفرمایید)

    با تشکر
    پیوست ها:
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    korakamsina
    korakamsina
    آفلاین
    چهارشنبه 05 - آذر - 1393 21:13:42 - #لینک دائمی
    0
    سلام
    من برای این کار شما از دو جدول استفاده می کنم
    جدول اول درج اطلاعات و جدول دوم هم ذخیره نهایی با استفاده از یک query اطلاعات جدول اول رو به جدول دوم با یک پرسش مثلا "آیا اطلاعاتت ذخیره گردد" انتقال می دهم در صورت بلی انتقال میابد و اطلاعات جدول اول پس از انتقال حذف می گردد
    موفق باشی
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    مهراني
    مهراني
    آفلاین
    پنج شنبه 06 - آذر - 1393 08:01:59 - #لینک دائمی
    0
    با سلام .
    براي شما فايل پيوست ميزارم اميدوارم مشكلتون حل بشه. در ضمن با دقت كردن روي فايل و اناليز ان يادگيري در شما ماندگار
    مي شود.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    پنج شنبه 06 - آذر - 1393 19:17:50 - #لینک دائمی
    0
    سلام
    ضمن تشکر از جناب مهرانی بابت پاسخ کاملشون که ماحصل گفتگو های پست های این تاپیک رو پیاده سازی کردن .
    از روش زیر هم میشه استفاده کرد . خوبی این روش این هست که برای تمامی فرمها می تونیم از همین سه خط استفاده کنیم .
    در رویداد before update فرم عبارت زیر را بنویسید :
    Me.Undo
    این عبارت باعث می شود که قبل از به روز رساندن همه چیز به حالت قبل برگردد .
    در رویداد on click دکمه ثبت نیز عبارات زیر را بنویسید :
    Me.BeforeUpdate = ""
    DoCmd.RunCommand acCmdSaveRecord
    Me.BeforeUpdate = "[Event Procedure]"

    این عبارات باعث می شود که رویداد قبلی غیرفعال شود و اطلاعات ذخیره و سپس آن رویداد فعال شود .
    فایل نمونه خودتان نیز به این چهار خط کد مجهز شده و آپلود شده است .
    با سپاس
    کاویان
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    یکشنبه 09 - آذر - 1393 07:31:49 - #لینک دائمی
    0
    با تشکر از اقای مهرانی و اقای کاویان.ممنون از پاسخ شما.
    میبخشید اقای کاویان وقتی اطلاعات را وارد میکنم اما ثبت نمیزنم ،دفعه بعد شماره ID یکی بیشتر از قبلی است.که برای رفع ان از اپند کوئری استفاده کردم.
    میخواستم بعد از زدن دکمه ثبت این پیغام نمایش داده شود "ایا ثبت صورت گیرد"اگر پاسخ" بلی" بود ثبت انجام شوددر غیر این صورت نه.خودم امتحان کردم اما باز ثبت شد.ممنون میشم راهنمایی بفرماییدتا این مورد کامل شود.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    korakamsina
    korakamsina
    آفلاین
    دوشنبه 10 - آذر - 1393 09:58:11 - #لینک دائمی
    0
    سلام
    من کدی رو که مهندس کاویان ارائه داده بودند در برنامه خودم اجرا کردم و جواب گرفتم البته وقتی که فرم رو می خواهم ببندم دستور me.undo رو در رویداد on close فرم اجرا میکنم اگر این کار رو انجام بدید رکورد ذخیره نمیشه مگر اینکه دستور ذخیره رو صادر کرده باشید

    و یا اینکه اگر دستور برای ذخیره کردن نه است کد me.undo رو در رویداد beforinsert update فرمتون تایپ کنید

    موفق باشید
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    سه شنبه 11 - آذر - 1393 04:59:03 - #لینک دائمی
    0
    با سلام.وقتی که اطلاعات را وارد میکنم و فرم را میبندم اطلاعات ثبت نمیشود.در کل اطلاعات وقتی ثبت میشود که دکمه ثبت زده شود.میبخشید دوباره سوالم را تکرار میکنم:
    میخواهم وقتی دکمه ثبت را زدم یک پیغام نمایش داده شود :ایا ثبت شود" اگر "بلی" بود ثبت شود و "خیر" ثبت نشود.اگر این کار امکان دارد ممنون میشوم راهنمایی بفرمایید.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    korakamsina
    korakamsina
    آفلاین
    سه شنبه 11 - آذر - 1393 08:03:43 - #لینک دائمی
    0
    سلام
    یک نمونه فایل برات گذاشتم امیدوارم بدردت بخوره
    موفق باشی
    پیوست ها:
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    سه شنبه 11 - آذر - 1393 08:26:13 - #لینک دائمی
    0
    با سلام.خیلی ممنون از پاسخ شما.
    اما هدف درج غیرخودکار اطلاعات تکست باکسهای ست که bound هستند.ایا امکان دارد همین پیغامی که شما لطف کردید انجام دادید در همان کدهای ارائه شده توسط اقای کاویان منظور شود؟البته تکست باکسها bound هستند.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    چهارشنبه 12 - آذر - 1393 10:27:04 - #لینک دائمی
    0
    با سلام خیلی ممنون آقای آریان.از راهنمایی شما و دیگر بزرگواران نهایت تشکر رو دارم.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    korakamsina
    korakamsina
    آفلاین
    پنج شنبه 13 - آذر - 1393 16:19:34 - #لینک دائمی
    0
    سلام
    خواهش می کنم
    موفق باشید.
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    پنج شنبه 13 - آذر - 1393 23:47:14 - #لینک دائمی
    0
    درود بر شما
    تشکر ها
    پاسخ به درستی کمینه شد نمایش
  • پاسخ پذیرفته شده

    sara_p
    sara_p
    آفلاین
    سه شنبه 27 - آبان - 1393 04:52:49 - #لینک دائمی
    0
    با سلام.خیلی ممنون از پاسخ شما.کاری رو که فرمودید انجام دادم.اما باز خودکار درج میشود.ممنون میشم در فایل ارسالی راهنمایی بفرمایید.(me.undo)
    پیوست ها:
    پاسخ به درستی کمینه شد نمایش
پاسخ شما

کدام را میپسندید؟

مایکروسافت اکسس 64 بیت - 66.7%
مایکروسافت اکسس 32 بیت - 16.7%
مایکروسافت اکسس 2007 - 16.7%

كل آرا: 6
اين نظرسنجي به پايان رسيده است on: 19 مارس 2017 - 00:00

عضویت در خبرنامه

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