Розробка програмного додатку для медичного діагностичного центру 'Medical© control'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    626,24 Кб
  • Опубликовано:
    2015-08-21
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Розробка програмного додатку для медичного діагностичного центру 'Medical© control'

Зміст

програма інтерфейс додаток медичний

1. Системний аналіз

.1 Вимоги до продукту

. Розробка інтерфейсу програми

.1 Кроки розробки призначених для користувача інтерфейсів

.2 Проектування інтерфейсу

. Вибір архітектури

.1 Функціональна структура програми (типи моделі розробки)

.2 Вхідні дані на розробку автоматизованої системи

.3 Вибір середовища програмування

.4 Вибір сервера баз даних

. Детальне проектування

.1 Логічна структура програми

.2 Розробка структури бази даних проекту

.3 Розробка структури і полів таблиць бази даних

Висновок

Список літератури

Додатки

 

Вступ


Виробництво програмного забезпечення (ПО) сьогодні - це найбільша галузь світової економіки, в якій зайнято більше семи мільйонів фахівців. Саме приголомшливий прогрес в області ПЗ допоміг впоратися з інформаційним бумом кінця 20 століття.

В даний час практично немає жодної сфери людської діяльності (медицина, економіка, комерція, промисловість і т.д.), де б не застосовувалися комп'ютерні програми. При цьому багато компаній, що працюють в різних областях матеріального виробництва і "традиційного" бізнесу, починають усвідомлювати, що забезпечити більш високі темпи зростання, домогтися конкурентної переваги вони можуть як за рахунок апаратно-орієнтованих, так і за рахунок програмно-орієнтованих рішень, і всі частіше віддають перевагу останнім.

Потреба контролювати процес розробки ПЗ, прогнозувати і гарантувати вартість розробки, терміни і якість результатів призвела до необхідності переходу від кустарних до індустріальних способам створення ПЗ і появі сукупності інженерних методів і засобів створення ПЗ, об'єднаних загальною назвою програмна інженерія (software engineering).

В основі програмної інженерії лежить фундаментальна ідея - проектування ПЗ є формальним процесом, який можна вивчати, стандартизувати й удосконалювати, тобто створення ПЗ має передувати створення методології розробки ПЗ як сукупності взаємопов'язаних стадій, етапів, операцій, що утворюють технологічний процес розробки ПЗ.

1. Системний аналіз


1.1 Вимоги до продукту


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

Специфікація вимог до ПЗ "Medical© control"

1.      Вступ

1.1    Призначення, мета

Даний документ проектується студентом ПР-9-12 для опису програмного продукту "Medical© control". А також системних, функціональних і не функціональних вимог до даного продукту.

Даний продукт буде вести облік клієнтів, їх діагнозів, виконувати пошук по діагнозам або по ПІБ, обчислювати вартість за день та друкувати звіти.

2.      Загальний опис

2.1    Характеристики

2.2.1.        Веде облік клієнтів;

.2.2.          Веде облік діагнозів клієнтів;

.2.3.          Виконує пошук;

.1.4.          Обчислює вартість за день;

.1.5.          Друкує звіти.

2.2    Користувачі

2.2.1.        Старша медсестра;

.2.2.          Лікарі;

.2.3.          Головний лікар.

2.3    Середовище функціонування

Даний продукт працює на операційній системі Windows 95 / 98 / 2003 / Vista / 7 / 8 / 8.1 / 10.

Апаратна платформа: Клавіатура, миша, монітор, системний блок(материнська плата, вінчестер, процесор, блок живлення, відеоадаптер 16Mb).

3.      Характеристики системи

3.1    Функціональні вимоги

3.1.1 Продукт повинен дозволяти вводити дані: Діагнози(Код діагнозу, термін, термін лікування), Клієнти(Код клієнта, діагноз, код лікаря, прізвище та ім’я, код паспорту, телефонний номер, місто проживання), Лікарі(Код лікаря, прізвище і ініціали, код паспорту, телефонний номер, місто проживання), Препарати(Код препарату, назва препарату, дата виготовлення, термін придатності), Квитанції(Код квитанції, код клієнта, всього до оплати, дата видачі, прізвище та ім’я клієнта, діагноз клієнта, код препарату);

