Sonderfelder2020-11-17T09:32:54+01:00

Sonderfelder allgemein

Case When

Abreise in Auswertungszeitraum

Case When ABRDATUME Between $VONDATUMISO$ And $BISDATUMISO$ then ABRDATUME end

Abreisezeit wenn Abreise in Zeitraum

Case When ABRDATUME Between $VONDATUMISO$ And $BISDATUMISO$ then ABRZT end

Anreise

Case When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ Then ‘An- reise’ End

Anreise Wenn/Dann

Case When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ then ANRDATUM end

Anreise oder Abreise im Auswertungszeitraum

case When ABRDATUME between $VONDATUMISO$ And $BISDATUMISO$ then ABRDATUME When ANRDATUM between $VONDATUMISO$ And $BISDATUMISO$ then ANRDATUM end

Anreisedatum

Case When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ Then $ANRDATUM$ End

Anreisezeit wenn Areise in Zeitraum

Case When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ then ANRZT end

Endreinigung

Case When ABRDATUME Between $VONDATUMISO$ And $BISDATUMISO$ Then ‘Endreinigung’ End

Reinigung

Case When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ and ABRDATUME Between $VONDATUMISO$ And $BISDATUMISO$ Then ‘Anreise/Endreinigung’ When ANRDATUM Between $VONDATUMISO$ And $BISDATUMISO$ Then ‘Anreise’ When ABRDATUME Between $VONDATUMISO$ And $BISDATUMISO$ Then ‘Endreinigung’ End

Gruppe von Datum

Case When ABRDATUME = $VONDATUMISO$ or ANRDATUM = $VONDATUMISO$ then $VONDATUMISO$ End

Letzte Abreise

(Select Coalesce(Char(Min(BDVONDAT), EUR), ‘keine Folgebelegung’) From T#DSPBET As X

Where X.BDSTAT = ZNSTAT And X.BDZINR = ZNZINR And X.BDVONDAT > $VONDATUMISO$)

Nächste Anreise

(case When ABRDATUME between $VONDATUMISO$ And $BISDATUMISO$ then(Select Coalesce(Char(Min(BDVONDAT), EUR), ‘keine Folgebelegung’) From T#DSPBET As X

Where X.BDSTAT = ZNSTAT And X.BDZINR = ZNZINR And X.BDVONDAT >= ABRDATUME)end)

Zimmerkriterium = ‘1K’

Case When T_DSPZNR.ZNKRIT01 = ‘1K’  then 1 Else 0 End

Left Outer Join, Basis ist vorl. BD:

FAMSTM00 On FAMPAT = AUFNR

Left Outer Join T_ZIMRSV On ZRTYP = ‘FAM’ And ZRKEY = FAMNR

Left Outer Join T_DSPZNR On ZNSTAT = ZRSTAT And ZNZINR = ZRZINR || ‘1’

Anzahl Vorsorgekinder/unter 3.J

PKZ1 = ‘E’ and (

(Select Count(*) From FAMSTM00 As F3 Where F3.FAMNR = (Select F1.FAMNR From FAMSTM00 As F1 Where F1.FAMPAT = AUFNR) And F3.FAMLFD In (Select F2.FAMLFD From KPSTM00 As K1, FAMSTM00 As F2

Where K1.AUFNR = F2.FAMPAT And F2.FAMNR = F3.FAMNR

And K1.PKZ2 = ‘V’ And F3.FAMLFD > 1)) > 0

Or

(Select Count(*) From FAMSTM00 As F3 Where F3.FAMNR = (Select F1.FAMNR From FAMSTM00 As F1 Where F1.FAMPAT = AUFNR) And F3.FAMLFD In (Select F2.FAMLFD From KPSTM00 As K1, FAMSTM00 As F2

Where K1.AUFNR = F2.FAMPAT And F2.FAMNR = F3.FAMNR

And K1.ANRDATUM >= ‘1980-01-01’

And ALTERJJ(ANRDATUM, ABRDATUME, GEBDATUM, ‘ANREISE’) < 3 And F3.FAMLFD > 0)) > 0)

Dazugehöriges Sonderfeld:

(Select Count(*) From FAMSTM00 As F3 Where F3.FAMNR =

(Select F1.FAMNR From FAMSTM00 As F1 Where F1.FAMPAT = AUFNR)

And F3.FAMLFD In (Select F2.FAMLFD From KPSTM00 As K1, FAMSTM00 As F2

Where K1.AUFNR = F2.FAMPAT And F2.FAMNR = F3.FAMNR

And K1.PKZ2 = ‘V’ And F3.FAMLFD > 1))

Taschengeld

kstr4N > 0 And TRSA = ‘W1’

Dazugehöriges Sonderfeld:

(Select Sum(TRBUBT) from KPTRPD00 where TRPANR = AUFNR and TRKANR = ‘D’ and TRSA = ‘W1’)

Anzeige: der beim Zuweiser/4. Kostenträgers hinterlegte Betrag für das Taschengeld. Auswahl 1. – 5. Kostenträger: TRKANR = ‘x’ (1=A, 2=B usw.)

Aufnahme-/Zuweisungs-Diagnosen

(Select Trim(Trailing ‘; ‘ From AUFDIAG01T || ‘; ‘ || AUFDIAG02T || ‘; ‘ || AUFDIAG03T || ‘; ‘ || AUFDIAG04T || ‘; ‘ || AUFDIAG05T || ‘; ‘ || AUFDIAG06T || ‘; ‘ || AUFDIAG07T || ‘; ‘ || AUFDIAG08T || ‘; ‘ || AUFDIAG09T || ‘; ‘ || AUFDIAG10T) From V_DIAG_AUF Where DGAUFNR = AUFNR)

Alle Zuweisungs-Diagnosen als Fließtext

(Select Trim(Trailing ‘; ‘ From ZUWDIAG01T || ‘; ‘ || ZUWDIAG02T || ‘; ‘ || ZUWDIAG03T || ‘; ‘ || ZUWDIAG04T || ‘; ‘ || ZUWDIAG05T || ‘; ‘ || ZUWDIAG06T || ‘; ‘ || ZUWDIAG07T || ‘; ‘ || ZUWDIAG08T || ‘; ‘ || ZUWDIAG09T || ‘; ‘ || ZUWDIAG10T) From V_DIAG_ZUW Where DGAUFNR = AUFNR)

Station/Zimmer-Nr. ohne Trennzeichen als fortlaufende Nr.

PSTAT || PZINR1

Anzahl Patientenkinder

(Select Count(*) From FAMSTM00 As F3 Where F3.FAMNR =

(Select F1.FAMNR From FAMSTM00 As F1 Where F1.FAMPAT = AUFNR)

And F3.FAMLFD In (Select F2.FAMLFD From KPSTM00 As K1, FAMSTM00 As F2

Where K1.AUFNR = F2.FAMPAT And F2.FAMNR = F3.FAMNR

And ALTERJJ(ANRDDH, PGEBDH) < 18 And F3.FAMLFD > 0 and PKZ2 = ‘ ‘))

Sonderfeld, um auf Tischkarten zusätzlich zum Namen der Mutter noch die Vornamen der Kinder zu drucken

Formel:

‘mit ‘ || (Select Trim(PNAMEV) From KPSTM00 Where AUFNR = FAM01.FAMPAT) || Case When FAM02.FAMLFD Is Null Then ” Else ‘, ‘ || (Select Trim(PNAMEV) From KPSTM00 Where AUFNR = FAM02.FAMPAT) End ||
Case When FAM03.FAMLFD Is Null Then ” Else ‘, ‘ || (Select Trim(PNAMEV) From KPSTM00 Where AUFNR = FAM03.FAMPAT) End ||
Case When FAM04.FAMLFD Is Null Then ” Else ‘, ‘ || (Select Trim(PNAMEV) From KPSTM00 Where AUFNR = FAM04.FAMPAT) End ||
Case When FAM05.FAMLFD Is Null Then ” Else ‘, ‘ || (Select Trim(PNAMEV) From KPSTM00 Where AUFNR = FAM04.FAMPAT) End

