Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Access_2007.doc
Скачиваний:
257
Добавлен:
17.03.2015
Размер:
20.6 Mб
Скачать

На профессиональном уровне. Более внимательный взгляд на теги

Теги следуют очень строгим правилам именования. Теги могут быть любой длины, ука­зываются с учетом регистра, могут содержать любые цифровые или буквенные симво­лы, дефисы (-), знаки подчеркивания (_) и точки (.). Другие специальные символы, в том числе пробелы, применять нельзя, и имя тега должно начинаться с буквы или знака подчеркивания. XML-документы также поддерживают символы, не включенные в анг­лийский алфавит.

Самое важное, что вам следует понять о тегах, состоит в том, что создание тегов — ваша задача. Если нужно хранить список имен, можно создать XML-формат, который ис­пользует тег <Name>. Одновременно кто-то еще может решить отслеживать фамилию, имя и отчество с помощью другого XML-формата, использующего такие элементы, как <firstName> и <lastName>. В этих элементах может храниться та же информация, что и в вашем элементе <Name>, но они отличаются, и документ, написанный с использова­нием тегов <f irstName> и <lastName>, несовместим с вашими документами.

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

Вложенность

Пока вы видели примеры XML-элементов, содержащих текст. Можно также создать эле­мент, содержащий один или несколько других элементов. Это основной принцип организа­ции информации в языке XML.

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

<Name>Lisa Chen</Name>

<Age>19</Age>

<Name>Bill Harrison</Name>

<Age>48</Age>

Лучше было бы сгруппировать элементы <Name> и <Age> для каждого человека и помес­тить их в другой элемент, например, так:

<Person>

<Name>Lisa Chen</Name>

<Age>19</Age> </Person>

<Person>

<Name>Bill Harrison</Name>

<Age>48</Age> </Person>

В этом примере приведены два элемента <Person>, каждый из которых содержит сведе­ния о конкретной персоне. Информация об отдельном человеке хранится в элементах <Name> и <Аgе>, вложенных в соответствующий элемент <Person>.

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

В языке XML установлено еще одно правило. Каждый документ должен начинаться единственным элементом, следующим непосредственно за прологом. Все остальное содер­жимое помещается в этот элемент, который называется корневым элементом или элементом документа. Виденные вами до настоящего момента примеры были лишь выдержками из XML-документа. В следующем далее листинге показан полный, хорошо оформленный XML-документ — список с данными о двух людях, — который начинается с элемента доку­мента <PeopleList>:

<?xml version="1.0".?>

<PeopleList>

<Person>

<Name>Lisa Chen</Name>

<Age>19</Age> </Person>

<Person>

<Name>Bill Harrison</Name>

<Age>48</Age> </Person> </PeopleList>

Этот документ можно усовершенствовать, добавив дополнительные элементы <Person> или другие элементы, позволяющие отслеживать дополнительные сведения о каждом чело­веке.

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

точки зрения компьютеров приведенный только что документ абсолютно идентичен сле­дующей менее легкой для восприятия версии:

<?xml version="1.0" ?>

<PeopleListXPerson><Name>Lisa Chen</Name><Age>19</ AgeX/Person><Person><Name>Bill Harrison</Name><Age>48 </Agex/Person></PeopleList>

Файлы и схемы XML

Как вы уже узнали, XML-документы можно хранить в файле. Но так же легко их можно поместить и в БД или другие места внешней памяти. В реальной жизни иногда XML-данные не сохраняются нигде — пользователи применяют их для обмена информацией между при­ложениями через Интернет. Но если XML-данные используются в программе Access, всегда применяются XML-файлы (если ваша компания не создала пользовательское решение с помощью мощных средств программирования в Access).

У большинства XML-файлов расширение xml. Например, самое разумное — взять доку­мент со списком людей, показанный ранее, и поместить его в текстовый файл, названный PersonList.xml.

