Hi,
I would like to try to create a project where I have to intercept messages with a specific protocol HL7 (OML21) that is the standard for hospital laboratory (LIS).
I’ve found a library (https://github.com/senaranya/HL7) that in theroy can help on this but I’m not so expert.
Vedo che sei italiano e ti rispondo nella nostra lingua.
In rete c’è un po’ di materiale. Qualche esempio semplice lo trovi su:
Oppure questo documento di Microsoft
Credo sia necessario costruire un parser che, dalle stringhe di messaggio, tipicamente separate da | (pipe) estraggono i valori dei campi ma la libreria che hai trovato (senaranya) mi sembra che sia sulla buona strada.
Io ho lavorato come informatico (e sviluppatore) fino a 10 mesi fa in una azienda sanitaria, purtroppo la Toscana non ha voluto adottare lo standard HL7 ma bensì si sono appoggiati a protocolli proprietari basati sostanzialmente su messaggistica XML, (simil - soap, diciamo …) quindi non ho esperienza diretta al riguardo.
Se riesco a contattare qualche ex collega provo a chiedergli qualcosa al riguardo.
Saluti, Roberto
Grazie Roberto,
grazie dei suggerimenti. Sicuramente guarderò con calma.
qualcosa sono riuscito a fare ovviamente non da solo ma con l’ausilio di AI .
Ho perso un bel po’ di tempo ma a forza di insistere sono riuscito a mettere in piedi un giro di prova.
Cerco di riassumere da non … tecnico quello che ho fatto
Libreria PHP → https://github.com/senaranya/HL7
Composer
Poi serve un programmino python che genera messaggi HL7 (OML21 nel mio caso) in modo da avere dei file .hl7 da cui leggere i dati di test.
Poi, non chiedermi il motivo, ho dovuto creare un file php che facesse import dei messaggi su tabella mysql. Ho dovuto inserire questo riferimento assoluto che funziona solo in locale ovviamente dato che macro SC include non funziona.
require_once “C:/Program Files/NetMake/v9.8-php81/wwwroot/scriptcase/devel/conf/grp/c4h_tracking/libraries/hl7_to_trackable/import.php”;
Poi ho un’altra applicazione SC (hl7_to_trackable) che riformatta i dati della tabella di appoggio messaggi_HL7 e li inserisce nella tabella delle richieste/ordini che sono il primo step per elaborare poi i vari passaggi successivi.
Per me è stato quasi un miracolo… ;-)) Comunque ho fatto quasi sbarellare l’AI … ;-)))
Ho capito comunque che Scriptcase ha molte cose sue particolari native che non sono compatibili con gli standard esterni. Alla fine il programma che fa il lavoro effettivo di import è un php esterno a Scriptcase.
Saluti
Giovanni