Проектирование АРМ сотрудника отдела автоматизации информационного обеспечения Ивановского филиала ФОМС

2.2.4 Описание алгоритма решения задачи

Данная задача решается с помощью прикладной программы. Общая технология обработки информации в ней представлена на рис.4:

Рисуно

к 4. Технология обработки информации

Все каталоги, с которыми работает программа настраиваются в самой программой. Входными файлами для задачи являются архивы счетов ЛПУ, которые имеют вид Ln???.ARJ, где n=1,2,4. (1-стационар, 2 – поликлиника, 4- стоматология). ??? – код ЛПУ.

Архив счета стационара должен содержать файлы вида L1???.DBF,I1???.DBF,O1???.DBF, где ??? – код ЛПУ. База L1???.DBF содержит основную информацию о пролеченных в стационаре, I1???.DBF содержит дополнительную информацию о гражданах, застрахованных в других регионах, но пролеченных в ЛПУ Ивановской области, а файл O1???.DBF включает в себя дополнительную информацию о проведенных операциях.

Архив счета поликлиники должен содержать файлы вида L2???.DBF,I2???.DBF,L2???_US.DBF, архив счета стоматологии должен содержать файлы вида L4???.DBF,I4???.DBF,L4???_US.DBF,

При входном контроле может быть сформирован текстовый файл вида P?nnn.TXT, содержащий ошибки по полисам контролируемого счета. Текстовый файл помещается в M:\AIO=SCHT\OUT вместе с конвертом для рассылки.

После входного контроля программой DecodSch может быть дополнительно создана БД отбракованных записей счета в виде B?nnn.DBF, где ? = ( 1 - стационар, 2 – поликлиника, 4 – стоматология), nnn – код ЛПУ.

Причем БД после входного контроля уже подготовлены для переноса на ORACLE, поэтому не желательно их просматривать с помощью FOXPRO или программ, написанных на нем, т.к. FOXPRO нередко изменяет кодовую страницу открытых БД. В этом случае при переносе могут быть проблемы с русскими буквами в символьных строках ('асмимти' à ‘######’). Далее осуществляется перенос информации на ORACLE. Для этого информация переписывается в алиас TOORA(D:\DATA\TOORA) в соответствующие БД, но информация хранится уже не в DOS, а в WINDOWS-кодировке и затем переносится на ORACLE-сервер. При завершении переноса формируется файл вида M?nnnsss.LPU, где ? =( 1 - стационар, 2 – поликлиника, 4 – стоматология), nnn – код ЛПУ, sss – номер счета.

Он содержит информацию о результатах автоматической проверки счета. В случае получения повторного счета также формируется аналогичный файл с сообщением «Повторный сводный счет – ОТКЛОНЕН !!!» . Пустые счета просто удаляются из обработки.

Теперь подробнее о контроле счетов «Поликлиника» (аналогично работают алгоритмы для счетов «Стоматология» и «Стационар)».

Алгоритм работы программы:

Осуществляется проверка наличия файлов (MAIN.PAS, процедура actFindFilesExecute).

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

Проверка сводного счета по коду ЛПУ, дате счета и номеру счета. Если представлен повторный сводный счет, то формируется текстовый файл по результатам автоматической проверки с сообщением «Повторный сводный счет - ОТКЛОНЕН !!!» (MAIN.PAS, процедура actSvodSchetExecute)

Проверки в соответствии с письмом № 07-2194 от 06.09.2000 года (для выполнения приказа № 70 ФФОМС о взаиморасчетах между территориями) (MyFunc.PAS,процедура New_cntrl_amb) если в поле «Категория» стоит «Работающий», то поле «Место работы» должно быть обязательно заполнено.

Обязательно должна быть введена информация либо о полисе пациента, либо его паспортные данные.

Если нет информации о полисе пациента, то должно быть заполнено поле «Особый случай»

Если в поле «Особый случай» заполнено «Медпомощь новорожденному» или «Документ родителя», то обязательно должны быть заполнены поля «Фамилия», «Имя», «Отчество» родителя или опекуна

Если в поле «Особый случай» заполнено «В документе отсутствует отчество», то поле «Отчество» должно быть пустым для отделенческой больницы все записи о пролеченных больных-жителей Ивановской области отправляются в некорректные

Проверка на соответствие поводов посещения и услуг в соответствии с письмом от 30.11.1998 года. (MAIN.PAS, процедура ActAmbCtrlUslExecute)

Проверка иногородних пациентов не является ли они иностранцами (их мы не оплачиваем). (MyFunc.PAS, процедура Del_States)

Контроль по срокам представления счетов к оплате. В представленном счете дата последней услуги, оказанной пациенту должна быть не позднее 3-х месяцев от даты формирования счета. Также в счете не должно быть услуг с датой услуги, относящейся к будущим плановым периодам (MyFunc.PAS, процедура Date_cntrl_amb).

Не должно быть записей-дубликатов в основном файле представленного счета . (MAIN.PAS, процедура ActAmbDoubleStrExecute)

Проверка заполнения требуемых полей. В основной базе обязательно должны быть заполнены поля «Фамилия», «Дата рождения», «Категория», «Повод посещения» «Основной диагноз», «Случай», «Стоимость». В БД иногородних обязательно должны быть заполнены те же поля, что и в основной БД, а также информация о полисе пациента или его паспортные данные. (MAIN.PAS, процедура ActAmbReqFieldsExecute)

Проверка кода основного диагноза по МКБ, а также проверка на правильность сочетания основного диагноза и повода посещения . Кроме того не оплачиваются пациенты старше 18 лет с некоторыми диагнозами (см. записку отдела КТиСМП от 19.10.2000 года) (MAIN.PAS, процедура actFindDiagORAExecute).

Проверка посещений. Не должно быть случаев преставления счетов на два посещения к одному врачу пациента в тот же день. Внутри одного талона не должно быть дубликатных услуг (MAIN.PAS, процедура actAmbOneToOneExecute).

Проверка наличия полиса пациента в областной БД полисов и совпадение фамилии, имени, отчества и даты рождения пациента и тех же сведений в областной базе. Кроме того проверяется наличие полиса у пациентов, предъявивших только паспорт и делается соответствующая отметка в БД для отдела ОМС. (MAIN.PAS, процедура ActFindPolisIBExecute)

Сравнение с архивом. Для данного ЛПУ проверяется по номеру талона, фамилии, имени и отчеству пациента наличие информации в архиве ранее предъявленных счетов к оплате. Кроме того, не должно быть двух посещений к одному врачу в тот же день в текущем счете и в архиве.(MAIN.PAS, процедура actAmbCompArcORAExecute)

Проверка стоимости оказанных медицинских услуг. (MyFunc.PAS, процедура AMB_Stoim)

Для наглядности алгоритм работы программы представлена следующей блок-схемой (рисунок 5).

Проверка на соответствие поводов посещения и услуг

Проверка заполнения требуемых полей

Проверка кода диагноза и его сочетания со способом посещения

Проверка посещений

Проверка полиса пациента по областной БД

Обеспечение целостности данных

Страница:  1  2  3  4  5  6  7  8  9  10 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы