Отправка данных по электронной почте

 

Одна из скрытых возможностей макроязыка программы Access — команда ОтправитьОбъект (SendObject) — универсальная команда для отправки сообщений электронной почты.

 

 

ОтправитьОбъект работает с вашей программой элекронной почты

 

Макрокоманда ОтправитьОбъект использует стандарт, именуемый MAPI (Messaging Application Programming Interface, интерфейс прикладного программирования для электронной почты), т. е. позволяет вам применять любую Windows-программу электронной почты. Неважно, предпочитаете вы Outlook, Eudora, Pegasus или что-то более экзотическое — ОтправитьОбъект способна запустить вашу программу электронной почты и использовать ее для отправки сообщения. Если вы не знаете, какая программа используется по умолчанию на вашем компьютере для отправки электронной почты, это легко установить.

3 Вы можете использовать значения по умолчанию для всех остальных аргументов.

 

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

Команда ОтправитьОбъект на удивление универсальна. Ее можно применять в следующих случаях.

¦     Для отправки по электронной почте объекта БД другому пользователю. Объект БД преобразуется в другой выбранный вами формат, например электронную таблицу Excel, Web-страницу на языке HTML или даже подготовленный для вывода на печать PDF-файл (если вы установили свободно распространяемый дополнительный модуль "Save As PDF" (сохранить как PDF-файл), описанный в разд. "Получение дополнительного модуля "ave As PDF’" главы 10). Объект, который вы хотите послать, задается с помощью аргументов Тип объекта и Имя объекта.

¦     Для отправки по электронной почте текущего объекта БД. В этом случае вы получаете неограниченно гибкий макрос, способный отправить любые данные, которые вы просматриваете в настоящий момент. Единственное ограничение — знание типа объекта, который планируется отправить, перед вами полная таблица, запрос, выделяющий важную информацию, или отчет с группировкой и промежуточными итогами. Просто задайте соответствующий тип в аргументе Тип объекта, а аргумент Имя объекта оставьте пустым.

¦     Для отправки обычного электронного сообщения. Для этого оставьте пустыми оба аргумента: Тип объекта и Имя объекта. Вы можете написать сообщение в свойстве Сообщение (Message Text). Этот метод удобен для оповещения кого бы то ни было о том, что вы вставили новые данные или внесли значительные корректировки.

 

 

Примечание

Команда ОтправитьОбъект может отправлять только по одному объекту. Если нужно отправить несколько объектов БД, придется применить ее несколько раз. Для отправки трех отчетов вам понадобятся три электронных сообщения с тремя вложенными файлами. В некоторых случаях вы сможете обойти это ограничение, создав изобретательный запрос, который собирает вместе всю нужную вам информацию и позволяет отправить один комплект результатов.

 

 

Самое приятное то, что команду ОтправитьОбъект можно использовать в ненадежных БД при соблюдении следующего правила: у аргумента Изменение сообщения (Edit Message) должно быть значение Да. В этом случае, когда выполняется макрос, у вас есть последняя возможность просмотреть сообщение, изменить любой текст и отменить его отправку, если чем-то не довольны. Если же у аргумента Изменение сообщения значение Нет, макрокоманда ОтправитьОбъект отправляет сообщение, не предоставляя возможности его просмотра и корректировки. Такое поведение считается рискованным, поэтому программа Access не допускает его в ненадежных БД.

В приведенном в табл. 15.3 макросе два запроса с данными о продажах преобразуются в электронные таблицы Excel. Затем они посылаются ведущим руководителям.

 

Таблица 15.3. Макрос отправки данных по электронной почте

 

Макрокоманда

Важные аргументы4

Описание

ОтправитьОбъект

Тип объекта: Запрос Имя объекта: MonthlySalesTotals

Формат вывода: Excel Workbook (.xlsx)

Кому: headhoncho@acme.com Тема: Monthly Update

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

Изменение сообщения: Да

Отправляет сообщение электронной почты руководителю headhon-cho@acme.com с данными из запроса MonthlySalesTotals (месячные итоги продаж), преобразованного в рабочую книгу Excel. Тема сообщения и его текст заданы в аргументах Тема и Сообщение. У вас есть возможность подправить их перед отправкой сообщения. На рис. 15.14 показано это действие

ОтправитьОбъект

Тип объекта: Запрос Имя объекта: CustomerSalesTotals

Формат вывода: Excel Workbook (.xlsx)

Кому: headhoncho@acme.com Тема: Monthly Update

Сообщение: Здесь представлены итоги по клиентам

Изменение сообщения: Да

Отправляется второе электронное сообщение руководителю headhon-cho@acme.com с данными из запроса CustomerSalesTotals

 

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

 

Подсказка

Не хватает места для редактирования сообщения? Нажмите комбинацию клавиш <Shift>+<F2> во время редактирования свойства Сообщение для отображения Окна ввода большего размера, в котором видны одновременно несколько строк.

4 Вы можете использовать значения по умолчанию для всех остальных аргументов.

 

 

Рис. 15.14. Когда у свойства Изменение сообщения значение Да, у вас есть последняя возможность просмотреть (или изменить) сообщение перед отправкой

 

 

 

 

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100