Left Outer Join:

FAMSTM00 As FAM00 On KPSTM00.AUFNR = FAM00.FAMPAT
Left Outer Join FAMSTM00 As FAM01 On FAM01.FAMNR = FAM00.FAMNR And FAM01.FAMLFD = 2
Left Outer Join FAMSTM00 As FAM02 On FAM02.FAMNR = FAM00.FAMNR And FAM02.FAMLFD = 3
Left Outer Join FAMSTM00 As FAM03 On FAM03.FAMNR = FAM00.FAMNR And FAM03.FAMLFD = 4
Left Outer Join FAMSTM00 As FAM04 On FAM04.FAMNR = FAM00.FAMNR And FAM04.FAMLFD = 5
Left Outer Join FAMSTM00 As FAM05 On FAM05.FAMNR = FAM00.FAMNR And FAM05.FAMLFD = 6

Vor- und Nachnamen getrennt durch ein Leerzeichen ausgeben

Trim(PNAMEV) || ‘ ‘ || Trim(PNAMEN)

Anzahl der Krankenhaustage im Zeitraum

Formel:

(Select Count(*) From T_ABRFKT Where AFPATNR = AUFNR And AFKST = 1 And AFTYP = ‘E’ And AFDATUM Between ANRDATUM And ABRDATUME And AFSTATUS = ‘K’)

Abfrage-Bedingung-SQL:

(Select Count(*) From T_ABRFKT Where AFPATNR = AUFNR And AFKST = 1 And AFTYP = ‘E’ And AFDATUM Between ANRDATUM And ABRDATUME And AFSTATUS = ‘K’)> 0

Leerzeile unter Bedingung ausgeben in Kombi mit mehrzeiligen Reporten

Case When PKZ1 = ‘E’ And PKZ2 = ‘V’ Then Trim(PNAME) || Chr(10) Else PNAME End

Und dann ganz normal in Zeile 2 weitermachen.

Gruppen-Überschrift im Reporter, Datum und Uhrzeit formatieren:

new SimpleDateFormat(“EEEE, dd.MM.yyyy”).format($F{LTDATUMVON}.getTime())
new SimpleDateFormat(“HH:mm”).format($F{LTZEITVON}.getTime())

Sonderfelder – nur für Linux

Listenausgabe des Alters der Kinder für eine Zeile in der Art “Frau Muster mit ihren Kindern im Alter von xx, yy und zz Jahren”

Sonderfeld-Definition (nur für PostgreSQL, nicht mit System i möglich):

