Θέματα Εργασίας > ΕΟΠΥΥ

Ηλεκτρονική συνταγογράφηση: Πρωτόκολλο επικοινωνίας με ERPs, φακέλους ασθενή

(1/13) > >>

Δ. Κουναλάκης:
Το λογισμικό ηλεκτρονικής συνταγογραφίας (Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος) αλλά και αυτών ιατρικών πράξεων του ΟΠΑΔ (Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος) λειτουργούν ως εφαρμογές web με θετικά και αρνητικά σημεία.

Τα θετικά σημεία είναι:
α) Η αμεσότητα στην χρήση χωρίς την εγκατάσταση συγκεκριμένου λογισμικού
β) Η δυνατότητα άμεσης βελτίωσης του λογισμικού και διόρθωσης όλων των προβλημάτων του λογισμικού χωρίς παρέμβαση από τους χρήστες.
γ) Η φιλικότητα του περιβάλλοντος και η προηγούμενη γνώση χρήσης του web

Τα αρνητικά σημεία είναι:
α) Ο αυξημένος χρόνος που χρειάζεται κατά την χρήση του λογισμικού σε σχέση με άλλες εφαρμογές.
β) Η αδυναμία προσαρμογής του λογισμικού σε ιδιαιτερότητες που αφορούν ειδικότητα ιατρού ή ιδιαιτερότητες μονάδας
γ) Η ανάγκη για υποστήριξη μεγάλου αριθμού web browsers μελλοντικά καθώς με το χρόνο θα προκύπτουν συνεχώς ασυμβατότητες ή θα απαιτούνται αναβάθμιση των λογισμικών/μηχανημάτων από όλους.
δ) Η αδυναμία διασύνδεσης με υπάρχοντα λογισμικά (ERPs) που υπάρχουν σε νοσοκομεία και ιατρεία (ιδιωτικά/δημόσια) και η αδυναμία διασύνδεσης με τοπικά συστήματα ηλεκτρονικού φακέλου ασθενή.

Το (δ) είναι και το σημαντικότερο πρόβλημα που υφίσταται και απαιτείται σύντομα η εξεύρεση μιας λύσης.

Μια λύση είναι, παράλληλα με την λειτουργία του υπάρχοντος συστήματος, να υπάρχει και η δυνατότητα διασύνδεσης με την χρήση πρωτοκόλλου επικοινωνίας και ανταλλαγής πληροφορίας ενός τοπικού λογισμικού ERP/φακέλου ασθενή που υπάρχει σε μια δημόσια/ιδιωτική μονάδα υγείας/ιατρείο με το κεντρικό σύστημα της ηλεκτρονικής συνταγογράφησης που υπάρχει στο ΗΔΙΚΑ.

H επικοινωνία μπορεί να γίνεται όπως και σήμερα μέσω Internet με το ίδιο https πρωτόκολλο δικτύου, με την χρήση των ίδιων κωδικών πρόσβασης αλλά στη συγκεκριμένη περίπτωση ο χρήστης χρησιμοποιεί το τοπικό λογισμικό ERP/ηλεκτρονικού φακέλου ασθενή και αυτο το λογισμικό επικοινωνεί μέσω του προτεινόμενου πρωτοκόλλου με το σύστημα ηλεκτρονικής συνταγογράφησης του ΗΔΙΚΑ. Λαμβάνει στο τέλος το ίδιο ακριβώς pdf αρχειο με την συνταγή το οποίο τυπώνεται και είναι πανομοιότυπο με αυτό που τυπώνεται με την υπάρχουσα ιστοσελίδα ηλεκτρονικής συνταγογραφίας του ΗΔΙΚΑ.

Αυτή η υλοποίηση:
α) Επιτρέπει την ενσωμάτωση της ηλεκτρονικής συνταγογραφίας στα ήδη υπάρχοντα λογισμικά που έχουν νοσοκομεία και ιατρεία και την καλύτερη διαχείριση και παρακολούθηση από τις μονάδες υγείας του έργου που επιτελείται.
β) Μειώνει τις ανάγκες σε εκπαίδευση των χρηστών που ήδη χρησιμοποιούν κάποια εφαρμογή ηλεκτρονικού φακέλου.
γ) Μειώνει τις ανάγκες σε υπολογιστική ισχύ των συστημάτων και σε παροχή υποστήριξης χρηστών από το ΗΔΙΚΑ.
δ) Επιτρέπει την προσαρμογή της ηλεκτρονικής συνταγογράφησης στις ανάγκες και ιδιαιτερότητες της κάθε μονάδας χωρίς να αλλάζει σε τίποτα το τελικό αποτέλεσμα της συνταγής και της παρακολούθησης της ηλεκτρονικής συνταγογραφίας.
ε) Επιβοηθά την αποδοχή της ηλεκτρονικής συνταντογράφησης από τους χρήστες.