.1.2   Продукт повинен дозволяти виводити дані: Діагнози(Код діагнозу, термін, термін лікування), Клієнти(Код клієнта, діагноз, код лікаря, прізвище та ім’я, код паспорту, телефонний номер, місто проживання), Лікарі(Код лікаря, прізвище і ініціали, код паспорту, телефонний номер, місто проживання), Препарати(Код препарату, назва препарату, дата виготовлення, термін придатності), Квитанції(Код квитанції, код клієнта, всього до оплати, дата видачі, прізвище та ім’я клієнта, діагноз клієнта, код препарату);

.1.3   Продукт повинен дозволяти видаляти дані: Діагнози(Код діагнозу, термін, термін лікування), Клієнти(Код клієнта, діагноз, код лікаря, прізвище та ім’я, код паспорту, телефонний номер, місто проживання), Лікарі(Код лікаря, прізвище і ініціали, код паспорту, телефонний номер, місто проживання), Препарати(Код препарату, назва препарату, дата виготовлення, термін придатності), Квитанції(Код квитанції, код клієнта, всього до оплати, дата видачі, прізвище та ім’я клієнта, діагноз клієнта, код препарату). По заданим полями таблиці: Діагнози(Код діагнозу, термін, термін лікування), Клієнти(Код клієнта, діагноз, код лікаря, прізвище та ім’я, код паспорту, телефонний номер, місто проживання), Лікарі(Код лікаря, прізвище і ініціали, код паспорту, телефонний номер, місто проживання), Препарати(Код препарату, назва препарату), Квитанції(Код квитанції, код клієнта, всього до оплати, прізвище та ім’я клієнта, діагноз клієнта, код препарату);

.1.4   Продукт повинен дозволяти здійснювати пошук даних по полях деяких таблиць: Діагнози(Код діагнозу, термін, термін лікування), Клієнти(Код клієнта, діагноз, код лікаря, прізвище та ім’я, код паспорту, телефонний номер, місто проживання), Лікарі(Код лікаря, прізвище і ініціали, код паспорту, телефонний номер, місто проживання), Препарати(Код препарату, назва препарату, дата виготовлення, термін придатності), Квитанції(Код квитанції, код клієнта, всього до оплати, дата видачі, прізвище та ім’я клієнта, діагноз клієнта, код препарату);

.1.5   Продукт повинен обчислювати прибуток за день на основі даних в таблиці Квитанції по полю "Всього до оплати";

.1.6   Продукт повинен дозволяти друкувати звіти усіх полів таблиць: Діагнози, Квитанції, Лікарі, Препарати, Клієнти.

4.      Вимоги до зовнішніх інтерфейсів

4.1    Користувацькі інтерфейси

На інтерфейсі продукту повинно бути:

.1.1   Головне меню;

.1.2   Таблиця бази даних;

4.1.3  Вікна додавання та видалення даних.

4.1.4 Вікна пошуку даних.

.1.5   Меню швидкого доступу.

4.2    Апаратні інтерфейси

4.2.1 Взаємодіє з принтером.

5.      Не функціональні вимоги

5.1    Вимоги продуктивності

5.1.1 Продукт повинен обчислювати вартість за день менше ніж за секунду;

5.1.2 Продукт повинен здійснювати пошук менше ніж за секунду;

.1.3   Програма повинна бути розроблена на мові С++.

5.2    Вимоги безпеки

5.2.1 Продукт повинен містити ідентифікацію по паролю.

2. Розробка інтерфейсу програми


2.1 Кроки розробки призначених для користувача інтерфейсів


Характеристика

Градації

Рівень знань і досвід

Комп’ютерна грамотність

Середній. Користувач повинен володіти елементарними навиками користування комп’ютером

Системний досвід

Середній

Досвід роботи з подібними програмами

Середній

Освіта

Закінчена вища освіта

Рівень читання

9 років в школі

Машинопис

100 слів за хвилину

 Фізичні характеристики користувача

Вік

Молодий, середнього віку, літній

Стать

Розвиненість рук

Лівша, правша, володіє однаково обома руками

Характеристики завдань і роботи користувача

Спосіб використання цієї програми

Ознайомлення з інформацією, яка в ній знаходиться, додавання, видалення, здійснювати пошук та фільтрацію даних, обчислювати суму за день та друкувати звіти

 

.2 Проектування інтерфейсу


1.      Головне вікно(вікно, яке запускається першим) - це вікно "Ідентифікація" [Мал. 2];