Еще один очень важный тип XML-документа — XML-схемы. XML-схемы разрабатыва­ются для решения общей проблемы, а именно определения правил для конкретного, осно­ванного на языке XML формата. Например, схема указывает имена элементов, которые можно использовать, способ организации элементов и тип информации, которую может содержать каждый элемент. Приложение с поддержкой XML может применить схему для проверки правильности структуры и допустимости содержимого XML-документа. В иде­альном мире каждый раз, когда компания создает XML-формат, она разрабатывает и XML-схему, его определяющую. (Возможно, вас не удивит, то, что так бывает далеко не всегда.)

Для применения схемы нужно просто иметь ее копию в файле. (Сами по себе схемы сложны и уродливы и не относятся к первостепенным вещам, которые должны и хотят изу­чать сотрудники типичного офиса.) Обычно у файлов со схемами расширение xsd.

Примечание

Для более полного введения в язык и схемы XML познакомьтесь с отличным интерактивным руководством, предлагаемым компанией W3 Schools, на сайте www.w3schools.com/xml.

Поддержка XML в программе Access

Язык XML — это прекрасный способ обмена данными между разными компьютерными про­граммами. Но что делать с программой Access, у которой уже есть собственный отличный способ хранения данных? Ситуация такова: сегодня все больше и больше компаний приме­няют язык XML для обмена данными. Когда компании обмениваются коммерческими зака­зами, например, или новостные организации посылают очерки, или фирмы по торговле не­движимостью перечисляют предлагаемую для продажи собственность, очень вероятно, что они используют формат на основе XML. Если вы хотите отправить ваши данные Access в такие системы, нужен способ извлечения их из специализированного ACCDB-формата БД и помещения их в простой и понятный XML-формат.

Ксожалению, поддержка языкаXML в программе Access до сих пор очень ограничена. Проблема заключается в том, что Access не разрешает выбрать нужный вам XML-формат. Вместо этого программа создает собственный формат, который точно соответствует вашей таблице. Посмотрите на таблицу на рис. 19.11. (При экспорте в XML-файл всегда экспорти­руется таблица целиком.)

Рис. 19.11. Пример данных, готовых к новой жизни в XML-формате

Когда экспортируется приведенная таблица, программа Access создает XML-документ, который выглядит следующим образом:

<dataroot>

<Product>

<ProductID>371</ProductID>

<Name>Thin-Jam Hex Nut 7</Name>

<ProductNumber>HJ-7161</ProductNumber>

<SafetyStockLevel>1000</SafetyStockLevel>

<ReorderPoint>750</ReorderPoint> </Product> <Product>

<ProductID>372</ProductID>

<Name>Thin-Jam Hex Nut 8</Name>

<ProductNumber>HJ-7162</ProductNumber>

<SafetyStockLevel>1000</SafetyStockLevel>

<ReorderPoint>750</ReorderPoint>

</Product>

Независимо от экспортируемой таблицы программа Access всегда следует одним и тем же правилам:

  • корневой элемент документа называется <dataroot>;

  • программа Access создает отдельный элемент для каждой строки таблицы, используя имя таблицы. В данном примере это означает, что вы получите один элемент <Product> для каждой записи;

  • внутри каждой записи Access создает отдельный элемент для каждого поля. В данном примере вы получите поля <Name>, <ProductNumber> и т. д.

В подобной структуризации XML-документа нет ничего плохого. Однако поскольку у вас нет возможности изменять структуру, вы потерпите неудачу, если захотите использо­вать другую программу, которая принимает XML-документы с другим форматом. Например, ваша программа рассчитывает, что корневой элемент будет назван <ProductRecords>, а не <dataroot> или она принимает несколько иную вложенность элементов. Незначи­тельные нестыковки, подобные описанным, могут полностью нарушить работу приложения с XML-обработкой.

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

Примечание

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

Те же ограничения возникают, когда импортируется XML-содержимое. Программа Access рассчитывает на получение XML-содержимого с жестким табличным форматом. Если вы попытаетесь представить ей XML-документ другого типа, то получите сообщение об ошибке.

Экспорт в XML-файл

Теперь, когда вы познакомились с языком XML и рассмотрели ограничения, установленные в программе Access, вы готовы применить его для собственных нужд. Далее перечислены необходимые для этого действия.

1. Выберите на ленте Внешние данные Экспорт Дополнительно XML-файл (External Data Export More XML File).

Начинается знакомый вам процесс экспорта.

2.Введите имя файла, который хотите создать, и нажмите кнопку ОК.

Программа Access предполагает, что будет использоваться имя таблицы. Например, если экспортируется таблица Orders, рекомендуемое программой имя XML-файла — Оrders.xml.

3. Выберите типы файлов, которые хотите создать (рис. 19.12):

  • данные (XML) (Data (XML)) — создается XML-файл с действительным содержимым из всех записей вашей таблицы;

  • схема данных (XSD) (Schema (XSD)) — создается файл схемы с расширением xsd. Схема не содержит никаких данных, а хранит краткое определение, описывающее вашу таблицу и содержащиеся в ней поля. У схемы два назначения — ее можно передать профессиональным программистам, чтобы они знали, какого типа XML-документ ждать от программы Access, или использовать ее для создания новой пустойтаблицы в другой БД Access;

  • презентация данных (XSL) (Presentation (XSL)) — создает файл преобразования с расширением xsl. В этом файле определяется, как обозреватель может преобразовать исходные данные из XML-файла в Web-страницу на языке HTML, подходящую для отображения в Web-обозревателе. Когда этот флажок установлен, Access также создает htm-файл, использующий xsl-файл. Например, если экспортируется таблица Products, вы получите в результате файл Web-страницы Products.htm. Откройте ее в вашем Web-обозревателе, и он воспользуется файлом Products.xsl для отображения данных из файла Products.xml.

Рис. 19.12. Обычно создается XML-файл, хранящий реальные данные из вашей таблицы. Кроме того, можно создать два дополнительных файла поддержки

4. Если вы хотите экспортировать связанные таблицы в одном и том же XML-документе, щелкните мышью кнопку Дополнительно... (More Options...).

На экране появится окно Экспорт XML (Export XML) с дополнительными параметрами. Большинство из этих параметров лучше всего оставить гуру XML. Но наиболее интересна вкладка Данные (Data) — она позволяет экспортировать связанные табли­цы (рис. 19.13).

Например, при экспорте таблицы Orders у вас есть две возможности.

  • Экспорт других подчиненных таблиц. Можно было бы также экспортировать записи таблицы OrderDetails для каждого заказа. Программа Access вкладывает в XML-файл элементы OrderDetails внутрь соответствующего элемента Orders.

  • Экспорт связанных записей из главной таблицы. Можно было бы, например, экспортировать записи из таблиц OrderStatus и CreditCards. Эти записи появляются под заголовком [Данные подстановки] ([Lookup Data]), поскольку они предоставляют дополнительные данные, связанные с заказом (в данном случае текущий статус заказа и кредитную карту, применяемую для оплаты заказа).

Рис. 19.13. На вкладке Данные отображается дерево с экспортируемой таблицей в корне, а ветви дерева представляют связанные таблицы. Если вы хотите включить данные из этих связанных таблиц, просто установите флажок, расположенный рядом с каждой из них

Примечание

Когда экспортируются главные или родительские таблицы, данные не вкладываются в XML-документе, поскольку это могло бы привести к дублированию (например, если у нескольких за­казов один и тот же статус или в них применяется одна и та же кредитная карта). Вместо этого они добавляются после основной экспортируемой таблицы.

5.Щелкните мышью кнопку ОК.

Программа Access создаст файлы, выбранные в пункте 3.

6. Если вы хотите повторить процесс экспорта несколько раз, установите флажок Сохранить шаги экспорта (Save export steps).

Щелкните мышью кнопку Закрыть (Close) для возврата в окно программы Access.

Импорт из XML-файла

Программа Access делает очень легким процесс импорта XML-данных, при условии что у них структура, на которую рассчитывает программа. Для проверки на практике выберите только что экспортированную таблицу и заново импортируйте ее в новую БД. Вот как это делается.

1. Выберите на ленте Внешние данные Импорт Импорт XML-файла (External Data Import XML File).

Начнется знакомый процесс импорта.

