نمایش نتایج 1 تا 13 از 13

نام تاپیک: مشکل جدی با اکسس و اعمال تغییرات

  1. #1

    مشکل جدی با اکسس و اعمال تغییرات

    سلام
    یه برنامه نوشتم با دیتابیس اکسس . کاربر می تونه یه اطلاعاتی رو تو dbgrid بینه و اگه خواست تغییر بده.
    حالا من می خوام اگه کاربر button اعمال تغییرات رو فشار داد تغییرات اعمال بشند . در حالی که وقتی میاد یه چیزی رو عوض می کنه و میره رو رکورد بعدی تغییرات بدون نیاز به post کردن اعمال می شند .
    چیکار کنم که اگه کاربر اعمال تغییرات رو نزد تغییرات اعمال نشن ؟

  2. #2
    کاربر دائمی آواتار MNosouhi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    883
    از رویداد BeforPost استفاده کن.

  3. #3
    می تونی از CatchedUpdate استفاده کنی. اینجوری تا موقعی که ApplyUpdate نکنی رکوردها ثبت نمی شن
    You never know what you can do until you try

  4. #4
    شرمنده ولی منظور هیچکدومتون رو متوجه نشدم . اگه ممکنه یه خورده بیشتر توضیح بدین که چیکار کنم .

  5. #5
    از چه کامپوننتی استفاده می کنی؟ TTable?
    You never know what you can do until you try

  6. #6
    ببین ttable یه خاصیت داره بنام Catchedupdate. اونو True کن
    بعد تو onclick مربوط به button بنویس

    Table1.ApplyUpdates;

    اینطوری در واقع همه کارا تو حافظه انجام می شه و وقتی ApplyUpdate می کنی رو DB اعمال میشه
    You never know what you can do until you try

  7. #7
    نه با AdoTable کار می کنم .

  8. #8
    راه حلی وجود نداره ؟

  9. #9
    خاصیت LockType را روی ltBatchOptimistic تنظیم کنید و برای ذخیره تغییرات از متد UpdateBatch استفاده کنید.

  10. #10
    میشه یه سطر کد بنویسید که چه جوری ؟ یعنی نباید از post استفاده کنم ؟

  11. #11
    کاربر دائمی آواتار MNosouhi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    883
    دوست عزیز این که دیگه تاپیک زدن نمی خواست .تمامی راههایی که دوستان گفتن درست ، اما حتی اگه در مورد اونها هم اطلاعاتی نداشتی خودت می تونستی این کار رو انجام بدی ، یه متغیر عمومی تعریف کن با نام Letpost :
    var
    Form1: TForm1;
    LetPost:Boolean;
    و به اون مقدار پیش فرض False بده :
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    LetPost:=false;
    end;
    حالا در رویداد BeforPost این کد رو بنویس:
    If LetPost=False Then
    AdoTable1.Cancel;
    حالا فرضا یه دکمه داری که با کلیک بر اون میخای تغییرات ذخیره بشه:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    LetPost:=true;
    AdoTable1.post;
    LetPost:=false;
    end;

  12. #12
    أخه پسر خوب حالا چرا دعوا می کنید/از راهنمائیتون ممنونم .روشی رو که گفتید امتحان می کنم . شرمنده اگه ناراحتتون کردم . مطمئن باشین اگه خودم می تونستم این کار رو انجام بدم وقت شما را نمی گرفتم .
    آخرین ویرایش به وسیله newdesign : چهارشنبه 25 آبان 1384 در 17:42 عصر

  13. #13
    دوست عزیز این که دیگه تاپیک زدن نمی خواست .تمامی راههایی که دوستان گفتن درست ، اما حتی اگه در مورد اونها هم اطلاعاتی نداشتی خودت می تونستی این کار رو انجام بدی ، یه متغیر عمومی تعریف کن با نام Letpost :

    var
    Form1: TForm1;
    LetPost:Boolean;
    و به اون مقدار پیش فرض False بده :

    procedure TForm1.FormCreate(Sender: TObject);
    begin
    LetPost:=false;
    end;
    حالا در رویداد BeforPost این کد رو بنویس:

    If LetPost=False Then
    AdoTable1.Cancel;
    ایشون می خوان تمام تغییرات یکجا با استفاده از دکمه ایی که ایجاد کردند، بر روی بانک اعمال بشه، اما با روش شما بعد از تغییر رکورد جاری، درصورتی که LetPost := True نباشه، کل تغییرات کاربر بر روی آن رکورد از بین میره؛ به عبارت دیگه روش شما امکان تغییر رکوردها را از کاربر می گیره و مربوط به این بحث نمیشه.

تاپیک های مشابه

  1. تغییر ارتفاع lineبا تغییر ارتفاع Textbox در گزارش
    نوشته شده توسط payam59 در بخش Access
    پاسخ: 22
    آخرین پست: یک شنبه 03 شهریور 1387, 15:41 عصر
  2. تغییر اندازه ارتفاع QRShape با تغییر ارتفاع DetailBand
    نوشته شده توسط mojtaba_z در بخش برنامه نویسی در Delphi
    پاسخ: 3
    آخرین پست: پنج شنبه 07 تیر 1386, 07:49 صبح
  3. تغییر Toolbar با تغییر Thems ویندوز XP
    نوشته شده توسط na3er-faraji در بخش VB.NET
    پاسخ: 2
    آخرین پست: پنج شنبه 06 مهر 1385, 12:08 عصر
  4. غیر قابل تغییر کردن فرم about تغییر desktop تو vb
    نوشته شده توسط Payman62 در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: یک شنبه 31 اردیبهشت 1385, 11:12 صبح
  5. تغییر در PHPbb (تغییرات خیلی کلی)
    نوشته شده توسط nasr در بخش PHP
    پاسخ: 4
    آخرین پست: جمعه 05 فروردین 1384, 12:06 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •