2010-07-28 3 views
3

저는이 HL7 표준에 익숙하지 않지만 이전에 NCPDP 표준을 연구했습니다. 이제 나는 Mirth Connect 오픈 소스 도구를 탐구하려고 노력하고 있습니다. http://www.mirthcorp.com/community/wiki/display/mirthuserguidev1r8p0/Message+Builder URL로 제공되는 설명서 (사용 설명서)에 따라 구성하려고하지만이 설명서에서는 HL7 템플릿을 사용하는 방법에 대해 설명합니다. 나는이 템플릿을 얻을 수있는 곳이 없다. 저 좀 도와 주 시겠어요.Mirth Connect 용 HL7 템플릿을 얻는 방법은 무엇입니까?

나는 인터넷에서 검색하고 난 다음 예제 템플릿

을 발견 포럼 경우 일부

MSH |^~ \ & | MIRTH_1.7 | DOMAIN | LABTEST || $ {date.get ('YYYYMMDDhhmm 형식')} || ADT^A08 | $ {UUID} | P | 1.7 ||| AL | NE | EVN | A08 | $ {date.get ('yyyyMMddHHmm')} |||| $ {family_name}^$ {first_name}^$ {middle_name} ^^^^ || $ {d_o_b} | $ {sex} ||| $ {address1}^$ { address2}^$ {address3} ^^^^ || $ {phone} | $ {emp_phone} || $ {maritin_status} | $ {religion} |||||||| 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) 

이 문제를 해결 도와주세요.

감사합니다. 학생

답변

-1

검색어 끝에 자동 완성 쿼리와 함께 세미콜론 (;)을 제거하면 예외가 사라집니다.

템플릿에 대해서는 아직 확실하지 않습니다. HL7 표준을 기반으로 수동으로 작성해야한다는 말을 들었습니다.

2

나는 파트너 회사에 샘플을 요청하거나 Mirth 포럼을 검색하여 커플을 찾을 수 있습니다.

샘플을 청소할 수 있습니다. 코딩 된 요소를 "실제"데이터로 바꿉니다. 예를 들어 {date.get ('yyyyMMddHHmm')}은 실제 날짜 문자열 '2010-08-20'으로 대체해야합니다.

또한 샘플을 템플릿 상자에 붙여 넣을 때 각 세그먼트를 구분해야한다는 것을 알았습니다 (crlf를 추가 함). 그래서 그 대신 MSH의 | ... ADT | ... PID | ..., 당신이 얻을 :
MSH | ...
ADT | ...
PID | ...

희망 도움이됩니다.