Как получить шаблоны HL7 для Mirth Connect? - PullRequest
3 голосов
/ 28 июля 2010

Я новичок в этом стандарте HL7, но раньше я работал над стандартом NCPDP.Сейчас я пытаюсь изучить Mirth Connect с открытым исходным кодом.Когда я пытаюсь настроить в соответствии с документацией (Руководство пользователя), которая предоставляется в http://www.mirthcorp.com/community/wiki/display/mirthuserguidev1r8p0/Message+Builder URL, но в этой документации упоминается использование шаблона HL7.Я не знаю, где взять эти шаблоны.Не могли бы вы помочь мне.

Я искал в Интернете и там, где форумы, я нашел следующий пример шаблона

MSH | ^ ~ \ & | MIRTH_1.7 | DOMAIN | LABTEST || $ {date.get ( 'ГГГГММДДЧЧмм')} || ADT ^ A08 | $ {UUID} | P | 1,7 ||| AL | NE |EVN | A08 | $ {date.get ( 'ГГГГММДДЧЧмм')} ||||$ {Patno} || PID ||| $ {family_name} ^ $ {first_name} ^ {$ middle_name} ^^^^ || $ {d_o_b} | $ {секс} ||| $ {address1} ^ {$ address2} ^ {$ address3} ^^^^ || $ {телефон} | {$ emp_phone} || $ {marital_status} | {$} религия |||||||||||PV1 ||||||||||||||||||||||||||||||||||||||||||||||

Когда я использую это и пытаюсь запустить канал, я получаю следующее исключение в Событиях

java.sql.SQLException: ORA-00911: invalid character
 Query: SELECT PATIENTINFO.PATIENTID AS PATIENTINFO_PATIENTID, 
PATIENTINFO.FIRSTNAME AS PATIENTINFO_FIRSTNAME, 
PATIENTINFO.LASTNAME AS PATIENTINFO_LASTNAME 
FROM PATIENTINFO;

 Parameters: []
    at org.apache.commons.dbutils.QueryRunner.rethrow(QueryRunner.java:359)
    at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:240)
    at com.webreach.mirth.connectors.jdbc.JdbcMessageReceiver.getMessages(JdbcMessageReceiver.java:255)
    at org.mule.providers.TransactedPollingMessageReceiver$1.doInTransaction(TransactedPollingMessageReceiver.java:91)
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.mule.providers.TransactedPollingMessageReceiver.poll(TransactedPollingMessageReceiver.java:104)
    at org.mule.providers.PollingMessageReceiver.run(PollingMessageReceiver.java:90)
    at org.mule.impl.work.WorkerContext.run(WorkerContext.java:290)
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Unknown Source)

{}

и в журналах сервера

[2010-07-28 19:02:52,515]  FATAL (org.mule.impl.DefaultComponentExceptionStrategy:83): The Default Component Exception Strategy has been invoked but there is no current event on the context


[2010-07-28 19:02:52,515]  FATAL (org.mule.impl.DefaultComponentExceptionStrategy:84): The error is: ORA-00911: invalid character
 Query: SELECT PATIENTINFO.PATIENTID AS PATIENTINFO_PATIENTID, 
PATIENTINFO.FIRSTNAME AS PATIENTINFO_FIRSTNAME, 
PATIENTINFO.LASTNAME AS PATIENTINFO_LASTNAME 
FROM PATIENTINFO;

 Parameters: []
java.sql.SQLException: ORA-00911: invalid character
 Query: SELECT PATIENTINFO.PATIENTID AS PATIENTINFO_PATIENTID, 
PATIENTINFO.FIRSTNAME AS PATIENTINFO_FIRSTNAME, 
PATIENTINFO.LASTNAME AS PATIENTINFO_LASTNAME 
FROM PATIENTINFO;

 Parameters: []
    at org.apache.commons.dbutils.QueryRunner.rethrow(QueryRunner.java:359)
    at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:240)
    at com.webreach.mirth.connectors.jdbc.JdbcMessageReceiver.getMessages(JdbcMessageReceiver.java:255)
    at org.mule.providers.TransactedPollingMessageReceiver$1.doInTransaction(TransactedPollingMessageReceiver.java:91)
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.mule.providers.TransactedPollingMessageReceiver.poll(TransactedPollingMessageReceiver.java:104)
    at org.mule.providers.PollingMessageReceiver.run(PollingMessageReceiver.java:90)
    at org.mule.impl.work.WorkerContext.run(WorkerContext.java:290)
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Unknown Source)

Пожалуйстапомогите мне в решении этой проблемы.

Спасибо.Student

Ответы [ 2 ]

2 голосов
/ 20 августа 2010

Я попросил бы у вашей компании-партнера несколько образцов или поищите пару на форумах Mirth.

Образец, который у вас есть, может быть очищен.Замените закодированные элементы «реальными» данными.Например, {date.get ('yyyyMMddHHmm')} следует заменить строкой реальной даты, '2010-08-20'.

Кроме того, я обнаружил, что при вставке семплов в поле шаблона япришлось отделить каждый сегмент (добавить промежуточный элемент CRLF).Таким образом, вместо MSH | ... ADT | ... PID | ..., вы получите:
MSH | ...
ADT | ...
PID | ...

Надеюсь, это поможет.

0 голосов
/ 11 августа 2010

Исключение исчезло, когда я удалил точку с запятой (;) в конце запроса (который пришел с автоматически сгенерированным запросом).

Что касается шаблонов, я все еще не уверен. Я слышал от кого-то, что мы должны создавать вручную на основе стандарта HL7.

...