Курсовая 5 класс. Мой курсовой БД. 1 Анализ предметной области. 5 Постановка задачи 11
Скачать 2.77 Mb.
|
Рисунок 18 – Форма «Изменить время приёма». Рисунок 19 – Форма «Изменить кабинет врача». Рассмотрим форму «Изменить время приёма». При нажатии кнопри «ОК» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Update_Vremia_priyoma " & Табельный_Номер.Value & ",'" & Время.Value & "'" dbs.QueryDefs.Delete ("Изменить_время") Set qdf = dbs.CreateQueryDef("Изменить_время") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_время") End Sub Рассмотрим форму «Изменить кабинет врача». При нажатии кнопри «ОК» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Update_Kabinet " & Табельный_Номер.Value & "," & Кабинет.Value & "" dbs.QueryDefs.Delete ("Изменить_кабинет") Set qdf = dbs.CreateQueryDef("Изменить_кабинет") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_кабинет") End Sub Рассмотрим форму «Работа со штатным расписанием». На ней присутствуют кнопки «Уволить врача», «Нанять врача», «Изменить». При нажатии кнопки «Уволить врача» открывается форма «Уволить врача» - рисунок 20, при нажатии кнопки «Нанять врача» открывается форма «Нанять врача» - рисунок 21, при нажатии кнопки «Изменить» открываеся форма «Изменить врача» - рисунок 22. Рисунок 20 – Форма «Уволить врача». Рисунок 21 – Форма «Нанять врача». Рисунок 22 – Форма «Изменить врача». При нажатии кнопки «ОК» на форме «Уволить врача» выполнится следцющий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Udalenie_Vrach " & Табельный_Номер.Value & "" dbs.QueryDefs.Delete ("Уволить_врача") Set qdf = dbs.CreateQueryDef("Уволить_врача") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Уволить_врача") End Sub При нажатии кнопки «ОК» на форме «Нанять врача» выполнится следцющий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb dbs.QueryDefs.Delete ("Нанять_врача") strSQL = "exec KLIENT_Dobavlenie_Vrach " & Табельный_Номер.Value & ",'" & Фамилия.Value & "','" & Имя.Value & "','" & Отчество.Value & "','" & Специализация.Value & "','" & Дата_рождения.Value & "','" & Домашний_адрес.Value & "','" & Номер_Телефона.Value & "'" Set qdf = dbs.CreateQueryDef("Нанять_врача") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Нанять_врача") End Sub При нажатии кнопки «ОК» на форме «Изменить врача» выполнится следцющий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb dbs.QueryDefs.Delete ("Изменить_врача") strSQL = "exec KLIENT_Update_Vrach " & Табельный_Номер.Value & ",'" & Фамилия.Value & "','" & Имя.Value & "','" & Отчество.Value & "','" & Специализация.Value & "','" & Дата_рождения.Value & "','" & Домашний_адрес.Value & "','" & Номер_Телефона.Value & "'" Set qdf = dbs.CreateQueryDef("Изменить_врача") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_врача") End Sub Теперь вернёмся в меню Главного врача. При нажатии кнопки «Работа с аптекой» откроется форма «Работа с аптекой» - рисунок 23. Рисунок 23 – Форма «Работа с аптекой». При нажатии на кнопку «Работа с поставщиками» откроется форма «Работа с поставщиками» рисунок 24. При нажатии на кнопку «Работа с препаратами» откроется форма «Работа с препаратами» рисунок 25. Рисунок 24 – Форма «Работа с поставщиками». Рисунок 25 – Форма «Работа с препаратами». При нажатии кнопки «добавить» на форме «Работа с поставщиками» открывается форма «Добавить поставщика» - рисунок 26. При нажатии кнопки «изменить» на форме «Работа с поставщиками» открывается форма «Изменить поставщика» - рисунок 28. При нажатии кнопки «удалить» на форме «Работа с поставщиками» открывается форма «Удалить поставщика» - рисунок 29. Рисунок 26 – Форма «Добавить поставщика». Рисунок 27 – Форма «Изменить поставщика». Рисунок 28 – Форма «Удалить поставщика». При нажатии кнопки «ОК» на форме «Добавить поставщика» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb dbs.QueryDefs.Delete ("Добавить_поставщика") strSQL = "exec KLIENT_Dobavlenie_Postavschik " & Стоимость.Value & ",'" & Поставщик.Value & "','" & Дата.Value & "'," & Телефон.Value & "" Set qdf = dbs.CreateQueryDef("Добавить_поставщика") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Добавить_поставщика") End Sub При нажатии кнопки «ОК» на форме «Изменить поставщика» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb dbs.QueryDefs.Delete ("Изменить_поставщика") strSQL = "exec KLIENT_Update_Postavschik " & Стоимость.Value & ",'" & Поставщик.Value & "','" & Дата.Value & "'," & Телефон.Value & "" Set qdf = dbs.CreateQueryDef("Изменить_поставщика") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_поставщика") End Sub При нажатии кнопки «ОК» на форме «Удалить поставщика» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Udalenie_Postavschik '" & Табельный_Номер.Value & "'" dbs.QueryDefs.Delete ("Удалить_поставщика") Set qdf = dbs.CreateQueryDef("Удалить_поставщика") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Удалить_поставщика") End Sub Теперь вернёмся к форме «Работа с препаратами» на ней присутствуют кнопки «Изменить цену» и «Изменить количество». При нажатии на кнопку «Изменить цену» откроется форма «Изменить цену» - рисунок 29. При нажатии на кнопку «Изменить количество» откроется форма «Изменить количество» - рисунок 30. Рисунок 29 – Форма «Изменить цену». Рисунок 30 – Форма «Изменить количество». При нажатии кнопки «ОК» на форме «Изменить цену» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Update_Cena_preparata " & Препарат.Value & ",'" & Новая_Цена.Value & "'" dbs.QueryDefs.Delete ("Изменение_цены_препарата") Set qdf = dbs.CreateQueryDef("Изменение_цены_препарата") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменение_цены_препарата") End Sub При нажатии кнопки «ОК» на форме «Изменить количество» выполнится следующий код: Private Sub Êíîïêà9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb strSQL = "exec KLIENT_Update_Kolvo_preparata " & Ïðåïàðàò.Value & ",'" & Íîâîå_êîëè÷åñòâî.Value & "'" dbs.QueryDefs.Delete ("Èçìåíåíèå_êîëè÷åñòâà_ïðåïàðàòà") Set qdf = dbs.CreateQueryDef("Èçìåíåíèå_êîëè÷åñòâà_ïðåïàðàòà") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Èçìåíåíèå_êîëè÷åñòâà_ïðåïàðàòà") End Sub Теперь вернёмся в меню главного врача. При нажатии на кнопку «Получение информации» открывается форма «Получение информации» - рисунок 31. Рисунок 31 – Форма «Получение информации». В этой форме при нажатии на соответствующие кнопки выводится нужная информация. Для пользователя врач открывается форма «Меню врача» - рис 32. Рисунок 32 – Форма «Меню врача». На форме «Меню врача» присутствуют кнопки» «Работа с пациентами», «Работа с анализами пациентов» и «Получение информации». При нажатии кнопки «Работа с пациентами» открывается форма «Работа с пациентами» - рисунок 33. Рисунок 33 – Форма «Работа с пациентами». При нажатии кнопки «Добавить» открывается форма «Добавить пациента» - рисунок 34. При нажатии кнопки «Удалить» открывается форма «Удалить пациента» - рисунок 35. При нажатии кнопки «Изменить» открывается форма «Изменить пациента» - рисунок 36. Рисунок 34 – Форма «Добавить пациента». Рисунок 35 – Форма «Удалить пациента». Рисунок 36 – Форма «Изменить пациента». При нажатии кнопки «ОК» на форме «Добавить пациента» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Добавить_пациента") strSQL = "exec KLIENT_Dobavlenie_Pacient " & Номер.Value & ",'" & Дата.Value & "','" & ФИО.Value & "','" & Адрес.Value & "','" & Льготы.Value & "'" 'dbs.QueryDefs.Delete ("Удалить_пациента") Set qdf = dbs.CreateQueryDef("Добавить_пациента") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Добавить_пациента") End Sub При нажатии кнопки «ОК» на форме «Удалить пациента» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Удалить_пациента") strSQL = "exec KLIENT_Udalenie_Pacient " & Номер.Value & "" 'dbs.QueryDefs.Delete ("Добавить_пациента") Set qdf = dbs.CreateQueryDef("Удалить_пациента") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Удалить_пациента") End Sub При нажатии кнопки «ОК» на форме «Изменить пациента» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Изменить_пациента") strSQL = "exec KLIENT_Update_Pacient " & Номер.Value & ",'" & Дата.Value & "','" & ФИО.Value & "','" & Адрес.Value & "','" & Льготы.Value & "'" 'dbs.QueryDefs.Delete ("Удалить_пациента") Set qdf = dbs.CreateQueryDef("Изменить_пациента") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_пациента") End Sub Теперь вернёмся в меню врача. При нажатии кнопки «Работа с анализами» открывается форма «Работа с анализами» - рисунок 37. Рисунок 36 – Форма «Работа с анализами». При нажатии кнопки «добавить» открывается форма «Добавить анализ» - рисунок 38. При нажатии кнопки «удалить» открывается форма «Удалить анализ» - рисунок 39. При нажатии кнопки «изменить» открывается форма «Изменить анализ» - рисунок 40. Рисунок 38 – Форма «Добавить анализ». Рисунок 39 – Форма «Удалить анализ». Рисунок 40 – Форма «Изменить анализ». При нажатии кнопки «ОК» на форме «Добавить анализ» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Добавить_анализ") strSQL = "exec KLIENT_Dobavlenie_Analiz " & Номер.Value & ",'" & Дата.Value & "','" & Анализ.Value & "'" 'dbs.QueryDefs.Delete ("Добавить_анализ") Set qdf = dbs.CreateQueryDef("Добавить_анализ") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Добавить_анализ") End Sub При нажатии кнопки «ОК» на форме «Удалить анализ» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Удалить_анализ") strSQL = "exec KLIENT_Udalenie_Analiz " & Номер.Value & ",'" & Анализ.Value & "'" 'dbs.QueryDefs.Delete ("Добавить_анализ") Set qdf = dbs.CreateQueryDef("Удалить_анализ") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Удалить_анализ") End Sub При нажатии кнопки «ОК» на форме «Изменить анализ» выполнится следующий код: Private Sub Кнопка9_Click() Dim dbsCurrent As Database Dim qdf As DAO.QueryDef Dim strSQL As String Set dbs = CurrentDb 'strSQL = "exec изменениеЗаказ " & Код_заказа.Value & ",'" & Срок_выполнения.Value & "','" & Дата_приема_заказа.Value & "'," & Класс_груза.Value & "," & Наименование_груза.Value & "," & Масса_груза.Value & "," & Код_Маршрута.Value dbs.QueryDefs.Delete ("Изменить_анализ") strSQL = "exec KLIENT_Update_Analiz " & Номер.Value & ",'" & Дата.Value & "','" & Анализ.Value & "'" 'dbs.QueryDefs.Delete ("Добавить_анализ") Set qdf = dbs.CreateQueryDef("Изменить_анализ") qdf.Connect = "ODBC;DSN=Terehov;UID=Terehov;PWD;DATABASE=Terehov" qdf.SQL = strSQL qdf.ReturnsRecords = False DoCmd.OpenQuery ("Изменить_анализ") End Sub Теперь вернёмся в меню врача. При нажатии на кнопку «Получение информации» открывается форма «Получение информации» - рисунок 41. Рисунок 41 – Форма «Получение информации». В данной форме врач может получить нужную информацию при нажптии на соответствующие кнопки. И наконец в форме «Ввод пароля» выберем пользователя пациент. Откроется форма «Меню пациента» - рисунок 42. Рисунок 42 – Форма «Меню пациента». С помощью данной формы пациент сможет получить информацию о расписании приёма врачей поликлиники. 4. Результат тестирования информационной системы Для нормальной работы системы необходимо 256 Мбайт оперативной памяти, Windows NT/2000/XP и выше, Access2000 и выше. Результатом тестирования в данном случае может послужить создание отчета, содержащего информацию о работе поликлиники. После тестирования получили результаты: - Информационная система поддерживает многопользовательский режим. - Тестирование запросов прошло успешно. В данном курсовом проекте разработана база данных с тремя клиентскими приложениями, которая хранится на SQL сервере. Для каждого пользователя составлены запросы формы и отчеты. Формы составлены на основе запросов и таблиц, и используются для занесения и модификации информации в базе данных. Отчеты составлены на основе запросов и используются для получения информации и оформления документации. Заключение Прогресс, достигнутый за последние несколько лет во всех аспектах вычислительной техники, включая теорию, технологию и приложения, привели к значительному расширению области применения компьютеров и росту числа их пользователей. Существенной частью современного общества являются разнообразные системы доступа и хранения информации, которые являются неотъемлемой составляющей современного научно-технического прогресса. Существует много веских причин перевода существующей информации на компьютерную основу, т.к. более быстрая обработка данных и централизация их хранения с использованием клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощает доступ и ведение. Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом информации одним или множеством одновременно работающих пользователей. Во время выполнения курсовой работы было разработано многопользовательская информационная система «Поликлиника». При создании ИС использовались СУБД Microsoft ACCESS 2000, средство моделирования баз данных All Fusion Data Modeler 4.1, средство моделирования бизнес-процессов All Fusion Process Modeler 4.1, сервер баз данных Microsoft SQL server 2000, язык баз данных T-SQL. Функциональная модель ИС описывает три клиентских приложения. При разработке программного обеспечения использовались представления, хранимые процедуры с параметрами, триггеры, курсоры. Все пункты курсового задания были выполнены, разработанная система выполняет поставленную перед ним задачу. Список использованных литературных источников Microsoft SQL Server 7 для профессионалов. – СПб.: Питер, 2000. – 896 с. Алан Бьюли, Энди Оппель. Изучаем SQL. – М.:Символ, 2007. – 312 с. Жилинский А. Самоучитель Microsoft SQL Server 2005. – СПб:BHV, 2004. – 224 с. Кишори Бхамидипати. SQL. Справочник программиста.–М.:Эком, 2003. – 304 с. Конспект лекций «Базы данных» Литвин П., Гетц К.,Гунделой М. Разработка настольных приложений в Access 2002. Для профессионалов. – СПб.:Питер; К.: Издательская группа BHV, 2002. – 1008 с. Литвин П., Гетц К.,Гунделой М. Разработка корпоративных приложений в Access 2002. Для профессионалов. – СПб.:Питер; Киев: BHV, 2002. – 1008 с. Роберт Виейра. Программирование баз данных Microsoft SQL Server 2005. Базовый курс. – М.:Вильямс, 2003. – 848 с. Уилтон П., Колби Дж. SQL для начинающих. – М.: Вильямс, 2006. – 496 с. Фленов М. Transact SQL в подлиннике. – СПб:BHV, 2006. – 576 с. Практическое руководство по SQL. – М.: Вильямс, 2002. – 352 с. Моисеенко С. SQL. Задачи и решения. СПб.: Питер, 2006. – 256 с. |