Федеральное агентство по образованию
Санкт-Петербургский государственный политехнический университет
Факультет инноватики
КУРСОВОЙ ПРОЕКТ
БАЗА ДАННЫХ АПТЕКИ ГОТОВЫХ ЛЕКАРСТВЕННЫХ ФОРМ
Разработал:
студент гр.2221-1Т.Е. Масликова
Руководитель:
доцент, к. т. н. В.И. Аблязов
Санкт-Петербург, 2009
Оглавление
1.1 Выбор темы курсового проекта и описание предметной области БД
1.2 Описание таблиц и логической структуры БД
1.3 Проектирование таблиц
1.4 Схема данных
1.5 Детальное описание полей подсистем
1.6 Заполнение таблиц информацией
1.7 Разработка запросов
1.8 Создание форм
1.9 Формирование отчетов
1.10 Инструкция пользователю
Заключение
Литература
1.1 Выбор темы курсового проекта и описание предметной области БД
Цель моей работы — создание базы данных аптеки готовых лекарственных форм для повышения эффективности ее работы. Аптека — это важное звено лекарственного обеспечения. Аптеки готовых лекарственных форм занимаются продажей лекарств, изготовленных на заводах фирм-производителей. Каждое лекарственное средство имеет свое назначение, весь ассортимент лекарств классифицирован по группам: жаропонижающие, обезболивающие, сердечно-сосудистые и т.п.
БД аптеки должна включать в себя восемь таблиц, предназначенных для эффективности работы предприятия и автоматизации обработки результатов его деятельности: Препараты, Назначения, Поступления, Поставщики, Клиенты, Сотрудники и Лечение. Таблицы связаны между собой, что обеспечивает целостность данных. База данных предназначена, в первую очередь, для сотрудников — полный учет товаров аптеки, контроль работы аптеки в целом; для клиентов — удобный поиск нужного препарата; для поставщиков — контакты каждого из сотрудников.
Разрабатываемая СУБД включает в себя следующие подсистемы:
Препараты
Назначения
Поступления
Поставщики
Клиенты
Сотрудники
Лечение
1.2 Описание таблиц и логической структуры БД
Подсистема Препараты включает в себя все медикаменты, которые поступают на склад или заказываются клиентами. Каждому препарату присвоен уникальный код (первичный ключ). Характеристики препарата включают в себя различные поля, в том числе: единицу измерения (например, в ампулах по 25 мл), цену закупочную, цену реализации и др.
Подсистема Назначения дает характеристику препаратов, определяет их группу принадлежности. Отдельная группа предназначена для больных с определенным заболеванием какого-то органа или организма в целом. Каждой группе присваивается уникальный код (первичный ключ). В этой подсистеме дается полное описание групп препаратов, их действие и то, как может выглядеть препарат данной группы.
Подсистема Сотрудники содержит информацию о сотрудниках аптеки. Полями таблицы являются все персональные данные сотрудника: ФИО, дата рождения, дата найма, должность, адрес, телефон, фотография, личные данные. Сотрудники работают в аптеке, обслуживают клиентов, отправляют заказы. Каждому сотруднику присваивается уникальный код (первичный ключ).
Подсистема Поставщики включает в себя информацию о поставщиках аптеки. Каждому поставщику присваивается уникальный код (первичный ключ). Характеристики поставщика представлены полями таблицы, такими как: название, представитель, его должность, адрес, город, страна и контактный телефон.
Подсистема Клиенты содержит информацию о клиентах аптеки (название, представитель, контактная информация и т.п.). Каждому клиенту присваивается уникальный код (первичный код).
Подсистема Заказы дает характеристику заказов, которые поступают в аптеку от клиентов. Каждый заказ обрабатывает сотрудник аптеки. Каждому заказу соответствует уникальный код (первичный ключ).
Подсистема Заказано включает в себя характеристику полученных заказов. Вычисляется цена с учетом скидки.
Подсистема Лечение содержит информацию о болезнях, которые необходимо лечить с помощью лекарственных препаратов.
1.3 Проектирование таблиц
Препараты:
/>
Назначение препаратов:
/>
Сотрудники:
/>
Поставщики:
/>
Клиенты:
/>
Заказы:
/>
Заказано:
/>
Лечение:
/>
1.4 Схема данных
Взаимосвязь между представленными выше подсистемами показана на Рис.1.
/>
Рис.1. Схема данных
1.5 Детальное описание полей подсистем
Для начала рассмотрим некоторые свойства полей таблицы Препараты.
Название поля
Пример обозначения
Характеристика
Код препарата
1
Совпадения в поле не допускаются
Ключевое поле
Название препарата
Арбидол
Тип данных — Текстовый
Обязательный ввод данных в поле
Код назначения
6676544А
Текстовый тип данных
Обязательный ввод данных в поле
Код поставщика
123
Числовой тип данных
Допускаются совпадения в поле
Единица измерения
50 упаковок по 10 таблеток
Текстовый тип данных
Цена закупочная
145 р
Тип данных — денежный
Условие на значение >=0
Цена реализации
200 р
Тип данных — денежный
Условие на значение >=0
В подсистеме Назначение препаратов свойства полей следующие.
Название поля
Пример обозначения
Характеристика
Код назначения
12ак
Совпадения не допускаются
Ключевое поле
Группа
антибиотики
Обязательное поле
Описание
вещества природного или полусинтетического происхождения, подавляющие рост живых клеток, чаще всего прокариотических или простейших.
Текстовый тип данных
Допускаются совпадения
Изображение
Точечный рисунок
Поле объекта OLE
Характерные черты полей таблицы Сотрудники.
Название поля–PAGE_BREAK—-PAGE_BREAK–
Не допускаются пустые строки
Страна
Россия
Необязательное поле
Не допускаются пустые строки
Телефон
(812) 677-8098
Используется маска
(000) 000-0000
Факс
6757473
Обязательное поле
Тип данных — текстовый
Характерные черты полей таблицы Заказы.
Название поля
Пример обозначения
Характеристика
Код заказа
56752700
Ключевое поле
Длинное целое
Код клиента
6747473
Совпадает со значением поля «Код Клиента» в таблице «Клиенты».
Код сотрудника
3
Совпадает со значением поля «Код Сотрудника» в таблице «Сотрудники».
Дата размещения
23.12.2008
Обязательное поле
Дата назначения
01.02.2009
Тип данных — Дата/время
Дата исполнения
02.03.2009
Тип данных — Дата/время
Стоимость доставки
453, 00 р
Формат поля — Денежный
Получатель
Николаева О.Р.
Обязательное поле
Тип данных — текстовый
Адрес получателя
42 Compyon street
Необязательное поле
Город получателя
New York
Текстовый тип данных
Не допускаются пустые строки
Страна получателя
USA
Размер поля — 50
Обязательное поле
Некоторые характерные свойства полей подсистемы Заказано.
Название поля
Пример обозначения
Характеристика
Код заказа
657473
Совпадает со значением поля «Код Заказа» в таблице «Заказы».
Код препарата
17
Совпадает со значением поля «Код препарата» в таблице «Препараты».
Цена реализации
145, 00 р
Условие на значение >=0
Количество
18
Условие на значение >0
Скидка
15%
Сообщение об ошибке: «Необходимо ввести значение со знаком процентов»
В подсистеме Лечение свойства полей следующие.
Название поля
Пример обозначения
Характеристика
Болезни
сердечные
Обязательное поле
Код назначения
453АР
Совпадает со значением поля «Код назначения» в таблице «Назначения препаратов».
1.6 Заполнение таблиц информацией
Таблица Препараты.
В базе данных аптеки на каждую группу препаратов (антибиотики, антисептики и т.п.) приходится небольшое количество лекарственных средств, которые находятся на складе аптеки.
Единица измерения: либо упаковка, либо пузырек. В зависимости от фирмы и качества доставки цена закупочная и цена реализации отличаются друг от друга.
/>
Рис.2. Таблица «Препараты»
Таблица Назначение препаратов. Препараты делятся на фармакологические группы.
/>
Рис.3. Таблица «Назначение препаратов»
Таблица Сотрудники.
В штат аптеки входят
Заведующий-провизор имеет права заведующего отделением лечебно-профилактического учреждения и контролирует всю работу аптеки. Заведующий-провизор обязан контролировать четкую работу в аптеке по изготовлению, приему и отпуску лекарств по рецептам. Он контролирует снабжение медицинским имуществом лечебно-диагностические кабинеты, лаборатории; обеспечивает правильное хранение медикаментов, медицинского инструментария; контролирует расход медикаментов в отделениях лечебно-профилактического учреждения, особенно контролируя ядовитые, наркотические средства. Заведующий контролирует фармацевтический порядок в аптеке, соблюдение санитарно-гигиенических правил, составляет сметы на получение медицинского имущества.
Заместитель заведующего-провизора подчиняется непосредственно заведующему-провизору и при отсутствии последнего замещает его. Он обеспечивает контроль постоянного изготовления и отпуска лекарств и другого медицинского материала в отделение. Несколько раз в год сверяет наличие и работу (пригодность) медицинской аппаратуры и инструментария в кабинетах отделения. Осуществляет непосредственное участие в контроле выполнения техники безопасности и противопожарных мероприятий.
Провизор-аналитик должен иметь высшее фармацевтическое образование. Его назначение и увольнение контролируется заведующим-провизором аптеки. Он находится под начальством заведующего-провизора и заместителя провизора аптеки.
Провизор-технолог обязан регистрировать лекарства и другие медицинские средства, которые есть в наличии или которые отсутствуют в аптеке. Осуществляет контроль и проверку хранения, использования медицинских средств в отделениях, лабораториях, кабинетах; сообщает медицинскому (врачам) персоналу о наличии медицинских средств в аптеке.
Дефектар руководит изготовлением в аптеке полуфабрикатов, концентратов и перефасовкой медикаментов. продолжение
–PAGE_BREAK–
Фармацевт должен изготавливать лекарства по мере необходимости для отделений и по рецептам врачей, а также должен правильно подготовить и оформить лекарства перед их отпуском. Фармацевт должен периодически повышать квалификацию.
Фасовщица занимается расфасовкой и перефасовкой лекарственных, дезинфицирующих средств, аптечной и лабораторной посуды, выдачей перевязочных средств.
Санитар выполняет различную работу (мытье и обработку посуды, уборку помещений и др.).
Провизор-клиницист разрабатывает технологию изготовления лекарств, унифицирует ее.
Бухгалтер-фармацевт контролируется заведующим аптекой. Бухгалтер-фармацевт обеспечивает своевременный, правильный учет всего медицинского имущества, предметно-количественный учет ядовитых и наркотических средств, этилового спирта и др.
Инженер-техник по ремонту медицинской техники готовит к эксплуатации всю поступающую технику, осуществляет техническое обслуживание и различный ремонт медицинской и аптечной техники, повышает эксплуатационную надежность, производит профилактические осмотры аппаратуры, делает записи о проведенных ремонтах в паспортах аппаратов и регистрирует выработку их в процессе эксплуатации, следит за работой (правильной) медицинской и аптечной техники. Периодически инструктирует персонал по технике безопасности.
/>
/>
Рис.4. Таблица «Сотрудники»
Таблица Поставщики.
/>
Рис.5. Таблица «Поставщики»
Таблица Клиенты
/>
Рис.6. Таблица «Клиенты»
Таблица Заказы.
/>
Рис.7. Таблица «Заказы»
Таблица Заказано.
/>
Рис.8. Таблица «Заказано»
ТаблицаЛечение.
/>
Рис.9. Таблица «Лечение»
1.7 Разработка запросов
Запрос — это требование на отбор (выборку) данных, хранящихся в таблицах, или требование на выполнение определенных действий с данными.
В разрабатываемой СУБД представлены следующие запросы.
1) Запросы на выборку данных — возвращают данные из одной или нескольких таблиц и отображают их в виде таблицы.
Итоговая стоимость по количеству. Данный запрос позволяет увидеть итоговую цену каждого препарата, заказанного определенным клиентом. Например, клиент «ПосТан» заказал этаперазин в количестве 6 штук. Обычная цена препарата — 150 руб. В итоге — 900 руб.
/>
Рис.10. Запрос итоговой стоимости по количеству
Список препаратов. Запрос позволяет узнать к какой группе относится и от какой болезни помогает тот или иной препарат.
/>
Рис.11. Запрос списка препаратов
2) Перекрестные запросы — для расчетов и представления данных в структуре, облегчающей их анализ. Перекрестный запрос подсчитывает сумму, среднее или другие расчеты, после чего результаты группируются в виде таблицы по двум наборам данных, один из которых определяет заголовки столбцов, а другой заголовки строк.
Клиенты и препараты. Перекрестный запрос высчитывает итоговое значение — количество препаратов, которые клиент приобрел у аптеки. Например, клиент ГорБольница №11 заказал 7 препаратов: левомепромазин, моксонидин, нитразепам, фенобарбитал, фепромарон, цефазолин, эссенциале.
/>
Рис.12. Перекрестный запрос
3) Запросы с параметрами. Отличие запросов с параметрами заключается в способе управления условиями: вместо ввода фактических значений настраивается приглашение пользователю ввести значения условий при запуске запроса. При выполнении такого запроса выдается диалоговое окно «Введите значение параметра» (Enter Parameter Value), в котором пользователь должен ввести конкретное значение и затем получить нужный результат. Ввести группу препарата. Пользователь вводит нужную ему группу препарата, например, анальгетики.
/>
Рис.13. Запрос с параметром
И получает список препаратов и их цену, относящихся к группе анальгетиков в базе данных.
/>
Рис.13.1 Запрос с параметром
1.8 Создание форм
Формы являются типом объектов, который обычно используется для отображения данных. Источником данных для форм являются таблицы или запросы, поэтому данные в формах являются «связанными» с соответствующими объектами. Формы служат посредником между пользователями и базой данных, поскольку позволяют отображать данные в нужном виде.
В моей СУБД представлены следующие формы.
Форма для ввода данных — обеспечивает: ввод и редактирование данных.
В форме «Препараты» можно изменять название препарата, цену, изображение. Поменять группу препарата и болезни, которые лечатся этим препаратом.
/>
Рис.14. Форма «Препараты»
Аналогичная форма «Сотрудники».
/>
Рис.15. Форма «Сотрудники»
Кнопочная форма — используется для открытия других форм или отчетов.
Главная кнопочная форма «Аптека „Мед+“ содержит две кнопки: „Препараты в наличии“ и „Наши сотрудники“. Нажатием на эти кнопки автоматически переходим на две предыдущие формы.
/>
Рис.16. Кнопочная форма
Сводная таблица — таблица, обобщающая и анализирующая данные из одной или нескольких таблиц.
/>
Рис.17. Сводная таблица
1.9 Формирование отчетов
Отчеты позволяют выбрать из базы данных требуемую пользователем информацию и оформить ее в виде документов, которые можно просмотреть и напечатать. Источником данных для отчета может быть таблица или запрос. Кроме данных, полученных из таблиц, в отчете могут отображаться вычисленные по исходным данным значения, например итоговые суммы.
По моей СУБД представлены следующие отчеты.
Отчет „Сотрудники“.
/>
Рис.18. Отчет „Сотрудники“
Отчет о работе сотрудников аптеки. Из него можно узнать необходимые данные о конкретном работнике: ФИО, должность, телефон, дату найма, а также какую заработную плату получает данный сотрудник.
Отчет „Заказано“.
/>
Рис. 19. Отчет „Заказано“
Представлен полный перечень заказанных препаратов указанным клиентом за определенный период времени, цена реализации и количество. Причем, в этот перечень включены только те препараты, которые оказали положительное воздействие.
Отчет „Поставки“.
/>
Рис. 20. Отчет „Поставки“
На нем отслеживается общее количество принятых поставок по датам. К примеру, можно узнать в какой месяц было больше поставок — в феврале 2009 года.
1.10 Инструкция пользователю
При запуске Базы Данных пользователю предлагается сделать выбор между режимами входа в систему — режим клиента, режим сотрудника и режим поставщика. Для этого используется форма, представленная ниже.
/>
Рис.21. Форма „Вход“
В первом режиме, соответственно, доступных функций меньше. Предлагается выбор между двумя видами просмотра: Просмотр формы о препаратах „Препараты в наличии“, Ознакомление с сотрудниками аптеки „Наши сотрудники“. При этом нужно заметить, что режим просмотров таблиц именно просмотр, так как клиент не имеет прав изменять какие-либо данные в таблицах.
/>
Рис.22. Выбор одной из функций в режиме клиента.
В режиме сотрудника доступными являются уже четыре функции: Просмотр препаратов в наличии, просмотр отчета о сотрудниках, просмотр поставщиков аптеки, а также просмотр эффективности работы в виде сводной таблицы. Естественно, что формы для менеджеров представлены в режиме изменения/добавления данных.
/>
Рис.23. Выбор одной из функций в режиме сотрудника.
В режиме поставщика пользователь может посмотреть только информацию о сотрудниках, с которыми в дальнейшем он и связывается.
/>
Рис.24. Режим поставщика
Чтобы просмотреть выбранную таблицу, форму или отчет, необходимо в появившейся на экране форме кликнуть на кнопку с нужным пояснением. Например, чтобы в режиме обычного пользователя (клиента) просмотреть данные о сотрудниках, требуется в форме входа в систему нажать кнопку входа для обычного пользователя, а затем из предложенных вариантов в форме клиента выбрать искомый — »Наши сотрудники”.
Заключение
Принято считать, что использование концепции баз данных позволяет:
повысить надежность, целостность и сохранность данных;
сохранить затраты интеллектуального труда;
обеспечить простоту и легкость использования данных;
обеспечить независимость прикладных программ от данных (изменений их описаний и способов хранения);
обеспечить достоверность данных;
обеспечить требуемую скорость доступа к данным;
стандартизовать данные в пределах одной предметной области;
автоматизировать реорганизацию данных;
обеспечить защиту от искажения и уничтожения данных;
сократить дублирование информации за счет структурирования данных;
обеспечить обработку незапланированных запросов к хранимой информации;
создать предпосылки для создания распределенной обработки дaнныx.
Данные распределены по таблицам, которые связаны между собой не только «физически» (с помощью инструментов программирования), но и, что более ценно, логически. Базируясь на логической связи таблиц между собой, строится запрос к базе данных, который как по цепочке вытаскивает нужную нам информацию в единую «выписку».
Базы данных удобно использовать в различных организациях, и аптека — не исключение. Для аптеки как торгового учреждения характерна высокая степень отчетности. Учитывая значительный объем и темпы товарооборота, специфические требования к его хранению и реализации, здесь очень важно наладить быстрый и качественный сбор, обработку и анализ информации, относящийся к коммерческой деятельности аптеки. Создание базы данных в аптеке позволит собрать все данные в одном месте и организовать доступ к ним всем сотрудникам, а также клиентам и поставщикам, позволит вести четкий структурированный учет всей информации, предоставит быстрый доступ к ней, поможет автоматизировать стандартные процессы и в результате всего оптимизирует работу всей аптеки. Внедрение компьютерных систем в аптеках стало необходимым и в связи со все возрастающим потоком информации, в котором все сотрудники просто обязаны ориентироваться для того, чтобы качественно выполнять свои обязанности. А делать это становится все труднее, учитывая постоянно расширяющийся и обновляющийся ассортимент лекарственных средств и предметов парафармации, не говоря уже о таком факторе, как наличие на отечественном фармрынке огромного количества фирм-посредников, эффективное взаимодействие с которыми невозможно осуществлять без применения компьютерных технологий.
В данной работе использовались такие объекты, как: таблицы, запросы, формы, отчеты, макросы. Но программа Microsoft Office Access 2003 намного обширней, разнообразней и имеет больше возможностей. Например, для создания запросов можно использовать структурированный язык SQL, можно подготовить данные для Интернета и т.п. Поэтому, конкретный вывод о применимости Access можно сделать только после ее всестороннего анализа, что выходит за рамки данной курсовой работы.
В итоге, на основании задачи, поставленной в работе, разработана база данных Аптеки «Мед+», готовая к использованию. Но, как и всякое другое программное средство, она может быть дополнена и редактирована.
Литература
Аблязов В.И., Редько С.Г. Проектирование баз данных в среде Microsoft Office Access 2003. Методические указания по выполнению лабораторных работ. 2008г.49 с.
Гончаров А.Ю. Access 2003. Самоучитель с примерами. 2004г.272 с. Электронная версия
Microsoft Office Access 2003. Шагзашагом. Официальный учебный курс, 2007