Θα ακολουθήσουν μια σειρά από μηνύματα σε XML του προτεινόμενου πρωτοκόλλου για δημόσια διαβούλευση και σχολιασμό.

Δ. Κουναλάκης:
Το πρωτόκολλο βασίζεται σε επικοινωνία με την χρήση κειμένου σε XML (UTF-8).
Σε κάθε δέντρο (tree) xml υπάρχει η έκδοση (version) του πρωτοκόλλου με την μορφή ιδιότητας (attribute) ώστε να είναι δυνατός ο έλεγχος στη συμβατότητα μετά από αναβαθμίσεις του πρωτοκόλλου μελλοντικά.
Ταυτόχρονα το τοπικό λογισμικό δηλώνει (και ζητάει κάθε νέα έκδοση) το σύνολο των κωδικοποιήσεων και των φαρμάκων ώστε να μην απαιτούνται συνεχώς αναζητήσεις στο server του ΗΔΙΚΑ όπως γίνεται μέχρι σήμερα με την εφαρμογή της ιστοσελίδας. Κάθε έκδοση της βάσης της κωδικοποίησης νοσημάτων και φαρμάκων δηλώνεται ώστε να υπάρχει με την μορφή μηνύματος η απάντηση από το server που να απαιτεί την ανανέωση τους στο τοπικό σύστημα. Επίσης σε κάθε μήνυμα υπάρχει το sessionID της σύνδεσης παράλληλα με την παρουσία του στα http data.

Η διαδικασία εισόδου γίνεται με την χρήση ονόματος χρήστη και κωδικού πρόσβασης που δίδει το ΗΔΙΚΑ και ταυτόχρονα απαιτείται η εισαγωγή των γραμμάτων στην εικόνα captcha που στέλνει το ΗΔΙΚΑ ώστε να μην είναι εύκολη η κακόβουλη εύρεση κωδικών με την χρήση αυτοματοποιημένων προσπαθειών τύπου brute force.

To λογισμικό του χρήστη στέλνει αρχικά το παρακάτω xml ώστε να λάβει τη εικόνα captcha μόνο εάν είναι σωστό το username.
Και κατόπιν στέλνει το ίδιο μήνυμα πλήρως συμπληρωμένο.
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <login>
  <username>Όνομα χρήστη</username>
  <password>Κωδικός πρόσβασης</password>
  <captcha>Αριθμογραμματοσειρά εικόνας captcha</captcha>
  <sessionid>κωδικός session id</sessionid>
 </login>
</xml>
--- Τέλος κώδικα ---

H απάντηση που λαμβάνει είναι η ακόλουθη και του επιτρέπει πλέον να κάνει αναβάθμιση της βάσης φαρμάκων και κωδικοποιήσεων εάν υπάρχει νέα έκδοση και να προχωρήσει σε αναζήτηση παλαιών συνταγών ή σε έκδοση νέας συνταγής.

Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <login>
  <message>Μήνυμα λάθους εάν υπάρχει και μαζί το Captcha ή επιβεβαίωση εισόδου</message>
  <captcha>Αριθμογραμματοσειρά εικόνας captcha ή κενό επί επιτυχούς login</captcha>
  <sessionid>κωδικός session id</sessionid>
  <drugs>yyyymmddhhmmss</drugs>
  <classifications>yyyymmddhhmmss</classifications>
 </login>
</xml>
--- Τέλος κώδικα ---