2.      Вікно "Зміна паролю" [Мал. 3] - викликається через вікна: "Ідентифікація" [Мал. 2], "Діагнози" [Мал. 11], "Клієнти" [Мал. 13], "Квитанції" [Мал. 12], "Препарати" [Мал. 15], "Лікарі" [Мал. 14];

.        Вікно "Діагнози" [Мал. 11] - викликається через вікна: "Ідентифікація" [Мал. 2], "Клієнти" [Мал. 13], "Лікарі" [Мал. 14], "Квитанції" [Мал. 12], "Препарати" [Мал. 15].

.        Вікна додавання, видалення даних, пошуку та друку даних [Мал. 6] в "Діагнози" [Мал. 11] - викликається через вікно "Діагнози" [Мал. 11];

.        Вікно "Квитанції" [Мал. 12] - викликається через вікна: "Діагнози" [Мал. 11], "Клієнти" [Мал. 13], "Препарати" [Мал. 15], "Лікарі" [Мал. 14].

.        Вікна додавання та видалення, пошуку та друку даних [Мал. 7], підрахування заробленої суми за день [Мал. 4] в "Квитанції" [Мал. 12] - викликається через вікно "Квитанції" [Мал. 12].

.        Вікно "Клієнти" [Мал. 13] - викликається через вікна: "Діагнози" [Мал. 11], "Квитанції" [Мал. 12], "Препарати" [Мал. 15], "Лікарі" [Мал. 14].

.        Вікна додавання та видалення, пошуку та друку даних [Мал. 8] в "Клієнти" [Мал. 13] - викликається через вікно "Клієнти" [Мал. 13].

.        Вікно "Препарати" [Мал. 15] - викликається через вікна: "Діагнози" [Мал. 11], "Квитанції" [Мал. 12], "Лікарі" [Мал. 14], "Клієнти" [Мал. 13].

.        Вікна додавання та видалення, пошуку та друку даних [Мал. 10] в "Препарати" [Мал. 15] - викликається через вікно "Препарати" [Мал. 15].

.        Вікно "Лікарі" [Мал. 14] - викликається через вікна: "Препарати" [Мал. 15], "Квитанції" [Мал. 12], "Діагнози" [Мал. 11], "Клієнти" [Мал. 13].

.        Вікна додавання та видалення, пошуку та друку даних [Мал. 9] в "Лікарі" [Мал. 14] - викликається через вікно "Лікарі" [Мал. 14].

.        Вікно "Про нас" [Мал. 5] та вікно "Довідка" [Мал. 1] - викликається через вікна: "Препарати" [Мал. 15], "Діагнози" [Мал. 11], "Лікарі" [Мал. 14], "Квитанції" [Мал. 12], "Клієнти" [Мал. 13].

 

3. Вибір архітектури


3.1 Функціональна структура програми (типи моделі розробки)


Схема IDEF0 [Мал. 16]- Діаграма декомпозиції. Дану модель використовують для показу функціональної діяльності системи.

Спочатку в програму вводяться дані про клієнта, лікарів та коштів(в квитанціях). Із отриманих даних обчислюється прибуток за певний день та на основі цих даних здійснюється пошук. До обчислення прибутку за день прикріплюється довідка та бухгалтерська система, та із обчислення отримується вартість за день. Із пошуку отримуються певні дані, які шукались, та на друк поступають дані про ліки та клієнтів. Із друкування звітів отримуємо чек по оплаті та діагноз.

Схема DFD [Мал. 17]- діаграми потоків даних.

Дані про лікарів, клієнтів та препаратів заносяться в базу даних(БД), до якої прикріпляється довідка. Підрахування вартості за день відбувається на основі даних в БД, які заносяться в БД. Пошук здійснює свою функцію на основі даних в БД над клієнтами та діагнозами. Дані БД(дані про клієнтів та діагнозів) та дані пошуку над БД виводяться для користувача, звідки потім є можливість створення звітів де після чого є можливість друку їх.

3.2 Вхідні дані на розробку автоматизованої системи


Для розробки даної автоматизованої системи медичного діагностичного центру використовується ERwin, BatchAccess та Builder c++ 6.

·        ERwin - для створення схеми бази даних(БД) та генерування коду БД для BatchAccess;

·        BatchAccess - для створення БД, на основі генерованого коду на основі схеми БД із ERwin [Мал. 19].

·        Builder c++ 6 - для програмної реалізації додатку, який буде працювати із генерованою БД, де для зв’язку з нею буде використовуватися драйвер ADO.

 

