Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Microsoft Access - программирование и готовые решения


Выпуск 11. Access Rapid Start - конструктор приложений в Access

Подписка: "Access 2003/2010 - программирование и готовые решения"
Дата: 16.07.2012
Автор: Парусников Алексей
Сайт: http://www.accessoft.ru под редакцией с http://www.leadersoft.ru
Загрузка:ARS 2003 ARS 2007 ARS 2010
Получить ключ: Key_ARS

В данном цикле статей рассказывается о работе с конструктором приложений Access - Access Rapid Start. Дополнительные вопросы по этой теме Вы можете задать на форуме. Вы так же можете заказать персональную консультацию или перенос вашего проекта в ARS, связаться с автором для решения вопросов о создании программы на базе ARS - в последнем случае вы кроме готового продукта получите возможность самостоятельно его развивать.


    Данная статья ориентирована на начинающих разработчиков Access, желающих более углубленно изучить возможности программирования в Access и сделать свои приложения более профессиональными.
Работа с поисковыми формами

     Работа с данными в ARS производится при помощи двух типов форм: поисковой и формы редактирования. С помощью поисковой осуществляется поиск нужной записи (или набора записей), затем ДБ-кликом открывается форма-редактор. Стандартные справочники так же представляют собой пару форм, только параметрические. Рассмотрим работу с поисковыми на примере формы поиска с полным набором функций.
В верхнем меню формы есть кнопки, назначение которых:

  • Добавить – создать новую запись
  • Открыть – открыть для редактирования выбранную (выделенную) в списке запись
  • Удалить – удалить выбранную (выделенную) в списке запись
  • Выбрать – вставить выбранную (выделенную) в списке запись в поле на форме, откуда была вызвана поисковая. Эта кнопка активна только если поисковая запускалась из другой формы для вода данных.
  • Закрыть – закрыть поисковую форму. Так же закрытие происходит по нажатие клавиши Esc.
  • – сброс текущего контекстного фильтра
  • – включение/выключение динамического поиска
  • Export – выгрузка данных (текущий набор, отображенный в списке) в один из форматов, представленных в форме экспорта
  • Дополнительный фильтр – запуск формы сохраненных фильтров
  • Х – сброс текущего (наложенного на форму) сохраненного фильтра

     При наведении курсора на разделительные линии столбцов списка, она приобретает вид горизонтальной стрелки. Удерживая левую кнопку мыши и двигая ее вправо-влево можно раздвигать границы столбцов. На момент написания статьи ширина настроенных пользователем столбцов не сохраняется, но в будущих верисях ARS такая возможность появится.
При двойном клике по значению в списке открывается форма редактирования записи. Открыть запись на изменение можно так же через контекстное меню: правой кнопкой по записи и выбрать «Изменить». При этом автоматически фиксируются данные об изменении записи: дата/время создания/изменения, логин оператора, внесшего изменения.
В нижней части поисковой формы показано количество записей в списке, уровень доступа а так же ограничение на показ записей. По умолчанию отображается 100, но так же можно задать другое значение из списка ограничений. Ограничение введено для уменьшения нагрузки на сервер при большом количестве записей. Если записей слишком много, то для быстрого поиска можно применить следующие приемы:

Многоуровневая сортировка

     При щелчке по заголовку столбца (выделен голубым цветом) появляется индикатор сортировки - стрелка вверх, что означает сортировка по возрастанию, при повторном щелчке она изменит вид на нижнюю и соответственно сортировка станет по убыванию. При третьем щелчке сортировка сбросится. Изменив порядок отображения данных в одном столбце, можно аналогично задать сортировку и для другого столбца. При этом уже сгруппированные первой сортировкой записи дополнительно группируются второй сортировкой – тем самым происходит многоуровневая сортировка. Сколько столбцов в форме – столько можно задать уровней.

Динамический поиск

     Под заголовком столбца есть поле фильтра. При вводе значений в поле происходит динамический поиск данных по первым введенным символам в этом столбце. Тем самым можно быстро находить список нужных значений, если все они начинаются с одинаковых символов.
Для сбрасывания динамического фильтра служит кнопка в верхнем меню формы. Для включения или отключения динамического поиска служит кнопка (всплывающая подсказка «Gо»). Если положение - выкл., то динамический поиск НЕ работает. При этом положении пользователь может определять остальные критерии поиска, сортировку и только потом, для того чтобы сработал поиск (по определенным им критериям), жмет на кнопку «Go».
Поиск можно вести с использованием различных масок, позволяющих например находить вхождение искомого фрагмента в тексте, диапазон значений входящих в текст и т. д.

Применение фильтров

