Kortfattet gennemgang af arbejdet på Klinisk Fysiologisk
Afd. Z på Herlev hospital siden min ansættelse i 2000.


Booking- og svarskrivningssystemet Arcus er, som sagt, lavet i Delphi og bruges på klinisk fysiologisk i Herlev, Glostrup og Gentofte. Jeg laver support og udvikling på systemet. Den største enkeltstående forandring af systemet har været, at den oprindelige Borland dBase IV database, er skiftet ud med en MS SQL server 2005. Data læses og skrives af omkring 50 Stored Procedures lagt på serveren. Det er lavet løbende med dagligt arbejde og har varet fra 2004 til 2010.

Fra centralt hold syntes man ikke serveren kørte særligt effektivt, så jeg har sat indexer på databasen. Det gav en forbedring på omkring 60%.

Der laves løbende små ændringer til Booking modulet. Eksempelvis ønskede Glostrup, at der kom ankommet ikoner på systemet som skiftede farve efter hvor langt patienten var i under-søgelsesforløbet. De har en "undersøgelse" der består af 3 dele i 3 forskellige undersøgelses rum. Når patienten melder sin ankomst, sætter sekretæren i lugen patienten til ”ankommet”. Nu kommer der tre farvede ankommet ikoner - ligner en silhuet af en buste. Den tidligste undersøgelse får en grøn ikon, den næste en gul og den sidste en rød ikon. Når første undersøgelse er slut, forsvinder den grønne ikon og den gule ikon bliver nu grøn, og så fremdeles.

Der er mange programdele, som arbejder op mod den samme Arcus SQL server. Der er et program, der overføre data fra nogle osteoporose skannere til Arcus. Det er blevet ændre tre gange når vi har fået nye skannere. Skannerfabrikanten laver altid, synes jeg, små ændringer i skannerens egen database

Vi har et lungefunktions udstyr, som overfører data til Arcus. Her har jeg brugt, at lunge-funktionsudstyret laver udskrift som HTML og gemmer temporære filer. Disse filer gennemlæses af programmet og de fundne data overføres sammen med bitmaps af flowvolumen. Der genereres et svar fra disse overførsels programmer med tal og billeder. Lægerne skriver deres bemærkninger ind i svaret og "arkiverer" svaret hvorefter svaret er færdigt.

For at få patientdata over i lungefunktionsudstyret har jeg lavet et program, der trækker patientdata ud af Arcus DB og skriver dem i et direktorie på lungefunktionsudstyret. Formatet, som data skrives i hedder, som jeg husker det, .gdt. Det er tekstfiler med nogle talkoder i første 5-6 pladser på linien.

Brugere af lungefunktionsudstyret har en liste over patienter hvor hun/han vælger den, der skal overføres, og klikker "ok". Lungefunktionsudstyrets program starter herefter op med den pågældende patient.

Der er et serverprogram, der håndterer forskelligt i forbindelse med svarene. Til programmet har jeg i samarbejde med en central afdeling i huset lavet en server, der tager et svar, som er ”klar til arkivering”, og konvertere den tilhørende .doc fil - almindelig word fil, til en TIF fil. Vi købte noget software, som vi fandt på nettet, og fik lavet nogle ændringer, så det kunne håndtere en speciel farvekodning, som bruges på hospitalet. Den konverterede TIF fil samles op af et centralt system, som hedder OnBase, hvorefter hele hospitalet kan se svar fra Klinisk Fysiologisk afdeling.

Der er et modul, som hedder ArcView. Det kan samle billeder op fra vort lokale UNIX netværk og overføre dem til Arcus svarene. Gamma kameraerne kørte tidlige på dette UNIX netværk, men idag er der kun ét kamera tilbage. I forbindelse med konverteringen til SQL server måtte jeg skrive den oprindelige kode i "C" om til Delphi 6. Det er, som nævnt, Delphi 6 det hele er lavet i.UNIX systemet er er gået helt ud i 2012 og nu bruges ArcView ikke mere

Til brug for resten af hospitalet har jeg lavet et ArcusLite program, der kan se, hvilken status svar fra Klin Fys ligger i og om de er blevet overført til OnBase. Det er installeret i enkelte andre afdelinger, men der er ikke så mange der bruger det. Det er endnu det krav til vor afdeling, at der leveres papirsvar ud i huset, - og når papirsvaret kommer, ja så ligger det også på OnBase.