2. Если создается новая таблица и для ваших данных есть схема, задайте имя файла, содержащего схему. Если у вас уже есть таблицы, которые хотите использовать, или под рукой нет схемы, перейдите сразу к пункту 6.

Можно импортировать непосредственно из XML-файла, но всегда лучше применить схему, если таблица создается впервые, поскольку в схеме хранится информация о типах данных всех полей. Эти сведения гарантируют большее соответствие создаваемой табли­цы исходной таблице, которую вы экспортировали.

3. Щелкните мышью кнопку ОК.

ПрограммаAccess просмотрит схему и отобразит структуру таблиц, которые будут соз­даны (рис. 19.14).

Рис. 19.14. В данном примере Access корректно устанавливает, что ваш файл схемы определяет структуру таблиц Orders, OrderDetails, OrderStatus и CreditCards. Можно раскрыть каждую таблицу и увидеть содержащиеся в ней поля

4.Щелкните мышью кнопку ОК.

С помощью данных схемы программа Access создает новую пустую таблицу с коррект­ной структурой. Теперь можно заполнять ее данными.

Примечание

Если таблица с таким же именем уже существует, Access добавит в конец имени число, чтобы отличать новую таблицу (например, Products1, Products2 и т. д.).

  1. Щелкните мышью кнопку Закрыть (Close), чтобы вернуться в окно программы Access.

  2. Выберите на ленте Внешние данные Импорт Импорт XML-файла (External Data Import XML File).

Теперь, когда ваши таблицы созданы, можно импортировать реальные данные.

7. Задайте имя XML-файла, содержащего данные, которые хотите импортировать, и щелкните мышью кнопку ОК.

Программа Access отобразит структуру таблицы на основе XML-данных вашего файла, Эта структура должна точно соответствовать структуре таблицы, которую вы хотите создать или в которую хотите добавить данные.

8. Выберите один из вариантов операции импорта.

  • Выбор переключателя добавить данные в таблицы (Append Data to Existing Table(s)) заставляет программу Access найти таблицу с таким же именем и добавить в нее все данные. Этот вариант применяется, если используемая таблица уже существует.

  • Выбор переключателя структура и данные (Structure and Data) создает таблицу и за­тем заполняет ее данными.

  • Выбор переключателя только структура (Structure Only) создает несуществующую до этого момента таблицу, но не импортирует никаких данных.

Примечание

Если в процессе импорта вам нужно создать таблицу, всегда лучше применить файл схемы для ее создания (как описано в пунктах 1—5), поскольку в схеме содержатся более точные сведения о типах данных.

9. Щелкните мышью кнопку ОК.

Access заполнит таблицы данными из вашего XML-файла.

Если вы хотите повторять процесс импорта несколько раз, установите флажок Сохра­нить шаги импорта (Save export steps).

Сбор информации по электронной почте

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

Вот как действует это средство.

  1. Вы выбираете таблицу, которая нуждается в данных.

  2. Определяете круг пользователей, способных предоставить эти данные. (Необходим список адресов электронной почты, которые можно вводить вручную или извлечь из таблицы в вашей БД.)

  3. Программа Access отправляет им всем электронное сообщение с формой, которую они должны заполнить. Форма позволяет им ввести данные, формирующие одну запись (хотя адресат при необходимости может заполнить одну и ту же форм}' несколько раз). Для того чтобы увидеть пример того, как может выглядеть электронное сообщение, перейдите к рис. 19.16.

  4. Заполненная форма возвращается вам по электронной почте.

  5. Для каждого полученного по электронной почте сообщения программа Access создает в вашей таблице отдельную запись.

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

