| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS Access > OpenReport WhereCondition |
| Автор: FINANSIST 31.10.2012, 14:48 | ||
| серверная: sql server 2005 клиентская: adp 2003 на сервере сделана view для макета отчета на adp отчет вызывается через клиентскую форму которая запрашивает для отчета 3 параметра( год, неделя с, неделя по ) вопрос: как лучше по скорости формирования отчета передавать параметры отбора: вариант 1: ограничения передаются через OpenReport WhereCondition вариант 2: в таблицу, с которой тянет sql добавляю атрибут SelectFlagForReportHistory ( бинарник 1 либо 0) завязываю sql на SelectFlagForReportHistory = 1 и зашиваю в кнопку вызова отчета следующий код:
сравнил 2 варианта, пока данных не много - по скорости не понятно. Жду советов - какой вариант оптимальнее. |
| Автор: bopoha 31.10.2012, 23:13 |
| Помимо скорости я бы рассмотрел удобство использования. вариант update каличный на мой взгляд. Вариант 1 предпочтительней. Запрос с отчета будет отправлен на сервер, а там все будет быстро обработано. Там уже все зависит от самого запроса и индексов. |
| Автор: FINANSIST 1.11.2012, 07:38 |
| Есть большие опасения, что в 1 варианте запрос выгружает абсолютно все - передает всю эту хрень на клиента загружая локальную сеть, далее вся эта хрень подгружается в макет отчета, который старательно отрисовывает в себе ВСЕ записи и только потом через метод wherecondition начинает что-то там ограничивать. То что 1 вариант удобен с точки зрения восприятия кода - базара нет, а вот что по скорости, не подтвердятся ли мои опасения при большом объеме данных? |