Простий Web-інтерфейс для звернення добаз даних, Data Access Page

Простий Web-інтерфейс для звернення до баз даних, Data Access Page у Microsoft Access, елементи керування ActiveX на Web-сторінці

Найважливіша перевага DAP – можливість забезпечувати функціональність MS Office (включаючи можливості VBA) через Web-інтерфейс. Скрипти, створені в DAP за допомогою MS Script Editor, виконуються в ActiveX компоненті DAP, а не в середовищі Internet Explorer.

Архітектура DAP: створюється Web-сторінка - шаблон, який завантажується в броузер користувача і при необхідності завантажує елементи керування ActiveX, які забезпечують підключення і виконання запитів до джерела даних. Часто (наприклад, при зверненні до компонентів Spreadsheet, Pivot Table і Chart) також звертаються до програмних модулів MS Office, встановлених на комп'ютері користувача, тому рекомендується, щоб MS Office був встановлений локально на комп'ютерах користувачів. Мінімальні вимоги до клієнта DAP – Internet Explorer 5.01 SP2 або пізніший.

Створювати DAP можна як поза базою даних Access, і у ній. У будь-якому випадку буде створено HTML-файл, який можна розміщувати як на Web-сервері, так і просто у файловій системі. Якщо планується розмістити DAP на Web-сервері, то перед створенням рекомендується підготувати віртуальний каталог і дати на цей каталог права на запис відповідним обліковим записам.

Безпека DAP реалізується засобами Web-сервера та компонента ActiveX, що працює на клієнті. Налаштування режиму автентифікації на SQL Server задається під час створення DAP. Категорично не рекомендується використовувати режим автентифікації SQL Server зі збереженням пароля – у цьому випадку пароль буде поміщений відкритим текстом у код сторінки. Краще після розміщення DAP на веб-сайті додати цейWeb-сайт у список Trusted у налаштуваннях безпеки Internet Explorer (вручну або через групову політику), щоб не з'являлися зайві попередження системи безпеки.

Щоб повністю звільнитися від обмежень безпеки, що накладаються Web-броузером, DAP можна зберегти як HTML Application у форматі HTA. В цьому випадку:

  • сторінка зможе робити все, що роблять звичайні файли, що виконуються;
  • ніяких елементів керування Internet Explorer на сторінці виводитися не буде - інтерфейс програми буде повністю визначатися розробником.

Для звернення до DAP на Web-сервері у вікні відкриття/збереження файлів MS Access можна використовувати формат виду http://london/vc_northwind/page1.htm, а можна скористатися майстром Add Network Place і додати шлях до віртуального каталогу http:/ /london/vc_northwind/ і далі звертатися до нього звичайним чином.

Деякі моменти, пов'язані зі створенням DAP:

  • при створенні DAP можна створити її з нуля, а можна скористатися готовим HTML-файлом для розміщення в ньому функціональності DAP. У цьому випадку у списку New File потрібно вибрати From Existing File. а потім вибрати потрібний HTML файл;
  • як джерело полів для подання у звіті можна використовувати таблиці, подання, процедури, що зберігаються, і діаграми баз даних. Якщо ви використовуєте процедуру, що зберігається, яка приймає параметри, то при активізації сторінки вам потрібно ввести значення для цих параметрів;
  • на жаль, робота з бінарними типами даних (наприклад, зображеннями) через DAP не підтримується;
  • якщо відносини між таблицями правильно не визначилися, можна використовувати Relationship Wizard як Design Web-сторінки. Запускається з вікна Data Outline (попередньопотрібно відкрити це вікно через View). Якщо недоступний, то Access автоматично виявив, що в основі – лише одна сторінка;
  • сторінка DAP складається з двох частин:
  • Body - каркас сторінки, містить інформацію про секції, прив'язку елементів управління до даних та загальні властивості сторінки;
  • Sections - частини сторінки, у яких і розміщуються елементи управління. Можна використовувати такі секції: Details (основна частина сторінки), Group Header і Group Footer (за наявності групування), Record Navigation – розміщуються елементи керування для переходу між записами, Caption – заголовок сторінки з назвою та загальною інформацією.
  • на сторінку можна вставляти три спеціальні елементи управління, що різко збільшують її функціональність:
  • SpreadSheet – забезпечує функціональність електронної таблиці Excel з можливістю використання формул, функцій тощо.
  • PivotTable (зведена таблиця в Excel) – забезпечує функціональність стандартного OLAP-клієнта Microsoft;
  • PivotChart - те саме, що і PivotTable, але дані подаються в графічному вигляді.
  • на сторінці можна проводити угруповання (у тому числі за кількома полями одночасно) - для цієї мети достатньо вибрати поле на сторінці та в контекстному меню вибрати команду Promote. Підтримуються також фільтрація записів та сортування – за допомогою відповідних кнопок у режимі розробки. Для вставки агрегатних функцій на сторінку можна використовувати AutoSum;
  • сторінки з угрупованням в Access 2000 були доступні лише для читання, в Access 2003 - і запис, але якщо сторінка перетворена зі старої версії, потрібно буде змінити властивості рівня групування;
  • якщо рівень угруповання включає сторінки з більш ніж однієїтаблиці, доступні для редагування будуть лише записи з однієї таблиці. Ця таблиця визначається значенням властивості UniqueTable секції Header;
  • для створення скрипта для CommandButton використовується Microsoft Script Editor - див. відповідну піктограму на панелі елементів Page Design. Потрібно вибрати у списку об'єктів кнопку та у списку подій вибрати Onclick. Наприклад, для події OnClick можна прив'язати функцію MsgBox. Те саме доступно і для всіх інших елементів управління.
  • BoundSpan Control - елемент керування лише для читання на Data Access Page, який використовується для вставки на сторінку HTML-коду з полів типу Text та Memo бази даних Access або аналогічних полів SQL Server. Використовувати обережно – якщо користувач має доступ на запис до джерела у БД, то зможе записати некоректний код HTML на сторінку;
  • при використанні на різних сторінках загальних зображень, таблиць стилів та аналогічних елементів краще використовувати відносні посилання на загальні файли, щоб уникати дублювання;
  • міняти джерело даних (у тому числі в режимі виконання) можна через властивість ConnectionString для сторінки;
  • довідка по DAP автоматично вбудовується у кожен DAP, і до неї можна звернутися клієнту з вікна Web-Browser. Вбудовується в Record Navigation Bar в правому нижньому кутку сторінки (значок з питанням), реально звернення йде до файлу довідки Office на комп'ютері користувача. Можна замінити свою довідку, а можна використовувати, наприклад, CommandButton з підказками;
  • Визначити параметри за промовчанням для всіх новостворених DAP (включаючи каталог для збереження, базу даних для підключення тощо) можна в режимі Design Page за допомогою меню Tools->Options на вкладці Pages.