‘von ‘ || Coalesce((Select String_Agg(ALTERJJ(KIND.ANRDATUM, KIND.ABRDATUME, KIND.GEBDATUM, ‘ANREISE’)::Text, ‘, ‘ Order By K.FAMLFD Desc)
From FAMSTM00 As F1 Join FAMSTM00 As K On K.FAMNR = F1.FAMNR And K.FAMLFD > 2 Join KPSTM00 As KIND On KIND.AUFNR = K.FAMPAT Where F1.FAMPAT = KPSTM00.AUFNR), ”) ||
Case When (Select Max(K.FAMLFD) From FAMSTM00 As F1 Join FAMSTM00 As K On F1.FAMNR = K.FAMNR Where F1.FAMPAT = AUFNR) = 2 Then ” Else ‘ und ‘ End ||
(Select ALTERJJ(KIND.ANRDATUM, KIND.ABRDATUME, KIND.GEBDATUM, ‘ANREISE’)::Text || ‘ Jahren’
From FAMSTM00 As F1 Join FAMSTM00 As K On K.FAMNR = F1.FAMNR And K.FAMLFD = 2 Join KPSTM00 As KIND On KIND.AUFNR = K.FAMPAT Where F1.FAMPAT = KPSTM00.AUFNR

Nachnamen der Kinder, wenn anders als Mutter:

(Select String_Agg(Distinct(PNAMEN), ‘, ‘) From FAMSTM00 As F Join KPSTM00 As K On K.AUFNR = F.FAMPAT Where F.FAMNR = FAMSTM00.FAMNR And F.FAMLFD > 1 And K.PNAMEN <> KPSTM00.PNAMEN And K.PKZ1 = ‘K’)

Gäste innerhalb der Familie (PKZ1 = ‘E’ und PKZ2 = ‘B’:

(Select String_Agg(PNAME, ‘, ‘) From FAMSTM00 As F Join KPSTM00 As K On K.AUFNR = F.FAMPAT Where F.FAMNR = FAMSTM00.FAMNR And K.PKZ1 = ‘E’ And K.PKZ2 = ‘B’)

Unterschiedliche Zimmer der Familie (endg. BD):

(Select String_Agg(Distinct(Trim(PSTAT) || ‘/’ || PZINR1::Text), ‘, ‘) From FAMSTM00 As F Join KPSTM00 As K On K.AUFNR = F.FAMPAT Where F.FAMNR = FAMSTM00.FAMNR)

Alle Positionen einer Dokumentation einfügen (Textbausteine)

(With X As (Select LDDATUM, LDZEIT, LDDATEN From T_LABDTA Where LDAUFN = AUFNR And LDFELDID = ‘167ca4a683094e4390e245ac850ded04’ Order By LDDATUM Desc, LDZEIT Desc)
Select String_Agg(To_Char(To_Timestamp(LDDATUM, LDZEIT), ‘DD.MM.YYYY HH24:MI’) || ‘ ‘ || LDDATEN, E’\u000A’ || ‘
‘) From X)

Ersten oder letzen Eintrag einer Dokumentation einfügen (Textbausteine)

case when LAB_DATEN(AUFNR, ‘a9ca9a98d92140778c05febc9742624e’, ‘ERSTER’) > ‘ ‘ then LAB_DATEN(AUFNR, ‘a9ca9a98d92140778c05febc9742624e’, ‘ERSTER’) else ‘ ‘ End

Patientenkennzeichen2020-06-19T08:36:31+02:00

Mit diesen Abfragen werden PKZ selektiert

Select * From

Übersicht Patienten mit gewünschten PKZ

PKZ1 = ‘K’

PKZ2 = ‘V’ or PKZ2 = ‘R’

PKZ1 = ‘K’ and PKZ2 = ‘V’

Übersicht der Patienten in einer Gruppe (hier: Kind + Gruppe)

Platzhalter xx gegen das entsprechende Gruppenkürzel austauschen

Auswahl eine Gruppe

PKZ1 = ‘K’ and FREI21 =’xx’

Auswahl zwei Gruppen

PKZ1 = ‘K’ and FREI21 In (‘xx’, ‘xx’)

Beispiele2020-06-19T08:31:42+02:00

Anreisezeit nach 13:30 Uhr

ANRZT>’13:30′

PKZ1 = K und die Leistungsnummer = 5600 oder 5601

LTLSTNR = 5600 or LTLSTNR = 5601 and KPSTM00.PKZ1 = ‘K’
Alternativ: LTLSTNR In (5600, 5601) and KPSTM00.PKZ1 = ‘K’

Auswertung aller Pat., das Geburtsjahr des jüngsten Kindes muss aber >2005 sein

(Select Count(*) From FAMSTM00 As F Join KPSTM00 As K On K.AUFNR = F.FAMPAT And Year(GEBDATUM) >= 2005 Where F.FAMNR = FAMSTM00.FAMNR And F.FAMLFD > 0) > 0

Die Familien-Nr. (oder ggf. Familien-Name) muss in der Report-/Statistik-Vorlage vorhanden sein.
Es wird die gesamte Familie ausgegeben, wenn mindestens ein Kind 2005 oder später geboren wurde.

Kurabbruch (Vergleich der bewilligten mit den tatsächlichen Pflegetagen)

KL048HZPTN(KPSTM00.AUFNR) < BEWTAG

Leistungsdisposition2020-06-19T08:27:26+02:00

Reporte Leistungs-Disposition

Leistungen im Report ausschließen

Um bestimmte Leistungen auszuschließen, verwenden Sie bitte folgende SQL-Abfrage. Ersetzen Sie die Platzhalter xxxxx bitte durch die entsprechende Leistungs-Nr.

LTLSTNR not in (xxxxx, xxxxx, xxxxx)

Nur bestimmte Leistungen im Report anzeigen:

Ersetzen Sie die Platzhalter xxxxx bitte durch die entsprechende Leistungs-Nr.

Eine Leistung:
LTLSTNR = xxxxx

Mehrere Leistungen:
LTLSTNR in (xxxxx, xxxxx, xxxxx)

Gebuchte, nicht stornierte Leistungen zählen

Was man zählen könnte, wären die gebuchten Leistungen, die nicht storniert wurden. Die kann über ein Sonderfeld abgerufen werden:

(Select Sum(LTMENGE) From V#LSTTRM03 where LTPATNR = AUFNR)

Gesamtsumme der Verordnungen eines Patienten

hier die Sonderfeld-Formel für die Gesamtsumme der Verordnungsmengen eines Patienten:

(Select Sum(DKMENG + DKAENMENG) From T#LSTVER Where DKPANR = AUFNR)

Die Soll- und Ist-Mengen der gebuchten Leistungen entsprechend der Anzeige in der EPA können Sie mit folgenden Sonderfeld-Formeln ermitteln.

Soll
(Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Where LTPATNR = AUFNR And LTSTODATUM Is Null) + (Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Left Outer Join “P.KDTXT” On TXTSL = ‘F25STO’ || LTSTOGRUND Where LTPATNR = AUFNR And LTSTODATUM Is Not Null And (Substr(TTXT2, 2, 3) = ‘   ‘ Or Cast(Substr(TTXT2, 2, 3) As Numeric(3)) > 0))

Ist
(Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Where LTPATNR = AUFNR And LTSTODATUM Is Null)

Prozent
Round((Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Where LTPATNR = AUFNR And LTSTODATUM Is Null) * 100.0 / ((Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Where LTPATNR = AUFNR And LTSTODATUM Is Null) +
(Select Coalesce(Sum(LTMENGE), 0) From T#LSTTRM Left Outer Join “P.KDTXT” On TXTSL = ‘F25STO’ || LTSTOGRUND Where LTPATNR = AUFNR And LTSTODATUM Is Not Null And (Substr(TTXT2, 2, 3) = ‘   ‘ Or Cast(Substr(TTXT2, 2, 3) As Numeric(3)) > 0))), 0)

Dokumentation / Messwerte2020-06-19T08:36:10+02:00

Beispielreport: Anzeige Verlauf allgemein für einen Patienten komplett

SQL-Abfrage:

T#LABDTA.LDFELDID = ‘xxx‘ and LDSTUSER is null

Platzhalter xxx durch Feld-ID ersetzen

Anzeige Verlaufstext

Anzeige Verlaufstext

Die Feld-ID muss individuell hinterlegt werden.

LDFELDID = ‘xxx

Platzhalter xxx durch Feld-ID ersetzen

Anzeige Verlaufstext, wenn Combobox = Ja

LDMENUEID = ‘yyy‘ And LAB_DATEN(AUFNR, ‘xxx‘, To_Char(T_LABDTA.LDDATUM, ‘YYYY-MM-DD’) || ‘_’ || To_Char(T_LABDTA.LDZEIT, ‘HH24:MI:SS’)) = ‘Ja’ and LDFELDID <> ‘xxx

Platzhalter xxx durch Feld-ID, yyy durch Menü-ID ersetzen

Nur Workflows anzeigen, die noch nicht erledigt sind

LDFELDID = ‘xxx’ And (Select Count(*) From T#WFCASSTS Where WSTYPE = ‘PAT’ And WSVALUE = Trim(Char(LDAUFN)) And WSSTATUS Not In (‘complete’, ‘xcancel’) And WSPARAMS Like ‘LDAUFN=’ || Trim(Char(LDAUFN)) || ‘,LDDATUM=’ || Char(LDDATUM, ISO) || ‘,LDZEIT=’ || Trim(Leading ‘0’ From Replace(Char(LDZEIT), ‘:’, ”)) || ‘%’) > 0

Platzhalter xxx durch Feld-ID ersetzen

Inhalte mehrerer LABDTA-Felder zusammenfassen, falls nicht leer:

Trim(case when LAB_DATEN(AUFNR, ‘178fb95661ec40338e30cdc6c327ac55’, ‘LETZTER’) > ‘ ‘ then  ‘1) ‘ || LAB_DATEN(AUFNR, ‘178fb95661ec40338e30cdc6c327ac55’, ‘LETZTER’)  Else ” End ||
Case when LAB_DATEN(AUFNR, ‘05192a549f5849a3837b638996af76d0’, ‘LETZTER’) > ‘ ‘ then ‘ 2) ‘ || LAB_DATEN(AUFNR, ‘05192a549f5849a3837b638996af76d0’, ‘LETZTER’) Else ” End ||
Case When LAB_DATEN(AUFNR, ’68ec7512a91f4ccb8899868fcebb05de’, ‘LETZTER’) > ‘ ‘ then ‘ 3) ‘ || LAB_DATEN(AUFNR, ’68ec7512a91f4ccb8899868fcebb05de’, ‘LETZTER’) Else ” End ||
Case when LAB_DATEN(AUFNR, ‘3ff51bdc307b4b1295b70e7196b425a9’, ‘LETZTER’) > ‘ ‘ then ‘ 4) ‘ || LAB_DATEN(AUFNR, ‘3ff51bdc307b4b1295b70e7196b425a9’, ‘LETZTER’) Else ” End ||
Case when LAB_DATEN(AUFNR, ‘beeef631ac924e9197129edb562fa3ec’, ‘LETZTER’) > ‘ ‘ then ‘ 5) ‘ || LAB_DATEN(AUFNR, ‘beeef631ac924e9197129edb562fa3ec’, ‘LETZTER’) Else ” end)

Doku-/Messwerte-Datum in ein “echtes” Datum umwandeln und mit dem Tagesdatum vergleichen

To_Char(LAB_DATEN(AUFNR, ‘Feld-ID’, ‘LETZTER’), ‘DD.MM.YYYY’) >= CURRENT_DATE

Doku-/Messwerte-Datum in Sortierfolge

Doku-/Messwerte-Datenfeld in Report hinterlegen.
Zusätzlich Report-Sonderfeld als unsichtbares Feld im Report hinterlegen:
LAB_DATEN(AUFNR, ‘06795feb135447908404d2f42e2f5ef6’, ‘LETZTER’)

Sonderfeld für die Sortierfolge:
(Select ZWEIGANT From ZWRFKT01 Where ZWAUFN = AUFNR And ZWSA = ‘Z2’ And Digits(ZWRDDH) || Digits(ZWRENR) = (Select Max(Digits(ZWRDDH) || Digits(ZWRENR)) From ZWRFKT01 Where ZWAUFN = AUFNR And ZWSA = ‘Z2’ And ZWSDAT = 0))

Anreiseübersichten2020-11-24T09:12:20+01:00

Abfragen für Anreise-Ansichten

Übersicht Patienten mit bestimmten Indikationen

INDIKA In(‘xx’, ‘xx’)

xx = Platzhalter, entsprechende Indikation hinterlegen

Abreisedatum = heute

ABRDATUME = CURRENT_DATE

Kurtermin-Datum + x Tage

System i: KURTERM(AUFNR) + 21 Days
Postgres: KURTERM(AUFNR) + 21

Nur Anzeige der 1. Person in der Familie (mit oder ohne Familien-Nr.)

FAMLFD = 1

FAMLFD = 1 Or FAMLFD Is Null

Übersicht Kinder unter 3 Jahren

ALTERJJ(ANRDATUM, ABRDATUME, GEBDATUM, ‘ANREISE’) < 3

Übersicht Wiederholer

(Select Count(*) From KPSTM00 As X Where X.FREI3 = KPSTM00.FREI3 And X.ANRDATUM > ‘0001-01-01’ And X.FREI3 <> ”) > 1

Übersicht der Patienten in einer Gruppe (hier: Kind+Gruppe)

Platzhalter xx gegen das entsprechende Gruppenkürzel austauschen

Auswahl einer Gruppe

PKZ1 = ‘K’ and FREI21 =’xx’

Auswahl zwei Gruppen

PKZ1 = ‘K’ and FREI21 In (‘xx’, ‘xx’)

Abfrage Einladung per Post – noch nicht bezahlt

LAB_DATEN(AUFNR, ‘FeldID #1’, ‘LETZTER’) Like ‘per POST%’ And LAB_DATEN(AUFNR, ‘FeldID #2’, ‘LETZTER’) = ”

FeldID #1 siehe Versand der Einladung
FeldID #2 siehe bezahlt am

Abfrage

PKZ1=‘M‘ and frei23>‘‘and(select count(*)from NORDSEE-T_MEDSTS where msaufnr=aufnr and MSFILE=’TERMINBESTÄTIGUNG’ and MSSTATUS=’8’) <1 and (Select count(*) from NORDSEE.T_LABDTA where LDAUFN=AUFNR and LDFELDID=’ca5c698e230c4a3294f3c096767ce9e7’ and LDDATEN=’OK’)=1

Fakturierter EigAnt-Betrag:

(Select ZWEIGANT From ZWRFKT01 Where ZWAUFN = AUFNR And ZWSA = ‘Z2’ And Digits(ZWRDDH) || Digits(ZWRENR) = (Select Max(Digits(ZWRDDH) || Digits(ZWRENR)) From ZWRFKT01 Where ZWAUFN = AUFNR And ZWSA = ‘Z2’ And ZWSDAT = 0))

Einladungs-Datum:

(Select MSDATE From T#MEDSTS Join T#PGMPAR On PPPGM = ‘KL008’ And PPNAME = ‘EINLADUNG_DATEINAME’ Where MSAUFNR = AUFNR And MSFILE = PPWERT)

Aufgabe: Alle Patienten auflisten, bei denen die Attestprüfung noch nicht abgeschlossen ist.

Anreisedatum ab morgen, damit die Abfrage performant ist. Die Datenfelder stammen aus einer Einmal-Doku bzw. sind als globale Felder deklariert.

In diesem Beispiel wird mit 2 Feldern gearbeitet, in Feld 1 (Radiobuttons) erfolgt die Auswahl “Atteste noch nicht eingegangen” bzw. “Atteste eingegangen”. In Feld 2 wird mit Radiobuttons der Status ausgewählt, “offen” oder “Prüfung abgeschlossen”.

Reporter Pat.-Anreise-Arbeiten (nicht Medizin!)

SQL-Bedingung für die Vorlage:

ANRDATUM > CURRENT_DATE And LAB_DATEN(AUFNR, ‘Feld-ID 1’, ‘ERSTER’) = ‘Atteste eingegangen’ And LAB_DATEN(AUFNR, ‘Feld-ID 2’, ‘ERSTER’) = ‘offen’

Bedingung = Ersatz für Zeitraum

Weitere Doku/Messwerte-Felder können ganz normal über die Feld-Auswahl aus der Tabelle T#LABDTA ergänzt werden.

2020-12-16T10:47:30+01:00
Nach oben