Sie sind nicht angemeldet.

1

Samstag, 17. November 2018, 14:04

PHP Skript Hilfe

Hallo!
Leider kenn ich mich mit php nicht aus, hätte aber sehr gerne eine eigene Schnellinfo gebastelt. Hab auch übers Internet nicht ausreichend Infos sammeln können, dass ich es selbst schaffe.
Was will ich: Schnellinfo, die mir ausgibt, ob in den letzten 4 Quartalen (vor dem jetzigen) eine bestimmte Diagnose (Akut- oder Dauerdiagnose ist egal) eingegeben wurde.

Das ganze wird erschwert, dass ich nicht eine einzelne Diagnose suche, sondern einen ganzen ICD Block. Und zwar von C00 bis D48. Und am besten nur die gesichterten Diagnosen.

Hat hierzu jemand eine Idee?
Aus den bestehenden php Scripts hab ich mal folgendes gebastelt. In kurzen Tests hat es funktioniert, nur dass es nur eine Diagnose sucht...

{PHP}
if ({Count:5Q::diagnose:z00.1} ==1)
{
echo ("0002 möglich");
}
{/PHP}
Vielen Dank und viele Grüße

2

Samstag, 17. November 2018, 19:08

Hallo GB VOF
Etwas ähnliches habe ich hier erstellt, allerdings nicht mit eleganter Schleifenfunktion, sondern brutal mit untereinander gescripteten Count-Befehlen. Dabei habe ich die ICD-Codes so gut es ging, eingekürzt, also Count.......C0 für C00.0 bis C09.9, C1 für C10.0 bis C19.9 etc. Da wären in Ihrem Fall 15 Count-Zeilen, wenn C00.0 bis D49.9 abgefragt werden.
Wenn nur nur eine der Diagnosen auftauchen muss, damit die Schnellinfobedingung erfüllt ist, kann man die Abfrage auch in eine IF...Elseif-Schleife packen, die dann bei erfasster Diagnose verlassen wird und schnller fertig ist.
Sollen aber alle gefundenen Diagnosen einzeln überprüft werden, muss man wohl 15 Schnellinfos basten ;-( Ich gehe jetzt aber mal von Variante 1 aus.
Hier eins meiner Prog-Monster;

Zitat

{PHP}
$SGZ={Count:Q:::Gebühren:04355};
$S1={Count:Q:::Diagnosen:F6};
$S2={Count:Q:::Diagnosen:F8};
$S3={Count:Q:::Diagnosen:F45};
$S5={Count:Q:::Diagnosen:F9};
$S6={Count:Q:::Diagnosen:G25};
$S7={Count:Q:::Diagnosen:G31};
$S8={Count:Q:::Diagnosen:G40};
$S9={Count:Q:::Diagnosen:G43};
$S10={Count:Q:::Diagnosen:G44.2};
$S11={Count:Q:::Diagnosen:G80};
$S12={Count:Q:::Diagnosen:R27.8};
$S13={Count:Q:::Diagnosen:T73};
$S14={Count:Q:::Diagnosen:T74};
($T=$S1+$S2+$S3+$S5+$S6+$S7+$S8+$S9+$S10+$S11+$S12+$S13+$S14);
If ($SGZ==0 and $T>0) Echo "04355 ->(5)";
{/PHP}
Das ist bösester Spaghetti-Code, aber es funktioniert. Man darf die Zahl der durchsuchten Quartale aber nicht zu groß machen, sondern wird MO immer langsamer..
Hier noch ein simples Beispiel für die If-Elseif-Anwendung;

Zitat

{PHP}
IF (STRLEN({Hauptversicherter.Nachname})==0) {ECHO "RECHNUNGSEMPFÄNGER fehlt";}
Elseif (STRLEN({Hauptversicherter.Nachname})>0) {ECHO "{Hauptversicherter.Nachname}, {Hauptversicherter.Vorname} {Hauptversicherter.Geburtsdatum}";}
{/PHP}
Der Schnipsel prüft, ob für den Fall eines Kindes ein Rechnungsempfänger erfasst wurde, wenn nicht zeigt die Schnellinfo den Text Ü B E R P R Ü F E N.
Hier wäre es schön, wenn MO selber prüfen würde, ob dieser fehlt, da dies aber nicht so ist, versuchen wir die hier fehlerhaften Rechnungen mit der Fallanlage zu vermeiden.
LG, Josmed
Freundliche Grüße, Jörg Sprenger

3

Mittwoch, 21. November 2018, 07:50

Danke für die Antwort. Ich hätte gehofft, irgendjemand bietet noch eine superelegante Lösung, aber dann muss ich es so probieren.

Nutzen Sie die DynView? Macht es einen Unterschied im Bezug auf das PHP Script?

Viele Grüße