Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA...

14
Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR

Transcript of Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA...

Page 1: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving System

MAHI DATABASE FRAMEWORK

CS 551

FALL’02

-SANJEEV NAGARADDI

-DIKSHA AGARWAL

-PAMAJA NEELAM

-SONAL PATIDAR

Page 2: 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.

Page 3: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

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>

Page 4: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

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>  <entity weight="1095" entity_id="18433" />   <entity weight="1095" entity_id="132576" />   </entities>  <entity_count>2</entity_count>   </matches>  </exception>

Page 5: 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?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.

 

Page 6: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

 

MAHI Repository

COMComponents

NT Services

.NetComponents(Wrappers)

.Net WebServices

.Net WebControls

.Net WebApplications

Web Browser

ClinicalExplorer

(WindowsClient)

SOAP Calls

HTTP CallsHTTP Calls

.Net to COM Calls

COM Calls

ADO and ODBC Calls

System Clients

WebApplications and

Controls:MahiDBAdminToolsSite,

MahiWebControls

Web Services:MahiDBWebService

Data Store

Core SystemComponents:

MahiCodeCache,MahiDataBroker,

MahiDBAdminTools

Back OfficeSystems:

DataMoverMonitorService,MahiCodeCacheService .Net/COM Interop:

MahiDBAdminToolsWrapper,MahiDataExceptionHandling

ADO.Net Calls

ADO.Net Calls

Page 7: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.
Page 8: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving SystemException Resolving System

.Net Component

FindEntityDB CheckDBResult

FindEntityExFile CheckCEResponse

CheckExFileResult

PassThroughService

MAHIDBWebService

DeleteNode

MAHIExWebService ExFilesSearchService

ConfirmDeleteService

Clinical Explorer

<<include>><<include>>

<<extend>>

<<extend>> <<extend>>

Exception Resolving System

Page 9: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving System

Forwarding search request

Receiving Query - Mahi DB

searching exception files

returning results to clinical explorer

returning recovery file to clinical explorer

returning null string to clinical explorer

receiving choice of node

receving confirmation for deleting node

returning results to clinical explorer

Deleting the node

Advanced search initiated

zero matches returned

more than zero matches returned

>1 match found

exactly one match found

no match found

Page 10: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving System

:Clinical Explorer

: MahiExWebService : MahiDBWebService

ExFilesDirectory

:MahiExFileResolver

1: Advanced Search

8: Return null string

2: Find Entity in DB

3: Return zero matches

4: Find in exception files

5: Search in exception files

6: Return zero matches

7: Pass null string

Totally new patient – no matches found in the database or Exception Files

Page 11: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving SystemNo matches found in the Database but a single match found in exception files

:Clinical Explorer:MahiExWebService

: MahiDBWebService

ExFilesDirectory

:MahiExFileResolver

5: Search in Exception Files 6: Return Single Record

4:Find in Exception Files7: Recovery File

2: Find Entity in DB1: Advanced Search

3: Return Zero matches8: Pass Recovery File

Page 12: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

 

Exception Resolving SystemNo matches found in the database but more than one found in exception files 

:Clinical Explorer

: MahiExWebService : MahiDBWebService

ExFilesDirectory

:MahiExFileResolver

5: Search in exception files

4: Find in exception files

11: Pass recovery file

6: Return all matches

7: Pass all matches

10: Pass selected choice

14: Perform Delete

15: Delete the node

1: Advanced Search

8: Pass all matches

9: Pass selected choice

12: Pass recovery file

 

13: Send delete confirmation

2: Find Entity in DB

3: Return zero matches

Page 13: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

1: Advanced Search 2: Find Entity in DB

4: Pass all matches 3: Return all matches

 

One or more match found in the Database

Exception Resolving System

 :Clinical Explorer

 

: MahiExWebService 

:MahiDBWebService

 

Page 14: Exception Resolving System MAHI DATABASE FRAMEWORK CS 551 FALL’02 -SANJEEV NAGARADDI -DIKSHA AGARWAL -PAMAJA NEELAM -SONAL PATIDAR.

Exception Resolving System

Class Diagram