Реализация построенной модели данных.
Для построения модели данных был использован MS Access 2003, который в настоящее время является одной из самых популярных среди настольных программных систем управления базами данных.
Структура таблиц.
В процессе создания были сконструированы таблицы базы данных Access, соответствующие информационным объектам разработанной модели данных.
1.МедУчр и Страхователи.
Для оптимизации работы страховых фирм были включены две таблицы-справочника, один из которых содержит список всех медицинских учреждений (МедУчр), а другой – список всех страхователей (Страхователи). Каждый из справочников состоит из одного поля. Поэтому именно они являются ключевыми полями в соответствующей таблице.
2.ДоговорСтрахования.
В таблице ДоговорСтрахования хранятся данные по договору страхования. Каждый договор страхования имеет уникальный номер. Данная таблица имеет простой первичный ключ – НДоговора (номер договора страхования). Эта таблица имеет связь один-ко-многим с таблицами Застрахованные, ДоговорПрограмма, МедДоговор, СтрахВзносы, связаные по полю НДоговора.
Застрахованные.
В таблице Застрахованные хранятся данные по каждому застрахованным. При заключении договора страхования каждому застрахованному выдается медицинский полис, имеющий уникальный номер. В связи с этим именно НПолиса (номер полиса) является первичным ключом данной таблицы. Эта таблица имеет связь один-ко-многим с таблицей Лечения, связаные по полю НПолиса.
ДоговорМедУчр.
В таблице ДоговорМедУчр хранятся данные по договорам с медицинскими учреждениями. Предполагается, что каждый договор с медицинским учреждением имеет уникальный номер. Таким образом, зная номер договора с медицинским учреждением, однозначно можно определить следующее: даты действия данного договора, название, адрес, телефон и факс медицинского учреждения, с которым заключен данный договор. В связи с этим, таблица ДоговорМедУчр имеетпростой первичный ключ НДоговорМедУчр.
5.МедДоговор.
Из таблицы МедДоговор можно узнать следующее: медицинские учреждения, соответствующие определенному договору страхования. Предполагается, что каждому договору страхования может соответствовать несколько медицинских учреждений из справочника МедУчр (в нем перечислены все медицинские учреждения, с которыми страховая фирма имеет договор) и одни и те же медицинские учреждения могут соответствовать разным договорам страхования. Таким образом, таблица МедДоговор имеет составной первичный ключ НДоговора и МедУчр.
6.СтрахВзносы.
Таблица СтрахВзносы хранит информацию о страховых взносах для каждого договора. Предполагается, что в день может быть оплачен лишь один денежный взнос для определенного номера договора страхования. Таким образом, по номеру договора и дате оплаты однозначно определяется сумма взноса. Поэтому таблица СтрахВзносы имеет составной первичный ключ НДоговора и ДатОплаты (дата оплаты очередного страхового взноса).
7.Счета.
После обращения застрахованных лиц в конкретные медицинские учреждения, последние присылают счет для оплаты, по которому страховая фирма должна произвести оплату оказанных услуг в пределах лимита каждого из данных застрахованных. Эта информация содержится в таблице Счета. Предполагается, что поступлении счета из медицинского учреждения за оказании услуг этому счету присваивается уникальный входящий номер. В связи с этим, таблица Счета имеет простой первичный ключ НВходСчета. Эта таблица имеет связь один-ко-многим с таблицей Лечения по полю НВходСчета.
8.Лечения.
Таблица Лечения содержит информация по оказанным услугам при наступлении страхового случая. Данная таблица имеет составной первичный ключ НВходСчета и НПолиса.
Структуры форм.
Следующим этапом разработки БД было создание форм, через которые можно осуществлять первоначальную загрузку данных во взаимосвязанные таблицы БД, просмотр данных, а также их корректировку. Работая с созданными формами, пользователь может добавлять и удалять записи в таблицах, изменять значения в полях. В форме также будет осуществляться контроль вводимых данных, за счет установленных свойств на значения некоторых полей.
Созданные формы обеспечивают удобную работу пользователя, корректный ввод взаимосвязанных данных.
На каждой форме созданы кнопки поиска и закрытие формы
. Пользователь может просматривать информацию, последовательно переходя по записям с помощью кнопок перехода, расположенных, в нижней части окна. Добавление новой записи осуществляется нажатием кнопки
.
Рассмотрим формы, отвечающие за ввод, редактирование и отображение информации, хранящейся в таблицах базы данных.
1. Застрахованные. Источником данных для этой формы являются таблицы Застрахованные и Лечения. Форма содержит следующие элементы управления: поля, надписи и кнопки.
2. Договора. Эта форма состоит из двух подчиненных форм, расположенных на вкладках. На первой вкладке располагаются все необходимые сведения о договорах страхования. Источником данных для формы, расположенной на первой вкладке, являtтся таблица Взносы. Эта форма состоит из двух страниц. Первая страница показывает все необходимые сведения о договоре страхования:
вторая – содержит список медицинских учреждений, в которые могут обращаться застрахованные по данному договору:
Переход по страницам осуществляют нажатием кнопок “Мед. учреждений” и “Договора страхования”. Для этого нужно было создать два макроса и каждую кнопку связать с одним из них. Для этого выбирается макрокоманда “На страницу” и указывается номер страницы, на которую нужно сделать переход. И уже в свойствах данной формы ставиться условие, что при нажатии той или иной кнопки происходит переход на ту или иную страницу. Это очень удобно при работе с данной формой. Каждая страница представляет собой отдельный блок, и за счет этого на экране нет загромождения данными. И еще для пользователя к каждой кнопки существуют всплывающая подсказка.
На второй вкладке располагаются данные по договорам с медицинскими учреждениями:
Источником данных для другой формы, расположенной на второй вкладке, являются таблица ДоговорМедУчр:
3. Счет. Источником данных для этой формы являются таблица Счета:
4. ИтогПоДоговору. Источником данных для этой формы являются таблицы ДоговорСтрахования, Лечения и Застрахованные,
5. ИтогСчетаЛечения. Источником данных для этой формы являются таблицы Счета, Лечения и Застрахованные,
Теперь обратим внимание на форму, упрощающая работу пользователя с базой данных – главная кнопочная форма:
При открытии базы данных «Добровольное медицинское страхование Антарес» на экран выводится главная кнопочная форма. На ней расположены кнопки для работы с информацией, хранящейся в базе данных: «Застрахованные», «Договора», «Запросы», «Справочники» и «Счета». Кроме того, для удобства работы с программой есть кнопка, отвечающая за открытие окна базы данных и кнопка закрытия главной формы
. Доступ пользователя к хранящейся в таблицах базы данных информации, производится посредством кнопок, открывающих формы «Застрахованные», «Договора», «Запросы», «Справочники» и «Счета».
Нажатием кнопки «Справочники» открывается форма Справочники, состоящая из двух форм, расположенных на вкладках. На первой вкладке хранится список медицинских учреждений, с которыми страховое общество имеет договор:
на второй – список страхователей:
Нажатием кнопки «Запросы» открывается форма «Запросы», содержащая их перечень:
Структура запросов.
Следующим этапом разработки было создание запросов. К запросам относятся следующее:
1.Итоговая выплата медицинскому учреждению за период. Его конструктор выглядит следующим образом:
Данный запрос основан на таблицах МедУчр и Счета. В этом запросе вводятся медицинское учреждение и период, за который необходимо рассчитать выплаты.
2.Сведения об уволенных на текущее время. Его конструктор выглядит следующим образом:
Для выполнения данного запроса выполняется выборка застрахованных записей из таблицы Застрахованные, для которых поле дата увольнения не пустое.(напиши для чего нужен остаток, т.е для просмотра остаточных денег на момент увольнения.)
Данный запрос основан на таблице Застрахованные и на запросе Остаток. Запрос Остаток вычисляет на текущее время суммарную начисленную и выплаченную суммы и остаток для каждого застрахованного.
3.Разница между заявленной суммой и выплаченной суммой по застрахованным. Его конструктор выглядит следующим образом:
Для выполнения данного запроса выполняется выборка записей из таблицы Счета, для которых разность между заявленной суммой и выплаченной суммой по застрахованным отлична от нуля.
4.Информация о договоре страхования: выплаченная сумма и остаток по договору на текущее время. Его конструктор выглядит следующим образом:
Данный запрос основан на таблицах ДоговорСтрахования, Застрахованные и Лечения. Данный запрос вычисляет на текущее время суммарную начисленную и выплаченную суммы и остаток для каждого договора страхования.
5.Расторженные договоры страхования на текущее время. Его конструктор выглядит следующим образом:
Данный запрос основан на таблице ДоговорСтрахования. Для выполнения данного запроса выполняется выборка записей из таблицы ДоговорСтрахования, для которых поле даты расторжения не пусто.
Схема данных.