BLUE INTEGRATOR

HANTERA FÖRÄNDRINGAR BÄTTRE

BLUE INTEGRATOR – HANTERA HL7

Det finns många olika varianter på lösningar för databashantering med BlueIntegrator. Nedan visar vi ett möjligt alternativ.

Innan BlueIntegrator kopplas in måste en databas skapas. Denna databas kommer agera som destination för vår data. I detta exempel kommer vi skapa en separat databas som kan hålla informationen med följande tre tabeller: InsuranceIN2, IO_Message och Patient.

hl7_database_insurance

hl7_database_io_message

hl7_database_patient

Skapa ett Receive-schema

Det första som måste göras i processen att hantera en databas med BlueIntegrator är att skapa ett Receive-schema. Detta gör du enkelt genom att klicka på ”Import HL7-schema”. Du får nu upp en ruta där du kan välja mellan olika versioner och typer av meddelanden (se bilden nedan). I detta exempel används version 2.5 och ADT_A01 meddelande. Klicka på ok för att gå vidare.
import_schema_adt_a01_600x280

Receive-schemat är nu importerat. Detta syns under scheman → vald version.

hl7_schema_adt_a01_600x280

Skapa ett Send-schema

För Send-schema kan du antingen importera samma HL7-scheman som vid skapandet av Receive-schema eller välja en annan typ av schema genom att högerklicka på Schema i utforskaren och välja New Schema, här kan du också importera ett eget schema. Under alternativet Tools kan du välja att importera ett redan existerade schema som möter behoven av en utkommande fil.

hl7_schema_xml_600x280
hl7_schema_special_schema_600x280
hl7_schema_special_schema_val_600x280
(I vårt exempel kommer vi bara behöva ett schema då vi väljer att använda samma som för Recieve)

Skapa and konfigurera Receive-port

Nästa steg i processen är att skapa en Receive-port som kopplas till Receive-schemat. Första steget i detta steg blir att du högerklickar på Recieve Port i utforskaren och väljer New Receive Port.

hl7_rec_port_600x280

Döp porten till något passande, i det här fallet har vi valt att döpa den till rec_ADT_A01.  I nästa läge väljer du ditt välj nyskapade schema och sedan väljer du på vilket sätt datan ska tas emot. I detta exempel använder vi oss av ”File Receive”.
hl7_rec_port_filerec_600x280

Nu ska du välja vilken mapp rec_ADT_A01 ska lyssna på. I detta exempel har vi valt att enbart titta efter .xml-filer. Kom ihåg att välja server under fliken Server.
hl7_rec_port_folder_600x280

Även i Routing-menyn måste en destinationsport läggas till, men detta är inte möjligt att göra innan det finns en Send-port

hl7_rec_port_routing_600x280

Skapa och konfigurera Send-port

Nu är det dags att skapa en Send-port så att informationen kan skickas in i den tidigare skapade databasen. Börja med att högerklicka på Send Port och välj New Send Port.

hl7_snd_port_600x280

Döp porten till något passande, i detta exempel heter den snd_ADT_A01. I nästa steg väljer du schema och i detta exempel väljer vi samma som i rec_ADT_A01. Välj nu Hierarchical Database.

hl7_send_port_hdb_600x280

Börja med att koppla upp dig mot din databas under fliken Database Connection.

hl7_snd_port_serverconn_600x280

Nu är det dags att skapa insert querys. Första skapar du en som kan koppla PID mot din tabell: Patient. Klicka på PID i listan till vänster och skriv din query: insert into Patient (fk, PatientId, familyname, givenname) values (@fk, @patientid, @familyname, @givenname).

hl7_snd_port_query_pid_600x280

Parametrarna kommer skapas automatiskt. För varje parameter du skriver in i din query börjar du med ett ”@”. Nu är det dags att koppla ett värde till parametrarna, detta gör du genom att välja vilken Value Type som ska användas. XPath betyder att du kan välja parametrar direkt via <Browser> på varje value om du har ett schema kopplat till din port.

hl7_snd_port_query_pid_xpath_600x280

hl7_snd_port_query_pid_browes_600x280

Nu ska IN2 hanteras på samma sätt som PID och kopplas mot tabellen: InsuranceIN2: Insert into InsuranceIN2 (fk, InsuredEmployeeID, InsuredEmployerID, EmployerInformationData) values (@fk, @InsuranceEmployeeID, @InsuredEmployerID, @EmployerInformationData. Glöm inte att välja server under fliken Server även på Send Port. Klicka på OK. Nu är det dags att göra sista steget på Receive-port, routingen där du lägger till Send Port.

Mapping

I detta exempel behöver det inte göras någon mappning eftersom vi använder samma schema in och ut, men nedan är ett exempel på hur lätt det är att göra mappning.

Högerklicka på Maps i utforskaren och välj New Map. Välj nu ett in-schema och ett ut-schema vilket görs längst upp på respektive sida.

hl7_maping_600x280

Nu är det bara att matcha de respektive elementen med varandra. I detta exemplet är de identiska, men i fallet då de inte är det så kan det se väldigt annorlunda ut.

hl7_maping__lines_600x280

Som tidigare nämnts behöver vi ingen mappning i detta exempel men om det skulle behövas senare läggs mappingen till under fliken mapping på antingen receive- eller send-port.

Testa hur BlueIntegrator konverterar och transformerar HL7_msg  Databas.

Det första du behöver göra är att öppna patient-tabellen. I detta exempel ligger det en rad där eftersom patient-tabellen redan är körd en gång för testets skull.

hl7_test_patient_600x280

Så här ser InsuranceIN2-tabellen ut, (precis som patient-tabellen är denna tabell tom första gången)

hl7_test_insurance_600x280

Nu är det dags att lägga in ADT_A01.xml som innehåller informationen du behöver för testet i mappen som rec_ADT_A01 lyssnar på.

hl7_test_xml

Se efter i databasen igen, om det har tillkommit en rad är testet lyckat!

hl7_test_patient_2_600x280
hl7_test_insurance_2_600x280

Det är alltså lätt att både konvertera och transformera information med hjälp av BlueIntegrator. Allt du behöver göra är att välja fil-typ, utseende och konfigurera portar.