У средства сбора данных с помощью электронной почты есть несколько базовых правил.

  • Для отправки электронного сообщения и получения ответа необходимо использовать программу Microsoft Outlook 2007 (входящую в состав пакета Office 2007). Таким образом, если программа Outlook еще не настроена, следует сделать это прежде, чем двигаться дальше. Ваши адресаты могут пользоваться любой программой электронной почты, которая им нравится.

  • Данные можно только вставлять, но не обновлять. (Есть одно исключение. Можно обновить таблицу, если каждая запись содержит в поле адрес электронной почты отправителя, поскольку в этом случае программа Access может установить, какую запись обновлять, сопоставляя адрес электронной почты отправителя с адресом, хранящимся в таблице.)

  • Если пользователи включают неверные данные (например, помещают текст в числовое поле), программа Access не может создать запись. Затем вы должны самостоятельно выяснить, в чем проблема, и исправить ее.

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

В следующих разделах вы увидите, как создать нужное сообщение электронной почты и затем поместить данные в вашу таблицу.

Создание сообщения электронной почты

Прежде всего (при условии, что вы уже установили программу Outlook и настроили вашу учетную запись электронной почты в ней) укажите таблицу, куда хотите вставлять данные. В следующем примере вы увидите, как добавить предполагаемых кандидатов в таблицу Bachelors (холостяки) БД Dating Service (служба знакомств). Если вы хотите испытать это средство со своими друзьями, БД Dating Service можно найти на странице "Missing CD" Web-сайта www.missingmanuals.com.

Вот, как это делается.

1. Выберите на ленте Внешние данные Сбор данных Создание электронного сообщения (External Data Collect Data Create E-mail).

На экране появится мастер. В первом окне мастера перечислены все шаги, необходимые для получения ваших данных.

2. Для того чтобы двигаться дальше, нажмите кнопку Далее (Next).

На втором шаге можно выбрать тип формы, которую хотите использовать.

3. Выберите вариант HTML-форма (HTML form) и щелкните мышью кнопку Далее.

Этот вариант сообщает программе Access о необходимости использовать HTML-теги в ее сообщении электронной почты. С помощью этих тегов Access может создать форму с привлекательным внешним видом и полями ввода, в которые адресат сможет ввести данные.

Второй оставшийся вариант (Microsoft Office InfoPath form) отключен, если на вашем компьютере не установлено приложение InfoPath. Оно включено в состав только

некоторых редакций пакета Office и чаще всего используется в больших компаниях. Несмот­ря на то, что InfoPath — отличная программа, у нее есть один серьезный недостаток — для того чтобы применить форму InfoPath, у всех ваших адресатов на компьютерах должна быть установлена программа InfoPath. По этой причине вариант HTML, как пра­вило, выгодней.

4. На следующем шаге запрашивается необходимость сбора новых данных или обновления существующих. Выберите подходящий вариант и щелкните мышью кнопку Далее.

Обычно выбирается вариант Собирать только новые данные (Collect new information only). Именно он подходит для БД Dating Service, поскольку вы хотите получить ин­формацию, которую нужно добавить в таблицу Bachelors как отдельную запись для каждо­го отправителя.

Если выбирается вариант Обновлять существующие данные (Update existing information), в вашей таблице должны содержаться адреса электронной почты отправителей. Например, этот подход можно применять, если в таблице Bachelors есть набор записей, которые вы хотите обновить. Каждый холостяк получит электронный адрес, который можно использовать для изменения текущих данных о себе.

Подсказка

Вы, конечно, также можете применять вариант обновления, если адреса электронной почты есть в другой таблице, которая связана с заполняемой таблицей. Например, можно было бы обновить текущий статус каждого проекта из таблицы Projects, если в ней есть поле Project-ManagerlD, указывающее на запись в таблице ProjectManagers. которая в свою очередь со­держит адрес электронной почты.

5. Выберите поля, которые хотите собрать.

Для добавления поля выберите его в списке Поля в таблице (Fields in table) и затем щелкните мышью кнопку >. Или щелкните мышью кнопку » для переноса всех полей за один шаг.

Примечание

Вы не увидите поле Код (ID) с типом Счетчик в списке Fields in table (Поля в таблице). Про­грамма Access знает о том, что она должна генерировать это значение самостоятельно, по­этому не просит никого предоставить это значение. Также не отображаются многозначные по­ля или поля с типом Вложение, поскольку Access не может создать формы для данных этих типов.

6.При желании задайте более понятные имена для ваших полей.

