PDA

View Full Version : حرفه ای: سوال در رابطه با CalcField ها



tiphooo
جمعه 14 بهمن 1390, 23:05 عصر
با سلام
با توجه به اینکه اگر در برنامه دلفی خود فیلد محاسباتی CalcField بر روی Table یا Query خود تعریف کرده باشیم زمان Active کردن آنها معمولا برای تمامی رکوردها این فیلد محاسباتی محاسبه می شود حال اینکه آیا راهی وجود دارد که این کار فقط برای رکوردهای لود شده در Grid انجام پذیرد (مثلا 20 رکورد) و با Scroll کردن مجددا این نظم به هم نخورد و فقط برای رکورهای قابل مشاهده انجام پذیرد؟
لازم به ذکر است فقط حالتی را در نظر بگیرید که فیلد محاسباتی ما ردیفی بوده و مقدار آن تاثیری نه در ردیفهای قبلی و بعدی دارد و نه تاثیری از آنها می گیرد فرض کنید هر ردیف شامل یک کد و یک عنوان است و عنوان از جدول دیگری گرفته می شود که در اینجا عنوان فیلد محاسباتی ماست.
این مشکل زمانی خود را نشان می دهد که حجم اطلاعات ما زیاد بوده (10000 رکورد) و تعداد فیلدهای محاسباتی هم مثلا 5 فیلد باشد که سرعت را کاهش می دهد.

mojiparadox
شنبه 15 بهمن 1390, 20:06 عصر
اگر درست گرفته باشم، شما یه Table دارین که مثلاً مشخصات کالاهاتون رو توش نگه می‌دارین و می‌خواین در Table فاکتورهاتون، فقط کد کالا رو ذخیره کنید.

اگر کارتون فقط همین باشه، می‌تونین بجای استفاده از CalcField از LoockupField استفاده کنید. سرعتش خیلی بالاست و خودم هم ازش توی برنامه‌ام که بیش از 50هزار رکورد داره استفاده کردم و برای باز کردن Tale بیشتر از 2ثانیه طول نمیکشه!!

اینم نمونه‌اش!! http://www.img4up.com/up2/57696719480735506437.jpg