Смекни!
smekni.com

Разработка автоматизированной системы учета выбывших из стационара (стр. 12 из 19)

В более сложных случаях следует записать сообщение и ситуацию, в которой оно возникло и обратиться к разработчикам программы..

Приложение 5

Текст и описание программы:
“Автоматизированная система учета выбывших из стационара”

.
1. Общие сведения о программе.

ВНИМАНИЕ!

Перед прочтением данного документа следует ознакомиться с документами "Описание применения" и "Руководство оператора".

Автоматизированная система учета выбывших из стационара (условное обозначение КАРТА) предназначена для автоматизации процесса заполнения формы №066/у Минздрава и получения фиксированных отчетных форм.

Программа работает под управлением операционной системы MS DOS версии 3.1 и выше.

Перед первым запуском программы в файл AUTOEXEC.BAT необходимо включить запись:

SET CLIPPER=F50.

В файле CONFIG.SYS параметр FILES установить равным 50

(FILES=50).

Программа реализована на языке программирования Clipper Summer'87.


2. Функциональное назначение.

Программа выполняет следующие функции:

1. Ввод, хранение, коррекцию данных по выписанным из стационара больным;

2. Оформление печатных документов по данным о выписанных больных за отчетный период;

3. Настройку на структуру конкретного стационара.


3. Описание логической структуры программы КАРТА.

3.1 Общие сведения о структуре программы

Структура программы КАРТА представлена на рис.7.

Рис. 7. Логическая структура программы.

Программа состоит из 5 функциональных модулей функций и библиотеки функций.

Главный модуль выполняет следующие функции:

- инициализация глобальных переменных;

- ввод текущей даты;

- открытие всех рабочих областей с индексными файлами;

- организация главного меню.

Модуль ввода данных выполняет следующие функции:

- создание и ввод данных в новую КАРТУ;

- редактирование данных уже существующих КАРТ.

Модуль навигации организует просмотр БД по определенным пользователем условиям.

Модуль удаления удаляет из БД КАРТЫ, определенные пользователем.

Модуль отчетов формирует следующие отчеты:

- месячные по любому отделению;

- квартальные как по всему стационару, так и по любому его отделению:

1. Состав больных в стационаре, сроки и исход лечения;

2. Состав больных новорожденных, поступивших в возрасте 0-6 суток жизни и исход их лечения;

3. Хирургическая работа учреждений;

4. Распределение больных по возрасту и району;

5. Состав больных, выбывших в возрасте от 0 до 6 суток жизни;

6. Больные, переведенные в другие лечебные учреждения;

7. Нозология больных, переведенных из других стационаров;

8. Нозологическая таблица умерших;

9. Нозология больных умерших по возрастам;

10. Нозология умерших в возрасте от 0 до 6 дней жизни;

11. Операции умерших;

12. Нозология умерших до суток;

13. Нозология инфекционных заболеваний;

14. Распределение инфекционных заболеваний по отделениям;

15. Распределение выбывших иногородних больных по каналам госпитализации и отделениям больницы;

16. Число больных, переведенных в другие стационары, из них число новорожденных, переведенных в другие стационары, и число лиц, госпитализированных для обследования и оказавшихся здоровыми;

17. Число новорожденных, умерших в возрасте от 0-6 суток, число умерших в первые 24 часа после поступления в стационар: в возрасте 0-24 часа после рождения, до 1 года, в том числе от пневмонии;

18. Число больных инфарктом миокарда, поступивших в первые сутки от начала заболевания, число больных инфарктом миокарда, умерших в первые 24 часа после поступления в стационар;

19. Число умерших беременных, рожениц и родильниц, из них число умерших от заболеваний, осложняющих беременность и роды.

Модуль настройки выполняет следующие функции:

- организация меню настройки;

- коррекция справочников по структуре стационара.

Вызов всех модулей второго уровня осуществляется из главного меню программы. Связь между отдельными модулями второго уровня осуществляется только по данным через глобальные переменные и файлы активной базы данных.

Работа программы во всех режимах кроме режима настройки детально описана в документе "Руководство оператора". Режим настройки является режимом администратора базы данных и описан в документе "Руководство системного программиста и администратора базы данных" в разделе "Настройка программы".

Исходный текст программы (всех модулей) находится в файле KARTA.PRG. Библиотека функций находится в файле LIB.OBJ. Справочники размещены в файле CODIF.DBF. Для получения загрузочного модуля необходимо набрать на клавиатуре следующую команду:

rtlink fi KARTA, lib lib terminal, clipper, extend, dbfntx

и нажать клавишу ENTER.

3.2 Описание алгоритма программы

Схема алгоритма работы программы представлена на рис. 8.

Для работы с Международным классификатором болезней (МКБ) использовалась функция MKB().

Для работы с каталогом операций использовалась функция CATALOG().

Рис. 8. Схема алгоритма работы программы.

Для работы со справочниками используются следующие функции:

- codif() - функция выбора альтернативы из вертикального меню, построенного на основе данных справочника.

- mempro(), codpic(), codtxt() - функции для экранного редактирования МЕМО - полей баз данных.

- extra() - функция восстановления текста выбранной альтернативы по ее номеру в справочнике.

- ins_pic() - функция добавления информации в справочник.

