SerAPI Patientlist Client käyttö- ja asennusohje Yhteyshenkilö Hannu Virkanen (hannu.virkanen@uku.fi) Dokumentin versio 1.0 Päiväys 26.6.2007
Sisällysluettelo 1 Johdanto... 4 2 Sovelluksen päälomake... 5 2.1 Hae Potilaslista-toiminto... 6 2.1.1 Potilaslistan haku... 6 2.1.2 Potilaslistan tarkastelu... 8 2.2 Hae potilaan tiedot toiminto... 10 2.2.1 Potilaan tietojen kysely... 10 2.2.2 Yksittäisen potilaan tietojen tarkastelu... 11 2.3 Näytä viestit toiminto... 14 3 Asennusohjeet... 16 3.1 SerAPIPatientListClient-sovellus... 16 3.1.1.NET Frameworkin asennus... 16 3.1.2 SerAPIPatientListClient-asennuksen eteneminen... 17 3.1.3 Sovelluksen poistaminen... 20 3.2 SerAPIPatientListClient-projektin asennus lähdekoodeineen... 21 2
Versiohistoria Versio Päiväys Laatijat Selitys 1.0 26.6.2007 Hannu Virkanen Julkaistava versio Esipuhe Tämä työ liittyy SerAPI-hankkeeseen (Palveluarkkitehtuuri ja Web-sovelluspalvelut Terveydenhuollon Ohjelmistotuotannossa ja -integraatiossa), jossa tutkitaan ja kehitetään websovelluspalvelujen ja palvelupohjaisen arkkitehtuurin hyödyntämistä terveydenhuollon tietojärjestelmätarpeisiin ja sovellusintegraatioon ja uusiin sekä olemassa oleviin ohjelmistotuotteisiin. Hanketta rahoittavat Tekes (päätös nro 40437/04) sekä joukko yrityksiä ja sairaanhoitopiirejä. Tämä dokumentti on tehty SerAPI-hankkeessa määritetyn Potilaslista-rajapinnan ateriatilaussoveltamisprofiilin esimerkkiasiakastoteutuksen hyödyntämisohjeeksi. 3
1 Johdanto Potilaslista-palvelun ja sen asiakkaan välinen toiminnallisuus sekä sen tuottamiseen tarvitut viestit ovat esitetty Kuvassa 1. Potilaslista-määritykset, joissa tarkat määritykset toiminnallisuudelle ovat saatavilla hankkeen sivuilta osoitteista: Potilaslista - rajapintamääritys, Versio 1.0 (http://www.serapi.fi/mater/potilaslista_rajapintav10.doc) ja Potilaslista - rajapinta, Ateriatilaus-soveltamisprofiili, Versio 1.0 (http://www.serapi.fi/mater/potilaslista_ateriaprofiiliv10.doc) Sovelluksen käyttöohjeet löytyvät tämän dokumentin luvuista 2 ja 3. Sovelluksen ja erillisenä jaeltavan sovelluksen lähdekoodit sisältävän projektin asennusohjeet löytyvät luvusta 4. Kuva 1. Potilaslista-palvelun hyödyntäminen 4
2 Sovelluksen päälomake Ohjelma päälomakkeella on valittavana kolme toimintoa, joista kaksi ensimmäistä (Hae potilaslista ja Hae potilaan tiedot Kuva 2) suorittavat potilaslistarajapinnassa määritetyt kutsut (Potilaslistakysely ja Potilaan tietojen kysely Kuva 1): Toimintojen lyhyet kuvaukset: Palvelu: vetolaatikosta valitaan tai siihen voi kirjoittaa palvelun osoitteen, johon kutsut suoritetaan Hae potilaslista: Tyypillisessä käyttötilanteessa haulla tuotetaan potilaslista. Hae potilaan tiedot: Edellisellä kyselyllä saadulla Potilaslistalla yksilöidyille potilaille voidaan suorittaa potilaan tietoja tarkentavia jatkohakuja, kunnes kaikki tarvittavat listalla olevat potilaat ovat saatu käsitellyksi. Näytä viestit: Kyselyiden suorituksessa hyödynnettyjen viestejä kyetään tarkastelemaan Näytä viestit toiminnon avulla kyselyn suorituksen jälkeen. participantcoupon-valinta: Rastittamalla participantcoupon-valintalaatikon saadaan suoritettaviin viesteihin mukaan esimerkki määrityksien liitteenä esitellystä Potilaslistapalvelun asiakkaan liittyminen kontekstinhallintapalveluun -toiminnallisuudesta. Valinnan ollessa päällä asiakassovellus asettaa kyselyviestin header-osioon esimerkinomaisen participant- Coupon-rakenteen. Kuva 2. Potilaslista-asiakassovelluksen päälomake 5
2.1 Hae Potilaslista-toiminto 2.1.1 Potilaslistan haku Hae Potilaslista- toiminto suorittaa rajapintaan määritetyn querypatients-kutsun sille varsinaisessa rajapintamäärityksessä asetettujen ja ateriaprofiilissa lisättyjen ja tarkennettujen parametrien mukaisesti. Rajapinnan kyselyparametrien vastaavuus lomakkeen syötekenttiin: Lomake-kentät Organisaatio Osastotunnus AlkuPvm LoppuPvm Potilastilannetieto Alkuarvo Määrä * = parametri ateriatilaus-profiilista Rajapinnan parametri <organization> <department> <startdate> <enddate> <patientstatus>* <from> <howmany> Kuva 3. Hae Potilaslista kutsu suoritettuna 6
Suoritettassa Hae Potilaslista- toiminto (Hae Potilaslista- painike) suorittaa sovellus Palvelukentässä asetetulle palvelulle querypatients-kutsun lomakkeelta valittujen ja asetettujen parametrien mukaisesti (oletuksena kenttään asetettu SerAPI-Potilaslista-palvelun osoite: http://kettinki.uku.fi/patientlist/services/patientlistservicesoapport). Palvelu-kentän osoiterivi on editoitavissa ja ohjelma myös tallettaa syötetyn uuden osoitteen hyödynnettäväksi seuraavaan kutsuun haku-toiminnon yhteydessä. 7
2.1.2 Potilaslistan tarkastelu Hae Potilalista -kutsu tuottaa Potilaslistan, joka esitetään lomakkeella Haetut potilaat-kentässä kuvassa 3 esitetyn tilanteen mukaisesti. Kutsu on suoritettu lomakkeen kentissä asetetuilla parametreillä ja se on tuottanut kahden potilaan tiedot (Haetut potilaat-kenttä, Potilaan tiedot <indentified- Patient>: NNNNNN -rivit). Potilaaseen liittyviä yksittäisiä tietoja esitetään näytöllä tyylillä: <xml-tagin nimi>: kentän arvo ( esim. <lastname>: Thunder). Listassa saadun yksittäisen potilaan tietoja päästään tarkastelemaan valitsemalla potilaan tietoja ilmaisevan rivin alussa olevaa +-merkkiä. Myös muita erillisiä tietorakenteita päästään tarkastelemaan vastaavasti (esim. Kuvan 4 <patient>-tieto). Kuva 4. Yksittäisen potilaan tietojen tarkastelu potilaslistassa Edellä kuvatulla tavalla päästään myös tarkastelemaan ateriatilaus-sovellusprofiilissa määritettyjä laajennusosion tietoja (Kuvan 4 Sisäänkirjattu <asbooked>: pp.kk.vvvv-rivit). 8
Kuva 5. Potilaan sisäänkirjaustietojen tarkastelu Kuvassa 5 esitetään potilaan (Thunder Dermot) olevan sisäänkirjattu osastolle (701) kahtena päivänä (30.-31.5.2007). Haluttaessa hakea kyselyllä saatavia tietojoukkoja osissa on mahdollista antaa joukon ensimmäisen potilaan potilastunnus (patient.id) Alkuarvo-kenttään ja syöttää haluttu määrä Määrä-kenttään. Sovellus myös kerää ajon aikana suoritetuista hauista potilastunnisteita, jotka ovat valittavissa Alkuarvo-kentän vetolaatikosta. 9
2.2 Hae potilaan tiedot toiminto 2.2.1 Potilaan tietojen kysely Hae potilaan tiedot- toiminto suorittaa rajapintaan määritetyn getpatientinfo-kutsun sille varsinaisessa rajapintamäärityksessä asetettujen ja ateriaprofiilissa lisättyjen ja tarkennettujen parametrien mukaisesti. Rajapinnan kyselyparametrien vastaavuus lomakkeen syötekenttiin: Lomake-kentät Haetut potilaat-kenttä, Potilaan tiedot-rivi AlkuPvm LoppuPvm Rajapinnan parametri <patient> <startdate> <enddate> Kuva 6. Potilaan valinta tarkempien tietojen hakuun Haluttaessa tarkentaa yksittäisen potilaan tietoja, valitaan potilas Haetut potilaat-kentästä, klikkaamalla Potilaan tiedot-rivi valituksi ja painetaan Hae potilaan tiedot painiketta (Kuva 6). 10
2.2.2 Yksittäisen potilaan tietojen tarkastelu Kuva 7. Hae potilaan tiedot toiminto suoritettuna Yksittäisen potilaan tiedot esitetään Potilaan tarkennetut tiedot kentässä (vrt. Haetut potilaat - kenttä). Kentässä esitetään yksittäisen potilaan perustiedot (Potilaan tiedot-rivi) sekä ateriaprofiilissa määritettyjä tietosisällön laajennusrakenteita (Ateriatiedot- ja Riskitiedot-rivit). Haettuja tietoja ja tietorakenteita kyetään tarkastelemaan vastaavalla tavalla kuin edellisen näytön Potilaslistan-tietoja (+-merkki tietokentän nimen edessä avaa rakenteet tarkasteltaviksi). Poikkeuksena potilaan Riskitiedot, jotka esitetään omassa selainikkunassa (Kuvassa 8 Riskitietojen näytön valinta). 11
Kuva 8. Potilaan tietojen tarkastelu Riskitietojen valinta Potilaan Riskitiedot saadaan tarkasteltaviksi klikkaamalla Näytä riskitieto-dokumentti riviä Potilaan tarkennetut tiedot kentässä (Kuva 8). Toiminto avaa Riskitieto-dokumentin omassa selainikkunassa (Kuva 9). 12
Kuva 9. Potilaan Riskitieto-dokumentti 13
2.3 Näytä viestit toiminto Molempien kyselyiden tuottamat viestit ja niille palvelulta saadut vasteet ovat tarkasteltavissa sovelluksen kautta. Haluttaessa tarkastella kyselyn viestejä suorituksen jälkeen painetaan Näytä viestit painiketta, jolloin suoritettu kyselyviesti avautuu omaan selainikkunaan (Kuva 10). HUOM viestit esitetään ikkunassa kahtena eri versiona (1. alkuperäinen viesti ja 2. kyselyn tallentamiseen ja participantcouponin liittämisen mahdollistavan WSE3.0-sovelluslaajennuksen tuottama prosessoitu versio). Kuva 10. querypatients-kyselyn viesti Viestien tarkastelu toiminto on hyödynnettävissä molempien kutsujen (Hae potilaslista ja Hae potilaan tiedot) suorituksen jälkeen. 14
Haluttaessa tarkastella kyselylle palvelun tuottamaa vastausviestiä painetaan lomakkeella Näytä vastaus painiketta, jolloin vastausviesti avautuu samaan ikkunaan (Kuva 11). Kuva 11. querypatientsresponse-vastausviesti Lomake voi olla auki kyselyiden suorittamisen ajan. Haluttaessa tarkastella viimeisintä viestin suoritusta, saadaan viestit näytöllä painamalla Päivitä-painiketta. 15
3 Asennusohjeet Asennusohje on tehty Windows XP Professional käyttöjärjestelmälle. HUOM. Asennuksen tekemiseen järjestelmään täytyy olla käytössään Administrator-tasoiset tunnukset. Sovelluksen ajaminen käyttäjätunnuksilla, joilla on rajatut käyttöoikeudet on mahdollista, mutta viestien ja niiden osien tarkasteleminen on mahdollista vain antamalla rajatulle käyttäjätunnukselle oikeus kirjoittaa sovelluksen kotihakemistoon (johtuen viestien tallentamisessa hyödynnetystä WSE3.0- sovelluslaajennuksesta, jonka kirjoittamia loki-tiedostoja käytetään viestien tallentamiseen ja kyseinen polku ei ole välineessä editoitavissa). 3.1 SerAPIPatientListClient-sovellus Asennus käynnistetään tuplaklikkaamalla SerAPI-hankkeen sivuilta ladattua asennnusohjelman kuvaketta (SetupPatientlistClientClient.msi). HUOM, jos ympäristöön ei ole asennettu Microsoftin.NET Framework 2.0 ympäristöä lue seuraava kohta: 3.1.1.NET Frameworkin asennus, muussa tapauksessa siirry kohtaan: 3.1.2 SerAPIPatientListClient-asennuksen eteneminen. 3.1.1.NET Frameworkin asennus Esimerkkisovellus on toteutettu ajettavaksi Microsoftin.NET Framework 2.0 ympäristössä. Jos käyttäjän koneeseen ei ole asennettu kyseistä ympäristöä kehottaa asennusohjelma asentamaan Frameworkin seuraavalla ilmoituksella (Kuva 12). Kuva 12..NET Frameworkin asennuskehote Valittaessa Yes-painike ohjataan käyttäjä Microsoftin-sivustolle, josta valitaan omalle alustalle soveltuva.net Frameworkin versio 2.0.50727 ja suoritetaan sen asennus sivustolla annettujen ohjeiden mukaisesti..net Frameworkin asennuksen jälkeen tulee asennusohjelma käynnistää uudelleen. 16
3.1.2 SerAPIPatientListClient-asennuksen eteneminen Sovelluksen asentaminen etenee seuraavien vaiheiden kautta: Kuva 13. Valitse Next. Kuva 14. Käyttäjä voi valita hakemiston, johon sovellus asennetaan (oletuksena C:\Program Files\SerAPI). Valitse Next. 17
Kuva 15. Asennuksen vahvistaminen, valitse Next. Kuva 16. Sovellusta asennetaan. 18
Kuva 17. Asennusohjelma muistuttaa vielä kirjoitusoikeuksien lisäämisestä sovelluksen oletushakemistoon. Valitse Next. Kuva 18. Asennus on valmis. Valitse Close. Asennuksen jälkeen sovellus on käynnistettävissä käyttäjän löytyvästä SerAPIPatientlistClientpikakuvakkeesta, josta sovellus avautuu Kuvan 2 näköisellä lomakkeella. 19
3.1.3 Sovelluksen poistaminen Sovellus on poistettavissa tavallisen Windows-sovelluksen tapaan. Menemällä Control Panel -> Add or Remove Programs ja valitsemalla avautuvasta ikkunasta sovellus: SerAPIPatientlistClient ja painamalla Remove-painiketta.(kts. Kuva 18). Kuva 19. Sovelluksen poistaminen 20
3.2 SerAPIPatientListClient-projektin asennus lähdekoodeineen Kehityksessä hyödynnetyt ohjelmistot: sovelluskehitin: Visual Studio.NET 2005, Professional Edition sovelluskehittimeen asennettuna (molemmat saatavilla Microsoftin web-sivuilta): Visual Studio 2005 Service Pack 1 (SP1) Web Services Enhancements (WSE) 3.0 for Microsoft.NET Käyttöönotto: Pura tarvittavien ohjelmistojen asentamisen jälkeen sivuilta lataamasi zip-paketti (SerAPIPatient- ListClient_source.zip) haluamaasi hakemistoon (esim. Visual Studion projektien oletushakemistoon:..\my Documents\Visual Studio 2005\Projects\). Käynnistä projekti esim. tuplaklikkaamalla PatientlistClientW-hakemistoon purettua sovellusprojektitiedostoa: PatientlistClientW.csproj. Kuva 20. PatientlistClientW-projekti Visual Studio.NET 2005-sovelluskehitysympäristössä. 21