Page History
...
| Table of Contents |
|---|
Beskrivelse
Autorisationsregistret indeholder informationer om hvilke sundhedsfaglige uddannelser en given person har gennemgået og er blevet autoriseret til af Sundhedsstyrelsen.
Autorisationsregistret opdateres dagligt af Styrelsen for Patientsikkerhed.
Alle autoriserede sundhedspersoner har i dag et autorisationsID. ID’et er en alment tilgængelig identifikation på linje med navn og stillingsbetegnelse og består af fem tegn. ID'et benyttes blandt andet i forbindelse med receptudstedelser. Autorisationsregisteret indeholder oplysninger om alle sundhedspersoner med dansk autorisation.
Sundhedspersoner, ansættelsesmyndigheder og private kan således ved opslag i registeret kontrollere den enkelte sundhedspersons autorisationsstatus.
Sundhedspersoner kan i registeret samtidig finde frem til deres autorisationsID.
Der findes 3 særlige autorisationsnumre, som ikke omhandler konkrete personer, nemlig 09YM8, 09YM9 og 09YMB. Der er tale om erstatningsautorisationsnumre, som benyttes i særlige situationer. Disse tre records indeholder ikke meningsfyldte data for CPR, fornavn, efternavn og uddannelseskode:
...
autorisationsnummer
...
cpr
...
fornavn
...
efternavn
...
uddannelseskode
...
0101010001
...
Indberettet af apotek, ej autorisationsnummer
...
0101010001
...
Indberettet af farmaceut/farmakonom, ej autorisationsnummer
...
0101010001
...
Medicin købt i andre EU/EØS-lande, registreret af Lægemiddelstyrelsen
...
Forslag til sundhedsprofessionel om dosering af præparat.
Forslag til sundhedsprofessionelle om dosering af præparat. Indeholder informationer om doseringsenheder og -forslag, der består af to relaterede datasæt: Doseringsenheder knytter en enhed til et lægemiddel; doseringsforslag knytter et antal forslag til doseringer til et lægemiddel. Doseringsforslagene repræsenteres i et XML-format, som matcher FMKs snitflader.
Datasættet uploades som en komplet version, hvor ReleaseNumber angiver hvilken version doseringsforslag og doseringenheder tilhører. Bemært, at dette medfører at et kopiregisterudtræk kan indeholde flere versioner, hvor kun seneste version skal anvendes.
NSP: Doseringsforslag og -enheder v.2 og Doseringsforslag og -enhederNSP: Autorisation
Forretningsanvendelse
Generel register beskrivelser: Dokumentation af stamdataregistre. Specifikt: AutorisationDoseringsforslag og -enheder v.2 og Doseringsforslag og -enheder
Anvendelse af B00 Stamdata Kopi register service (SKRS): SDM - Guide til anvendere
Autorisationsregisteret udstilles både gennem SKRS kopiregister servicen og SAES enkeltopslags servicen.
Relaterede registre og services
...
Applikationsbeskrivelse
Generisk parameterstyret import controller, der kalder den dedikerede importer for det aktuelle dataobjekt først mod preflight databasen og hvis det ikke fører til fejl, kaldes den samme dedikerede importer mod produktions databasen.
Indsamlingen af data implementeres i forhold til hvert enkelt kilderegister ved anvendelse af en registerspecifik Parser, men med anvendelse af en fælles Importer-komponent.
Importer-komponenten kører på NSP Backend platformen, og er ansvarlig for at indlæse dataset fra registerfiler, der placeres i en dedikeret mappe i filsystemet . Hvert register har sin egen dedikerede mappe som automatisk bliver oprettet af Importer-komponenten.
Importeren overvåger filsystemet og aktiverer de registerspecifikke parsere, når nye registerfiler er tilgængelige i filsystemet.
De respektive parsere (Importere) processerer registerfilerne og overfører registerdata til den lokale database. Parsningen kan i princippet bestå af en direkte dataoverførsel fra fil til database, men indeholder i de fleste tilfælde forretningslogik, f.eks. transformationer af data og denormaliseringer.
Stamdatatabellerne registreres i NSP’ens replikeringsmekanisme, og de parsede registerdata replikeres derfor automatisk ud til de enkelte NSP instanser, hvorfra de kan tilgås gennem de udstillede stamdataservices.
Opgradering af importer databasen sker automatisk ved serverstart, og fungerer på den måde at sql scripts med navne formatet "Vyyyymmdd_hhmm_description.sql" afvikles på databasen. Script filerne placeres under resources\db\migration" og inkluderes dermed automatisk i den deployede applikation.
Bemærk at sql filerne afvikles i navne orden, og da dato og tid indgår i navnet, kan man styre hvilke scripts der skal afvikles først.
'db_migrations' tabellen varetager den fælles styring af skema-versioner, som alle importerer benytter til at holde styr på hvilke scripts der er afviklet, så hvert script kun afvikles én gang.
Dedikeret importer for autorisations Doseringsforslag oplysninger. Support
Support ansvarlig: Trifork.
Datastruktur
Register properties:
Entitetsbeskrivelser
...
dosageunit
^^Tilbage til toppen^^Objektet beskriver autorisationer.
Data poster rummer følgende information:
`autorisationsnummer` -- Selve autorisationsID'et (Unik ID)
`cpr` -- Personens CPR-nummer. Bemærk at der kan findes flere records med samme CPR-nummer
`fornavn` -- Personens fornavn(e)
`efternavn` -- Personens efternavn(e)
`uddannelseskode` -- Uddannelseskode. Se nedenforRealiseret gennem to tabeller, primært 'Autorisation2'. Til brug for andre services (STS, DDS) findes også 'autreg2', som har samme indhold men andet index.
Mulige uddannelseskoder og deres faggruppe:
----------------------------------------------------
0 Erstatningsautorisation
4498 Optiker
5151 Fysioterapeut
5152 Social- og sundhedsassistent
5153 Ergoterapeut
5155 Fodterapeut
5158 Radiograf
5159 Bioanalytiker
5166 Sygeplejerske
5175 Jordemoder
5176 Kontaktlinseoptiker
5176 Optometrist
5265 Kiropraktor
5431 Tandplejer
5432 Klinisk tandtekniker
5433 Tandlæge
5451 Klinisk diætist
7170 Læge
9495 Bandagist
...
Doseringsenheder som lægemidler doseres i (tabletter, kapsler, mililiter osv)
Objektet indeholder følgende information:
releaseNumber Fortløbende releasenummer
code Fortløbende id, som er unik pr. releaseNumber (men ikke på tværs af forskellige releases)
textSingular Enhedsbetegnelse, ental (fx “tablet”)
textPlural Enhedsbetegnelse, flertal (fx “tabletter”)
ValidFrom Gyldig fra (format: yyyy-MM-ddTHH:mm:ss+Z)
ValidTo Gyldig til (format: yyyy-MM-ddTHH:mm:ss+Z)
dosagedrug
Lægemidler identificeret via DrugId og navn
Objektet indeholder følgende information:
releaseNumber Fortløbende releasenummer
drugId DrugID for det lægemiddel enheder og forslag relaterer sig til
dosageUnitCode Refererer til dosageunit code (en eller flere dosagedrug records henviser til samme dosageunit)
drugName Lægemidlets navn
ValidFrom Gyldig fra (format: yyyy-MM-ddTHH:mm:ss+Z)
ValidTo Gyldig til (format: yyyy-MM-ddTHH:mm:ss+Z)
dosagestructurerelation
Relationer mellem lægemidler og deres doseringsforslag
Objektet indeholder følgende information:
releaseNumber Fortløbende releasenummer
id Id som er unikt pr. releasenummer
drugId "Foreign key" til drug.drugId
dosageStructureCode "Foreign key" til dosagestructure.code
ValidFrom Gyldig fra (format: yyyy-MM-ddTHH:mm:ss+Z)
ValidTo Gyldig til (format: yyyy-MM-ddTHH:mm:ss+Z)
dosagestructure
XML-repræsentationer af doseringsforslagene
Objektet indeholder følgende information:
releaseNumber Fortløbende releasenummer
code Fortløbende id, som er unik pr. releaseNumber (men ikke på tværs af forskellige releases)
type "Hvis doseringsforslaget er for en enkelt doseringsperiode, er type udfyldt med en af følgende:
M+M+A+N
N daglig
PN
Ved flere perioder indesluttes hver periode i ""tuborg klammer"".
Et eksempel med 2 perioder:
{N daglig}{N daglig}"
simpleString "Som udgangspunkt er indholdet for en enkelt dag. Det er dog muligt at angive specifikke dage.
I så fald skal de angives som ""dag N: "".
Hvis forslaget kun indeholder en enkelt doseringsperiode skal det have følgende form:
For typen ""M+M+A+N"":
Simpel streng indeholder tre eller fire værdier adsklit af '+'.
Eksempelvis ""0+0+1"" for ""1 tablet aften"" (hvis enheden er tablet).
For typen ""N daglig"":
Simpel streng indeholder en liste af doser adskilt af ';'.
Eksempelvis ""1;1"" for ""1 tablet to gange daglig"" (hvis enheden er tablet).
For typen ""PN"":
Simpel streng indeholder en liste af doser adskilt af ';'.
Eksempelvis ""1;1"" for ""1 tablet højst to gange daglig efter behov"" (hvis enheden er tablet).
Ved flere perioder indesluttes hver periode i ""tuborg klammer""
Et eksempel med 2 perioder:
{dag 1: 2 dag 2: 2}{1}"
supplementaryText "Supplerende tekst som skrives ud for doseringen.
Kan fx være: "", 1 time før virkning ønskes"" eller ""i det inficerede øre""
Bemærk at der kun angives én tekst uanset antallet af perioder"
xml Indeholder XML-repræsentation af de strukturerede doseringer i den form de anvendes i FMK
i forskellige snitfladeversioner. Der angives en liste af <Dosage>-elementer, som hver især indeholder
snitfladeversionen, samt doseringen som den ser ud for pågældende snitflade.
Bemærk at det vil være nødvendigt at tilpasse StartDate og EndDate. Se evt. eksempel nedenfor.
shortTranslation Kort doseringsoversættelse, som dog udelades hvis den er længere end 70 karakterer
(hvilket dog ikke er tilfældet for de fleste doseringsforslag)
longTranslation Lang doseringsoversættelse, som indeholder doseringstiderne, en evt. dosering efter behov
samt en linje for hver dag i den strukturerede dosering.
ValidFrom Gyldig fra (format: yyyy-MM-ddTHH:mm:ss+Z)
ValidTo Gyldig til (format: yyyy-MM-ddTHH:mm:ss+Z)
Version
Løbenumre for registeret. Dette kan bruges til at se om man har den nyeste udgave af registeret
Objektet indeholder følgende information:
daDate Benyttes pt. ikke (format: YYYY-MM-DD)
lmsDate Benyttes pt. ikke (format: YYYY-MM-DD)
releaseDate Dato for udstilling (format: YYYY-MM-DD)
releaseNumber Fortløbende releasenummer
ValidFrom Gyldig fra (format: yyyy-MM-ddTHH:mm:ss+Z)
ValidTo Gyldig til (format: yyyy-MM-ddTHH:mm:ss+Z)
Doseringsforslag og -enheder import-status
Start- og end-tidspunkt og status for alle importerede filer
Ajourføres af autorisations Doserings importer
...
doseringsforslag og -
...
enheder udtræk
Udtræk af autorisationer doseringsforslag fra Styrelsen for patientsikkerhedlægemiddelstyrelsen
Opdaterer AutorisationsDoseringsforslag og -enheder registret
Tabelbeskrivelser
Tabel:
...
dosageunit
Tabellen rummer autorisationer.
Der findes også en dedikeret tabel 'autreg2' til brug for STS og DDS servicen.følgende kolonner:
releaseNumber NOT NULL bigint(15)
code NOT NULL (UK) bigint(11)
textSingular NOT NULL varchar(100)
textPlural NOT NULL varchar(100)
ValidFrom NOT NULL datetime
ValidTo NOT NULL datetime
CREATE TABLE IF NOT EXISTS Autorisation2 DosageUnit (
AutorisationPID DosageUnitPID BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
Autorisationsnummer CHAR
code INT(54) NOT NULL,
CPR CHAR(10-- ID
releaseNumber BIGINT(15) NOT NULL,
Fornavn textSingular VARCHAR(100) NOT NULL,
Efternavn textPlural VARCHAR(100) NOT NULL,
ModifiedDate DATETIME NOT NULL,
ValidFrom DATETIME NOT NULL,
ValidTo DATETIME NOT NULL,
CreatedDate DATETIME NOT NULL,
INDEX (DosageUnitPID, ModifiedDate),
INDEX (code, ValidTo, ValidFrom)
) ENGINE=InnoDB COLLATE=utf8_bin;
Tabel: dosagedrug
Tabellen rummer følgende kolonner:
releaseNumber NOT NULL bigint(15)
drugId NOT NULL (UK) bigint(11)
dosageUnitCode NOT NULL bigint(11)
drugName NOT NULL varchar(200)
ValidFrom NOT NULL datetime
ValidTo NOT NULL datetime
CREATE TABLE IF NOT EXISTS DosageDrug (
DosageDrugPID BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
releaseNumber BIGINT(15) NOT NULL,
drugId BIGINT(11) NOT NULL,
dosageUnitCode BIGINT(11) NOT NULL,
drugName VARCHAR(200) NOT NULL,
ModifiedDate DATETIME NOT NULL,
ValidFrom DATETIME NOT NULL,
ValidTo DATETIME ,
UddannelsesKode VARCHAR(4) NOT NULL,
CreatedDate DATETIME NOT NULL,
INDEX (DosageDrugPID, ModifiedDate),
INDEX (drugId, ValidTo, ValidFrom)
) ENGINE=InnoDB COLLATE=utf8_bin;
Tabel: dosagestructurerelation
Tabellen rummer følgende kolonner:
releaseNumber NOT NULL bigint(15)
id NOT NULL (UK) varchar(200)
drugId NOT NULL bigint(11)
dosageStructureCode NOT NULL bigint(11)
ValidFrom NOT NULL datetime
ValidTo NOT NULL datetime
CREATE TABLE IF NOT EXISTS DrugDosageStructureRelation (
DrugDosageStructureRelationPID BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
id VARCHAR(200) NOT NULL,
drugId BIGINT(11) NOT NULL,
dosageStructureCode BIGINT(11) NOT NULL,
releaseNumber BIGINT(15) NOT NULL,
ModifiedDate DATETIME NOT NULL,
ValidFrom DATETIME NOT NULL,
ValidTo DATETIME NOT NULL,
CreatedDate DATETIME NOT NULL,
INDEX (AutorisationPIDDrugDosageStructureRelationPID, ModifiedDate),
INDEX (Autorisationsnummerid, ValidTo, ValidFrom)
) ENGINE=InnoDB COLLATE=utf8_bin;
Tabel:
...
dosagestructure
Tabellen rummer autorisationer til brug for STS og DDS servicen
-- This table is used to hold the set of currently valid
-- autorisations. (Used by the STS)
--
CREATE TABLE IF NOT EXISTS autreg2 (
id BIGINT AUTO_INCREMENT NOT NULL PRIMARY KEY,
følgende kolonner:
releaseNumber NOT NULL bigint(15)
code NOT NULL (UK) varchar(11)
type NOT NULL varchar(100)
simpleString varchar(100)
supplementaryText varchar(200)
xml NOT NULL varchar(10000)
shortTranslation varchar(70)
longTranslation varchar(10000)
ValidFrom NOT NULL datetime
ValidTo NOT NULL datetime
XML-eksempel (formatteret aht. læsbarhed):
<?xml version="1.0" encoding="UTF-8"?>
<DosageProposals
xsi:schemaLocation="http://www.dkma.dk/medicinecard/xml.schema/2013/11/01 DosageProposals.xsd"
xmlns="http://www.dkma.dk/medicinecard/xml.schema/2013/11/01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Dosage>
<Version>1.4.0</Version>
<m12:Dosage
xsi:schemaLocation="http://www.dkma.dk/medicinecard/xml.schema/2012/06/01 ../../../2012/06/01/Dosage.xsd"
xmlns:m12="http://www.dkma.dk/medicinecard/xml.schema/2012/06/01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<m12:Structure>
<m12:IterationInterval>1</m12:IterationInterval>
<m12:StartDate>2010-01-01</m12:StartDate>
<m12:EndDate>2110-01-01</m12:EndDate>
<m12:UnitTexts source="Doseringsforslag">
<m12:Singular>pust</m12:Singular>
<m12:Plural>pust</m12:Plural>
</m12:UnitTexts>
<m12:Day>
<m12:Number>1</m12:Number>
<m12:Dose>
<m12:Time>morning</m12:Time>
<m12:Quantity>2</m12:Quantity>
</m12:Dose>
<m12:Dose>
<m12:Time>evening</m12:Time>
<m12:Quantity>2</m12:Quantity>
</m12:Dose>
</m12:Day>
</m12:Structure>
</m12:Dosage>
</Dosage>
<Dosage>
<Version>1.4.2</Version>
<m13:Dosage
xsi:schemaLocation="http://www.dkma.dk/medicinecard/xml.schema/2013/06/01 ../../../2013/06/01/DosageForRequest.xsd"
xmlns:m12="http://www.dkma.dk/medicinecard/xml.schema/2012/06/01"
xmlns:m13="http://www.dkma.dk/medicinecard/xml.schema/2013/06/01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<m13:Structures>
<m13:UnitTexts source="Doseringsforslag">
<m12:Singular>pust</m12:Singular>
<m12:Plural>pust</m12:Plural>
</m13:UnitTexts>
<m13:Structure>
<m13:IterationInterval>1</m13:IterationInterval>
<m13:StartDate></m13:StartDate>
<m13:EndDate></m13:EndDate>
<m13:Day>
<m12:Number>1</m12:Number>
<m12:Dose>
<m12:Time>morning</m12:Time>
<m12:Quantity>2</m12:Quantity>
</m12:Dose>
<m12:Dose>
<m12:Time>evening</m12:Time>
<m12:Quantity>2</m12:Quantity>
</m12:Dose>
</m13:Day>
</m13:Structure>
</m13:Structures>
</m13:Dosage>
</Dosage>
<Dosage>
<Version>1.4.4</Version>
<m15:Dosage
xsi:schemaLocation="http://www.dkma.dk/medicinecard/xml.schema/2015/01/01 ../../../2015/01/01/DosageForRequest.xsd"
xmlns:m15="http://www.dkma.dk/medicinecard/xml.schema/2015/01/01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<m15:Structures>
<m15:UnitTexts source="Doseringsforslag">
<m15:Singular>pust</m15:Singular>
<m15:Plural>pust</m15:Plural>
</m15:UnitTexts>
<m15:Structure>
<m15:IterationInterval>1</m15:IterationInterval>
<m15:StartDate>2010-01-01</m15:StartDate>
<m15:EndDate>2110-01-01</m15:EndDate>
<m15:Day>
<m15:Number>1</m15:Number>
<m15:Dose>
<m15:Time>morning</m15:Time>
<m15:Quantity>2</m15:Quantity>
</m15:Dose>
<m15:Dose>
<m15:Time>evening</m15:Time>
<m15:Quantity>2</m15:Quantity>
</m15:Dose>
</m15:Day>
</m15:Structure>
</m15:Structures>
</m15:Dosage>
</Dosage>
<Dosage>
<Version>1.4.6</Version>
<m16:Dosage
xsi:schemaLocation="http://www.dkma.dk/medicinecard/xml.schema/2015/06/01 ../../../2015/06/01/DosageForRequest.xsd"
xmlns:m16="http://www.dkma.dk/medicinecard/xml.schema/2015/06/01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<m16:UnitTexts source="Doseringsforslag">
<m16:Singular>pust</m16:Singular>
<m16:Plural>pust</m16:Plural>
</m16:UnitTexts>
<m16:StructuresFixed>
<m16:Structure>
<m16:IterationInterval>1</m16:IterationInterval>
<m16:StartDate>2010-01-01</m16:StartDate>
<m16:EndDate>2110-01-01</m16:EndDate>
<m16:Day>
<m16:Number>1</m16:Number>
<m16:Dose>
<m16:Time>morning</m16:Time>
<m16:Quantity>2</m16:Quantity>
</m16:Dose>
<m16:Dose>
<m16:Time>evening</m16:Time>
<m16:Quantity>2</m16:Quantity>
</m16:Dose>
</m16:Day>
</m16:Structure>
</m16:StructuresFixed>
</m16:Dosage>
</Dosage>
</DosageProposals>
CREATE TABLE IF NOT EXISTS DosageStructure (
DosageStructurePID BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
releaseNumber BIGINT(15) NOT NULL,
code VARCHAR(11) NOT NULL, -- ID
type cpr CHAR(10) NOT NULL,
given_name VARCHAR(100) NOT NULL,
surname simpleString VARCHAR(100), -- OPTIONAL
supplementaryText VARCHAR(200), -- OPTIONAL
xml VARCHAR(10000) NOT NULL,
shortTranslation VARCHAR(70),
longTranslation VARCHAR(10000),
aut_id CHAR(5) NOT NULL,
edu_id CHAR(4) NOT NULL,
-- OPTIONAL (The specs say it cannot be NULL. See comment in DosageStructure.java)
ModifiedDate DATETIME NOT NULL,
ValidFrom DATETIME NOT NULL,
ValidTo DATETIME NOT NULL,
CreatedDate DATETIME NOT NULL,
INDEX (DosageStructurePID, ModifiedDate),
INDEX (code, ValidTo, ValidFrom)
) ENGINE=InnoDB COLLATE=utf8_bin;
Tabel: version
Tabellen rummer følgende kolonner:
daDate NOT NULL date
lmsDate NOT NULL date
releaseDate NOT NULL (UK) date
releaseNumber NOT NULL bigint(15)
ValidFrom NOT NULL datetime
ValidTo NOT NULL datetime
CREATE TABLE IF NOT EXISTS DosageVersion (
DosageVersionPID BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
daDate DATE NOT NULL, -- @ID // TODO: Should the id not be the releaseNumber? :S
lmsDate DATE NOT NULL,
releaseDate DATE NOT NULL,
releaseNumber BIGINT(15) NOT NULL,
ModifiedDate DATETIME NOT NULL,
ValidFrom DATETIME NOT NULL,
ValidTo DATETIME NOT NULL,
CreatedDate DATETIME NOT NULL,
INDEX (DosageVersionPID, ModifiedDate),
INDEX (releaseDate, ValidTo, ValidFromKEY cpr_aut_id (cpr, aut_id)
) ENGINE=InnoDB DEFAULT CHARSETCOLLATE=utf8_bin;
Tabel:
...
doseringimporterImportStatus
CREATE TABLE IF NOT EXISTS autorisationimporterImportStatus doseringimporterImportStatus (
Id BIGINT(15) AUTO_INCREMENT NOT NULL PRIMARY KEY,
StartTime DATETIME NOT NULL,
EndTime DATETIME,
Outcome VARCHAR(20),
INDEX (StartTime)
) ENGINE=InnoDB COLLATE=utf8_bin;
Fil:
...
Doseringsforslag, doseringsforslag.csv
Styrelsen for patientsikkerhed sender en CSV-fil til den sikrede FTP-server hos Netic.
Bliver sendt som en ZIP fil til Netic, der pakker data ud, og sender dem til stamdata importeren.
Register med forslag til dosering af forskellige lægemidler (størrelse og mængde)
Uploades fra Trifork via FTP til sdm-app01.dodi-prod.netic.dk
Opdatere tabellerne version, dosageunit, dosagedrug, dosagestructurerelation, dosagestructure udfra felterne i filen:
drugid
name
enhed_e
enhed_f
kode
iteration
type
mapning
tekst
version
maalgruppeIndlæses af sdm-app01
Autorisationsimporteren: Autorisation, autreg, autorisationimporterImportStatus (alle i stamdata-databasen)
Teknologibeskrivelse
...







