DRGA-userBeschreibung des DRG Assistenten (DRGA)PrüfvorschriftenSyntax der Prüfvorschriften
Syntax der Prüfvorschriften
Es werden verschiedene Gruppen von Variablen benutzt. Die Operatoren, Funktionen und Platzhaltern.
 
Operatoren
Erläuterungen
1
+
Mehrere Prüfbereiche lassen sich mit diesem Operator verknüpfen
2
&&
Stellt die „UND-Verknüpfung“ dar.
Die „UND-Verknüpfung“ gilt immer vor der „ODER-Verknüpfung“
3
||
Stellt die „ODER-Verknüpfung“ dar
4
<
Kleiner
5
<=
Kleiner gleich
6
>
Größer
7
>=
Größer gleich
8
!
Nicht (Negierung)
9
==
Gleich
 
 
Unäre Funktionen
Erläuterungen
10
AnzOPS
Prüft nach Anzahl von Prozeduren (OPS)
11
DoublePr
Prüft nach doppelt erfassten Prozeduren
12
FehltSternDiagnose
Prüft nach der fehlende Sterndiagnose bei Angabe eines entsprechenden Kreuzkodes
13
PrAufnTag
Prüft ob eine bestimmte Prozedur am Aufnahmetag stattgefunden hat.
14
PrEntlTag
Prüft ob eine bestimmte Prozedur am Entlasstag stattgefunden hat.
15
MultDx
Die Funktion erkennt mehrere Diagnosen aus einer gemeinsamen Kodemenge
16
MultPr
Die Funktion erkennt mehrere Prozeduren aus einer gemeinsamen Kodemenge
17
OrphaCodesZuDiagnose
Die Funktion erkennt, ob zu einer Diagnose eine Orpha Kennnummer vorliegt.
18
AlphaIDsZuDiagnose
Die Funktion erkennt, ob zu einer Diagnose eine Alph ID vorliegt
 
 
Binäre Funktionen
Erläuterungen
19
AnzahlDiagnosenInBereich
Die Funktion prüft die Anzahl der Diagnosen aus einem definierten (zusammenhängenden) Bereich
20
AnzahlProzedurenInBereich
Die Funktion prüft die Anzahl der Prozeduren aus einem definierten (zusammenhängenden) Bereich.
 
Diese Abfragefunktion bezieht sich auf alle OPS
im DRG Workplace (DRGW)
21
AnzOpsInBereich
Die Funktion prüft die Anzahl der Prozeduren aus einem definierten (zusammenhängenden) Bereich.
 
