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