.3 Вибір середовища програмування


Програма проектується в середовищі Builder c++ 6. Для зв’язку з БД використовується драйвер ADO середовища Builder c++ 6, а саме компонент ADOConnection, в якому встановлюється шлях до БД де підключаємось через дані "Microsoft Jet 4.0 OLE DB Provider".

 

.4 Вибір сервера баз даних


Для генерації бази даних(БД) використовується сервер ODBC.

 

4. Детальне проектування


4.1 Логічна структура програми


Структура бази даних(БД) з визначеними ключовими та зовнішніми полями БД, яка працює з проектованим додатком [Мал. 20].

 

.2 Розробка структури бази даних проекту


Визначаю схематично потрібні таблиці для проектованого додатку, а саме: Препарати, Лікарі, Квитанції, Клієнти, Діагнози.

 

.3 Розробка структури і полів таблиць бази даних


Визначаю структуру і поля таблиць бзи даних, які є ключовими та зовнішніми [Мал. 19].

Висновок


На даній курсовій роботі я зрозумів важливість та поглинув в масштаби програмної інженерії, яка на сьогоднішній день є однією із найважливіших галузей де залучено понад 7 мільйонів спеціалістів даної області. Зрозумів фундаментальну ідею проектування програмного забезпечення(ПЗ), який є формальним процесом, яку можна вивчати, стандартизувати та удосконалювати.

В даний час практично немає жодної сфери людської діяльності (медицина, економіка, комерція, промисловість і т.д.), де б не застосовувалися комп’ютерні програми, тому на даній курсовій роботі було розроблено програмний додаток для медичного діагностичного центру "Medical© control".© control - це програмний додаток, який працює з базою даних (БД) медичного діагностичного центру. Через Medical© control можна здійснювати ряд операцій з БД: редагування, пошук та фільтрування за довільними полями, друкувати звіти, обчислювати прибуток за день, підраховувати кількість записів в таблиці (Діагнози, Квитанції, Клієнти, Препарати, Лікарі).

На даній курсовій роботі я засвоїв методи проектування та документації додатків, зрозумів потребу контролювати процес розробки ПЗ.

Список літератури


1.      Іан Соммервілла. Інженерія програмного забезпечення 2002.

2.      Орлов С.А. Технології розробки програмного забезпечення: Розробка складних програмних систем (Вид. 3), 2004.

.        Ерік Дж. Брауде. Технологія розробки програмного забезпечення, 2004.

.        Липаев В.В. Програмна інженерія. Методологічні основи [Текст]: Учеб. / В.В. Липаев; Держ. ун-т - Вища школа економіки. - М.: ТЕИС, 2006. - 608 с. - 1000 екз. - ISBN 5-7598-0424-3, УДК 004,41 (075,8), ББК 32.973.26-018я73, Липаев, Вища школа економіки, ТЕИС, 2006, PDF, економіка, програмування.

.        Лапланте Філ (2009). Вимоги Техніка для програмного забезпечення і систем (вид. 1). Редмонд, штат Вашингтон: CRC Press. ISBN 1-42006-467-3.

.        Макконнелл Стів (1996). Швидкий розвиток: Приборкання Дикого Software Розклади (. Вид 1). Редмонд, штат Вашингтон: Microsoft Press. ISBN 1-55615-900-5.

.        Віджерс Карл Е. (2003). Вимоги до програмного забезпечення (вид. 2). Редмонд, штат Вашингтон: Microsoft Press. ISBN 0-7356-1879-8.

.        Андрій Стельман і Дженніфер Грін (2005). Прикладне програмне забезпечення для управління проектами. Кембридж, Массачусетс: O'Reilly Media. ISBN 0-596-00948-8.

.        Брайан Беренбач, Даніель Пауліш, Юрген Катзмеєр, Арнольд Рудофер (2009). Програмне забезпечення та системи технічних вимог: на практиці. Нью-Йорк: McGraw-Hill Професійний. ISBN 0-07-1605479.

.        Вальтер Собків (2008). Сталий розвиток можливий при Creative System Engineering. Нью-Джерсі: CassBeth. ISBN 0615216307.

Додатки

 

Додаток 1. Лістинг програми


/*

Управління базою даних "Медична діагностична клініка" MDC.mdb

Автор Гребенюк Іван Андрійович

Версія 1.0

Програмування модулів (форм) алгоритмами

*/