Δ. Κουναλάκης:
Εάν ο αριθμός έκδοσης που βασίζεται σε timestamp είναι καινούργιος που σημαίνει νέα βάση δεδομένων τότε λαμβάνει τη νέα βάση με την ακόλουθη μορφή:

Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <drugs date="yyyymmddhhmmss">
  <drug>
   <barcode>κωδικός barcode</barcode>
   <name>Εμπορικό όνομα</name>
   <strength>συγκέντρωση ανά διακριτή δόση (πχ κάψουλα)</strength>
   <packet>περιγραφή συσκευασίας</packet>
   <substances>
    <substance num="1">
     <id>κωδικός φαρμακευτικής ουσίας</id>
     <name>όνομα φαρμακευτικής ουσίας</name>
    </substance>
    <substance num="2">
     <id>κωδικός φαρμακευτικής ουσίας</id>
     <name>όνομα φαρμακευτικής ουσίας</name>
    </substance>
    .......
   </substances>
   <atc>κωδικός ATC</atc>
   <type>τύπος: ένεση, κάψουλα, ml, σταγόνες, μονάδες</type>
   <doses>αριθμός διακριτών δόσεων ανά συσκευασία</doses>
   <price>τιμή συσευασίας</price>
   <state>ενεργό, ανενεργό, υπό ενεργοποίηση</state>
  </drug>
 </drugs>
</xml>
--- Τέλος κώδικα ---

και τις κωδικοποιήσεις με την ακόλουθη μορφή:
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <classifications date="yyyymmddhhmmss">
  <icd>
   <chapter>
    <code>A</code>
    <name>Περιγραφή κεφαλαίου</name>
    <rubric>
     <aa>1</aa>
     <code>Κωδικός κωδικοποίησης νοσημάτων</code>
     <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
    </rubric>
    ........
   </chapter>
   ..........
  </icd>
  <atc>
   <chapter>
    <code>A</code>
    <name>Περιγραφή κεφαλαίου</name>
    <rubric>
     <aa>1</aa>
     <code>Κωδικός κωδικοποίησης φαρμακευτικής ουσίας</code>
     <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
     <ddd>Defined Daily doses</ddd>
     <status>ενεργός, ανενεργός, υπό ενεργοποίηση</status>
    </rubric>
    ........
   </chapter>
   ..........
  </atc>
 </classifications>
</xml>
--- Τέλος κώδικα ---

Να σημειώσω ότι η αναζήτηση φαρμακευτικής ουσίας στο υπάρχον λογισμικό της ΗΔΙΚΑ έχει πρόβλημα με φάρμακα που περιέχουν συνδυασμούς ουσιών. Έτσι εάν βάλεις να ψάξεις την ουσία amoxicillin τότε δεν θα λάβεις ποτέ συνδυασμούς όπως πχ Augmentin

Δ. Κουναλάκης:
Μια άλλη λειτουργία που απαιτείται είναι η αναζήτηση παλαιότερων συνταγών ενός ασθενή.

Έτσι το λογισμικό του χρήστη στέλνει στο σύστημα του ΗΔΙΚΑ το παρακάτω αίτημα, όπου αναφέρονται το εύρος των ημερομηνιών που αναζητούνται συνταγές.
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <prescriptionhistory>
  <patient>
   <amka>AMKA ασθενή</amka>
   <id>Αριθμός μητρώου ασφ. ταμείου ασθενή</id>
   <type>Άμεσος ή έμεσσος ασφαλισμένος</type>
  </patient>
  <search>
   <datestart>Ημερομηνία έναρξης αναζήτησης</datestart>
   <dateend>Ημερομηνία λήξης αναζήτησης</dateend>
   <maxextries>μέγιστος αριθμός συνταγών που θα επιστραφούν</maxentries>
   <alldoctors>ναι ή όχι</alldoctors>
  </search>
 </prescriptionhistory>
</xml>
--- Τέλος κώδικα ---

