Bruk av applikasjonskvittering
Mottak og sending av applikasjonskvitteringen skal alltid logges. Applikasjonskvitteringer som inneholder avvik skal gi varsel i sluttbrukerapplikasjonen (feilmelding). System som skal motta AppRec må ha rutiner for hva som skjer når den uteblir, rutinene skal være i tråd med standard for meldingsutveksling i helsesektoren.
For meldinger som har svarmelding brukes svarmeldingen, ved applikasjonsfeil sendes en AppRec og ved kommunikasjonsfeil sendes en fault melding på transportnivå. Ved M1, M3, M10, M25.1, M25.2, M25.3 og MV som er synkrone meldinger, sendes likevel alltid AppRec.
Se Meldinger og meldingsflyt i e-resept for en oversikt over hvilke meldinger som skal benytte applikasjonskvittering.
For beskrivelse av de enkelte attributtene, se HIS 808415:2012 Applikasjonskvittering V1.1
Bruk av kodeverk
Det skal benyttes kodeverk i AppRec. Disse skal brukes både for synkrone (HTTP) og asynkrone (SMTP) applikasjonkvitteringer.
Positiv apprec inneholder:
Status V=1 og DN=OK.
Status V=3, DN=“OK, feil i delmelding” og en eller flere Error-element fra kodeverk.
Negativ apprec inneholder
Status med V=2 og DN=”Avvist”, og et Error-element.
Error-element fylles ut med V (kode), S (OID) og DN (beskrivelse) for alle feil, og enkelte feil får en mer utfyllende forklaring i OT.
Kodeverk for Status-element er:
8258 Status for mottak av melding
Kodeverk for Error-element er:
8221 Feilmeldinger for applikasjonskvittering - Generelle
7419 Feilmeldingskodeverk for eResept
For innhold i kodeverk se www.volven.no.
Ved feilmelding kan det også oppgis tilleggsinformasjon ved bruk av XML-attributtet OT, men det skal ikke sende tekniske feilmeldinger i OT-feltet. RF benytter seg bare av første og siste kode for vanlige meldinger. For Verifymeldingen gjelder spesielle regler, se meldingsdokumentasjonen for denne, spesielt gjelder dette at Ok - feil i delmelding benyttes for å rapportere avvik til EPJ uten at dette er feil.
Eksempel på feilmelding med tilleggsinformasjon:
<Error S="2.16.578.1.12.4.1.1.8221" V="E20" DN="Lege finnes ikke" OT="Legen har sluttet"/>
Håndtering av manglende AppRec eller transportkvittering
Hvis (positiv eller negativ) AppRec er mottatt på applikasjonsnivå, skal videre manglende transportkvitteringer ignoreres. På transportnivå vil det fortsatt etterspørres transportkvitteringer, men dette dør ut av seg selv
Hvis negativ AppRec er mottatt, må avsender lage ny melding med ny meldingsid (med bedre innhold) og sende den. Å sende samme melding på nytt vil ikke gi bedre resultat.
Hvis AppRec ikke er mottatt må det sees på om transport er OK eller ikke. Å sende samme meldingen på nytt bør unngås, med mindre det gjøres tiltak for å løse kommunikasjonsproblem i mellomtiden.
Hvis ingen AppRec og ingen transportkvittering foreligger etter resendinger, kan det konstateres et kommunikasjonsproblem som må håndteres (manuell inngripen). Om det skal resendes med gammel eller ny melding må avklares mellom partene. Hvis meldingen aldri har kommet frem, kan meldingen sendes på nytt med samme ID.
Dersom avsender av en AppRec ikke har fått transportkvittering på denne, så anses dette å være mottagers (av AppRec) sitt problem og avsender gjør ikke noe mer med dette, utover å vente på trensportkvittering.
For M21 ekspederingsanmodning er det spesielle rutiner ved manglende AppRec eller transportkvittering. Dette er beskrevet her: Feilhåndtering i behandling av ekspederingsanmodning (M21)