Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Роддом.doc
Скачиваний:
115
Добавлен:
01.05.2014
Размер:
878.08 Кб
Скачать

3.5. Макросы

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

Макрос «От родов к стационару» производит переключение от формы Роды к форме Стационар, при этом в форме Стационар открывается соответствующая запись о пребывании роженицы в стационаре (то есть та запись, к которой и относятся данные роды).

Рис. 26. Вид отчета «Загрузка палат»

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

Макрос запускается при нажатии на кнопку «Стационарный учет» на форме Роды. Текст макроса:

Рис. 27. Отчет «Роды за период» в окне конструктора

Рис. 28. Отчета «Роды за период»

Рис. 29. Отчет «Роженицы за период» в окне конструктора

Рис. 30. Фрагмент отчета «Роженицы за период»

Рис. 31. Отчет «Сводная статистика за период» в окне конструктора

Рис. 32. Вид отчета «Сводная статистика за период»

Рис. 33. Отчет «Список пациенток по палатам» в окне конструктора

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

Макрос запускается при двойном щелчке мышью на поле Роженица на форме Стационар (событие «Двойное нажатие кнопки» для поля Роженица).

Текст макроса:

Рис. 34. Вид отчета «Список пациенток по палатам»

Макрос «Перейти от стационара к родам» более сложный: он должен проанализировать, существует ли запись о родах, соответствующая данному пребыванию в стационаре, и если это не так, запросить пользователя, следует ли создавать новую запись. Для этого используется анализ условий в макросе.

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

Для выдачи окна с вопросом и кнопками «Да» и «Нет» используется функция MsgBox. Этой функции в качестве аргументов передается текст сообщения, код набора кнопок (для размещения в диалоговом окне кнопок «Да» и «Нет» предназначен код 4), а также текст заголовка диалогового окна. ФункцияMsgBoxвозвращает код нажатой пользователем кнопки. Для кнопки «Нет» этот код равен 7. Если пользователь отказался от создания новой записи, макрос просто возвращает управление форме Стационар. В противном случае создается новая запись, в нее записывается код пребывания в стационаре из формы Стационар и текущие дата и время (дату и время пользователь может отредактировать).

Макрос запускается при нажатии кнопки Роды на форме Стационар.

Текст макроса:

Макрос «Стационар подробно» осуществляет переключение от формы Роженица к форме Стационар с переходом к соответствующей записи о пребывании роженицы в стационаре. Макрос запускается двойным щелчком мыши внутри поля «Описание» той записи о пребывании роженицы в стационаре, которую необходимо просмотреть более подробно. Для такого запуска макрос назначается обработчиком события «Двойное нажатие кнопки» для поля Описание формы «Пребывание в стационаре». Текст макроса:

Соседние файлы в предмете Базы данных