Например, подпись "Your favorite food is" ("Ваша любимая еда") может оказаться понят­нее, чем имя поля FoodPreference (пищевые предпочтения). Для изменения подписи выберите ее в списке и измените поле ввода, появляющееся ниже.

Можно также установить флажок Только чтение (Read-only), чтобы пользователи не могли изменить значение поля. Этот вариант имеет смысл, только если вы просите поль­зователей обновить записи. В этой ситуации, возможно, на форме есть данные для про­смотра, но не для изменения.

7. При желании измените порядок следования полей.

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

8. Щелкните мышью кнопку Далее (Next).

На экране появляется последнее окно мастера.

9. Выберите папку, в которой Access сохраняет ответы после того, как обработала их.

Обычно программа Access хранит ответы в папке Outlook, названной Ответы для сбора данных Access (Access Data Collection Replies). Но можно применить любую папку, ка­кую захотите. Для замены папки щелкните кнопкой мыши ссылку Ответы для сбора данных Access. Запустится программа Outlook и выведет на экран диалоговое окно Об­зор (Select Folder), в котором можно выбрать любую имеющуюся папку (или щелкнуть мышью кнопку Создать папку (New) для создания новой папки). После выбора нужной папки щелкните мышью кнопку ОК.

Подсказка

Если вы планируете выполнить несколько операций импорта для разных таблиц, есть смысл использовать разные папки.

10. Если хотите применить автоматическую обработку, установите флажок Автоматически обрабатывать ответы... (Automatically process replies...). Если хотите обработать ответы вручную, перейдите к пункту 12.

Если применяется автоматическая обработка, программа Outlook связывается с Access, чтобы выяснить, получила ли она ответ. Затем программа Access сразу добавляет или обновляет соответствующую запись. Подобная система действует до тех пор, пока файл вашей БД остается на одном и том же месте, с тем же именем и без защиты паролем.

Для ручной обработки требуется больше усилий, но это по-настоящему безопасный вари­ант. В этом случае можно просмотреть каждый ответ, прежде чем добавлять запись. Вы также точно знаете, сколько ответов получили и можете проверить ошибки до того, как данные попадут в вашу таблицу. Таким образам, ручная обработка — лучший выбор.

Для ручной обработки требуется больше усилий, но это по-настоящему безопасный вари­ант. В этом случае можно просмотреть каждый ответ, прежде чем добавлять запись. Вы также точно знаете, сколько ответов получили и можете проверить ошибки до того, как данные попадут в вашу таблицу. Таким образам, ручная обработка — лучший выбор.

Рис. 19.15. Если вы выбрали автоматическую обработку ответов, в этом диалоговом окне можно задать ряд параметров

11. Если используется автоматическая обработка, щелкните кнопкой мыши ссылку Задать свойства, управляющие автоматической обработкой ответов (Set properties to control the automatic processing of replies) для отображения диалогового окна Параметры сбора данных с помощью электронной почты (Collecting Data Using E-mail Options) (рис. 19.15). Задайте нужные параметры и щелкните мышью кнопку ОК.

Вы можете управлять следующими параметрами.

□ Флажок Запретить ответы от пользователей, которым не посылалось сообщение

(Discard replies for those to whom you did not send the message) позволяет игнориро­вать сообщения от людей, которым вы не посылали писем по электронной почте.

  • Флажок Принимать несколько ответов от одного получателя (Accept multiple re­ plies from each recipient) позволяет отправителям отвечать столько раз, сколько они захотят. При каждом получении сообщения программа Access добавляет запись в таблицу. Это имеет смысл, если вы, скажем, собираете список вещей, которые ваши друзья хотят продать на групповой распродаже ненужных домашних пожитков. Данный вариант лишен смысла, если вы накапливаете персональные данные группы холостяков, поскольку каждому из них отводится одна запись.

  • Флажок Разрешить несколько строк в ответе (Allow multiple rows per reply) действует, только если применяется программа InfoPath. С ее помощью можно представить в одной форме данные, предназначенные для нескольких записей (если этот параметр установлен).

  • Флажок Разрешить только обновление существующих данных (Only allow updates to existing data) действует, только если выполняется обновление (см. пункт А). В этом случае можно установить флажок для того, чтобы помешать пользователям добавлять новые записи. И снова этот параметр доступен только при использовании программы InfoPath.

  • Поле Число обрабатываемых ответов (Number of replies to be processed) позволяет остановить обработку после получения определенного числа ответов. С этого мо­мента программа Access игнорирует все ответы (если вы не выберете ручную обра­ботку ответов, как описано в следующем разделе).

  • Поле Дата и время остановки (Date and time to stop) позволяет остановить обработ­ку в определенный момент времени. Ответы, которые придут позже, будут игнори­роваться, хотя их можно обработать вручную.