//diagnozi_delete_zaput.cpp (daig_delete)

#include <vcl.h>

#pragma hdrstop

#include "diagnozi_delete_zaput.h"

#include "work_bd.h"

#pragma package(smart_init)

#pragma resource "*.dfm"_delete *diag_delete;

__fastcall Tdiag_delete::Tdiag_delete(TComponent* Owner) : TForm(Owner) { }__fastcall Tdiag_delete::Button1Click(TObject *Sender)

{ Memo1->Clear(); bd_work->diagnoziz->Active=false; AnsiString text[]={"DELETE FROM Діагнози",

" WHERE Діагнози.[Код діагнозу]=\""+Edit1->Text+"\"", " OR Діагнози.[Термін лікування]=\""+Edit3->Text+"\" OR",

"Діагнози.Термін=\""+Edit2->Text+"\""}; for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]);_work->diagnoziz->Close(); bd_work->diagnoziz->SQL->Clear(); bd_work->diagnoziz->SQL->Add(Memo1->Text);_work->diagnoziz->ExecSQL(); AnsiString text2[]={"SELECT *", "FROM Діагнози;"}; Memo1->Clear();(unsigned t=0; t<sizeof(text2)/sizeof(int); t++) Memo1->Lines->Add(text2[t]); bd_work->diagnoziz->Close();_work->diagnoziz->SQL->Clear(); bd_work->diagnoziz->SQL->Add(Memo1->Text); bd_work->diagnoziz->Open();_work->diagnoziz->Active=true; bd_work->count_diagnozi->Active=false; bd_work->count_diagnozi->Active=true; }__fastcall Tdiag_delete::FormCreate(TObject *Sender) { Left = 387; Top = 523; }__fastcall Tdiag_delete::Edit3KeyPress(TObject *Sender, char &Key)

{ if(Key == VK_RETURN) Button1Click(Sender); }

// diagnozi_insert_zaput.cpp (diag_insert)

#include <vcl.h>

#pragma hdrstop

#include "diagnozi_insert_zaput.h"

#include "work_bd.h"

#pragma package(smart_init)

#pragma resource "*.dfm"_insert *diag_insert;

__fastcall Tdiag_insert::Tdiag_insert(TComponent* Owner) : TForm(Owner) { }__fastcall Tdiag_insert::Button1Click(TObject *Sender)

" VALUES ( \""+Edit1->Text+"\",\""+Edit2->Text+"\",\""+Edit3->Text+"\")"};(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]);_work->diagnoziz->Close(); bd_work->diagnoziz->SQL->Clear(); bd_work->diagnoziz->SQL->Add(Memo1->Text);_work->diagnoziz->ExecSQL(); AnsiString text2[]={"SELECT *", "FROM Діагнози;"}; Memo1->Clear();(unsigned t=0; t<sizeof(text2)/sizeof(int); t++) Memo1->Lines->Add(text2[t]); bd_work->diagnoziz->Close();_work->diagnoziz->SQL->Clear(); bd_work->diagnoziz->SQL->Add(Memo1->Text); bd_work->diagnoziz->Open();_work->diagnoziz->Active=true; bd_work->count_diagnozi->Active=false; bd_work->count_diagnozi->Active=true; }__fastcall Tdiag_insert::FormCreate(TObject *Sender) { Left = 387; Top = 523; }__fastcall Tdiag_insert::Button1KeyPress(TObject *Sender, char &Key) { if(Key == VK_RETURN) Button1Click(Sender); }

//diagnozi_search_zaput.cpp (diag_search)

#include <vcl.h>

#pragma hdrstop

#include "diagnozi_search_zaput.h"

#include "work_bd.h"

#pragma package(smart_init)

#pragma resource "*.dfm"_search *diag_search;

__fastcall Tdiag_search::Tdiag_search(TComponent* Owner) : TForm(Owner) { }__fastcall Tdiag_search::Button1Click(TObject *Sender)

{ if((RadioButton2->Checked==true)&&(bd_work->diagnoziz->Locate("Термін",Edit2->Text, TLocateOptions())))

{ShowMessage("Присутній!");}((RadioButton1->Checked==true)&&(bd_work->diagnoziz->Locate("Код діагнозу",Edit1->Text, TLocateOptions())))

{ShowMessage("Присутній!");}((RadioButton3->Checked==true)&&(bd_work->diagnoziz->Locate("Термін лікування",Edit3->Text, TLocateOptions())))

{ShowMessage("Присутній!");} }__fastcall Tdiag_search::Edit3KeyPress(TObject *Sender, char &Key) { if(Key==VK_RETURN) Button1Click(Sender); }__fastcall Tdiag_search::FormCreate(TObject *Sender) { Left = 387; Top = 523; }

