Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода ИТ.doc
Скачиваний:
12
Добавлен:
07.11.2018
Размер:
2.76 Mб
Скачать

Задания для самостоятельной работы

  1. Обеспечить автоматическое занесение данных об авторах в следующей форме:

  2. АВТОР: фамилия имя отчество

  3. АДРЕС: …

  4. ТЕЛЕФОН: …

  5. ПАСПОРТ: … ПОДПИСЬ _______________ ……

  6. При заполнении формы “Договор с автором” предусмотреть заполнение полей “Объем в страницах”, “Дата завершения проекта” и добавление этих данных в базу при добавлении нового проекта или при выводе информации о существующем проекте обеспечить вывод этой информации.

  7. Создать форму предназначенную для удаления автора из базы данных. Выбор автора предусмотреть из списка.

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

Лабораторная работа № 12

Интеграция приложений ms Access, ms Word

и MS Outlook

Теоретическая часть

Таблица 12.1.

Основные объекты Outlook

Объект

Тип

Описание

1

2

3

Application

Объект

Ссылается на активное приложение MS Outlook. Используется для управления приложением.

NameSpaсe

Объект

Объект представляет собой абстрактный корневой объект для любого источника данных.

PropertyPages

(PropertyPage)

Семейство и объект

Семейство объектов PropertyPage, которые содержат специальные вкладки со войствами, добавленные к диалоговому окну Параметры в Outlook.

Explorers

(Explorer)

Семейство и объект

Семейство объектов Explorer – набор всех окон , в которых отображается содержимое папки.

Inspectors

(Inspector)

Семейство и объект

Семейство объектов Inspector – набор всех окон, в которых отображаются элементы Outlook. Элемент(item) – это основной модуль хранения данных в Outlook (подобно файлу в других программах). В число элементов входят почтовые сообщения, встречи, контакты, задачи, и т.д.

AddressLists

(AddressList)

Семейство и объект

Семейство объектов, представляющих адресные книги

Folders(MAPIFolders)

Семейство и объект

Семейство MAPIFolders объектов, которое представляет любую из доступных папок в их подмножестве на одном уровне дерева папок

MAPIFolder

Объект

Представляет папку Outlook

Практическая часть Задание на выполнение.

  1. Сохранить договор в документе с шаблоном Normal.

  2. Создать и отправить электронные письма авторам выбранного проекта. К письмам присоединить документ договора.

Для выполнения заданий необходимо в модуль Dbfunction добавить процедуры:

SaveContract (сохранить договор) и SendContract (отправить договор).

Сохранение документа.

Для завершения разработки приложения следует реализовать последнюю команду Сохранить меню Договор. Она выполняется после заполнения договора. Если сохранить документ, созданный на основе разработанного шаблона, то вся заложенная в этом шаблоне-приложении функциональность, естественно, сохранится и в сохраненном документе,- при его последующих открытиях также будут скрываться панели инструментов приложения Word, а основное меню – заменяться пользовательским меню. Такая ситуация может не устроить пользователя приложения . В реализации команды Сохранить эта проблема решается следующим образом: создается новый документ Word (на основе стандартного шаблона Normal.DOT), содержимое заполненного договора копируется в Буфер обмена системы Windows и вставляется в новый документ, который уже и сохраняется под именем номер_договора.doc в папке расположения шаблона-приложения. Указанные действия реализуются в процедуре

SaveContract() модуля Dbfunction.

Public Sub SaveContract()

Получить полный путь к шаблону.

S=ActiveDocument.AttachedTemplate.Path

Получить имя файла с договором (номер договора)

NameContract=ActiveDocument.FormFields(“ContractNumber”).

_Result

Выделяем весь текст договора

Selection.WholeStory

Копируем выделенное в буфер обмена

Selection.Copy

Снять выделение всего документа

Selection.HomeKey Unit:=wdStory

Создаем новый пустой документ на основе шаблона Normal.

Он автоматически становится активным документом

Documents.Add DocumentType:=wdNewBlankDocument

Вставляем скопированный текст договора из буфера обмена в ‘этот новый документ

Selection.PasteAndFormat (wdPasteDefault)

путь = "C:\Авторский договор" & ActiveDocument.FormFields("ContractNumber").Result & ".doc"

Сохраняем документ. В имя документа добавляем номер договора

ActiveDocument.SaveAs (путь)

Закрываем документ

ActiveDocument.Close

For Each mn In CommandBars("Меню Authors").Controls

If mn.Caption = "&Договор" Then

For Each cmd In mn.Controls

If cmd.Caption = "&Сохранить..." Then cmd.Enabled = False

If cmd.Caption = "&Разослать" Then cmd.Enabled = True

Next

End If

Next

End Sub

Public Sub SendContract()

Dim ola As New Outlook.Application

Dim itm As Outlook.MailItem ‘Почтовое сообщение

Запрос возвращает информацию об авторах проекта с кодом

из поля “ContractNumber” договора

comd.CommandText = "SELECT * FROM авторы INNER JOIN _

занятость ON авторы.authorCode = занятость.автор WHERE _

занятость.проект =_

" & ActiveDocment.FormFields("ContractNumber").Result

заполняем набор записей rs результатом выполнения запроса comd

rs.Open comd, , adOpenStatic, adLockBatchOptimistic

Переводим курсор на начало набора записей

rs.MoveFirst

Перебираем набор записей в цикле пока не достигнем конца

набора записей

Do Until rs.EOF

Создаем новое почтовое сообщение

Set itm = ola.CreateItem(olMailItem)

Заполняем поле тема

itm.Subject = "Договор"

Присоединяем к сообщению файл договора

itm.Attachments.Add "C:\Авторский договор" &_

ActiveDocument.FormFields("ContractNumber").Result & ".doc"

Добавляем новый электронный адрес.

Адрес автора берем из набора записей rs