140 likes | 262 Views
Exception Resolving System. MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR. Why the need for our web service?.
E N D
Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR
Why the need for our web service? • The Shawnee Mission Health System admits thousands of patients each day for various medical concerns. One of the branches of this health system is the Mid America Heart Institute (MAHI), which deals with people who suffer from some cardiac ailment. Each night a proprietary application known as the Star Enterprise System FTPs an ASCII document that contains admission information about patients to intermediary systems that will eventually store this information in a clinical repository. • In this nightly batch processing of Admission data from the enterprise systems it is possible for exceptions to occur preventing the creation of patient or admission data in the Clinical Explorer database.
A Snapshot from the Exception file <exception exception_text="Data for 'patient' entity differs between incoming record and database record!" record_number="11" exception_code="5" entity_type="patient">-<entity record_number="11"><lname quoted_type="true" uses_table="patient">AINSWORTH</lname><fname quoted_type="true" uses_table="patient">BETTY</fname><middle quoted_type="true" uses_table="patient">JO</middle><cpi quoted_type="true" uses_table="patient_xref" xref_id_type="312">00648910</cpi><adm_date quoted_type="true" uses_table="admit">07/30/2002</adm_date><dob quoted_type="true" uses_table="patient">11/17/1925</dob><sex uses_table="patient">1650</sex><race uses_table="patient">360</race><adm_dx quoted_type="true" uses_table="admit">V76.12-SCREEN MAMMOGRAM NEC</adm_dx><mrno quoted_type="true" uses_table="patient_xref" xref_id_type="311">0000006545</mrno><ssn quoted_type="true" uses_table="patient">494209227</ssn><contact_type uses_table="contact">44</contact_type><address1 quoted_type="true" uses_table="contact">7411 W 101ST TERRACE</address1><city quoted_type="true" uses_table="contact">SHAWNEE MISSION</city><state_province_id uses_table="contact">KS</state_province_id><postal_code quoted_type="true" uses_table="contact">66212</postal_code><ptacctno quoted_type="true" uses_table="admit">0221100638</ptacctno><hosp_location_id uses_table="admit">6</hosp_location_id></entity>-<database_record><patient_id>349205</patient_id><legacyid>56387</legacyid><lname>AINSWORTH</lname><fname>BETTY</fname><middle>J</middle><sex>1650</sex><race>360</race><ssn>493300290</ssn><dob>5/8/1930</dob><complete>0</complete><username>dbo</username><modify_time>2/1/2001</modify_time></database_record>
A Snapshot from Exception Files <exception exception_text="Entity record matches more than 1 'patient' record in database!" record_number="27" exception_code="1" entity_type="patient">-<entity record_number="27"><lname quoted_type="true" uses_table="patient">ANDERSON</lname><fname quoted_type="true" uses_table="patient">CAMYLA</fname><cpi quoted_type="true" uses_table="patient_xref" xref_id_type="312">01464644</cpi><adm_date quoted_type="true" uses_table="admit">07/30/2002</adm_date><dob quoted_type="true" uses_table="patient">01/25/1979</dob><sex uses_table="patient">1650</sex><race uses_table="patient">360</race><mrno quoted_type="true" uses_table="patient_xref" xref_id_type="311">0001314600</mrno><ssn quoted_type="true" uses_table="patient">508119412</ssn><contact_type uses_table="contact">44</contact_type><address1 quoted_type="true" uses_table="contact">195 SE 51 RD</address1><city quoted_type="true" uses_table="contact">WARRENSBURG</city><state_province_id uses_table="contact">MO</state_province_id><postal_code quoted_type="true" uses_table="contact">64093</postal_code><ptacctno quoted_type="true" uses_table="admit">0221100716</ptacctno><hosp_location_id uses_table="admit">2</hosp_location_id></entity>-<matches>-<entities><entityweight="1095" entity_id="18433" /><entityweight="1095" entity_id="132576" /></entities><entity_count>2</entity_count></matches></exception>
Why the need for our web service?cont.. • A query component was proposed that would query these exception files when a query by the user returns no rows against the database. • Our component would locate a record in the exception files which is in XML format. • The entity data within the exception file will be extracted and reformatted into another XML file format, which is used for data recovery in the Clinical Explorer UI. • This file is then bound to a form in the UI allowing the user to create the entity in the database.
Exception Resolving System Exception Resolving System Exception Resolving System
Exception Resolving System Forwarding Receiving Advanced search search request Query - Mahi DB initiated more than zero matches returned zero matches returned returning results to searching clinical explorer exception files no match found >1 match found exactly one match found returning recovery file to returning null string receiving choice clinical explorer to clinical explorer of node returning results to clinical explorer receving confirmation for deleting node Deleting the node
Exception Resolving System Totally new patient – no matches found in the database or Exception Files 1: Advanced Search 2: Find Entity in DB :Clinical Explorer : MahiExWebService : MahiDBWebService 3: Return zero matches 8: Return null string 7: Pass null string 4: Find in exception files :MahiExFileResolver 5: Search in exception files 6: Return zero matches ExFilesDirectory
Exception Resolving System No matches found in the Database but a single match found in exception files 2: Find Entity in DB 1: Advanced Search :Clinical Explorer :MahiExWebService : MahiDBWebService 8: Pass Recovery File 3: Return Zero matches 7: Recovery File 4:Find in Exception Files :MahiExFileResolver 6: Return Single Record 5: Search in Exception Files ExFilesDirectory
Exception Resolving System No matches found in the database but more than one found in exception files 1: Advanced Search :Clinical Explorer : MahiExWebService 2: Find Entity in DB 8: Pass all matches : MahiDBWebService 9: Pass selected choice 3: Return zero matches 12: Pass recovery file 13: Send delete confirmation 10: Pass selected choice 11: Pass recovery file 4: Find in exception files 14: Perform Delete 7: Pass all matches :MahiExFileResolver 15: Delete the node 5: Search in exception files 6: Return all matches ExFilesDirectory
Exception Resolving System One or more match found in the Database :Clinical Explorer 1: Advanced Search 2: Find Entity in DB 4: Pass all matches 3: Return all matches : MahiExWebService :MahiDBWebService