12. Щелкните мышью кнопку Далее (Next).

В следующем окне выводится запрос о том, как вы хотите предоставлять адреса элек­тронной почты.

13. Выберите вариант предоставления адреса электронной почты и затем нажмите кнопку Далее.

Выберите вариант Ввод адресов электронной почты в Microsoft Office Outlook (Enter the email addresses in Microsoft Office Outlook), если хотите вводить адреса электронной почты ваших получателей (или выбирать их из Адресной книги). Затем переходите к пункту 15.

Выберите вариант Использовать адреса электронной почты, хранящиеся в поле в базе данных (Use the email addresses stored in a field in the database), если хотите извлекать адреса электронной почты из таблицы.

Если вы обновляете таблицу, то не увидите этого этапа. Вы всегда должны извлекатьадреса из таблицы.

14. Если адреса электронной почты предоставляются из таблицы, нужно сообщить программе Access, какие таблицу и поле использовать для этого. Затем щелкните мышью кнопку Далее (Next).

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

Можно извлекать адреса из текущей таблицы (если выполняются обновления записей) или другой связанной таблицы (в случае обновления или добавления записей). Если информация обновляется в таблице Bachelors, можно использовать поле Email в этой таблице. Если же создается список проектов, каждый из которых связан с записью о ме­неджере проекта, адреса электронной почты можно извлечь из таблицы ProjectManagers и разрешить пользователям создавать связанные записи в таблице Projects.

15. Настройте до мелочей электронное сообщение, которое собираетесь отправлять, и щелкните мышью кнопку Далее (Next).

Можно изменить текст в поле Тема (Subject) и Введение (Introduction).

16. Вы добрались до последнего этапа. Щелкните мышью кнопку Создать (Create) и приготовьтесь к отправке вашего сообщения.

После щелчка мышью кнопки Создать программа Access создает форму и загружает ее в новое сообщение, которому не терпится отправиться в путь (рис. 19.16).

Если был выбран вариант извлечения адресов электронной почты из таблицы, вы уви­дите эти адреса в полях То... (Кому...) Сс... (Копия...). В противном случае строка То (Кому...) остается пустой, и ваша задача — заполнить ее правильными адресами. (Вставляйте столько адресов, сколько нужно, отделяя один от другого точкой с запя­той.) Если вы хорошо знакомы с программой Outlook, можно включить в этот перечень список рассылки. Вы также можете внести последние изменения в ваше сообщение.

17. Как только корректные адреса электронной почты внесены, щелкните мышью кнопку Send (Отправить) для пересылки сообщения.

Оно отправлено. Ваша работа завершена (до тех пор, пока кто-то не получит его и не пошлет ответ).

Для заполнения ответа адресату нужно щелкнуть мышью кнопку Reply (Ответить), вве­сти значения в поля ввода и затем щелкнуть мышью кнопку Send (Отправить) для возврата вам заполненной формы.

Ручная обработка ответов

Если вы предпочли ручную обработку, необходимо периодически проверять папку Inbox (Входящие) программы Outlook для поиска ответов. Когда ответ найден, щелкните его правой кнопкой мыши и выберите команду Export data to Microsoft Office Access (Экспорт данных в Microsoft Access). Она появляется, только если щелкнуть правой кнопкой мыши сообщение, которое программа Outlook распознает как заполненную фор­му Access (рис. 19.17).

