Автоматизированная информационная система учета пациентов отделений в психо-неврологическом диспансере

Автор работы: Пользователь скрыл имя, 01 Декабря 2011 в 01:50, дипломная работа

Описание

В данной работе делается попытка спроектировать автоматизированную информационную систему учета пациентов отделений в ПНД. Разработанная система повысит оперативность получения информации о пациентах, результатах его лечения. Хранение этой информации в памяти ЭВМ придаст ей принципиально новое качество динамичности. Система должна находится в состоянии непрерывного обновления, отражая все изменения результатов лечения пациентов. Устройства автоматической печати должны позволить в случае необходимости быстро представить любую выборку из этой информации в форме представления на бумаге.

Содержание

Введение………………………………………………………………………….... 5
1 Системный анализ предметной области…………………………………….….7
2 Проектирование БД……………………………………………………………...12
2.1 Проектирование с использованием ER - метода……………………….…14
2.1.1 Определение сущностей и связей между ними………………….….14
2.1.2 Определение исходных и ролевых сущностей……………………...15
2.1.3 Построение ER - диаграмм…………………………………………...15
2.1.4 Построение набора предварительных отношений……………….…30
2.1.5 Распределение оставшихся атрибутов по полученным
отношениям………………………………………………………………………...32
2.1.6 Проверка нахождения полученных отношений в НФБК…………..35
2.2 Проверка отношений на завершающей фазе проектирования…………...37
3 Выбор СУБД……………………………………………………………………..38
4 Разработка алгоритмического и программного обеспечения АИС…………..40
4.1 Алгоритм функционирования информационной системы……………….40
4.2 Инструкция пользователя…………………………………………………..46
4.2.1 Запуск программы…………………………………………………….46
4.2.2 Работа со справочниками……………………………………………46
4.2.3 Работа с пациентами…………………………………………………48
4.2.4 Создание и редактирование медицинской карты…………………..51
4.2.5 Создание остальной документации………………………………….54
4.2.6 Работа с документацией……………………………………………..58
4.2.7 Вывод отчетов………………………………………………………..64
4.2.8 О справке……………………………………………………………...70
4.2.9 Завершение работы……………………………………………………71
5 Безопасность жизнедеятельности………………………………………………72
5.1 Анализ условий труда………………………………………………………72
5.2 Требования безопасности, эргономики и технической
эстетики к рабочему месту программиста……………………………………….74
5.3 Разработка защитных мероприятий на рабочем
месте программиста…………………………………………………………….83
5.4. Расчет естественного освещения………………………………………….88
5.5 Расчет искусственного освещения…………………………………………89
5.6 Безопасность жизнедеятельности в чрезвычайных ситуациях…………..91
5.6.1 Рекомендуемые нормы пожарной безопасности……………………92
5.6.2 Меры по индивидуальной защите оператора……………………….92
5.7 Вывод………………………………………………………………………...93
6 Экономический раздел…………………………………………………………..94
6.1 Расчет необходимых капитальных вложений……………………94
6.1.1 Расчет затрат на разработку АИС…………………………..94
6.1.2 Капитальные вложения по базовому варианту …………..95
6.2 Расчет текущих эксплуатационных затрат………………………95
6.2.1 Расчет затрат по базовому варианту………………………...96
6.2.2 Расчет затрат по проектному варианту……………………..96
6.3 Расчет показателей экономической эффективности……………………..97
6.4 Вывод……………………………………………………………………….100
Заключение………………………………………………………………………..101
Список использованных источников……

Работа состоит из  1 файл

диплом-Альбина.doc

— 930.50 Кб (Скачать документ)

       End Function

       _______________________________________________________________________

       Public Function Для_РЭГ()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("РЭГ")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "Реоэнцелография (РЭГ)"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

          rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

           rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодРЭГ = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_РЭГ")

       End Function

       _______________________________________________________________________

       Public Function Для_ЭКГ()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("ЭКГ")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "Электрокардиография  (ЭКГ)"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

           rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

           rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодЭКГ = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_ЭКГ")

       End Function

       _______________________________________________________________________

       Public Function Для_ЭхоЭС()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("Эхо-ЭС")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "Эхоэнцефалоскопия  (Эхо-ЭС)"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

           rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

           rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодЭхоЭС = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_ЭхоЭС")

       End Function

       _______________________________________________________________________

       Public Function Для_ЭЭГ()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("ЭЭГ")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "Электроэнцефалоскопия  (ЭЭГ)"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

           rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

          rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодЭЭГ = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_ЭЭГ")

       End Function

       _______________________________________________________________________

       Public Function Для_КТголмозга()

            Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("КТ головного мозга")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True

               If rsDoc!КодДок > iii Then

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "КТ головного мозга"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

           rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

           rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодКТгол = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_КТголмозга")

       End Function

       _______________________________________________________________________

       Public Function Для_АнализыКрови()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("Анализ крови")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

                   iii = rsDoc!КодДок

               End If

               rsDoc.MoveNext

           Loop

           rsDoc.AddNew

           rsDoc!КодДок = iii + 1

           rsDoc!Документ = "Анализ крови"

           rsDoc!Дата = DATE

           rsDoc!Врач = CurrentUser()

           rsDoc!Датазаполн = DATE

           rsDoc!КодМедкарты = rsBuf!НомердокумМК2

           rsDoc.Update

           rsBuf.Edit

           rsBuf!КодДок = iii + 1

           rsBuf.Update

           rs.AddNew

           rs!КодАК = iii + 1

           rs.Update

           DoCmd.OpenForm ("Для_АнализыКрови")

       End Function

       _______________________________________________________________________

       Public Function Для_ДопОбследование()

           Set db = CurrentDb

           Set rsDoc = db.OpenRecordset("Документы")

           Set rsBuf = db.OpenRecordset("Буфер")

           Set rs = db.OpenRecordset("Дополнительное обследование")

           iii = 0

           iDocno = 0

           rsDoc.MoveFirst

           Do Until rsDoc.EOF = True             ' поиск максимального Коддок

               If rsDoc!КодДок > iii Then         ' чтобы сделать Коддок+1

Информация о работе Автоматизированная информационная система учета пациентов отделений в психо-неврологическом диспансере