|
![]() |
#1 |
Administrator
|
Цитата:
Вы ж во временную табличку пихаете все записи (а значит их выбираете и вставляете) - а их сколько там? 500 тыс, 1 млн? А для вывода на экран выбираются только визуально видимые записи+15 вверх+15 вниз записей (точные цифры не помню - может не 15, а 30 - но порядок тот же). Причем - это кол-во не зависит от общего кол-ва записей в таблице. Так что - лучше в этой задаче не связываться со временными таблицами, а добить выборку из постоянных. Ну или отказаться от реализации задачи в том виде - в котором изначально хотелось.
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 10.10.2008 в 08:39. |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от sukhanchik
![]() Вы ж во временную табличку пихаете все записи (а значит их выбираете и вставляете) - а их сколько там? 500 тыс, 1 млн?
А для вывода на экран выбираются только визуально видимые записи+15 вверх+15 вниз записей (точные цифры не помню - может не 15, а 30 - но порядок тот же). Причем - это кол-во не зависит от общего кол-ва записей в таблице. X++: void clicked() { QueryRun queryRun; Table1 TableLoc; ; super(); queryRun = Table1_ds.queryRun(); TableLoc = queryRun.getNo(1); info(TableLoc.Field1); while (queryRun.next()) { TableLoc = queryRun.getNo(1); info(TableLoc.Field1); } }
__________________
Энергия молодых и неравнодушных способна изменить мир к лучшему. |
|
![]() |
#3 |
Administrator
|
Да, но насколько я понимаю - данные хотя и будут отфильтрованы - но все равно (конечно в зависимости от фильтра) - их будет на порядок больше - чем визуально видно на экране - так?
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#4 |
Участник
|
Не уловил. Почему их будет на экране меньше, чем после снятия QueryRun?
__________________
Энергия молодых и неравнодушных способна изменить мир к лучшему. |
|
![]() |
#5 |
Участник
|
Красивое решение нашлось при помощи Views и двух строк кода
![]() Всем спасибо! |
|