Если программа Access успешно импортирует сообщение, электронная почта перейдет в папку Ответы для сбора данных Access (Access Data Collection Replies) (или в ту папку, которую вы задали в пункте 9). Программа Outlook отобразит подтверждающее сообщение, которое извещает о том, что все прошло хорошо.

Если найдено сообщение, которое программа Access не может обработать, вам придется решать, как с ним быть. Проблемы могут возникнуть из-за значений, не прошедших провер­ку на значения, дублирующихся значений полей, в которых дублирование запрещено, и зна­чений, не соответствующих заданным типу данных или размеру поля.

Рис. 19.17. Выберите этот вариант контекстного меню, и текущее сообщение отправится в программу Access, которая поместит его в новую запись в таблице Bachelors

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

  • Удалить сообщение и забыть о нем. Вы можете применить этот подход, если обнаружили явно некорректное сообщение или сообщение, дублирующее уже имеющуюся в таблице запись.

  • Запросить корректировку. Отправить форму адресату и попросить его попробовать еще раз.

  • Ввести корректные данные вручную. Если вы можете исправить неверные данные, проблему можно устранить самостоятельно. В этом случае используйте лист данных программы Access для добавления записи, которую нужно было бы создать.

Автоматическая обработка ответов

Если был выбран вариант автоматической обработки, больше никаких действий предпри­нимать не нужно. По мере поступления ответов в вашу папку Inbox (Входящие) программа Access вставляет данные в таблицу без какого-либо уведомления вас об этом. Неплохо почаще проверять таблицу, чтобы убедиться в том, что вставленные данные не содержат явных ошибок. Нужно также просматривать папку Inbox (Входящие) в программе Outlook для обнаружения сообщений, которые Access не смогла обработать, например те, в которых со­держатся некорректные данные.

Вы поймете, что сообщение не было обработано, если увидите его в папке Inbox (Входя­щие) с красным квадратиком или пустым значением в столбце Categories (Категории). В этой ситуации можно попробовать применить все варианты устранения проблем, описан­ные в предыдущем разделе.

Примечание

Можно применить еще один метод лечения проблематичных электронных сообщений. Если запись не была обработана из-за временно возникшей проблемы (например, БД была открыта в этот момент с монопольным доступом или был недоступен диск, на котором хранится БД), можно попросить программу Access попытаться обработать это сообщение еще раз. Для этого щелкните его правой кнопкой мыши и выберите команду Export data to Microsoft Office Access (Экспорт данных в Microsoft Access).

Управление параметрами вашего сбора данных с помощью электронной почты

После того как вы отправили сообщение, вся информация об адресате, заданных ему вопро­сах и т. д. сохраняется в вашей БД.

Рис.19.18. Щелкните мышью кнопку Параметры сообщений для вывода на экран диалогового окна, в котором включается или отключается автоматическая обработка и корректируется способ ее функционирования. Щелкните мышью кнопку Повторить отправку этого сообщения для отправки вашей формы другой группе пользователей. Наконец, щелкните мышью кнопку Удалить это сообщение, когда получите данные, и оно вам больше не требуется

Программе Access нужны эти сведения для того, чтобы знать, как обрабатывать ответы.

Вы можете выполнить несколько действий для обеспечения гладкости процесса. Напри­мер, можно отправить сообщения по электронной почте большему числу пользователей, включить или отключить автоматическую обработку ответов и удалить всю информацию электронной почты. Для выполнения любой из этих задач выберите на ленте Внешние дан­ные → Сбор данных → Управление ответами (External Data Collect Data Manage Re­plies). На экране появится окно Управление сообщениями сбора данных (Manage Data Collection Messages), показанное на рис. 19.18. (Название команды — Управление ответа­ми — вводит в заблуждение. На самом деле с ее помощью вы ничего не делаете с ответами. Вместо этого вы настраиваете параметры исходного сообщения электронной почты.)

Подсказка

Даже если сбор данных завершен, нет причины удалять настройки электронной почты. Почему бы не сохранить их на случай, если когда-нибудь в дальнейшем вы решите повторить сбор тех же данных?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]