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

نام تاپیک: چگونگی دسترسی به مقدار یک فیلد سطر قبلی در DBGrid

  1. #1
    کاربر دائمی آواتار rezamahdizadeh
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    345

    چگونگی دسترسی به مقدار یک فیلد سطر قبلی در DBGrid

    چگونه می شود به مقدار فیلد خاصی ار سطر بالای سطر جاری در DBGrid دسترسی داشت؟ مثلا در شکل ضمیمه شده مطابق شکل مقدار فیلد Department سطر بالای سطر جاری مقدار Sales and Marketing را می خواهیم
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 14.jpg‏ (39.6 کیلوبایت, 47 دیدار)
    آخرین ویرایش به وسیله rezamahdizadeh : دوشنبه 16 اردیبهشت 1387 در 11:58 صبح

  2. #2
    کاربر دائمی آواتار SYNDROME
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    تهران
    پست
    2,814

    با سلام

    1-می توانید یک Prio بزنید و بعد از خواندن مقدار مورد نظر برگردید به پایین.
    2-دقیقاً یک ADO مانند ADO فعلی بسازید و سپس

    ADO_Te,p.Recno := ADO.RecNo;
    ADO_Temp.Prior;

    به مقادیر رکورد قبل دسترسی پیدا کنید.
    2-رورش قبل را می توانید بر اساس فیلد کلید هم انجام دهید.
    موفق باشید

  3. #3
    کاربر دائمی آواتار rezamahdizadeh
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    345
    آیا این روش سربار زیادی ندارد؟

  4. #4
    کاربر دائمی آواتار SYNDROME
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    تهران
    پست
    2,814

    با سلام

    نقل قول نوشته شده توسط rezamahdizadeh مشاهده تاپیک
    آیا این روش سربار زیادی ندارد؟
    روش اول که خیلی ساده است.
    من خودم برای اینکه کاربر حرکت کرسر را نبیند از روش 2 یا 3 استفاده می کنم و فکر نمی کنم مشکلی را ایجاد کند.
    موفق باشید

  5. #5
    کاربر دائمی آواتار rezamahdizadeh
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    345
    نقل قول نوشته شده توسط SYNDROME مشاهده تاپیک
    روش اول که خیلی ساده است.
    من خودم برای اینکه کاربر حرکت کرسر را نبیند از روش 2 یا 3 استفاده می کنم و فکر نمی کنم مشکلی را ایجاد کند.
    موفق باشید
    بیشتر منظورم این بود اگر تعداد رکوردها زیاد باشد آیا دستور AdoTemp:=Ado سربار زیادی ایجاد نمی کند من دقیقا نمی دانم RecNo چگونه تولید و به چی assign می شود؟ آیا دوباره open کردیم یا Active:=False سپس True کردیم یا Requery یا Refresh کردیم آیا دوباره تولید می شود؟ به چه صورت تولید و مقدار دهی می شود اگر Sort By زبان SQL را تغییر دهیم؟
    در مورد آنهایی که Datasource آنها در قسمت Client ایجاد می شود مثل MemTable یا ClientDataSet چطور؟

  6. #6
    کاربر دائمی آواتار babak_delphi
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    آستارا
    پست
    634
    RecNo به شماره رکورد جاری در Query (نه در جدول) اشاره میکند
    چون با دستور Open اشاره گر به اولین رکورد می رود ، RecNo مقدار 0 یعنی رکورد شماره 0 را بر می گرداند

  7. #7
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    توی loop که نمیخوای این کار رو بکنی ؟ اگر نه :

    به نظرم بهتره متد DisableControls رو Call کنی . بعد Prior و بعد از اینکه مقدارت رو خوندی Next و آخر سر هم EnableControls .

    در ضمن اگر دقیقا بگی هدف از این کار چیه شاید راه بهتر و درست تری هم باشه .

  8. #8
    کاربر دائمی آواتار SYNDROME
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    تهران
    پست
    2,814

    با سلام

    نقل قول نوشته شده توسط babak_delphi مشاهده تاپیک
    RecNo به شماره رکورد جاری در Query (نه در جدول) اشاره میکند
    چون با دستور Open اشاره گر به اولین رکورد می رود ، RecNo مقدار 0 یعنی رکورد شماره 0 را بر می گرداند
    دوست عزیز RecNo شماره رکورد را در DataSet بر می گرداند و زمانی که شما دستور Open را اجرا می کند در رکورد اول قرار گرفته و مقدار 1 را بر می گرداند.
    موفق باشید

  9. #9
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    نقل قول نوشته شده توسط SYNDROME مشاهده تاپیک
    1-می توانید یک Prio بزنید و بعد از خواندن مقدار مورد نظر برگردید به پایین.
    2-دقیقاً یک ADO مانند ADO فعلی بسازید و سپس

    ADO_Te,p.Recno := ADO.RecNo;
    ADO_Temp.Prior;
    به مقادیر رکورد قبل دسترسی پیدا کنید.
    2-رورش قبل را می توانید بر اساس فیلد کلید هم انجام دهید.
    موفق باشید
    باز کردن یک دیتاست اضافی ، کار منطقیه آیا ؟

  10. #10


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

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

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