Για να λάβει το παρακάτω κείμενο xml και να εμφανιστούν στο χρήστη από το λογισμικό με την μορφή που είναι αποδεκτή.
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <prescriptionhistorylist>
  <patient>
   <name>Όνομα ασθενή</name>
   <amka>AMKA ασθενή</amka>
   <id>Αριθμός μητρώου ασφ. ταμείου ασθενή</id>
   <type>Άμεσος ή έμεσσος ασφαλισμένος</type>
   <contact>
    <address>Διεύθυνση ασθενή</address>
    <postcode>Ταχυδρομικός κωδικός</postcode>
    <city>Πόλη κατοικίας</city>
    <phone>Τηλέφωνο</city>
  </patient>
  <searchresults>
   <numentries>αριθμός συνταγών που βρέθηκαν</numentries>
   <retunedentries>αριθμός συνταγών που επιστρέφονται</returnedentries>
   <results>
    <prescription>
     <aa>1</aa>
     <doctor>
      <name>Όνοματεπώνυμο Ιατρού</name>
      <speciality>Ειδικότητα Ιατρού</speciality>
      <amka>AMKA Ιατρού</name>
      <id>Αριθμός μητρώου ιατρού</id>
      <code>Κωδικός μονάδας</code>
      <center>Όνομα μονάδας</center>
     </doctor>
     <properties>
      <code>Κωδικός συνταγής</code>
      <date>Ημερομηνία συνταγής</date>
      <ekas>Ύπαρξη ΕΚΑΣ ή όχι<ekas>
      <monthly>Μηνιαία αγωγή ή όχι</monthly>
      <repeated>Αριθμός επαναλαμβανόμενης συνταγής</repeated>
      <chronic>Χρόνια αγωγή ή όχι</chronic>
      <comment>Σχόλια συνταγής</comment>
     </properties>
     <drug>
      <aa>1</aa>
      <name>Όνομα πρώτου φαρμάκου</name>
      <number>Αριθμός εμβαλαγίων</number>
      <diagnosis>
       <classification>
        <type>Είδος κωδικοποίησης ή ύπαρξη ICD10 ή ICPC2 κωδικού</type>
        <code>Κωδικός κωδικοποίησης νοσημάτων</code>
        <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
       </classification>
       <freetext>Διάγνωση σε ελεύθερο κείμενο</freetext>
      </diagnosis>
      <cover>Συμμετοχή στην τιμή του φαρμάκου από τον ασθενή</cover>
      <dose>
       <freetext>Οδηγία λήψης για τον ασθενή</freetext>
       <type>Τρόπος λήψης: κάθε μέρα,εβδομαδιαίως,μηνιαίως,κλπ</type>
       <daily>Ημερήσια/εβδομαδιαία/μηνιαία δόση φαρμάκου</daily>
       <days>Χρονικό που πρέπει να το λάβει ο ασθενής</days>
       <comment>Σχόλια για αυτό το φάρμακο</comment>
      </dose>
     </drug>
     ......επόμενο φάρμακο
    </prescription>
    ......επόμενη συνταγή
   </results>
  </searchresults>
 </prescriptionhistorylist>
</xml>
--- Τέλος κώδικα ---

Να σημειώσω ότι στο υπάρχον σύστημα εάν θέλεις να δεις κάτι από μια προηγούμενη συνταγή πρέπει να ακυρώσεις ότι έχεις γράψει ήδη στη νέα συνταγή για να πας να ψάξεις τι είχε γραφτεί παλαιότερα.

