This is an old revision of the document!
Table of Contents
Hent medicinkortversion
HentMedicinkortVersion-servicen anvendes af systemerne til at finde ud af om de allerede har et opdateret medicinkort lokalt i deres system. Servicen returnerer informationer om ændringer i den del af medicinkortet, der er versioneret, samt information om ændringer i recepterne. Der er en del ændringer i medicinkortet der ikke kan ses i et kald til HentMedicinkortVersion-servicen. Specielt har det været relevant for mange FMK anvender-systemer at få information om hvornår der sidst er lavet en effektuering på en lægemiddelordination, og da effektueringer i dag ikke er en del af FMK versioneringen, vil nye effektueringer ikke ændre versionen af medicinkortet og dermed ikke kunne ses i HentMedicinkortVersion. Det samme gælder for ændringer i de læste recepter. Da medicinkortet med FMK 1.4 også begynder at indkapsle andre uafhængige snitflader, kan også være relevant at returnere informationer om ændringer af disse snitflader.
I nuværende snitflader inkluderer svaret på HentMedicinkortVersion: Medicinkort version En dato for seneste recept-oprettelse og/eller fejlbesked for kald til recept-server.
Svaret udvides med følgende informationer, som giver mulighed for at returnere nuværende informationer samt fremtidige udvidelser uden at skulle lave skema nye skemaændringer: Dato tidsstempel for seneste lægemiddelordinations-effektuering Dato tidsstempel for seneste tilknytning af løs recept Angivelse af om patienten er indlagt Angivelse af om patienten er tilknyttet hjemmesygeplejen inklusiv Angivelse af om patienten INR værdier er ændret.
Eksempel
Servicen ændres til at returnere informationerne som Key-value par. Dette sikrer at listen af mulige nøgler i skemaet kan udvides uden at skemaet skal ændres vha et “Undefined”-element.
<GetMedicineCardVersionResponse>
<PersonIdentifier>1111111118</PersonIdentifier>
<MedicineCardVersion>133283011600090002</MedicineCardVersion>
<MedicinCardInformationChange>
<InformationChangeType>PrescriptionMedicationDateTime</InformationChangeType>
<ChangeDateTime>2015-01-09T12:31:16.0Z</ChangeDateTime>
</MedicinCardInformationChange>
<MedicinCardInformationChange>
<InformationChangeType>EffectuationDateTime</InformationChangeType>
<ChangeDateTime>2015-01-09T12:31:16.0Z</ChangeDateTime>
</MedicinCardInformationChange>
<MedicinCardInformationChange>
<InformationChangeType>PrescriptionMedicationDateTime</InformationChangeType>
<ChangeDateTime>2015-01-09T12:31:16.0Z</ChangeDateTime>
</MedicinCardInformationChange>
<MedicinCardInformationChange>
<InformationChangeType>Hospitalized</InformationChangeType>
<ChangeDateTime>2015-02-15T05:20:18.0Z</ChangeDateTime>
</MedicinCardInformationChange>
<MedicinCardInformationChange>
<InformationChangeType>HomeCareSubscription</InformationChangeType>
<ChangeDateTime>2013-02-03T08:20:10.0Z</ChangeDateTime>
</MedicinCardInformationChange>
<MedicinCardInformationChange>
<InformationChangeType>INRChanged</InformationChangeType>
<ChangeDateTime>2013-02-03T08:20:10.0Z</ChangeDateTime>
</MedicinCardInformationChange>
</GetMedicineCardVersionResponse>
Det tilsvarende skema er beskrevet nedenfor:
<complexType name="GetMedicineCardVersionResponseType"> <sequence> <element name="PersonIdentifier" type="medicinecard20150101:PersonIdentifierType"/> <element name="MedicineCardVersion" type="medicinecard20150101:MedicineCardVersionType"/> <element name="MedicineCardInformationChange" type="medicinecard20150101:MedicineCardInformationChangeType" minOccurs="0" maxOccurs="unbounded"/> </sequence> </complexType> <complexType name="MedicineCardInformationChangeType"> <sequence> <element name="InformationChangeType" type="medicinecard20150101:InformationChangeTypeType"/> <element name="ChangeDateTime" type="dateTime" minOccurs="0"/> </sequence> </complexType> <simpleType name="InformationChangeTypeType"> <union memberTypes="medicinecard20150101:PredefinedInformationChangeType medicinecard20150101:UndefinedInformationChangeType"/> </simpleType> <simpleType name="UndefinedInformationChangeType"> <restriction base="string"> <minLength value="1"/> <maxLength value="200"/> </restriction> </simpleType> <simpleType name="PredefinedInformationChangeType"> <restriction base="medicinecard20150101:UndefinedInformationChangeType"> <enumeration value="PrescriptionMedicationDateTime"/> <enumeration value="EffectuationDateTime"/> <enumeration value="PrescriptionAttachmentChange"/> <enumeration value="HospitalizationStatusChange"/> <enumeration value="HomeCareSubscriptionChange"/> <enumeration value="INRChange"/> </restriction> </simpleType>
Bagudkompatibilitet
Ovennævnte problem eksistere i dag også i de gamle versioner. Da det ikke er muligt at lave om på de gamle snitflader, er det bedste der kan gøres, at tage så mange ændringer med i den ene dato der er, nemlig
<PrescriptionMedicationDateTime> 2012-08-09T12:31:16.0Z </PrescriptionMedicationDateTime>
Derfor tages udgangspunkt i hvad hver enkelt snitflade kan levere af oplysninger og det bliver den sidste ændrings tidsstempel der bliver afgørende for hvad tidspunkt der bliver returneret.
I FMK 1.2.6 vil følgende tidspunkter være inkluderet i beregningen af seneste ændring:
- Dato-tidsstempel for seneste ændring i recept-data
- Dato-tidsstempel for seneste lægemiddelordinations-effektuering
- Dato-tidsstempel for seneste tilknytning af løs recept
I FMK 1.4.0 desuden:
- Angivelse af om patienten er tilknyttet hjemmesygeplejen
I FMK 1.4.2 desuden:
- Angivelse af om patienten er indlagt
