Автор работы: Пользователь скрыл имя, 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
Список использованных источников……
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 ' чтобы сделать Коддок+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 ("Для_Рентгенография")