Vi laver nyrefunktionsundersøgelser kaldet clearance. Man tager nogle blodprøver på folk og måler på dem i en tæller. Tælleren laver en fil med data i et regneark. Disse regneark læses af programmet, som kaldes Wizard, da det er det, tælleren hedder. Wizardprogrammet trækker først patienter ud af Arcus DB og laver en papirliste med navne og placering af hvor blodprøverne skal stå i de racks, som sættes ned i Wizard tælleren. Når prøverne er talt natten over, læser wizard programmet denne Excel fil, hvor data står i den rækkefølge, som man har fastlagt på forhånd, og overfører data til Arcus DB. Når svaret genereres, regnes den faktiske clearance ud fra måletallene. Det sker i en word makro.

Der er lavet en udgave af wizard programmet, som er "stand alone", og som bioanalytikerne bruger til at måle standarder med.

Der er lavet et etikette program, som skriver etiketter ud på dem, man ønsker i det ønskede antal. Man kan vælge undersøgelses typer, hvilke rum og hvilke patienter man ønsker skrevet etiketter ud på. Der ligger en tekstfil med oplysninger om hvor mange etiketter der skal skrives ud på de forskellige undersøgelses typer.

Vi har fået en ny radiokemi med rene rum under tryk og et software system, som holder styr på alle de radioaktive stoffer vi bruger. Det hedder IBC-606. Det kommunikerer med omverdenen v.h.a. af den standard, som hedder HL7. Jeg har brugt MirthConnect, som jeg fandt på nettet, til at overføre data til og fra IBC-606. Det er "open source" men virker meget gennemført. Jeg har siden fået at vide, at Microsoft også laver noget der kan håndtere opgaven, men så længe det andet kører, så er der andre opgaver, der kommer først. Mirth kunne ikke koble direkte på SQL serveren da leverandøren af IBC-606 installerede, men det kunne læse tekstfiler. Så jeg lavede en server, der kunne trække relevante data ud på patienter, der skulle have indsprøjtet radioaktivt sporstof. Der blev lavet tekstfiler som Mirth samlede op, konverterede til HL7 og sendte til IBC-606. Data den anden vej består i oplysninger om, hvor meget sporstof der er målt, så tallet kommer til at stå på patientens svar. Dette er i dag ændret, så MirthConnect kommunikerer direkte med Arcus SQLserveren. Der er lavet en række stored procedures som håndterer det meste. Der er lavet lidt javascript kode i MirthConnect.

Siden efteråret 2014 er megen tid gået med at ændre alle de komponenter Arcus Booking- og svarskrivningssystem består af, til at kunne køre på PC'er med Window7 styresystem. Vi har fået en Delphi XE7 kompiler til det formål. Hovedparten af konverteringsindsatsen består i at lave typen string om til Ansistring og lave char om til Ansichar. Der er lidt funktions kald og andet der er lavet om i Win7, men ikke noget, der er uoverkommeligt. De nye udgaver kører så også på XP, som hospitalet bruger indtil efteråret 2015. (I parentes bemærket går jeg på pension pr. 1. maj). Det er faktisk sådan, at den ny Win7 udgave kører mærkbart hurtigere på XP end den gamle gjorde.

Noget af det første software jeg lavede og som de er vældig glade for, er et pop-up program, som skriver beskeder til de andre PC'er som har programmet kørende.

Designet er meget enkelt. Der er et vindue, men kan læse beskeder i. Der er et vindue, men kan skrive beskeder i, og så er der en knap, som der står "send" på. Når man har trykket, kan den skrevne besked læses på de andre PC'er. Programmet er inspireret af en gammel Jolly Cola TV reklame og hedder "ModneFrugter". I daglig tale er det at sende en besked blevet til, at sende en moden frugt.

Der hører en server til, som slette gamle beskeder hver dag og arkiverer dem. Så har serveren en liste med fødselsdage i afdelingen, og ønsker til lykke på dagen. Har man fødselsdag i week-enden bliver det om mandagen. Der findes en liste med rutine ting i ugens løb. F.eks indkaldes til driftmøde tirsdag kl.13.

Modnefrugter systemet kan også modtage besked fra OnBase serveren og hvis overførslen af svar ikke er gået godt kommer der en moden frugt med CPR nummer på patienten samt et telefon-nummer på den, man skal ringe til i IT afdelingen.

Der er nu (efteråret 2013) lavet en udgave som deler medarbejderne ind i grupper, så ikke alle skal læse alle beskedder sendt med "ModneFrugter". Man kan også sende til en navngiven person, - hvis personen har opgivet sit navn til systemet, og til en bestemt PC, hvis den har fået en beskrivelse, f.eks. hvilket undersøgelses rum den befinder sig i.

 

Tilbage til CV