Системний аналіз процесу обліку пацієнтів в медичному закладі
Проектування комп’ютерних інформаційних систем обліку пацієнтів в медичному закладі. Спрощення роботи відділу реєстратури. Програмна реалізація автоматичного заповнення анамнезів та скарг пацієнтів. Зіставлення розкладу запланованих сеансів лікування.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 26.11.2015 |
Размер файла | 544,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ТЕРНОПІЛЬСЬКИЙ НАЦІОНАЛЬНИЙ ЕКОНОМІЧНИЙ УНІВЕРСИТЕТ
ФАКУЛЬТЕТ КОМП'ЮТЕРНИХ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
КУРСОВИЙ ПРОЕКТ
з дисципліни “Системний аналіз та проектування комп'ютерних інформаційних систем”
на тему: «Системний аналіз процесу обліку пацієнтів в медичному закладі»
Зміст
Вступ
1. Дослідження об'єкту автоматизації
2. Опис проблеми
3. Обґрунтування вибору проектних рішень
4. Програмна реалізація проектного рішення
5. Реалізація методології при аналізі та проектуванні кіс
Висновки
Література
Додаток
Вступ
Системний аналіз - це методологія дослідження таких властивостей та відношень в об'єктах, які важко спостерігаються та важко розуміються, за допомогою представлення цих об'єктів у вигляді цілеспрямованих систем та вивчення властивостей цих систем та взаємних відношень як відношень між цілями та засобами їх реалізації.
Системний підхід - деяка загальна методологія дослідження великих і складних систем або рішення складних недостатньо чітко сформульованих проблем.
До основних характерних особливостей системи можна віднести наступні.
1. Система є передусім сукупністю елементів. За певних умов елементи, відповідно, можуть розглядатись як системи.
2. Наявність суттєвих зв'язків між елементами та (або) їх властивостями, що переважають над зв'язками цих елементів з тими, які не входять до даної системи. Під суттєвими зв'язками розуміють лише такі, що закономірно визначають інтегративні властивості системи, і це вирізняє систему з оточуючого середовища як цілісний об'єкт.
3. Наявність визначеної організації, що проявляється у зменшенні ступеня ентропії (невизначеності) системи порівняно з ентропією системо утворюючих факторів. До таких факторів належать кількість елементів системи, кількість суттєвих зв'язків, якими може володіти елемент, тощо.
4. Наявність інтегративних властивостей, тобто властивих системі загалом, але не властивих жодному елементу зокрема. Це свідчить про те, що хоча властивості системи і залежать від властивостей елементів, вони не визначаються ними повністю. Отже, система не зводиться до простої сукупності елементів і, розчленовуючи її на окремі частини, неможливо пізнати всі властивості системи загалом.
У загальному вигляді поняття “система” характеризується:
а) множиною елементів;
б) зв'язками між ними;
в) цілісним характером матеріального об'єкта, явища або процесу.
Системний підхід при аналізі й удосконалюванні складних КІС складається з п'яти стадій:
Визначення системи і її структури. Визначення, що входить у систему, що є зовнішнім середовищем і визначення границь системи, виявлення “вузьких місць” відновлення структури існуючої системи.
Діагностика системи. Виявлення фактичного функціонування окремих підсистем, що входять у систему, виявлення існуючих зв'язків між підсистемами, побудова моделей для окремих підсистем.
Перевірка погодженості цілей, критеріїв. Композиція глобальних цілей і реалій виходячи з існуючих реалій, перевірка погодженості виявлених фактичних цілей з одного боку, підписаних раніше цілей і критеріїв з іншого.
Оцінка резервів і можливостей удосконалювання системи. Оцінка наявних резервів по кожній підсистемі окремо, оцінка резервів, які можна одержати за рахунок кращої організації системи. Попередня економічна оцінка ефективності.
Формулювання проблеми удосконалювання системи. Тут випливають етапи конкретизації, структуризації, формалізації проблеми і рішення її в відповідності з викладеними вище рекомендаціями.
Система обліку пацієнтів в медичному закладі розроблена для полегшення роботи у відділі реєстратури. Це автоматизована система ведення медичної документації та створення звітності лікарської діяльності відповідно до вимог міністерства охорони здоров'я. Основні можливості:
· Ведення інформації;
· редагування контекстних меню для швидкого та зручного заповнення документів;
· зберігання та зручний перегляд пацієнтів;
· автоматичне заповнення анамнезів та скарг пацієнтів, та його настроювання;
· розклад запланованих сеансів лікування;
· автоматизоване створення та друкування звітної документації.
1. Дослідження об'єкту автоматизації
медичний автоматичний анамнез програмний
Процес комп'ютеризації у будь-якій сфері діяльності людини сильно залежить від масштабів і структури того, що потрібно комп'ютеризувати, але головною метою його є створення єдиної інформаційної структури, яка б дозволяла людям створювати інформацію, легко і правильно вносити її до системи, швидко знаходити потрібну інформацію і зручно нею обмінюватись. При досягненні такої мети будь-які процеси взаємодії людей стають зрозумілими, зручними, більш контрольованими і займають на порядок менше часу. Тому ті гроші, які витрачаються на комп'ютеризацію, мають бути обґрунтовані саме такими цілями, досягнення яких робить ті чи інші процеси максимально ефективними.
Програма розроблена в розрахунку на рiзнi рiвнi управлiння роботою медичного закладу:
· можливiсть узагальнення даних;
· забезпечення єдиного пiдходу до порядку ведення інформації;
· можливiсть постiйного оперативного впливу на процес роботи медичного закладу;
· значне пiдвищення доступу до аналiтичної iнформацiї.
Автоматизацiя роботи медичного закладу сприяє пiдтриманню бази данних в актуальному станi i отриманню статистично достовiрної iнформацiї.
Програма значно пiдвищує доступ лікарів до iнформацiї по пацієнту i дає можливiсть постiйного оперативного впливу на процес управлiння.
Програма передбачає експлуатацiю приватними фiрмами.
На рівні медичного закладу:
1. Автоматизацiя обробки всiх даних та iншої найрiзноманiтнiшої iнформацiї з питань обліку пацієнтів.
2. Зниження трудомiсткостi та значне скорочення строкiв обробки iнформацiї по облiку та складанню звiтностi.
3. Миттєве отримання достовiрної iнформацiї по любому запиту на любий момент часу.
4. Автоматичне формування звіту.
Програма може розширяти перелiк діагнозу.
Автоматизоване формування звітів дозволить унiфiкувати їх створення i виключить помилки при їх виданнi.
5. Створення бази даних яка:
· Дає iнформацiю по пацієнтів;
· дозволяє отримати додаткову інформацію (діагноз, контактну інформацію тощо);
· є основою для складання звіту.
6. Програма контролює введення нового пацієнта.
7. Програма сприяє значному зниженню трудомiсткостi та скороченню строкiв обробки iнформацiї по облiку та складанню звiтностi.
Програма має зручний інтерфейс системи, що дає змогу легко працювати в її середовищі. Основним користувачем системи є працівник відділу реєстратури. Усі ці можливості позбавляють працівника відділу реєстратури роботи по заповненню документів, плутанини в паперовій документації та помилок.
Інформаційні процеси системи можна відобразити за допомогою діаграм потоків даних (Рисунок 1.1-Рисунок 1.2).
Рис. 1.1 Діаграма потоків даних верхнього рівня
Рис. 1.2 Деталізація потоків даних
2. Опис проблеми
Метою розробки є спрощення роботи для відділу реєстратури. Для досягнення поставленої мети потрібно перерахувати основні задачі, які потрібно вирішити.
Розроблена інформаційна система повинна містити інформацію про всі операції, які необхідні для обліку пацієнтів в медичному закладі. Система дає можливість виведеню звітності по обсягу виконаної роботи працівника медичного закладу. Такі можливості досягаються завдяки використанню комп'ютерної техніки та програми обліку та планування робочого часу лікаря. Крім графіку відвідувань, в комп'ютері зберігається уся інформація про пацієнта.
Основними функціональними вимогами до інформаційної системи будуть: - додавання нового пацієнта;
- редагування введеної інформації;
- виведення звіту;
- виведення повної інформації про пацієнта (діагноз, контактна інформація тощо).
На даному етапі висуваються наступні критерії до створення інформаційної системи:
- багатофункціональність;
- надійність;
- зручність в користуванні;
- швидкий доступ до даних;
- безпека ІС;
- помірна ціна;
- звітність.
Використовуючи метод аналізу ієрархій, проводимо декомпозицію проблеми (рисунок 2.2).
Размещено на http://www.allbest.ru/
Рисунок 2.2 Декомпозиція проблеми
Щоб вибрати найбільш прийнятне рішення для даної системи, потрібно провести оцінку можливих альтернатив методом попарних порівнянь оцінок показників з точки зору їхнього впливу на мету.
a1 - дорогий проект з середньою надійністю і високою функціональністю;
a2 - не дуже дорогий проект з високою надійністю і низькою функціональністю;
a3 - не дорогий проект з мінімальною надійністю і середньою функціональністю.
Визначимо критерії (N = 3)
Q1 - ціна;
Q2 - надійність;
Q3 - функціональність;
Таблиця 2.1 Шкала відносної важливості
Інтенсивність відносної важливості |
Визначення |
|
1 |
Рівна важливість |
|
3 |
Помірна перевага |
|
5 |
Істотна перевага |
|
7 |
Сильна перевага |
|
9 |
Дуже сильна перевага |
|
2,4,6,8 |
Проміжні значення застосовуються в компромісних випадках |
Таблиця 2.2 Матриця попарних порівнянь для критеріїв
Q1 (Ціна) |
Q2 (Надійність) |
Q3 (Функціональність) |
Власний вектор |
Нормоване значення |
||
Q1(Ціна) |
1 |
2 |
3 |
1,82 |
0,54 |
|
Q2(Надійність) |
Ѕ |
1 |
2 |
1 |
0,3 |
|
Q3(Функціональність) |
1/3 |
1/2 |
1 |
0,55 |
0,16 |
|
?=3,37 |
?=1 |
Елементи власного вектора обчислюється як корінь степеня N із добутку елементів відповідного рядка матриці:
Отримані значення нормуються і округлюються до двох значущих цифр:
Тепер складемо матриці попарних порівнянь для альтернатив за кожним критерієм і визначимо відповідні коефіцієнти важливості альтернатив.
Таблиця 2.3 Матриця попарних порівнянь для альтернатив за критерієм «Ціна»
Q1 (Ціна) |
a1 |
a2 |
a3 |
Власний вектор |
Нормоване значення |
|
a1 |
1 |
1/3 |
1/6 |
0,38 |
V11=0,09 |
|
a2 |
3 |
1 |
1/5 |
0,84 |
V21=0,19 |
|
a3 |
6,00 |
5 |
1 |
3,11 |
V31=0,72 |
|
?=4,33 |
?=1 |
Таблиця 2.4 Матриця попарних порівнянь для альтернатив за критерієм «Надійність»
Q2 (Надійність) |
a1 |
a2 |
a3 |
Власний вектор |
Нормоване значення |
|
a1 |
1 |
1/4 |
7 |
1,21 |
V12=0,28 |
|
a2 |
4 |
1 |
6 |
2,88 |
V22=0,66 |
|
a3 |
1/7 |
1/6 |
1 |
0,29 |
V32=0,07 |
|
?=4,38 |
?=1 |
Таблиця 2.5 Матриця попарних порівнянь для альтернатив за критерієм «Функціональність»
Q3 (Функціональність) |
a1 |
a2 |
a3 |
Власний вектор |
Нормоване значення |
|
a1 |
1 |
8 |
4 |
3,17 |
V13=0,71 |
|
a2 |
1/8 |
1 |
1/4 |
0,31 |
V23=0,07 |
|
a3 |
ј |
4 |
1 |
1 |
V33=0,22 |
|
?=4,49 |
?=1 |
Обчислимо глобальний критерій для кожної альтернативи:
Найкращою вважається альтернатива з максимальним значенням, тобто в нашому випадку
.
Було створено функціонально-вартісний аналіз заданої програми, і визначено що найкращою альтернативою з максимальним значенням , буде
.
3. Обґрунтування вибору проектних рішень
Для того, щоб реалізувати обраний нами програмний продукт якомога простим для використання, а також якомога дешевшим та достатньо функціональним. Має мати високу швидкодію та безперебійність, надійність роботи.
Основним користувачем системи буде працівник відділу реєстратури, який вводитиме дані про пацієнта.
Автоматизацiя роботи медичного закладу сприяє пiдтриманню бази данних в актуальному станi i отриманню статистично достовiрної iнформацiї. Програма значно пiдвищує доступ лікарів до iнформацiї по пацієнту i дає можливiсть постiйного оперативного впливу на процес управлiння. Програма передбачає експлуатацiю приватними фiрмами.
Метою для створення програмного продукту є позбавлення працівника відділу реєстратури роботи по заповненню документів, плутанини в паперовій документації та помилок.
Розрахунок витрат на розробку програмного забезпечення
З економічної точки зору витрати на розробку програмного забезпечення складаються із витрат на програмування і витрат на експлуатацію персонального комп'ютера, на якому проводиться програмування.
Сумарні витрати на розробку програмного забезпечення визначаються за формулою:
де -- норматив рентабельності, що враховує прибуток установи, яка розробляє дану програму, долі одиниці;
-- час, що витрачається на розробку даної програми працівником і-ої кваліфікації, людино-місяців;
-- основна заробітна плата розробника і-ої кваліфікації, грн/міс.;
-- коефіцієнт, що враховує додаткову заробітну плату розробникам програми, в долях від основної заробітної плати;
-- коефіцієнт, що враховує нарахування органам соціального захисту на заробітну плату, в долях від основної та додаткової заробітної плати;
-- коефіцієнт, що враховує накладні витрати установи, в якій розробляється ця програма, в долях до основної заробітної плати розробника;
-- машинний час ЕОМ, необхідний для відлагоджування даної програми, машино-годин;
-- експлуатаційні витрати, що припадають на 1 годину машинного часу.
Витрати електроенергії визначають експлуатаційні витрати, що припадають на 1 годину роботи ЕОМ:
,
де Р - споживана потужність ЕОМ, Вт;
С - вартість 1 кВт/год електроенергії.
Значення коефіцієнтів, як правило, рівні: ; ; ; .
Програмне забезпечення розроблялося на комп'ютері потужністю 350 ват та моніторі потужністю 36 ват:
Р=0.350 + 0.036 = 0.386 кВт.
Вартість електроенергії для розробника становить 0.25 грн.
Е=0.386*0.25=0.097 грн.
Програма розроблялася 7 днів по 7 годин в день, то:
tв=49 годин.
Програма розроблялась та тестувалась одним працівником, який працює на повній ставці, тому розрахунки проводились виходячи з його заробітної плати:
=600 грн.
S=(1+0.14)(600(1+0.12)(1+0.35)(1+0.6)+0.21)+49*0.097= 1659.75 грн.
Вартість розробленої програми обчислюється наступним чином:
де z - вартість, за якою продається програма, грн..;
п - кількість установ, що придбають дану програму.
п = 1.
Z=S/n=S=1659.75
Розрахунок капітальних вкладень
Купівля комп'ютерної техніки для мережі готівкових розрахунків, сервер та мережні з'єднання. Капітальні вкладення будуть складатися з добутку апаратної суми та з вартості програми:
К=КЕОМ(Т1/Т2)+z
КЕОМ=20000 отже
К=20000+1659.75=21659.75 грн.
Д=255 днів, Тс - термін служби програми становитиме 5 років.
k=0,1 ; tp=8 год. ; tз
Тривалість роботи для адміністратора може бути від декількох хвилин - усунення дрібної неполадки, перевантаження сервера, до декількох годин (додавання нових даних, створення користувачів, відновлення БД).
Розглянемо випадок для мінімально затраченого часу:
Т1=255(1-0.1)*8=1836 год.
Тепер подамо випадок для визначення затрат часу. Затрати на час роботи з системою становили 6 ЕОМ по 8 год.
Т1=255(1-0.1)*8*6= 11016 год.
Економія витрат
Економія витрат визначається за формулою:
Для середньо тривалого використання системи (підтримка БД, робота з ЕОМ) економія витрат становитиме:
Е=(1+0.12)(1+0.35)(600-( 1659.75*0.097+1659.75/1))= 2958.65 грн.
Для доведення доцільності впровадження системи необхідно визначити термін її окупності:
міс.
Оскільки термін служби системи визначений в 5 років то 55 місяців система буде приносити прибуток.
Грошовий річний ефект від впровадження системи складатиме:
грн..
Таблиця 3.1 Зведені економічні показники розробки
Показник |
Розмірність |
Значення |
|
Витрати на розробку програмного забезпечення |
грн. |
1659.75 |
|
Капітальні вкладення |
грн. |
21659.75 |
|
Економія експлуатаційних витрат |
грн/рік |
2958.65 |
|
Термін окупності |
Міс |
7 |
|
Річний грошовий економічний ефект |
грн./рік |
2112.18 |
Сума витрат на розробку програмного забезпечення не є значно високою. Термін окупності даного програмного продукту становить 7 місяців.
4. Програмна реалізація проектного рішення
Даний розділ описує головні модулі програмного забезпечення, які реалізовують роботу з базою даних, та саму архітектуру програми, вибір середовища розробки. Було вибрано мову програмування Borland Delphi версії 7. Програма створена як база даних, яка за допомогою таблиць з введеними даними дозволяє контролювати облік пацієнтів в медичному закладі. Програма не є складною, має зручний інтерфейс.
Форма Unit2.pas. Форма яка відображає базу даних обліку пацієнтів.
Форма Unit3.pas. Виводить додаткову інформацію про пацієнта (діагноз, контактну інформацію та ін.).
Форма Unit4.pas. Автор програми.
Форма Unit5.pas. Форма яка відображає діагнози (можливо додавати, видаляти та редагувати діагнози)
Інформаційний процес, спрямований на одержання науково-технічної, планової, контрольної, облікової й аналітичної інформації, в інформаційних системах комерційного призначення уніфікований і базується на використанні електронно-обчислювальної техніки.
Форми зв'язані між собою, працюють без збоїв.
5. Реалізація методології при аналізі та проектуванні КІС
Після завантаження з'являється головна форма на якій відображається загальна інформація про пацієнтів.
Натиснувши по будь - якому пацієнтові з'являється вікно з додатковою інформацією про пацієнта.
Рис. 5.1 Загальна інформація про пацієнтів
Рис. 5.2 Контексне меню
Рис. 5.3 Додаткова інформація про діагноз
На головній формі, де розташована таблиця, працівник реєстратури може додавати (реєструвати) новий запис, а саме нового пацієнта.
Програма має зручний інтерфейс системи, що дає змогу легко працювати в її середовищі. Основним користувачем системи є працівник відділу реєстратури.
Висновки
Системний аналіз це методологія, що дозволяє створювати й удосконалювати складні системи і вирішувати складні проблеми.
Інформаційний процес, спрямований на одержання науково-технічної, планової, контрольної, облікової й аналітичної інформації, в інформаційних системах комерційного призначення уніфікований і базується на використанні електронно-обчислювальної техніки.
В результаті роботи над даним завданням курсового проекту була розроблена методологія побудови програми на основі якої реалізована прикладна програма зі зручним інтуїтивно зрозумілим інтерфейсом, розрахованим на роботу користувачів без особливої попередньої підготовки. Програма реалізує всі зазначені при постановці задачі функції і разом з тим, завдяки відкритій технології, є можливість доповнення її функціональних можливостей та вдосконалення програми в цілому.
Після проведення тестування програми та її впровадження можна стверджувати, що в загальному випадку розроблена програма ефективно виконує поставлені перед нею завдання, тобто забезпечує можливість обліку пацієнтів і адекватно реагувати на можливі проблемні ситуації.
Програма має зручний інтерфейс системи, що дає змогу легко працювати в її середовищі. Основним користувачем системи є працівник відділу реєстратури.
Література
1. Turbo Pascal I Delphi. 4-те видання. - Львів: Деол, СПД Глинський, 2003. - 144с.
2. Глинський Я.М. Паскаль. Київ: Освіта, 2004.
3. Обєктно-орієнтовне програмування в Delphi 7. Васьковець П.С., Київ „Веселка”, 2005.
4. Гофман В.Є., Хомоненко А.Д. „Робота з базами даних в Delphi.”-СПб.
5. С. Боровський., Delphi 6. Учений курс. - СПб.: Питер, 2003. 640с.
6. Сван, Том. Delphi 4.Библия разработчика: Пер. с англ. - К.; М.; СПб.: Диалектика, 1998. - 672 с.: ил. - Парал. тит. англ.
7. Р. Баас, М. Фервай, Х. Гюнтер. Delphi 4: полное руководство: пер. с нем. - К.: Издательская группа BHV, 1999. - 800 с.:
8. Культин Н.Б. Программирование на Object Pascal в Delphi 5. СПб.: БХВ - Санкт-Петербург, 1999. -464 с.,
9. Архангельский А.Я. Delphi 5. Справочное пособие - М.: ЗАО “Издательство БИНОМ”, 2001 г. - 768 с.:
Додаток А
Текст програмних модулів
unit Unit1;
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, jpeg, ExtCtrls, SUIProgressBar;
type
TForm1 = class(TForm)
Image1: TImage;
Timer1: TTimer;
suiProgressBar1: TsuiProgressBar;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var S: TStringList;
Num: Integer;
begin
Randomize;
S:=TStringList.Create;
try
S.Add('1.jpg');
S.Add('2.jpg');
Num:=Random(S.Count);
Image1.Picture.LoadFromFile(S[Num]);
finally
S.Free;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin SuiProgressBar1.Position:=SuiProgressBar1.Position+1;
if SuiProgressbar1.Position=100 then
begin
Form2.Show;
Form1.Hide;
Form1.Timer1.Enabled:=false;
end;
end;
unit Unit2;
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, Menus, jpeg, ExtCtrls, ADOConEd,
ComObj, ImgList, ComCtrls, Buttons, ToolWin;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
GroupBox1: TGroupBox;
FindEdit1: TEdit;
DBGrid2: TDBGrid;
Image1: TImage;
Image2: TImage;
PopupMenu1: TPopupMenu;
N13: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
Excel1: TMenuItem;
ImageList1: TImageList;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
Panel1: TPanel;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Label2: TLabel;
Edit1: TEdit;
ComboBox1: TComboBox;
ScrenSaver1: TMenuItem;
Label3: TLabel;
N26: TMenuItem;
N28: TMenuItem;
N29: TMenuItem;
N30: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
N33: TMenuItem;
N34: TMenuItem;
N35: TMenuItem;
N36: TMenuItem;
WebBrowser1: TMenuItem;
StatusBar1: TStatusBar;
ComboBox2: TComboBox;
N40: TMenuItem;
ToolBar1: TToolBar;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton;
Timer1: TTimer;
procedure N3Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure FindEdit1Change(Sender: TObject);
// procedure FindButton1Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
procedure N20Click(Sender: TObject);
procedure Excel1Click(Sender: TObject);
procedure N41Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N22Click(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure ScrenSaver1Click(Sender: TObject);
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Label2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Label3MouseLeave(Sender: TObject);
// procedure dxButton1MouseUp(Sender: TObject; Button: TMouseButton;
// Shift: TShiftState; X, Y: Integer);
procedure Button2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure DBGrid1DblClick(Sender: TObject);
procedure WebBrowser1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure N40Click(Sender: TObject);
// procedure N37Click(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton10Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
// procedure DBGrid1DblClick(Sender: TObject);
// procedure N25Click(Sender: TObject);
// procedure Image5Click(Sender: TObject);
// procedure Image4Click(Sender: TObject);
// procedure Image3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
q:string;
implementation
uses DataModuleUnit, CountryBookTable, Unit3, Unit4, Unit5, Unit6, Unit7,
Unit9;
{$R *.dfm}
procedure TForm1.N3Click(Sender: TObject);
Begin
Form2.ShowModal;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
DataModule4.TovaruTable.Insert;
Form3.ShowModal;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
if Application.MessageBox(PChar('Ви справді хочеш видалити '
+DataModule4.TovaruTableDSDesigner.AsString), 'Попередження',
MB_OKCANCEL)=id_OK then
DataModule4.TovaruTable.Delete;
end;
procedure TForm1.N6Click(Sender: TObject);
begin
Form3.ShowModal;
end;
procedure TForm1.FindEdit1Change(Sender: TObject);
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='Назва_виробу>'''+FindEdit1.Text+'''';
end;
procedure TForm1.N18Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[5]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
try
DBGrid1.Canvas.Font.Style:=[];
if (gdSelected in State) or (gdFocused in State)then
begin
DBGrid1.Canvas.Brush.Color:=clHighLight;
DBGrid1.Canvas.Font.Color:=clWhite;
end
else
begin
DBGrid1.Canvas.Brush.Color:=clWhite;
DBGrid1.Canvas.Font.Color:=clBlack;
//Если поле цвета не пустое то использовать цвет из поля
if DataModule4.TovaruTableColor.AsString<>'' then
DBGrid1.Canvas.Font.Color:=
StringToColor(DataModule4.TovaruTableColor.AsString);
end;
//Очищаю ячейку
DBGrid1.Canvas.FillRect(Rect);
//Вывожу текст ячейки
DBGrid1.Canvas.TextOut(Rect.Left, Rect.Top, Field.AsString);
except
DBGrid1.Canvas.TextOut(Rect.Left, Rect.Top, Field.AsString);
end;
end;
procedure TForm1.N20Click(Sender: TObject);
begin
DataModule4.ADOConnection1.Close;
if EditConnectionString(DataModule4.ADOConnection1) then
begin
DataModule4.ADOConnection1.Connected:=true;
DataModule4.TovaruTable.Active:=true;
end;
end;
procedure TForm1.Excel1Click(Sender: TObject);
var
XLApp,Sheet,Colum:Variant;
index,i:Integer;
begin
XLApp:= CreateOleObject('Excel.Application');
XLApp.Visible:=true;
XLApp.Workbooks.Add(-4167);
XLApp.Workbooks[1].WorkSheets[1].Name:='Звіт';
Colum:=XLApp.Workbooks[1].WorkSheets['Звіт'].Columns;
Colum.Columns[1].ColumnWidth:=20;
Colum.Columns[2].ColumnWidth:=20;
Colum.Columns[3].ColumnWidth:=20;
Colum.Columns[4].ColumnWidth:=6;
Colum.Columns[5].ColumnWidth:=5;
Colum.Columns[6].ColumnWidth:=12;
Colum:=XLApp.Workbooks[1].WorkSheets['Звіт'].Rows;
Colum.Rows[2].Font.Bold:=true;
Colum.Rows[1].Font.Bold:=true;
Colum.Rows[1].Font.Color:=clGreen;
Colum.Rows[1].Font.Size:=20;
Colum.Rows[1].Font.Italic:=true;
Sheet:=XLApp.Workbooks[1].WorkSheets['Звіт'];
index:=4;
DataModule4.TovaruTable.First;
index:=3;
for i:=0 to DataModule4.TovaruTable.RecordCount-1 do
begin
Sheet.Cells[index,1]:=DataModule4.TovaruTable.Fields.Fields[1].AsString;
Sheet.Cells[index,2]:=DataModule4.TovaruTable.Fields.Fields[2].AsString;
Sheet.Cells[index,3]:=DataModule4.TovaruTable.Fields.Fields[3].AsString;
Sheet.Cells[index,4]:=DataModule4.TovaruTable.Fields.Fields[4].AsString;
Sheet.Cells[index,5]:=DataModule4.TovaruTable.Fields.Fields[5].AsString;
Sheet.Cells[index,6]:=DataModule4.TovaruTable.Fields.Fields[6].AsString;
Inc(index);
DataModule4.TovaruTable.Next;
end;
end;
procedure TForm1.N41Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[1]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.N15Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[2]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.N16Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[3]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.N13Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[0]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.N17Click(Sender: TObject);
const
MenuColors: array[0..5] of TColor =(clBlack, clRed,
clGreen, clYellow, clBlue, clPurple);
begin
//Перейти в режим редактирования поля
DataModule4.TovaruTable.Edit;
//Заношу в поле Color выбранный цвет
DataModule4.TovaruTableColor.AsString:=
ColorToString(MenuColors[4]);
//Запомнить изменения
DataModule4.TovaruTable.Post;
end;
procedure TForm1.N22Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.N24Click(Sender: TObject);
begin
Pro_prog.ShowModal;
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
Case ComboBox1.ItemIndex of
0:
Begin
DataModule4.TovaruTable.Locate('ПІБ',Edit1.Text,[loCaseInsensitive,loPartialKey]);
end;
1:
Begin
DataModule4.TovaruTable.Locate('Діагноз',Edit1.Text,[loCaseInsensitive,loPartialKey]);
end;
2:
Begin
DataModule4.TovaruTable.Locate('Телефон',Edit1.Text,[loCaseInsensitive,loPartialKey]);
end;
3:
Begin
DataModule4.FindQuery1.Active:=false;
DataModule4.FindQuery1.Parameters.ParamByName('Tovaru').Value:=
Edit1.Text;
DataModule4.FindQuery1.Active:=true;
FindResultForm.ShowModal;
DataModule4.TovaruTable.Locate('Ціна',Edit1.Text,[loCaseInsensitive,loPartialKey]);
FindResultForm.ShowModal;
end;
//procedure TForm1.N25Click(Sender: TObject);
begin
Panel1.Visible:=true;
end;
//procedure TForm1.Image5Click(Sender: TObject);
begin
Panel1.Visible:=false;
end;
//procedure TForm1.Image4Click(Sender: TObject);
begin
Panel1.Visible:=false;
end;
//procedure TForm1.Image3Click(Sender: TObject);
begin
Panel1.Visible:=false;
end;
end;
procedure TForm1.N25Click(Sender: TObject);
begin
Panel1.Visible:=True;
end;
procedure TForm1.ScrenSaver1Click(Sender: TObject);
begin
SendMessage(Application.Handle,WM_SYSCOMMAND, SC_SCREENSAVE, 1);
end;
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Label2.Visible:=false;
Label3.Visible:=true;
end;
procedure TForm1.Label2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Label3.Visible:=true;
Label2.Visible:=false;
end;
procedure TForm1.Label3MouseLeave(Sender: TObject);
begin
Label2.Visible:=True;
Label3.Visible:=false;
end;
procedure TForm1.Button2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
//form1.TTovaru.IndexFieldNames:=Form1.DBGrid1.SelectedField.FieldName;
end;
//procedure TForm1.DBGrid1DblClick(Sender: TObject);
//begin
//For
//end;
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
Form7.Show;
end;
procedure TForm1.WebBrowser1Click(Sender: TObject);
begin
Form9.Show;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
q:=' **** Медичний заклад **** ';
end;
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
Case ComboBox2.ItemIndex of
0:
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='ПІБ>'''+FindEdit1.Text+'''';
end;
1:
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='Скарги>'''+FindEdit1.Text+'''';
end;
{2:
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='Телефон>'''+FindEdit1.Text+'''';
end;
3:
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='Ціна>'''+FindEdit1.Text+'''';
end;
5:
begin
if Length(FindEdit1.Text)>0 then
DataModule4.TovaruTable.Filtered:=true
else
DataModule4.TovaruTable.Filtered:=false;
DataModule4.TovaruTable.Filter:='Chiste>'''+FindEdit1.Text+'''';
end;}
end;
end;
procedure TForm1.N40Click(Sender: TObject);
begin
Panel1.Visible:=True;
end;
procedure TForm1.SpeedButton9Click(Sender: TObject);
begin
if Application.MessageBox(PChar('Ви справді хочеш вийти '), 'Вихід з програми',
MB_OKCANCEL)=id_OK then
Close;
end;
procedure TForm1.SpeedButton7Click(Sender: TObject);
begin
//DataModule4.TovaruTable.;
end;
procedure TForm1.SpeedButton10Click(Sender: TObject);
begin
Form9.Show;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var i:integer;
begin
Application.Title:=q;
Form1.Caption:=q;
for i:=1to(Length(q)-1) do
q[i]:=Application.Title[i+1];
q[Length(q)]:=Application.Title[1];
end;
end.
unit Unit3;
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, jpeg, ExtCtrls, Buttons;
type
TForm3 = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
Image1: TImage;
GroupBox3: TGroupBox;
DBMemo1: TDBMemo;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm3.BitBtn1Click(Sender: TObject);
begin //Змінити дані
Form3.DBEdit1.ReadOnly:=False;
Form3.DBEdit2.ReadOnly:=False;
Form3.DBMemo1.ReadOnly:=False;
end;
procedure TForm3.BitBtn2Click(Sender: TObject);
begin
Form2.Table1.ApplyRange; //Зберегти зміни
Form2.Table1.Refresh;
Form3.Close; //Закрити 3 форму
Form3.DBEdit1.ReadOnly:=True;
Form3.DBEdit2.ReadOnly:=True;
Form3.DBMemo1.ReadOnly:=True;
end;
procedure TForm3.BitBtn3Click(Sender: TObject);
begin
Form2.Table1.ApplyRange; //Зберегти зміни в таблиці
unit Unit4;
Tpro_prog = class(TForm)
Image4: TImage;
Image8: TImage;
Label1: TLabel;
Label2: TLabel;
Animate1: TAnimate;
Label3: TLabel;
Label4: TLabel;
procedure Label3Click(Sender: TObject);
procedure Label4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
pro_prog: Tpro_prog;
implementation
{$R *.dfm}
procedure Tpro_prog.Label3Click(Sender: TObject);
begin
Close;
end;
procedure Tpro_prog.Label4Click(Sender: TObject);
begin
if Animate1.Active = False // в данный момент анимация не выводиться
then begin
Animate1.StartFrame:=1; // вывод с первого
Animate1.StopFrame:=Animate1.FrameCount; // по последний кадр
Animate1.Active:=True;
Label4.caption:='Стоп';
end
else // анимация отображается
begin
Animate1.Active:=False; // остановить отображение
Label4.caption:='Пуск';
end;
end;
end.
Размещено на Allbest.ru
...Подобные документы
Розробка автоматизованої бази даних реєстратури в поліклініці для ведення обліку лікарів та пацієнтів, а також зберігання та отримання якісної структурованої, та доступної інформації про них за допомогою виконання певних запитів в середовищі MySQL.
курсовая работа [1,5 M], добавлен 03.11.2011Створення алгоритму програмної моделі розкладу в учбовому закладі для ефективного вирішення завдань автоматичного складання розкладу, шляхом підбору найбільш оптимальних варіантів. Шляхи реалізації розробленого алгоритму в середовищі Mathemetica 5.0.
дипломная работа [5,0 M], добавлен 25.10.2012Сутність автоматизованого робочого місця фахівця з розрахунку заробітної платні у медичному закладi. Розробка діаграми класів для програмного комплексу. Опис взаємодії між структурними елементами програмного комплексу. Показники якості аналогічних систем.
курсовая работа [2,2 M], добавлен 03.06.2019Види інформаційних систем. Програмна реалізація гнучкої системи для автоматизованої реєстрації та обліку руху імунобіологічних препаратів в середовищі Delphi 6.0 з використанням технології доступу до баз даних ADO. Розрахунок витрат на розробку програми.
дипломная работа [3,2 M], добавлен 25.10.2012Структура системи автоматизованого проектування засобів обчислювальної техніки. Опис життєвого циклу продукту за методом Зейда. Основні поняття про системи автоматизованого виробництва. Проектування інформаційних систем та побудова мережевого графіка.
реферат [1,5 M], добавлен 13.06.2010Вивчення історії кафедри "Комп’ютерної інженерії". Дослідження процесу складання, монтажу, налагодження, тестування апаратного забезпечення комп’ютерних систем і мереж. Науково-дослідні роботи у лабораторії "Програмного забезпечення комп’ютерних систем".
отчет по практике [23,9 K], добавлен 01.03.2013Передумови та фактори, що зумовлюють необхідність комп’ютеризації у аптеці. Задачі та цілі, що вирішуються при використанні комп’ютерних програм в аптеці. Порівняльний аналіз деяких інформаційних систем для вибору постачальника лікарських засобів.
курсовая работа [318,4 K], добавлен 01.03.2013Дослідження технології com та принципи створення контролерів автоматизації Ms Office і Ms Excel. Розробка програмного забезпечення для збору статистичного ряду показників в умовах неврологічного відділення Криворізького інституту професійних захворювань.
дипломная работа [2,8 M], добавлен 22.10.2012Фізичне проектування бази даних відділу кадрів. Форма бази "Табель обліку робочого часу". Діалогове вікно для введення параметру "Період", звіт. Охорона праці при роботі на персональному комп'ютері: перелік вимог до робочого місця, пожежна безпека.
курсовая работа [1,6 M], добавлен 25.03.2013Особливості та етапи роботи з автоматизованою системою кадрового обліку "Кадри". Методи безперервного обліку персоналу підприємства і кадрового резерву. Шляхи автоматичного формування первинної документації на кожного співробітника, обліку відпусток.
лабораторная работа [897,9 K], добавлен 27.05.2010Розрахунок інформаційних потоків у ЛОМ підприємства, планування середнього трафіку і коефіцієнта використання мережі. Планування структурованої кабельної системи. Структура клієнт-серверних компонентів корпоративної комп’ютерної мережі, захист інформації.
курсовая работа [828,7 K], добавлен 01.06.2013Створення і реалізація в СУБД MS Access бази даних "Internet-ресурси з інформаційних технологій". Опис предметної області, інфологічне проектування. Побудова ER-діаграми. Даталогічне і фізичне проектування інформаційних систем. Опис роботи програми.
курсовая работа [8,2 M], добавлен 30.05.2013Вибір методу проектування архітектури та моделі функціонування системи автоматизації обліку ресурсів в складських приміщеннях. Аналіз системних вимог та обґрунтування методу проектування інформаційної системи, постановка та алгоритм розв’язання задачі.
дипломная работа [3,5 M], добавлен 25.05.2017Класифікація комп’ютерних інформаційних систем за різними ознаками, їх призначення та використання в діяльності підприємства. Аналіз наявних на ринку програмних продуктів автоматизації управлінської діяльності та визначення потреби в них установи.
контрольная работа [615,5 K], добавлен 06.07.2009Мета створення інформаційних систем обліку, їх роль в управлінні економічним об'єктом. Характеристика та типи облікових задач, що підлягають автоматизації. Програмне забезпечення обліку праці та її оплати засобами універсального програмного продукту.
контрольная работа [40,1 K], добавлен 05.07.2015Аналіз сучасного програмного забезпечення комп'ютерних інформаційних мережевих систем. Загальна економіко-правова характеристика Бершадського відділення Вінницької філії ЗАТ КБ "ПриватБанк", захист інформації та дотримання безпеки в комп’ютерній мережі.
курсовая работа [64,6 K], добавлен 14.05.2011Поняття про сайт, його основні функції, класифікація, програмна розробка та створення сайтів у візуальних редакторах. Програмна реалізація додатку. Розробка адмін-панелі. Вимоги щодо відстані між бічними поверхнями відеотерміналів. Охорона праці.
дипломная работа [2,1 M], добавлен 18.11.2014Системний блок як корпус, який містить основні компоненти персонального комп’ютера. Коротка характеристика головних зовнішніх та внутрішніх пристроїв персонального комп’ютера. Послідовність операцій при обтиску та обробленні роз'єму "витої пари".
лабораторная работа [1,7 M], добавлен 02.06.2011Підхід Фліна до класифікації архітектур комп’ютерних систем. Доповнення Ванга та Бріггса до класифікації Фліна. Класифікація MIMD-архітектур Джонсона. Особливості способів компонування комп’ютерних систем Хендлера, Фенга, Шора, Базу та Шнайдера.
реферат [233,7 K], добавлен 08.09.2011Загальна характеристика навчально-наукового комп'ютерного центру. Державні норми влаштування і обладнання кабінетів комп'ютерної техніки. Створення довідкової бази про факультет комп’ютерних систем для приймальної комісії у вигляді сайту для абітурієнтів.
отчет по практике [72,0 K], добавлен 07.07.2010