- del_pic() - функция удаления инфомации из справочника.

Для представления текста отчетного документа на экране используется функция viewer().

4. Используемые технические средства

Программа "КАРТА" предназначена для установки на персональных ЭВМ IBM PC XT/AT cо следующим набором периферийных устройств: принтер, дисплей с платой адаптера EGA\VGA, накопитель на жестком диске объемом не менее 80 Мб. Минимальный объем свободной оперативной памяти 540 Кб.

5. Вызов и загрузка

Для вызова программы следует набрать в командной строке:

=>karta

или выбрать файл karta.EXE с помощью «оболочки» типа 'NORTON COMMANDER' и нажать клавишу ENTER.

6. Входные данные

Входной информацией программы является следующая:

- данные, вводимые пользователем (см. "Руководство оператора");

- данные, хранящиеся в базе данных по пациентам (см. "Руководство системного программиста");

- текущая системная дата;

- данные, хранящиеся в справочных базах данных (см. "Руководство системного программиста").

7. Выходные данные

Выходной информацией программы является следующая:

- данные, введенные пользователем в базу данных по пациентам (см. "Руководство системного программиста");

- документы, сформированные по введенным данным(см. "Руководство оператора");

.
Текст программы на языке Clipper Summer'87

Модуль: Karta.prg

*********************************************************************

* Название программы : "KARTA" *

* Дата последних изменений : 23.12.92 *

* Исходный текст : Clipper Summer'87 *

*********************************************************************

SET CONSOLE OFF

SET ESCAPE ON

SET MESSAGE TO 23 CENTER

SET BELL OF

SET DATE GERMAN

SET SCOREBOARD OFF

SET CONFIRM ON

SET WRAP ON

SET KEY -9 TO GO_MAIN && ПО F10 - ВОЗВРАТ В МЕHЮ

SET KEY -29 TO recon

init_lib() && Функция настройки для работы с библиотекой LIB29

t_qwerty=.T.

CLEAR

********************************************

* глобальные переменные программы

*******************************************

PUBLIC edit_index && .T.- редактировать номер ИБ нельзя

&& .F.- можно

edit_index=.F.

PUBLIC gotomain && принудительный возврат в главную процедуру

&& .T.- прервать внутренний цикл и вернуться в MAIN

gotomain=.F.

PUBLIC _today && Текущая дата работы

PUBLIC rec_num && Номер текущей записи

*******************************************

f1 = CHR(218) + CHR(196) + CHR(191) + CHR(179) + ;

CHR(217) + CHR(196) + CHR(192) + CHR(179)

f2 = CHR(201) + CHR(205) + CHR(187) + CHR(186) + ;

CHR(188) + CHR(205) + CHR(200) + CHR(186)

f3 = CHR(218) + CHR(196) + CHR(191) + CHR(179) + ;

CHR(180) + CHR(196) + CHR(195) + CHR(179)

f1_fon = CHR(218) + CHR(196) + CHR(191) + CHR(179) + ;

CHR(217) + CHR(196) + CHR(192) + CHR(179) + ;

CHR(178)

f2_fon = CHR(201) + CHR(205) + CHR(187) + CHR(186) + ;

CHR(188) + CHR(205) + CHR(200) + CHR(186) + ;

CHR(178)

dn_s=CHR(198)+CHR(205)+CHR(181)+CHR(179)+; && стыкуется с рамкой

CHR(217)+CHR(196)+CHR(192)+CHR(179) && по верхней границе

fon1=CHR(177)

fon2=CHR(32)

singl=CHR(218)+CHR(196)+CHR(191)+CHR(179)+;

CHR(217)+CHR(196)+CHR(192)+CHR(179)

doubl=CHR(201)+CHR(205)+CHR(187)+CHR(186)+;

CHR(188)+CHR(205)+CHR(200)+CHR(186)

IF .NOT. ISCOLOR()

color1="W+/N,N/W,W+/N,W/N,W/N" && для меню

color2="W/N,W+/N" && для gets

color3="W+/N,N/W" && для кодификаторов

color4="W/N,N/W" && для рамки каталога

color5="W/N,N/W" && для меню при редактировании

color6="W/N,W+/N" && для memed

color7=color2 && для шаблонов

color8="W/N,W+/N,N/W" && для HYPERTEXT 1-го уровня

color9="W/N,W+/N,N/W" && для HYPERTEXT 2-го уровня

ELSE

color1="W+/B,N/G,BG/N,RB+/B,BG/B"

color2="BG/B,GR+/B,BG/B,RB+/B,BG/B"

color3="N/W,W+/GR"

color4="N/GR,W+/GR"

color5="G+/B,N/W,BG/B,RB+/B,+GR/B"

color6="W+/GR,N+/W"

color7="N/GR,+GR/GR"

color8="W+/B,G+/B,N/W"

color9="B/G,W+/G,W+/N"

ENDIF

******************** ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ **********************

PRIVATE _NUM_IB && Номер истории болезни больного

PRIVATE _FAM && Фамилия больного

_FAM=SPACE(25)

PRIVATE _F_S_NAME && Имя,Отчество больного

PRIVATE _DATE_B && Дата рождения больного

PRIVATE time_B && Время рождения