* – любое количество символов
? – любой один символ
# – любая цифра
! – кроме символов указанных после ! (!ма - будут исключены слова начинающиеся с 'ма')
[n-m] – любой символ входящий в указанный диапазон (например: [0-9] - цифра от 0 до 9
[a-z] – любая буква латинского алфавита; [а-я] - любая буква кирилицы
[n,m,k,l,...,n] – любой перечисленный через запятую символ
[!n-m] – кроме символа входящего в указанный диапазон
[!n,m,k,l,...,n] – кроме перечисленных через запятую символов
n|m – поиск даипазона значений от n до m (можно искать не только числа, но и даты)
!n|m – исключить указанный диапазон

 Примеры поиска

*кос? – вернет покосы, коса
*.*.05 – вернет все за 05 год
*.05.* – вернет все за 05 месяц
*.*.0[1-5] – вернет с 01 по 05 год
*.0[!1-7].* – исключит с 1 по 7 месяцы
!*кос – вернет все где нет 'кос' и Null

Поиск по диапазону значений

27|30 – вернет 27, 28, 29, 30

Поиск вне диапазона значений

!10|12 – вернет все кроме 10, 11, 12 и Null

Поиск c операторами

=01.02.06
<>1080<12
>20
<=12
>=20

Поиск с исключением исключенного

![!2,3,7] – вернет тоже что и [2,3,7], то есть все, что начинается на 2,3,7 только в отличие от [2,3,7] вернутся еще и Null значения.
!* – вернет записи с Null значениями

Мастер поиска

     Для большего удобства служит специальный мастер – построитель критериев поиска. Он запускается нажатием на стрелку в правом нижнем углу заголовка столбца, которая появляется, если установить курсор в поле контекстного поиска. При этом открывается форма для создания фильтра.
В мастере можно создавать фильтры по значению или диапазону. Во втором случае это обычно применяется для задания фильтра по диапазону дат. Допускается вводить специальные символы поиска, список и назначение которых показано в нижней части формы. После получения нужной фильтрующей строки при нажатии кнопки Ок (Enter) будут отобраны записи по созданному фильтру на форме поиска, откуда запускался мастер. Для большего удобства ввода значений дат, справа от поля, в котором создается фильтр появляется кнопка. При нажатии на нее откроется форма в виде календарика, через которую можно быстро выбрать нужную дату.

Дополнительный фильтр

     Но как быть, если нужно искать по полю, которое не выведено в поисковой форме? Для этого служит дополнительный фильтр, который можно сохранять. Запускается нажатием на кнопку «Дополнительный фильтр» в верхнем меню поисковой формы, при этом открывается форма создания фильтра.

Если нет ни одного сохраненного фильтра, тогда нужно нажать кнопку добавить и в появившемся диалоговом окне ввести имя сохраняемого фильтра. Затем в таблице внизу формы выбрать нужное поле, по которому будет происходить фильтрация и соседнем поле ввести фильтр. Это можно сделать вручную, либо при помощи мастера, который запускается двойным кликом по полю. Для изменения имени созданного фильтра служит кнопка «Редактировать» в меню формы. Для удаления фильтра – кнопка «Удалить».

После получения нужной фильтрующей строки при нажатии кнопки Применить (Enter) будут отобраны записи по созданному фильтру на форме поиска, откуда запускался мастер. При этом в поисковой форме покажется имя наложенного сохраненного фильтра. Сбросить его можно нажав на кнопку Х.
При помощи этого фильтра можно искать значения по всем полям таблиц-источников, включенных в набор данных списка поисковой. То есть даже если само поле не входит в источник списка, все равно можно искать по нему, так как в мастере сохраненных фильтров есть возможность обратиться к этому полю, если в набор входит таблица.

Группировка данных

     В нижней части формы расположены поля для просмотра итоговых значений. Перечень доступных агрегатных функций зависит от типа данных и определяется автоматически. Например, для текстового поля очевидно, что не нужен подсчет Min(), Max(), Sum() и т. д. Чтобы произвести расчет итогов нужно кликнуть правой кнопкой по итоговому полю поисковой и в открывшемся контекстном меню выбрать нужную функцию расчета. Затем кликнуть левой кнопкой по полю - тогда произведется расчет.
Такой интерфейс выбран потому, что при большом количестве выведенных на поисковой записей подсчет итогов может значительно замедлить скорость работы формы, поэтому эта функция вызывается дополнительным кликом, а не автоматически.

Как видим, поисковые ARS – это мощный инструмент поиска данных, которые можно выгрузить в виде простейшего отчета самых разных форматов. Во многих случаях этого достаточно для создания учетной системы – то есть не нужно делать форму поиска и форму-редактор, достаточно лишь указать в команде вызова справочника таблицу или составить редактируемый запрос-источник. Но иногда все же необходимо сделать специальную поисковую с дополнительными функциями и более сложную форму-редактор – как это делается в ARS, я расскажу в следующей статье.

Полезные ссылки

Интернет магазин от Leadersoft.ru
В этом магазине Вы можете купить не только готовое программное обеспечение для бизнеса, а также найти компактные решения для самостоятельного проектирования на Microsoft Access, SQL Server или ASP.NET

В избранное