Повышение производительности приложения "клиент-сервер"
Повышение производительности при работе с отчетами
Существует ряд правил, соблюдение которых позволяет повысить скорость печати отчетов. Наряду с перечисленными ниже советами полезно проверить конкретные отчеты с помощью анализатора быстродействия.
- Для печати большого набора данных создавайте составные отчеты, содержащие подчиненные данные, используя в качестве источника данных представления, хранимые процедуры, предложения SQL или фильтры.
- Используйте режим Образец (Layout Preview) вместо режима Предварительный просмотр (Print Preview) при проектировании отчета. Режим Образец (Layout Preview) позволяет быстро просмотреть структуру отчета, т. к. в отчет загружается лишь образец данных, а это требует гораздо меньшего времени, чем загрузка всего объема данных. Используйте режим Предварительный просмотр (Print Preview) для проверки данных после того, как проектирование структуры отчета завершено.
- Чтобы распространить среди сотрудников такую периодическую информацию, как расписания, недельные отчеты, планы продаж и пр., создавайте отчеты в формате снимка отчета (snapshot) и распространяйте их пользователям, которые могут посмотреть их с помощью программы просмотра снимков Snapshot Viewer. Если необходимо предоставить пользователям оперативную информацию, используйте для этого страницы доступа к данным.
Повышение производительности при работе с формами
Некоторые рекомендации по повышению производительности форм в клиентском приложении.
- При проектировании формы определите, какие данные она должна предоставлять и какой функциональностью должна обладать. Отложите процесс загрузки данных с сервера до того момента, когда это потребуется пользователю. Создайте форму, в которую данные не будут загружаться в процессе открытия, поместите в форму специальную кнопку, позволяющую загрузить данные.
- Используйте в формах минимальное количество полей, требующих длительного времени для загрузки данных, таких как текст и графические элементы. Поместите поле с текстом или рисунок в подчиненную форму, использующую тот же источник данных, что и главная форма.
- Помещайте в главную форму только основные поля, все остальные данные поместите в подчиненную форму, открываемую с помощью специальной кнопки с названием Дополнительная информация в главной форме. В качестве источника данных для подчиненной формы используйте запрос, параметризованный ключевыми полями источника данных главной формы.
- Для ввода данных создайте отдельные формы специального типа, установив для них значение Да (Yes) свойства Ввод данных (Data Entry). В формы такого типа данные из источника данных (находящегося на сервере) не загружаются, в них отображаются только добавляемые записи, что значительно ускоряет работу.
- Минимизируйте число строк, показываемых в полях со списком, если данные для этих списков берутся с сервера. Если данные редко модифицируются, то лучше храните их в локальных таблицах и создайте процедуру для синхронизации серверных и локальных таблиц. В локальных таблицах, хранящих такие данные, обязательно постройте индексы, чтобы ускорить создание списков.
- Если форма или отчет основаны на параметризованной хранимой процедуре, устанавливайте значение параметров с помощью свойства Входные параметры (Input Parameters).
- Чтобы удалить или обновить данные, используйте инструкции SQL UPDATE и DELETE с параметром WHERE. Этот способ более эффективен по сравнению с открытием набора записей и выполнением над ним необходимых операций.