Diese Abfragefunktion bezieht sich auf alle grouperrelevanten OPS im DRG Workplace (DRGW)
22
InList
Mittels der Funktion inlist können die vordefinierten Stringkonstanten
23
InTab
Mittels der Funktion InTab können die Abfragen auf vordefinierte Tabellen zugreifen
24
Like
Überprüft eine Variable vom Typ String, ob ein Prüfausdruck enthalten ist
25
ISTORPHACODEERFASST
Diese Funktion ermöglicht eine direkte Überprüfung, ob ein bestimmtes ORPHA Kennzeichen für eine bestimmte Diagnose erfasst wurde.
Beispiel if (!ISTORPHACODEERFASST("A00.0", "173")) FEHLER
26
ISTALPHAIDERFASST
Diese Funktion ermöglicht eine direkte Überprüfung, ob eine bestimmte Alpha ID für eine bestimmte Diagnose erfasst wurde.
Beispiel if (! ISTALPHAIDERFASST ("A00.0", "I90016")) FEHLER
 
 
String-Variablen
Erläuterungen
27
Diagnose
Prüft nach einer, in der Abfrage, definierten Diagnose
28
HauptDiagnose
Prüft nach einer, in der Abfrage, definierten Hauptdiagnose
29
NebenDiagnose
Prüft nach einer, in der Abfrage, definierten Nebendiagnose
30
DRG
Prüft nach einer, in der Abfrage, definierten DRG
31
Ops
Prüft nach einer, in der Abfrage, definierten OPS
32
FachabtKennz
Prüft nach einer, in der Abfrage, definierten
Fachabteilungskennzeichen
33
Aufnahmeanlass
Prüft nach einer, in der Abfrage, definierten
Aufnahmeanlass
34
AufnahmeGrund
Prüft nach einer, in der Abfrage, definierten
Aufnahmegrund
35
BelegTyp
Prüft nach einer, in der Abfrage, definierten
Belegtyp
36
BEREICH
Prüft nach dem Abrechnungsbereich DRG / PEPP
37
EINRICHTUNG
SchrenktPrüft auf den hinterlegten Einrichtungen.
like("Einrichtungsname", EINRICHTUNG) 
38
Fachabt301
Prüft nach einer, in der Abfrage, definierten Fachabteilungskennzeichnung (nach §301)
 
 
Ganzzahl-Variablen
Erläuterungen
39
AgeDy
Prüft nach einer, in der Abfrage, definierten Alter in Tagen
40
AgeYr
Prüft nach einer, in der Abfrage, definierten Alter in Jahren
41
Geschlecht
Prüft nach einer, in der Abfrage, definierten Geschlecht
42
AdmWt
Prüft nach einer, in der Abfrage, definierten Aufnahmegewicht
43
VWD
Prüft nach einer, in der Abfrage, definierten Verweildauer in Tagen
44
Beatmung
Prüft nach einer, in der Abfrage, definierten Beatmungszeit in Stunden
45
IntensivTage
Prüft nach einer, in der Abfrage, definierten Intensivtage.
Die Prüfvorschrift prüft auf das Kennzeichen
„Intensiv-Bereich“, welches im Globales Basisdatenmanagement (GBDM) oder ADM Global vergeben wird.
46
TagesFall
Prüft nach dem Status Tagesfall
47
Entlassart
Prüft nach einer, in der Abfrage, definierten Entlassart in Tagen
48
PCCL
Prüft nach dem PCCL Wert
49
Gewicht
Prüft nach, in der Abfrage, dem aktuellen Patientengewicht
50
Bereich
Prüft den Abrechnungsbereich (DRG oder PEPP).
51
Intensivstunden
Prüft nach, in der Abfrage, definierten Intensivstunden. Die Prüfvorschrift prüft auf das Kennzeichen „Intensiv-Bereich“, welches im Globalen Basisdatenmanagement (GBDM) oder ADM Global vergeben wird.
52
AktStatNr
Prüft nach, in der Abfrage, dem Fallstatus. Mögliche Werte sind: 1 für Ambulant, 10 für Vorstationär, 11 für Stationär, 12 für Nachstationär, 13 für Teilstationär, 20 für Verlegt, 30 für Stationäre Rehabilitation, 40 für stationäre Anschlussheilbehandlung, 50 für beurlaubt.
53
VWDh
Prüft nach einer, in der Abfrage, definierten Verweildauer in Stunden
 
 
Platzhalter
Erläuterungen
54
%
Platzhalte für beliebig viele Zeichen aus einem definierten Bereich (bspw. Diagnosen oder Prozeduren
55
?
Platzhalte ein Zeichen aus einem definierten Bereich (bspw. Diagnosen oder Prozeduren
 
Beispiele
Analog der im Kapitel „Syntax der Prüfvorschriften“ verwendeten Nummerierung werden hierzu Beispiele in diesem Kapitel aufgeführt
 
Operatoren
Beispieleprüfvorschriften
1
+
if (like ("%O80%", DIAGNOSE) && (ANZAHLDIAGNOSENINBEREICH("O00","O075") + ANZAHLDIAGNOSENINBEREICH("O81","O99") >=1 )) {FEHLER}
2
&&
if ( like ("%5-995%",OPS) && ANZOPSINBEREICH("5-010.00","5-929.y") <1) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
3
||
if (like ("%Z52.1%",DIAGNOSE) && ! (like ("%5- 901%",OPS) || like ("%5-904%",OPS) || like ("%5- 924%",OPS))) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
4
<
if ( like ("%5-995%",OPS) && ANZOPSINBEREICH("5-010.00","5-929.y") <1) {FEHLER}
5
<=
if ((like ("%1-904%",OPS) || like ("%9- 6[78]%",OPS)) && AGEYR <= 20)
6
>
if (like ("%8-903%",OPS) && AGEYR>17) {FEHLER}
7
>=
if (like ("%6-002.f[01]%",OPS) && AGEYR >= 15) {FEHLER}
8
!
if (like ("%G06%",DIAGNOSE) && ! like ("%B9[5678]%",DIAGNOSE)) {FEHLER}
9
==
If (inlist(DIAGNOSE,"%I46.1%,%R9[56789]%,%S18%") && (ENTLASSART == 1)) {FEHLER}
 
 
Unäre Funktionen
 
10
AnzOPS
if ( like ("%5-995%",OPS) &&
 
 
ANZOPSINBEREICH("5-010.00","5-929.y") <1) {FEHLER}
11
DoublePr
if (DOUBLEPR("%5-063%") {FEHLER}
12
FehltSternDiagnose
if (FEHLTSTERNDIAGNOSE ("%A85.1%")) {FEHLER}
13
PrAufnTag
if (PrAufnTag ("%O80%")) {FEHLER}
14
PREntlTag
if (PREntlTag ("%D50.0%")) {FEHLER}
15
MultDx
if (MULTDX("%I05%") {FEHLER}
16
MultPr
if (MULTPR("%5-47[01]%,%5-479.[1xy]%") {FEHLER}
 
 
Binäre Funktionen
 
17
AnzahlDiagnosenInBereich
If (ANZAHLDIAGNOSENINBEREICH("I21.0","I21.9") >1) {FEHLER}
18
AnzahlProzedurenInBereich
if ( like ("%5-995%",OPS) && ANZAHLPROZEDURENINBEREICH("5-010.00","5- 929.y") <1) {FEHLER}
19
AnzOpsInBereich
if ( like ("%5-995%",OPS) && ANZOPSINBEREICH("5-010.00","5-929.y") <1) {FEHLER}
20
InList
(inlist(OPS,"%5-782.0j%,%5-782.1j%,%5- 782.2j%,%5-782.3j%“)) {FEHLER}
21
InTab
if (intab(DIAGNOSE, TAB1)) {FEHLER}
 
Für diese Abfrage muss eine Tabelle „TAB1“ erstellt werden. Siehe auch Kapitel „Ergänzende Hinweise“
22
Like
if (like ("%G06%",DIAGNOSE) && ! like ("%B9[5678]%",DIAGNOSE)) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
 
 
String-Variablen
 
23
Diagnose
if (like ("%G06%",DIAGNOSE) && ! like ("%B9[5678]%",DIAGNOSE)) {FEHLER}
24
HauptDiagnose
if ((like ("%A0%",DIAGNOSE) || like ("%K52%",HAUPTDIAGNOSE)) && ! like ("%E86%",DIAGNOSE) && AGEDY>28) {FEHLER}
25
NebenDiagnose
if (like ("%5-394.6%",OPS) && like ("%Z48.8%",NEBENDIAGNOSE)) {FEHLER}
26
DRG
if (like ("%901%",DRG)) {FEHLER}
27
Ops
if ( like ("%5-995%",OPS) && ANZOPSINBEREICH("5-010.00","5-929.y") <1) {FEHLER}
 
 
Ganzzahl-Variablen
 
28
AgeDy
if (BEATMUNG >= 1 && AGEDY > 365 && ! (like ("%8-70[123456]%",OPS) || like ("%5-31[12]%",OPS) || like ("%Z[49]3.0%",DIAGNOSE) || like ("%Z99.1%",DIAGNOSE))) {FEHLER}
29
AgeYr
if (like ("%6-003.m[01]%",OPS) && AGEYR >= 15) {FEHLER}
30
Geschlecht
if (GESCHLECHT == 2) { FEHLER }
31
AdmWt
if ((AGEDY >= 1 && AGEDY <= 364) && (ADMWT == 0)) {FEHLER}
32
VWD
if (like ("%8-857.21%",OPS) && VWD < 1) {FEHLER}
33
Beatmung
if (BEATMUNG > 0 && AGEDY<366 && ! like ("%8- 711%",OPS)) {FEHLER}
34
IntensivTage
if (like ("%8-97b.1%",OPS) && INTENSIVTAGE < 7) {FEHLER}
35
TagesFall
if ((TAGESFALL ==1) && like („%8-85[3457]%“, OPS) && ! like (“%Z49.1%”, HAUPTDIAGNOSE)) { FEHLER }
36
Entlassart
if (inlist(DIAGNOSE,"%I46.1%,%R9[56789]%,%S18%") && (ENTLASSART == 1)) {FEHLER}
37
PCCL
if ((like ("%I6[01234]%",HAUPTDIAGNOSE) && (INTENSIVTAGE>0) && ( PCCL==0)) { FEHLER }
38
FachabtKennz
if (like ("%Z48.8%",HAUPTDIAGNOSE) && like ("1800",FACHABTKENNZ) && ! (like ("%5- 394.6%",OPS) || like ("%Z53%",DIAGNOSE))) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
39
Aufnahmeanlass
if (like("[K]",AUFNAHMEANLASS)) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
40
AufnahmeGrund
if ((like("P60C",DRG) && TAGESFALL == 1 && like("06",AUFNAHMEGRUND))) {FEHLER}
Siehe auch Kapitel „Ergänzende Hinweise“
41
BelegTyp
if (BELEGTYP == “6“) && ! like („%9-26[01]%“, OPS)) { FEHLER }
Siehe auch Kapitel „Ergänzende Hinweise“
42
Aufnahmedatum
if (( AUFNAHMEDATUM >=begin2006) && (INTENSIVTAGE >0) && ! like ("%8-980%",OPS)) { FEHLER }
 
 
Platzhalter
 
43
%
if (like ("%G06%",DIAGNOSE) && ! like
("%B9[5678]%",DIAGNOSE)) {FEHLER}
44
?
if (like („%A?.9%”, DIAGNOSE)) {FEHLER}