//password.cpp (PasswordDlg)

#include <vcl.h>

#pragma hdrstop

#include "password.h"

#include "diagnozi.h"

#include "work_bd.h"

#include "password_new.h"

#include "fstream.h"

#pragma resource "*.dfm"*PasswordDlg;

__fastcall TPasswordDlg::TPasswordDlg(TComponent* AOwner) : TForm(AOwner) { }__fastcall TPasswordDlg::OKBtnClick(TObject *Sender)

{ Memo1->Clear(); Memo1->Lines->LoadFromFile("renew.bin"); String pass_file = Memo1->Text;(pass_file != Password->Text) { ShowMessage("Невірний пароль!"); } else { PasswordDlg->Visible=false; Diagnoz->Show(); } }__fastcall TPasswordDlg::CancelBtnClick(TObject *Sender) { PasswordDlg->Close(); }__fastcall TPasswordDlg::FormCreate(TObject *Sender)

{ fstream file("renew.bin"); if(!file.is_open()) { ofstream sozdat("renew.bin"); sozdat.close(); } Left = 529; Top = 317; }__fastcall TPasswordDlg::SpeedButton1Click(TObject *Sender)

{ PasswordDlg->Visible = false; Pass_renew->Visible = true; }

//kvitancii_suma_za_den_zaput.cpp (suma_za_den_form)

#include <vcl.h>

#pragma hdrstop

#include "kvitancii_suma_za_den_zaput.h"

#include "work_bd.h"

#pragma package(smart_init)

#pragma resource "*.dfm"_za_den_form *suma_za_den_form;

__fastcall Tsuma_za_den_form::Tsuma_za_den_form(TComponent* Owner) : TForm(Owner) { }proverka()

{ if(suma_za_den_form->DBText1->Caption == "") {String none = "0"; suma_za_den_form->DBText1->Caption = none;}}__fastcall Tsuma_za_den_form::Button1Click(TObject *Sender)

{ String date = DateToStr(MonthCalendar1->Date); date = StringReplace(date,".","/",TReplaceFlags()<<rfReplaceAll);*d = date.c_str(); char first_2_day[5]; first_2_day[0] = d[0];first_2_day[1] = d[1];month[5]; month[0] = d[3];month[1] = d[4]; d[0] = month[0];d[1] = month[1]; d[3] = first_2_day[0];d[4] = first_2_day[1];d1[100]; for(int i=0;i<10;i++) { d1[i] = d[i]; } Edit1->Text = d1; Memo1->Clear();_work->suma_za_den->Active=false; String sum = "SELECT SUM(Квитанція.[Всього до оплати]) FROM Квитанція";text= sum+" WHERE Квитанція.[Дата видачі]=#"+Edit1->Text+"#";->Lines->Add(text); bd_work->suma_za_den->SQL->Clear();_work->suma_za_den->SQL->Add(Memo1->Text); bd_work->suma_za_den->ExecSQL();_work->suma_za_den->Active=true; suma_za_den_form->Height = 281; proverka(); }__fastcall Tsuma_za_den_form::FormCreate(TObject *Sender) { Left = 1168; Top = 450;suma_za_den_form->Height=257; }__fastcall Tsuma_za_den_form::MonthCalendar1KeyPress(TObject *Sender, char &Key)

{ if(Key == VK_RETURN)Button1Click(Sender); }

//diagnozi.cpp (Diagnoz)

#include <vcl.h>

#pragma hdrstop

#include "diagnozi.h"

#include "work_bd.h"

#pragma package(smart_init)

#pragma resource "*.dfm"*Diagnoz;atribute[] = {"Код діагнозу","Термін","Термін лікування"};__fastcall TDiagnoz::FormClose(TObject *Sender, TCloseAction &Action) { PasswordDlg->Close(); }__fastcall TDiagnoz::ComboBox1KeyPress(TObject *Sender, char &Key) { if(Key==Key)Key = 0x00; }__fastcall TDiagnoz::Button3Click(TObject *Sender) { Panel2->Visible=false; }__fastcall TDiagnoz::DBGrid1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y)

