Создание и поручение задачи

После того как все списки инициализированы, переходим непосредственно к созданию задачи и ее поручению писателю. Оформим реализацию данной задачи в виде процедуры, которая будет вызываться нажатием клавиши Назначить задачу нашего диалогового окна.
Но прежде всего проверим, какой информацией мы будем обладать после окончания работы с диалоговым окном, а какую будет необходимо собрать дополнительно. Итак, для составления темы задачи нам достаточно серии, названия книги и автора. Для указания получателя задачи также достаточно имени писателя, поскольку Outlook автоматически соотнесет с ним адрес электронной почты. И наконец, последний параметр — длительность — хоть и получен, но не имеет смысла без установки даты начала задачи. Для разрешения этого вопроса за дату начала задачи мы примем дату ее назначения. Комментарием к задаче будет имя пользователя, создавшего поручение, — ответственного редактора.
Создание и поручение задачи
Sub AssignTask()
Dim tsk As Taskltem
tsk = Creatltem(olTaskltem)
With tsk
.Subject = series + «: » + authors + » » +title
.Body = «Ответственный редактор: » + .Owner
.StartDate = Now
.DueDate = .StartDate + duration
.Assign
.Recipients.Add authors
. Send End With End Sub
Прокомментируем эту программу. Сначала объявляется переменная — ссылка на объект Задача. После чего посредством функции createitem ей присваивается значение новой задачи. И далее планомерно заполняются поля задачи, при этом для заполнения текстовых полей используется операция сложения строк, а для задания начала задачи вызывается стандартная функция NOW. Для задания конца задачи мы прибавляем к дате старта количество месяцев, указанных в качестве продолжительности проекта.
Наша программа почти полностью готова, осталось лишь связать вызов процедуры AssignTask с реакцией на событие щелкнуть по кнопке Назначить задачу. Для этого перейдите в представление формы и дважды щелкните по кнопке, после чего автоматически откроется окно редактора кода с заглушкой процедуры — реакции на событие.
Обработчик процедуры — реакции на событие
Private Sub CommandButtonl_Click()
‘Обработчик нажатия кнопки Назначить задачу
AssignTask
TaskForm.Hide
End Sub
Private Sub CommandButton2_Click() ‘Обработчик нажатия кнопки Отмена
TaskForm.Hide End Sub
Комментарий здесь только один, переменная TaskForm — это имя нашего диалогового окна, чей метод Hide вызывается для закрытия. Итак, программа почти полностью готова, можно осуществить ее запуск и убедиться в ее работоспособности. После нажатия клавиши <F5>, тестового заполнения полей диалогового окна и нажатия кнопки Назначить встречу появится диалоговое окно системы безопасности Outlook. Разрешите доступ к ресурсам Outlook, после чего появится предупреждение об ошибке.

Его появление вызвано ошибкой в коде нашей программы, о поиске которой и пойдет дальше речь.