MEDICAL OFFICE Forum

Forum-Navigation
ForumAktivität

Patienten-Exportdatei – Inhalt verändern?

Du musst dich anmelden um Beiträge und Themen zu erstellen.

Patienten-Exportdatei – Inhalt verändern?

VorherigeSeite 2 von 2

Ja, das habe ich versucht. Es wird an der Stelle leider gar nichts ausgegeben. Die anderen Variablen (Hausarzt, Überweiser) funktionieren. Man könnte es über eine externe Kotegorie lösen. Aber die übergibt nur den Überweiser, nicht den Hausarzt. Leider habe ich noch keine Lösung gefunden, die alles so löst, wie ich es mir vorstelle. Ich hatte bisher auch die interne Briefschreibung mit vielen PHP-Bausteinen benutzt, muss dann aber regelmäßig die Formatierung noch korrigieren und überflüssige Leerzeilen für nicht genutzte Platzhalter löschen etc. Das hat mich auf die Dauer genervt. Das Programm, dass ich jetzt dafür entwickelt habe, macht das so wie ich es möchte, aber kann leider nicht auf alle Informationen aus MO zugreifen. Auch der KIM-Versand ist dann umständlicher, wenn das Dokument nicht aus der eigenen Textverarbeitung kommt. Irgendwie noch nicht optimal …

Ich denke in der externen Kategorie können Sie so ziemlich alles mittels php schreiben. Die Frage wäre, brauchen Sie unbedingt gdt? Nimmt das externe Programm gdt auf? Oder könnte man auch xml exportieren oder mittels php eine eigene Datei erzeugen, die dann das externe Programm wieder ausliest?

Das gibt z.B. meine DocuSeal Kategorie an die Webapp aus

Chrome.exe „http://192.168.100.98:5000/formular?patid={Patient.PatID}&name={Patient.Nachname}&vorname={Patient.Vorname}&geburtsdatum={Patient.Geburtsdatum}&email={Patient.Email}&geschlecht={Patient.Geschlecht}&eltern={Patient.Eltern}“

Und wenn Sie eine Webapp haben oder die Software im Browser läuft könnte man damit arbeiten. Oder Sie haben eine Webapp, die die Informationen aufnimmt und dann daraus einen Programmaufruf mit Argumenten generiert…. es gibt viele Möglichkeiten 

Das externe Programm nimmt tatsächlich gdt auf, aber nur von externen Untersuchungsmodulen. Welches Format MO ausgibt, wäre für dass Programm nicht so wichtig, da ich es ja selbst darauf abstimmen kann, Werde das mit xml oder der Webapp mal testen. Danke schonmal!

Hallo Herr Hambach,

versuchen Sie grne folgendes php:

{PHP} $f=“C:\\gdt\\dummy.gdt„; $id=“{Patient.PatID}“; $nn=“{Patient.Nachname}“;$vn=“{Patient.Vorname}“; $gd=“{Patient.Geburtsdatum}“; $ti=“{Patient.Stammdaten.Titel}“;$ve=“{Kostenträger.Versichertennummer}“; $po=“{Patient.Plz} {Patient.Ort}“;$st=“{Patient.Strasse}“; $ge=“{Patient.Geschlecht}“; $pl=“{Patient.Plz}“;$or=“{Patient.Ort}“; $em=“{Patient.Email}“; $te=“{Patient.Telefon}“;$t2=“{Patient.TelefonB}“; $ks=“{Kostenträger.Status}“; $kl=“{Kostenträger.Langname}“;$sg=“{Kostenträger.Fallbis}“; $vk=“{Kostenträger.VKNR}“; $sg=“{Kostenträger.Fallbis}“;$kvg=“{Kostenträger.Gültigbis}“; $ik=“{Kostenträger.IK}“;$se=“{Kostenträger.Statusergänzung}“; $üw=“{Kostenträger.Überweiser.Praxisname}“; $icds = „{Diagnosen:Fall}“;$icd_list = explode(„\n“, $icds); $bsnr=“{ArztBSNR}“; $lanr=“{AArzt.LANR}“; $c=“01380006301\r\n“; $c.=“014810000000\r\n“; $c.=“01092062\r\n“; $gl=37; $l =strlen($id)+9;$gl+=$l; $c.=“0″.$l.“3000″.$id.“\r\n“; $l=strlen($nn)+9; $gl+=$l;$c.=“0″.$l.“3101″.$nn.“\r\n“; $l=strlen($vn)+9; $gl+=$l; $c.=“0″.$l.“3102″.$vn.“\r\n“; $gd= str_replace(„.“,““,$gd); $l=strlen($gd)+9; $gl+=$l; $c.=“0″.$l.“3103″.$gd.“\r\n“; if(strlen($ve) > 0) { $l=strlen($ve)+9; $gl+=$l; $c.=“0″.$l.“3105″.$ve.“\r\n“; } if(strlen($po) > 0) { $l=strlen($po)+9; $gl+=$l; $c.=“0″.$l.“3106″.$po.“\r\n“; } if(strlen($st) > 0) { $l=strlen($st)+9; $gl+=$l; $c.=“0″.$l.“3107″.$st.“\r\n“; }$l=strlen($ge)+9; $gl+=$l; $c.=“0″.$l.“3110″.$ge.“\r\n“; if(strlen($ks) > 0) { $l=strlen($ks)+9; $gl+=$l; $c.=“0″.$l.“3108″.$ks.“\r\n“; } if(strlen($em) > 0) { $l=strlen($em)+9; $gl+=$l; $c.=“0″.$l.“3619″.$em.“\r\n“; } if(strlen($kl) > 0) { $kl=$kl; $l=strlen($kl)+9; $gl+=$l; $c.=“0″.$l.“2002″.$kl.“\r\n“; } $c.=“0118402ALLG00\r\n“;$gl+=14; if(strlen($sg) > 0) { $sg = floor(date(’n‘,strtotime($sg))/4+1).date(‚Y‘,strtotime($sg)); $l=strlen($sg)+9; $gl+=$l;$c.=“0″.$l.“4101″.$sg.“\r\n“; } if(strlen($vk) > 0) { $l=strlen($vk)+9; $gl+=$l;$c.=“0″.$l.“4104″.$vk.“\r\n“; } if(strlen($se) > 0) { $l=strlen(„0″.$se)+9; $gl+=$l;$c.=“0″.$l.“41060″.$se.“\r\n“; } if(strlen($kvg) > 0) { $kvg = floor(date(’n‘,strtotime($kvg))/4+1).date(‚y‘,strtotime($kvg)); $l=strlen($kvg)+9; $gl+=$l;$c.=“0″.$l.“4110″.$kvg.“\r\n“; } if(strlen($üw) > 0) { $l=strlen($üw)+9; $gl+=$l;$c.=“0″.$l.“4111″.$üw.“\r\n“; } if(strlen($ik) > 0) { $l=strlen($ik)+9; $gl+=$l;$c.=“0″.$l.“4111″.$ik.“\r\n“; } if(strlen($bsnr) > 0) { $l=strlen($bsnr)+9; $gl+=$l;$c.=“0″.$l.“4218″.$bsnr.“\r\n“; } if(strlen($lanr) > 0) { $l=strlen($lanr)+9; $gl+=$l;$c.=“0″.$l.“4242″.$lanr.“\r\n“; } foreach($icd_list as &$diag) { if(strlen($diag) > 2) { $seite_sicherheit = „“;if(substr($diag,0,1) == „[„) { $seite_sicherheit =substr($diag,0,strpos($diag,“]“)); } $icd =substr($diag,strpos($diag,“(„)+1,strpos($diag,“)“)-strpos($diag,“(„)-1); $text =substr($diag,strpos($diag,“)“)+2); if(strlen($text) > 2) { $l=strlen($text)+9;$sl+=$l; $c.= „0“.$l.“6000″.$text.“\r\n“; } if(strlen($icd) > 2) {$l=strlen($icd)+9; $sl+=$l; $c.= „0“.$l.“6001″.$icd.“\r\n“; }if(strpos($seite_sicherheit,“V“)) { $sl+=10; $c.= „0106003V\r\n“; }if(strpos($seite_sicherheit,“Z“)) { $sl+=10; $c.= „0106003Z\r\n“; }if(strpos($seite_sicherheit,“A“)) { $sl+=10; $c.= „0106003A\r\n“; }if(strpos($seite_sicherheit,“G“)) { $sl+=10; $c.= „0106003G\r\n“; }if(strpos($seite_sicherheit,“R“)) { $sl+=10; $c.= „0106004R\r\n“; }if(strpos($seite_sicherheit,“L“)) { $sl+=10; $c.= „0106004L\r\n“; }if(strpos($seite_sicherheit,“B“)) { $sl+=10; $c.= „0106004B\r\n“; } } }$c = str_replace(„014810000000″,“014810000“.$gl,$c); file_put_contents($f,$c); {/PHP}

Datei wird unter C:\GDT abgelegt.

Sollten Sie die Datei an einem anderen Pfad erwarten, den Pfad bitt im Script anpassen!

 

Cave!

CAVE!
Die Fedkennung 4111 ist nicht für die Angabe der überweisenden Praxis angedacht.

Ich habe die Felkennung sozusagen zweckentfremdet.

Solange Sie die Datei nicht für eine Geräteanbindung nutzen sollte dies aber kein Problem darstellen.

VorherigeSeite 2 von 2