Δ. Κουναλάκης:
Τέλος το xml με το όποιο ο χρήστης ζητά την έκδοση μιας συνταγής που έχει ήδη ετοιμαστεί με την χρήση του τοπικού λογισμικού της μονάδας υγείας με το περιβάλλον και τις ιδιαιτερότητες που χρειάζεται η μονάδα υγείας ή το ιατρείο.
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <codes>
  <drugversion>yyyymmddhhmmss</drugversion>
  <classificationversion>yyyymmddhhmmss</classificationversion>
 </codes>
 <prescription>
  <doctor>
   <name>Όνοματεπώνυμο Ιατρού</name>
   <speciality>Ειδικότητα Ιατρού</speciality>
   <amka>AMKA Ιατρού</name>
   <id>Αριθμός μητρώου ιατρού</id>
   <code>Κωδικός μονάδας</code>
   <center>Όνομα μονάδας</center>
  </doctor>
  <patient>
   <name>Όνομα ασθενή</name>
   <amka>AMKA ασθενή</amka>
   <id>Αριθμός μητρώου ασφ. ταμείου ασθενή</id>
   <type>Άμεσος ή έμεσσος ασφαλισμένος</type>
   <contact>
    <address>Διεύθυνση ασθενή</address>
    <postcode>Ταχυδρομικός κωδικός</postcode>
    <city>Πόλη κατοικίας</city>
    <phone>Τηλέφωνο</city>
   </contact>
  </patient>
   <properties>
    <date>Ημερομηνία συνταγής</date>
    <ekas>Ύπαρξη ΕΚΑΣ ή όχι<ekas>
    <monthly>Μηνιαία αγωγή ή όχι</monthly>
    <repeated>Αριθμός επαναλαμβανόμενης συνταγής</repeated>
    <chronic>Χρόνια αγωγή ή όχι</chronic>
    <copy>Αντιγραφή συνταγής</copy>
    <comment>Σχόλια συνταγής</comment>
   </properties>
   <drug1>
    <aa>1</aa>
    <barcode>Αριθμός Barcode φαρμάκου</barcode>
    <name>Όνομα πρώτου φαρμάκου</name>
    <number>Αριθμός εμβαλαγίων</number>
    <diagnosis>
     <classification>
      <type>Είδος κωδικοποίησης ή ύπαρξη ICD10 ή ICPC2 κωδικού</type>
      <code>Κωδικός κωδικοποίησης νοσημάτων</code>
      <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
     </classification>
     <freetext>Διάγνωση σε ελεύθερο κείμενο</freetext>
    </diagnosis>
    <cover>Συμμετοχή στην τιμή του φαρμάκου από τον ασθενή</cover>
    <dose>
     <freetext>Οδηγία λήψης για τον ασθενή</freetext>
     <type>Τρόπος λήψης: κάθε μέρα,εβδομαδιαίως,μηνιαίως,κλπ</type>
     <daily>Ημερήσια/εβδομαδιαία/μηνιαία δόση φαρμάκου</daily>
     <days>Χρονικό που πρέπει να το λάβει ο ασθενής</days>
     <comment>Σχόλια για αυτό το φάρμακο</comment>
    </dose>
   </drug1>
   <drug2>
    <aa>2</aa>
    <name>Όνομα δεύτερου φαρμάκου</name>
    <number>Αριθμός εμβαλαγίων</number>
    <diagnosis>
     <classification>
      <type>Είδος κωδικοποίησης ή ύπαρξη ICD10 ή ICPC2 κωδικού</type>
      <code>Κωδικός κωδικοποίησης νοσημάτων</code>
      <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
     </classification>
     <freetext>Διάγνωση σε ελεύθερο κείμενο</freetext>
    </diagnosis>
    <cover>Συμμετοχή στην τιμή του φαρμάκου από τον ασθενή</cover>
    <dose>
     <freetext>Οδηγία λήψης για τον ασθενή</freetext>
     <type>Τρόπος λήψης: κάθε μέρα,εβδομαδιαίως,μηνιαίως,κλπ</type>
     <daily>Ημερήσια/εβδομαδιαία/μηνιαία δόση φαρμάκου</daily>
     <days>Χρονικό που πρέπει να το λάβει ο ασθενής</days>
     <comment>Σχόλια για αυτό το φάρμακο</comment>
    </dose>
   </drug2>
   <drug3>
    <aa>3</aa>
    <name>Όνομα τρίτου φαρμάκου</name>
    <number>Αριθμός εμβαλαγίων</number>
    <diagnosis>
     <classification>
      <type>Είδος κωδικοποίησης ή ύπαρξη ICD10 ή ICPC2 κωδικού</type>
      <code>Κωδικός κωδικοποίησης νοσημάτων</code>
      <label>ετικέτα κωδικοποίησης για τον κωδικό</label>
     </classification>
     <freetext>Διάγνωση σε ελεύθερο κείμενο</freetext>
    </diagnosis>
    <cover>Συμμετοχή στην τιμή του φαρμάκου από τον ασθενή</cover>
    <dose>
     <freetext>Οδηγία λήψης για τον ασθενή</freetext>
     <type>Τρόπος λήψης: κάθε μέρα,εβδομαδιαίως,μηνιαίως,κλπ</type>
     <daily>Ημερήσια/εβδομαδιαία/μηνιαία δόση φαρμάκου</daily>
     <days>Χρονικό που πρέπει να το λάβει ο ασθενής</days>
     <comment>Σχόλια για αυτό το φάρμακο</comment>
    </dose>
   </drug3>
 </prescription>
</xml>

--- Τέλος κώδικα ---

Το σύστημα του απαντά με το pdf της συνταγής ή ένα αρχείο xml σε περίπτωση λάθους:
Κώδικας: Δεν είναι ορατοί οι σύνδεσμοι (links). Εγγραφή ή Είσοδος<xml version="1.00">
 <sessionid>κωδικός session id</sessionid>
 <errors>
  <error>
   <label>Μήνυμα λάθους</label>
   <type>warning,unrecoverable,etc</type>
  </error>
 </errors>
</xml>
--- Τέλος κώδικα ---

Πλοήγηση

[0] Λίστα μηνυμάτων

[#] Επόμενη σελίδα

Μετάβαση στην πλήρη έκδοση