{ bd_work->count_diagnozi->Active=false;_work->count_diagnozi->Active=true; Diagnoz->StatusBar1->Panels->Items[1]->Text = DBText1->Caption; }__fastcall TDiagnoz::FormCanResize(TObject *Sender, int &NewWidth, int &NewHeight, bool &Resize)

{ Edit1->Width=Diagnoz->Width-260; }__fastcall TDiagnoz::Button1Click(TObject *Sender)

{ if((ComboBox1->Text=="Скинути фільтр")||(Edit1->Text=="")) bd_work->diagnoziz->Filtered = false;if((ComboBox1->Text=="Фільтр по \"Код діагнозу\"")&&(Edit1->Text!=""))

{ bd_work->diagnoziz->Filtered = false; bd_work->diagnoziz->Filter = "[Код діагнозу] like '"+Edit1->Text+"*'";_work->diagnoziz->Filtered = true; }if((ComboBox1->Text=="Фільтр по \"Термін\"")&&(Edit1->Text!=""))

{ bd_work->diagnoziz->Filtered = false; bd_work->diagnoziz->Filter = "[Термін] like '"+Edit1->Text+"*'";_work->diagnoziz->Filtered = true; }if((ComboBox1->Text=="Фільтр по \"Термін лікування\"")&&(Edit1->Text!=""))

{ bd_work->diagnoziz->Filtered = false;_work->diagnoziz->Filter = "[Термін лікування] like '"+Edit1->Text+"*'"; bd_work->diagnoziz->Filtered = true; } }__fastcall TDiagnoz::ToolButton1Click(TObject *Sender) { bd_work->table1Click(Sender); }__fastcall TDiagnoz::ToolButton2Click(TObject *Sender) { bd_work->vidalit1Click(Sender); }__fastcall TDiagnoz::ToolButton4Click(TObject *Sender) { bd_work->N1Click(Sender); }__fastcall TDiagnoz::ToolButton6Click(TObject *Sender) { bd_work->N3Click(Sender); }__fastcall TDiagnoz::ToolButton8Click(TObject *Sender) { bd_work->MeButtonClick(Sender); }__fastcall TDiagnoz::ToolButton10Click(TObject *Sender) { bd_work->N2Click(Sender); }__fastcall TDiagnoz::ToolButton12Click(TObject *Sender) { bd_work->N5Click(Sender); }__fastcall TDiagnoz::FormCreate(TObject *Sender) { Left = 387; Top = 74; }__fastcall TDiagnoz::ToolButton13Click(TObject *Sender) { bd_work->N63Click(Sender); }__fastcall TDiagnoz::DBGrid1KeyPress(TObject *Sender, char &Key) { if(Key == VK_RETURN)Button1Click(Sender); }

Додаток 2. Результати роботи та схеми програми


Мал. 1 - Вікно довідки програми, та інструкція до неї.

Мал. 2 - Вікно контролю доступу до програми.

Мал. 3 - Вікно зміни пароля доступу до програми.

Мал. 4 - Вікно обрахування заробленої суми за певний день.

Мал. 5 - Вікно інформації про розробника.

Мал. 6 - Вікна додавання, видалення, пошуку та друку даних в Діагнози.

Мал. 7 - Вікна додавання, видалення, пошуку та друку даних в Квитанції.

Мал. 8 - Вікна додавання, видалення, пошуку та друку даних в Клієнти.

Мал. 9 - Вікна додавання, видалення, пошуку та друку даних в Лікарі.

Мал. 10 - Вікна додавання, видалення, пошуку та друку даних в Препарати.

Мал. 11 - Вікно контролю над таблицею БД "Діагнози".

Мал. 12 - Вікно контролю над таблицею БД "Квитанції".

Мал. 13 - Вікно контролю над таблицею БД "Клієнти".

Мал. 14 - Вікно контролю над таблицею БД "Лікарі".

Мал. 15 - Вікно контролю над таблицею БД "Препарати".

Мал. 16 - Функціональна діяльність проектованої системи(IDEF0).

Мал. 17 - Діаграма потоків даних проектованої системи (DFD).

Мал. 18 - Діаграма варіантів використання проектованої системи.

Мал. 19 - Логічна модель бази даних проектованої системи в ERwin.

Мал. 20 - Робоча схема БД програмного додатку.

Похожие работы на - Розробка програмного додатку для медичного діагностичного центру 'Medical© control'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!