ВКР_Макаревич П.Е (1218757), страница 4
Текст из файла (страница 4)
Рисунок 2.28 – Поле ввода даты
Для добавления записи в базу после ввода всей необходимой информации нужно нажать кнопку «Добавить». После этого запись будет добавлена в базу. В случае, если какое-то из обязательных для заполнения полей останется пустым, будет выведено соответствующее сообщение.
Для модификации записи необходимо выбрать в области просмотра базы целевую запись, дважды кликнув по ней левой кнопкой мыши, как показано на рисунке 2.29 Для поиска записи можно воспользоваться функцией фильтрации.
Рисунок 2.29 – Выбор записи
После осуществления выбора поля в области ввода заполнятся информацией о выбранной записи, как показано на рисунке 2.30. Далее необходимо произвести необходимые изменения и нажать кнопку «Сохранить изменения».
Рисунок 2.30 – Редактирование записи
Для удаления записи, необходимо выбрать ее (описано в пункте «Редактирование записи») и нажать кнопку «Удалить запись». Появится всплывающее окно, запрашивающее подтверждение удаления. После нажатия кнопки «ОК» запись будет удалена.
3 РЕАЛИЗАЦИЯ ПРОГРАММЫ
После проектирования, произведенного в разделе 2, можно приступить к реализации системы. Для этого необходимо создать базу данных и пользовательский интерфейс, а также реализовать логику работы системы. Подробные примеры кода представлены в Приложении А.
3.1 Создание базы данных
Для создания базы данных использовалась среда MS SQL Management Studio. Данный программный продукт обладает исчерпывающей функциональностью для выполнения широкого спектра задач, связанных с созданием базы данных, а также ее администрированием. На рисунке 3.1 представлен обозреватель объектов, предназначенный для отображения информации об объектах базы данных (вплоть до типа и настроек столбца).
Рисунок 3.1 – Обозреватель объектов MS SQL Management Studio
Создание таблиц осуществлялось с помощью конструктора. Этот метод является очень быстрым и простым, но в то же время позволяет выполнять тонкую настройку объектов. Для готовых объектов существует возможность скопировать SQL-инструкции, генерирующие эти объекты. Это можно использовать для переноса базы данных на другой сервер. В этом случае, если заранее подготовить скрипты, создание базы займет менее минуты. Ниже представлен пример генерируемого SQL-запроса для создания одной из таблиц базы данных проекта [23,24].
CREATE TABLE [dbo].[archive](
[cardid] [bigint] IDENTITY(1,1) NOT NULL,
[isout] [bit] NULL,
[outdate] [datetime] NULL,
[whoout] [char](60) NULL,
[lastname] [varchar](50) NULL,
[firstname] [varchar](50) NULL,
[secondname] [varchar](50) NULL,
[birthdate] [date] NULL,
[street] [smallint] NULL,
[house] [varchar](50) NULL,
[flat] [smallint] NULL,
CONSTRAINT [PK_archive] PRIMARY KEY CLUSTERED
(
[cardid] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
База данных создавалась на основе результатов проектирования. Внешние ключи в таблицах обеспечивают целостность данных. Возможность каскадного удаления отключена, чтобы предотвратить возможность потери данных из-за невнимательности или ошибки пользователя [25].
3.2 Реализация функционала интерфейса
Пользовательский интерфейс разрабатывался к конструкторе форм MS Visual Studio. Размещение элементов на форме осуществляется простым перетягиванием, а последующая настройка с помощью окна свойств объекта. Поведение элементов формы контролируется в коде программы.
Поскольку разрабатываемая программа подразумевает большое количество различных интерфейсов, основная форма реализована с помощью элемента TabControl. Он представляет собой набор вкладок с переключателями. Переключатели на элементе скрыты, чтобы пользователи не могли попасть в подсистемы, к которым у них нет доступа.
Элементы, позволяющие пользователю выбрать систему, с которой необходимо работать, вынесены в элемент MenuStrip, представляющий собой главное меню программы. Общий вид этого меню представлен на рисунке 3.2.
Рисунок 3.2 – Главное меню программы
3.3 Реализация взаимодействия с базой данных
Основной функцией программы фактически является запись данных в базу, а также извлечение этих данных. Соединение интерфейса программы с базой данных описывается объектом типа SqlConnection. В коде ниже показаны параметры соединения с базой данных на локальном сервере MS SQL Express.
public static SqlConnection connection = new SqlConnection(
@"server=MUSHROOM\SQLEXPRESS; " +
"Trusted_Connection=yes; " +
"database=webclinic; " +
"connection timeout=5");
В коде программы SQL-запросы записываются не в готовом виде (это не удобно), а с параметрами, начинающимися со знака @. Далее они заменяются соответствующими значениями в требуемом формате, как показано в приведенном ниже коде.
string query = "INSERT INTO newborns (regdatetime, bhouse, mother, lastname, firstname, secondname, birthdate, sex, regstreet, reghouse, regflat, street,
house, flat, win, antrop, wout, tub, hep, outdate, indate, district, health, phone, sertnum, audio, fku, t, h) VALUES (@regdatetime, @bhouse, @mother, @lastname, @firstname, @secondname, @birthdate, @sex, @regstreet, @reghouse, @regflat, @street, house, @flat, @win, @antrop, @wout, @tub, @hep, @outdate, @indate, @district, @health, @phone, @sertnum, @audio, @fku, @t, @h)";
connection.Open();
SqlCommand updateNewborns = new SqlCommand(query, connection);
updateNewborns.Parameters.AddWithValue("mother", tbMother.Text);
updateNewborns.Parameters.AddWithValue("bhouse", tbBhouse.Text);
updateNewborns.Parameters.AddWithValue("regdatetime", dRegDate.Value);
...
3.4 Отчеты
Для создания табличных отчетов использовался стандартный пакет Microsoft.Office.Interop.Excel, поставляемый вместе с Visual Studio. Создание новой книги Excel с несколькими листами осуществляется кодом, представленным ниже.
using Excel = Microsoft.Office.Interop.Excel;
…
Excel excelapp = new Excel.Application();
excelapp.SheetsInNewWorkbook = counter1 + 1;
excelapp.Workbooks.Add(Type.Missing);
В случае, когда на компьютере конечного пользователя не установлен пакет MS Office, ему будет выведено соответствующее уведомление, а отчет, соответственно, доступен не будет.
MessageBox.Show("На компьютере не установлен MS Excel!", "Создание отчета недоступно!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
4 ОБОСНОВАНИЕ ЦЕЛЕСООБРАЗНОСТИ РАЗРАБОТКИ ПРОЕКТА
В данном разделе представлено технико-экономическое обоснование разработки автоматизированной системы ведения журналов учета архивных карт, инфекционных заболеваний и новорожденных пациентов на предприятии КГБУЗ «Детская городская поликлиника №1».
Сегодняшний рынок программного обеспечения предлагает довольно широкий ассортимент медицинских информационных систем, охватывающий весь спектр задач, выполняемых в лечебных учреждениях.
В тоже время данные системы не учитывают узконаправленные нужды конкретного медицинского учреждения.
На предприятии КГБУЗ «Детская городская поликлиника №1» используется медицинская информационная система «Медиалог». Данный программный комплекс предназначен для решения комплекса лечебных и управленческих задач, стоящих перед современной поликлиникой и стационаром. Тем не менее, в ней отсутствуют необходимые КГБУЗ «Детская городская поликлиника №1» модули для автоматизации учета архивных карт, случаев инфекционных заболеваний и новорожденных пациентов, поэтому возникает необходимость разработки системы, которая выполняет эти функции.
Ее пользователями будут работники регистратуры и врачи отделения профилактики. Применение данного модуля значительно облегчит их труд и сократит затраты на выполнение работы.
4.1 Планирование комплекса работ по разработке темы и оценка трудоемкости
Для разработки было задействовано два человека: руководитель проекта и исполнитель (инженер-программист).
Руководитель выполняет постановку задачи, курирует ход работ и дает необходимые консультации при разработке системы. Исполнитель отвечает за проектирование информационного обеспечения, разработку структур баз данных, реализацию вычислительных алгоритмов в виде завершенного продукта, разработку интерфейсных блоков и отладку программы.
Выбор комплекса работ по разработке проекта производится в соответствии со стандартом «ГОСТ Р ИСО/МЭК 12207-99 Информационная технология. Процессы жизненного цикла программных средств», устанавливающим стадии разработки программных продуктов, и приведен в таблице 2.
Таблица 2 – Комплекс работ по разработке проекта
| Содержание работ | Исполнители | Длительность, дни | Загрузка | |
| дни | % | |||
| 1. Подготовка процесса разработки и анализ требований | ||||
| Исследование и обоснование разработки | ||||
| Постановка задачи | Руководитель Программист | 2 | 1 | 50 |
| Сбор исходных данных | Руководитель | 10 | 2 | 20 |
| Поиск аналогов и прототипов | ||||
| Анализ существующих методов решения задачи и программных средств | Руководитель | 3 | 0 | 0 |
| Обоснование принципиальной необходимости разработки | Руководитель | 2 | 1 | 50 |
| Анализ требований | ||||
| Определение и анализ требований к проектируемой программе | Руководитель | 4 | 1 | 25 |
| Определение структуры входных и выходных данных | Руководитель | 5 | 1 | 20 |
| Выбор технических и программных средств реализации | Руководитель | 3 | 1 | 33 |
| Согласование и утверждение технического задания | Руководитель | 3 | 1 | 33 |
| Итого по этапу 1 | Руководитель | 32 | 8 | 25 |
| 2. Проектирование | ||||
| Проектирование программной архитектуры | Руководитель | 3 | 0 | 0 |
Продолжение таблицы 2
| Техническое проектирование компонентов программы | Руководитель | 5 | 0 5 | 0 |
| Итого по этапу 2 | Руководитель | 8 | 0 | 0 |
| Программирование и тестирование программных модулей | ||||
| Программирование модулей в выбранной среде программирования | Руководитель | 20 | 0 | 0 |
| Тестирование программных модулей | Руководитель | 5 | 0 | 0 |
| Сборка и испытание программы | Руководитель | 5 | 0 | 0 |
| Анализ результатов испытаний | Руководитель | 5 | 5 | 100 |
| Итого по этапу 3 | Руководитель | 35 | 5 | 14 |
| Оформление рабочей документации | ||||
| Проведение экономических расчетов | Руководитель | 3 | 0 | 0 |
| Оформление пояснительной записки | Руководитель | 15 | 5 | 33 |
| Итого по этапу 4 | Руководитель | 18 | 5 | 27 |
| Итого по проекту | Руководитель | 93 | 18 | 8 |
4.2 Расчет затрат на разработку проекта
Капитальные вложения, связанные с автоматизацией обработки информации, рассчитываются по формуле:














