1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
|
# SQL-Queries für DNPM-Formulare
## Abfrage von weiteren Informationen zu Merkmalskatalogeinträgen (Propcat)
Angenommen eine Abfrage liefert für dk_molekulargenetik.entnahmemethode den Wert B und
die zugehörige Version in dk_molekulargenetik.entnahmemethode_propcat_version ist 1171:
```
SELECT code, shortdesc, description FROM property_catalogue_version_entry
WHERE code = 'B'
AND property_version_id = 1171
```
Diese Abfrage liefert B, Biopsie, Biopsie.
## Stammdaten zum Patienten anhand SAP-ID für den Personenstamm z.B. 4.
```
SELECT * FROM patient
WHERE patient.patienten_id = '?' AND patient.personenstamm = 4;
```
## Diagnosedaten zur Erkrankung
```
SELECT dk_diagnose.* FROM dk_diagnose
JOIN prozedur ON (prozedur.id = dk_diagnose.id)
JOIN erkrankung_prozedur ON (erkrankung_prozedur.prozedur_id = prozedur.id)
JOIN erkrankung ON (erkrankung.id = erkrankung_prozedur.erkrankung_id)
JOIN patient ON (patient.id = prozedur.patient_id)
WHERE patient.patienten_id = '?' AND erkrankung.tumoridentifikator = ?;
```
## Formular DNPM Klinik/Anamnese inkl. Unterformulare
Formular DNPM Klinik/Anamnese anhand Patienten-(SAP)-ID und Onkostar-Tumor-ID:
```
SELECT dk_dnpm_kpa.* FROM dk_dnpm_kpa
JOIN prozedur ON (prozedur.id = dk_dnpm_kpa.id)
JOIN erkrankung_prozedur ON (erkrankung_prozedur.prozedur_id = prozedur.id)
JOIN erkrankung ON (erkrankung.id = erkrankung_prozedur.erkrankung_id)
JOIN patient ON (patient.id = prozedur.patient_id)
WHERE patient.patienten_id = '?' AND erkrankung.tumoridentifikator = ?;
```
## Unterformular Histologie(en)
```
SELECT dk_dnpm_uf_histologie.* FROM dk_dnpm_uf_histologie
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_histologie.id)
WHERE prozedur.hauptprozedur_id = ?;
```
## Unterformular ECOG Performance Status Verlauf
```
SELECT dk_dnpm_uf_tumorausbreitung.* FROM dk_dnpm_uf_tumorausbreitung
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_tumorausbreitung.id)
WHERE prozedur.hauptprozedur_id = ?;
```
## Unterformular Tumorerkrankung bei Verwandten
```
SELECT dk_dnpm_uf_verwandte.* FROM dk_dnpm_uf_verwandte
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_verwandte.id)
WHERE prozedur.hauptprozedur_id = ?;
```
## Unterformular Molekularpathologische Vorbefunde
```
SELECT dk_dnpm_vorbefunde.* FROM dk_dnpm_vorbefunde
JOIN prozedur ON (prozedur.id = dk_dnpm_vorbefunde.id)
WHERE prozedur.hauptprozedur_id = ?;
```
## Unterformular Therapielinien
Achtung: Hier enthält der Tabellenname nicht den Bestandteil 'uf' für Unterformular.
```
SELECT dk_dnpm_therapielinie.* FROM dk_dnpm_therapielinie
JOIN prozedur ON (prozedur.id = dk_dnpm_therapielinie.id)
WHERE prozedur.hauptprozedur_id = ?;
```
Im Feld wirkstoffcodes sind die Wirkstoffe als JSON-Array in folgender Form gespeichert, da
Onkostar keine Liste in Unterformularen verarbeiten kann:
| Name | Bedeutung |
|-----------|-----------------------------------------|
| system | Das verwendete System. ATC oder "other" |
| code | Der verwendete Wirkstoffcode |
| substance | Der Name des Wirkstoffs |
Beispiel:
```
[
{"system":"other","code":"Gemcitabin","substance":"Gemcitabin (dFdC)"},
{"system":"other","code":"Cisplatin ","substance":"Cisplatin (CDDP)"}
]
```
## Formular DNPM Therapieplan inkl. Unterformulare
Formular DNPM Klinik/Anamnese anhand Patienten-(SAP)-ID und Onkostar-Tumor-ID:
```
SELECT dk_dnpm_therapieplan.* FROM dk_dnpm_therapieplan
JOIN prozedur ON (prozedur.id = dk_dnpm_therapieplan.id)
JOIN erkrankung_prozedur ON (erkrankung_prozedur.prozedur_id = prozedur.id)
JOIN erkrankung ON (erkrankung.id = erkrankung_prozedur.erkrankung_id)
JOIN patient ON (patient.id = prozedur.patient_id)
WHERE patient.patienten_id = '?' AND erkrankung.tumoridentifikator = ?;
```
Alternativ mit Verweis auf DNPM Klinik/Anamnese
```
...
WHERE dk_dnpm_therapieplan.ref_dnpm_klinikanamnese = ?;
```
### Unterformular Reevaluation
```
SELECT dk_dnpm_uf_reevaluation .* FROM dk_dnpm_uf_reevaluation
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_reevaluation .id)
WHERE prozedur.hauptprozedur_id = ?;
```
Achtung! Gegebenenfalls ist vor dem erneuten Bearbeiten des Formulars der Inhalt eines
einzelnen Reevaluationsauftrags direkt im Hauptformular gespeichert. In dem Fall sind keine
Unterformulare zur Reevaluation gespeichert.
### Unterformular Rebiopsie
```
SELECT dk_dnpm_uf_rebiopsie.* FROM dk_dnpm_uf_rebiopsie
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_rebiopsie.id)
WHERE prozedur.hauptprozedur_id = ?;
```
### Unterformular Einzelempfehlung
```
SELECT dk_dnpm_uf_einzelempfehlung.* FROM dk_dnpm_uf_einzelempfehlung
JOIN prozedur ON (prozedur.id = dk_dnpm_uf_einzelempfehlung.id)
WHERE prozedur.hauptprozedur_id = ?;
```
#### Wirkstoffe
Im Feld wirkstoffe_json sind die Wirkstoffe als JSON-Array in folgender Form gespeichert, da
Onkostar keine Liste in Unterformularen verarbeiten kann:
| Name | Bedeutung |
|--------|--------------------------------------------------|
| system | Das verwendete System. "ATC" oder "UNREGISTERED" |
| code | Der verwendete Wirkstoffcode |
| name | Der Name des Wirkstoffs |
Beispiel:
```
[
{"code":"","name":"PARP-Inhibierung","system":"UNREGISTERED"}
]
```
#### Studien
Im Feld studien_alle_json sind die Wirkstoffe als JSON-Array in folgender Form gespeichert,
da Onkostar keine Liste in Unterformularen verarbeiten kann:
| Name | Bedeutung |
|-------------------------|-----------------------------|
| studie | Name der Studie |
| system | System der Studie(n-ID) |
| id (und alt auch "nct") | Die Studien-ID |
| ort | Ort der Studiendurchführung |
| internextern | intern (i) oder extern (e) |
Beispiel:
```
[
{"studie":"TestInhibitor","system":"NCT","id":"NCT12345678","nct":"NCT12345678","ort":"Teststadt","internextern":"e"}
]
```
|