You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(2) |
Feb
(1) |
Mar
|
Apr
(4) |
May
(5) |
Jun
(6) |
Jul
(3) |
Aug
(13) |
Sep
(28) |
Oct
(33) |
Nov
(8) |
Dec
(1) |
2003 |
Jan
(6) |
Feb
(2) |
Mar
|
Apr
(25) |
May
(21) |
Jun
(13) |
Jul
(12) |
Aug
(14) |
Sep
(6) |
Oct
(6) |
Nov
(16) |
Dec
(6) |
2004 |
Jan
(5) |
Feb
(7) |
Mar
(13) |
Apr
(17) |
May
(24) |
Jun
(14) |
Jul
(14) |
Aug
(8) |
Sep
(3) |
Oct
(8) |
Nov
(14) |
Dec
(26) |
2005 |
Jan
(18) |
Feb
(12) |
Mar
(29) |
Apr
(9) |
May
(4) |
Jun
(12) |
Jul
(17) |
Aug
(9) |
Sep
(12) |
Oct
|
Nov
(12) |
Dec
|
2006 |
Jan
(46) |
Feb
(18) |
Mar
(11) |
Apr
(13) |
May
(12) |
Jun
(27) |
Jul
(34) |
Aug
(45) |
Sep
(27) |
Oct
(13) |
Nov
(26) |
Dec
(22) |
2007 |
Jan
(21) |
Feb
(29) |
Mar
(32) |
Apr
(6) |
May
(11) |
Jun
(13) |
Jul
(14) |
Aug
(11) |
Sep
(15) |
Oct
(7) |
Nov
(30) |
Dec
(16) |
2008 |
Jan
(11) |
Feb
(14) |
Mar
(5) |
Apr
(18) |
May
(12) |
Jun
(11) |
Jul
(5) |
Aug
(12) |
Sep
(3) |
Oct
(2) |
Nov
(15) |
Dec
(2) |
2009 |
Jan
(18) |
Feb
(6) |
Mar
(9) |
Apr
(10) |
May
(29) |
Jun
(16) |
Jul
(44) |
Aug
(49) |
Sep
(14) |
Oct
(21) |
Nov
(11) |
Dec
(22) |
2010 |
Jan
(12) |
Feb
(13) |
Mar
(5) |
Apr
(6) |
May
(15) |
Jun
(15) |
Jul
(14) |
Aug
(20) |
Sep
(17) |
Oct
(36) |
Nov
(19) |
Dec
(7) |
2011 |
Jan
(8) |
Feb
(14) |
Mar
(21) |
Apr
(12) |
May
(6) |
Jun
(12) |
Jul
(17) |
Aug
(6) |
Sep
(13) |
Oct
(15) |
Nov
(26) |
Dec
(9) |
2012 |
Jan
(25) |
Feb
(13) |
Mar
(31) |
Apr
(10) |
May
(16) |
Jun
(21) |
Jul
(61) |
Aug
(38) |
Sep
(16) |
Oct
(13) |
Nov
(37) |
Dec
(26) |
2013 |
Jan
(20) |
Feb
(26) |
Mar
(34) |
Apr
(32) |
May
(27) |
Jun
(56) |
Jul
(16) |
Aug
(38) |
Sep
(35) |
Oct
(17) |
Nov
(11) |
Dec
(7) |
2014 |
Jan
(36) |
Feb
(13) |
Mar
(25) |
Apr
|
May
(27) |
Jun
(33) |
Jul
(34) |
Aug
|
Sep
(4) |
Oct
(11) |
Nov
(42) |
Dec
(2) |
2015 |
Jan
(5) |
Feb
(6) |
Mar
(11) |
Apr
(3) |
May
|
Jun
(1) |
Jul
(2) |
Aug
(5) |
Sep
(5) |
Oct
(5) |
Nov
(8) |
Dec
(19) |
2016 |
Jan
(8) |
Feb
(12) |
Mar
(6) |
Apr
(5) |
May
(5) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
(9) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
2017 |
Jan
(2) |
Feb
|
Mar
(3) |
Apr
(6) |
May
(8) |
Jun
(7) |
Jul
(14) |
Aug
(10) |
Sep
(6) |
Oct
(2) |
Nov
|
Dec
|
2018 |
Jan
|
Feb
(9) |
Mar
(2) |
Apr
(3) |
May
(1) |
Jun
(1) |
Jul
(1) |
Aug
(8) |
Sep
(4) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
2019 |
Jan
(10) |
Feb
(2) |
Mar
(6) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(5) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
2020 |
Jan
(9) |
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(9) |
Oct
(1) |
Nov
(11) |
Dec
|
2021 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2023 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
(2) |
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
(7) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(6) |
Nov
|
Dec
|
From: Erik G. <eri...@gm...> - 2013-08-15 20:40:39
|
Hello! How do I get a ZPS segment from an ORU_R01 message? Thanks, Erik |
From: Ternier, R. <rya...@cg...> - 2013-08-15 18:04:56
|
Creating a general parser wouldn't be that difficult, I've created many for HL7v2 -> Hl7v3 (HL7v2 XML + XSLT is one way). The issue comes in with Z-Segments, and the differences allowed between all the v2 sub-versions. It's been a nightmare for me :\ /RT From: Suranga Kasthurirathne [mailto:sur...@gm...] Sent: August-15-13 11:00 AM To: Rahul Somasunderam Cc: hl7...@li... Subject: Re: [HAPI-devel] Plans to support HL7 V3 ? Hi, Thank you Daniel and Rahul, Hmm.... so I was rather hoping that I would be able to use HAPI for creating my HL7 V3 messages. Does this mean that there currently aren't any plans to support V3 as well ? On Thu, Aug 15, 2013 at 1:48 PM, Rahul Somasunderam <rs...@ce...<mailto:rs...@ce...>> wrote: Suranga, V3 is XML Based and has xsds and wsdls. So any java xml/soap framework of your choice should work. However I've got some codegen in place if you want to use it as is: https://github.com/rahulsom/ihe-iti R, rahul On Aug 15, 2013, at 10:36 AM, Suranga Kasthurirathne <sur...@gm...<mailto:sur...@gm...>> wrote: Hi, May I ask if there are any plans to support HL7 V3, which is currently not supported by HAPI ? If yes, roughly when will this release happen ? Thank you, -- Best Regards, Suranga ------------------------------------------------------------------------------ Get 100% visibility into Java/.NET code with AppDynamics Lite! It's a free troubleshooting tool designed for production. Get down to code-level detail for bottlenecks, with <2% overhead. Download for free and get started troubleshooting in minutes. http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk_______________________________________________ Hl7api-devel mailing list Hl7...@li...<mailto:Hl7...@li...> https://lists.sourceforge.net/lists/listinfo/hl7api-devel -- Best Regards, Suranga |
From: Suranga K. <sur...@gm...> - 2013-08-15 18:00:33
|
Hi, Thank you Daniel and Rahul, Hmm.... so I was rather hoping that I would be able to use HAPI for creating my HL7 V3 messages. Does this mean that there currently aren't any plans to support V3 as well ? On Thu, Aug 15, 2013 at 1:48 PM, Rahul Somasunderam < rs...@ce...> wrote: > Suranga, > > V3 is XML Based and has xsds and wsdls. So any java xml/soap framework of > your choice should work. > However I've got some codegen in place if you want to use it as is: > https://github.com/rahulsom/ihe-iti > > R, > rahul > > On Aug 15, 2013, at 10:36 AM, Suranga Kasthurirathne <sur...@gm...> > wrote: > > > Hi, > > May I ask if there are any plans to support HL7 V3, which is currently not > supported by HAPI ? If yes, roughly when will this release happen ? > > Thank you, > > > -- > Best Regards, > Suranga > ------------------------------------------------------------------------------ > Get 100% visibility into Java/.NET code with AppDynamics Lite! > It's a free troubleshooting tool designed for production. > Get down to code-level detail for bottlenecks, with <2% overhead. > Download for free and get started troubleshooting in minutes. > > http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk_______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > > -- Best Regards, Suranga |
From: Rahul S. <rs...@ce...> - 2013-08-15 17:48:56
|
Suranga, V3 is XML Based and has xsds and wsdls. So any java xml/soap framework of your choice should work. However I've got some codegen in place if you want to use it as is: https://github.com/rahulsom/ihe-iti R, rahul On Aug 15, 2013, at 10:36 AM, Suranga Kasthurirathne <sur...@gm...> wrote: > > Hi, > > May I ask if there are any plans to support HL7 V3, which is currently not supported by HAPI ? If yes, roughly when will this release happen ? > > Thank you, > > > -- > Best Regards, > Suranga > ------------------------------------------------------------------------------ > Get 100% visibility into Java/.NET code with AppDynamics Lite! > It's a free troubleshooting tool designed for production. > Get down to code-level detail for bottlenecks, with <2% overhead. > Download for free and get started troubleshooting in minutes. > http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk_______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Suranga K. <sur...@gm...> - 2013-08-15 17:36:31
|
Hi, May I ask if there are any plans to support HL7 V3, which is currently not supported by HAPI ? If yes, roughly when will this release happen ? Thank you, -- Best Regards, Suranga |
From: <dam...@un...> - 2013-08-06 15:35:31
|
hello, after check and verifications, it looks like the path handled by Java works (this is not the case when you try to access the file (with such a path) directly via Windows Explorer). In fact, this message is sent by FileBasedGenerator when the id_file is not yet set. I had constant errors (nacks received) and i suspected this to be the cause, but it was a problem in the message itself. Regards, Damien dam...@un... a écrit : > Hello all, > > I have a problem with a ReceivingApplication object (to get and handle > HL7 messages) : when it tries (internally) to read the id_file, the > path looks like something > D:\UCL\Orthogen\Dev\OrthogenServer\.\id_file. However, such a path > doesn?t seem to be valid on Windows 7. Is there any workaround about > that ? > > Thanks in advance ! > Damien > > > > > ------------------------------------------------------------------------------ > Get your SQL database under version control now! > Version control is standard for application code, but databases havent > caught up. So what steps can you take to put your SQL databases under > version control? Why should you start doing it? Read more to find out. > http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > |
From: <dam...@un...> - 2013-08-06 13:26:49
|
Hello all, I have a problem with a ReceivingApplication object (to get and handle HL7 messages) : when it tries (internally) to read the id_file, the path looks like something D:\UCL\Orthogen\Dev\OrthogenServer\.\id_file. However, such a path doesn?t seem to be valid on Windows 7. Is there any workaround about that ? Thanks in advance ! Damien |
From: Senthil M. <vbs...@gm...> - 2013-08-02 16:16:44
|
Thank you very much. It is working perfectly as you suggested. On Fri, Aug 2, 2013 at 9:19 PM, Christian Ohr <chr...@gm...>wrote: > In HAPI 2.1, it is preferred to set the ValidationContext over the > HapiContext (context.setValidationContext(...)) and obtain the Parser from > there (context.getPipeParser()) > > If you need a proper Validation elsewhere from the same HapiContext , you > can disable validation during parsing with > context.getParserConfiguration().setValidating(false); > > cheers > Christian > > > 2013/8/2 Senthil Muthiah <vbs...@gm...> > >> Hi >> >> I am parsion ORU Message. I do not want to do the validation while >> parsing. >> So i use the following >> >> PipeParser pipeParser = new PipeParser(); >> pipeParser.setValidationContext(new NoValidation()); >> Message message = pipeParser.parse(HL7Message); >> Terser terser = new Terser(message); >> LOG.debug("/PID-2" + terser.get("/.PID-2")); >> >> But setValidationContext is deprecated, so what is the alternate one ? >> >> Regards >> Senthil M >> >> >> >> ------------------------------------------------------------------------------ >> Get your SQL database under version control now! >> Version control is standard for application code, but databases havent >> caught up. So what steps can you take to put your SQL databases under >> version control? Why should you start doing it? Read more to find out. >> >> http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> > |
From: Christian O. <chr...@gm...> - 2013-08-02 15:49:16
|
In HAPI 2.1, it is preferred to set the ValidationContext over the HapiContext (context.setValidationContext(...)) and obtain the Parser from there (context.getPipeParser()) If you need a proper Validation elsewhere from the same HapiContext , you can disable validation during parsing with context.getParserConfiguration().setValidating(false); cheers Christian 2013/8/2 Senthil Muthiah <vbs...@gm...> > Hi > > I am parsion ORU Message. I do not want to do the validation while > parsing. > So i use the following > > PipeParser pipeParser = new PipeParser(); > pipeParser.setValidationContext(new NoValidation()); > Message message = pipeParser.parse(HL7Message); > Terser terser = new Terser(message); > LOG.debug("/PID-2" + terser.get("/.PID-2")); > > But setValidationContext is deprecated, so what is the alternate one ? > > Regards > Senthil M > > > > ------------------------------------------------------------------------------ > Get your SQL database under version control now! > Version control is standard for application code, but databases havent > caught up. So what steps can you take to put your SQL databases under > version control? Why should you start doing it? Read more to find out. > http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: Senthil M. <vbs...@gm...> - 2013-08-02 11:05:57
|
Hi I am parsion ORU Message. I do not want to do the validation while parsing. So i use the following PipeParser pipeParser = new PipeParser(); pipeParser.setValidationContext(new NoValidation()); Message message = pipeParser.parse(HL7Message); Terser terser = new Terser(message); LOG.debug("/PID-2" + terser.get("/.PID-2")); But setValidationContext is deprecated, so what is the alternate one ? Regards Senthil M |
From: vijayaratha v. <vij...@gm...> - 2013-08-01 08:42:21
|
Hi all; Anyone knows whether hapi supports this? Thanks.. On 30 July 2013 15:38, vijayaratha vijayasingam <vij...@gm...>wrote: > Hi all; > > Would like to know whether Hapi supports any batch processing > mechanism?(ie: ability of elaborating groups of messages stored in a > batch envelope following specific HL7 syntax and format) > > In the following doc[1] it is mentioned , that it is not supported.. > //At the time of writing, enhanced mode, two-phase reply, continuation > messages, and batch processing are unsupported// > > It may be supported in the later releases.. > Anyone knows? If so, can anybody point me a sample and documentaion? > [1] http://hl7api.sourceforge.net/apidocs/ca/uhn/hl7v2/app/Initiator.html > > Thanks and Regards > -- > -Ratha > http://vvratha.blogspot.com/ > -- -Ratha http://vvratha.blogspot.com/ |
From: vijayaratha v. <vij...@gm...> - 2013-07-30 10:08:19
|
Hi all; Would like to know whether Hapi supports any batch processing mechanism?(ie: ability of elaborating groups of messages stored in a batch envelope following specific HL7 syntax and format) In the following doc[1] it is mentioned , that it is not supported.. //At the time of writing, enhanced mode, two-phase reply, continuation messages, and batch processing are unsupported// It may be supported in the later releases.. Anyone knows? If so, can anybody point me a sample and documentaion? [1] http://hl7api.sourceforge.net/apidocs/ca/uhn/hl7v2/app/Initiator.html Thanks and Regards -- -Ratha http://vvratha.blogspot.com/ |
From: Rahul (Certify) <rs...@ce...> - 2013-07-28 16:34:47
|
Hl7 needs Carriage Returns. If you have Newline, that could cause this. Sent from my iPhone > On Jul 28, 2013, at 1:11 AM, Lisa <lis...@go...> wrote: > > Hi everyone, > > I have a problem when using the terser to parse an ORU_R01 message. I receive the message via an REST POSt request. > It still works for the MSH segment, but starting with the PID segment, my terser always returns null. > > e.g. > mContext = new DefaultHapiContext(); > mParser = mContext.getPipeParser(); > mMessage = (ORU_R01) mParser.parse(msgRepresentation); > Terser terser = new Terser(mMessage); > String result = terser.get("/PATIENT_RESULT/ORU_R01_ORDER_OBSERVATION/ORU_R01_OBSERVATION/OBX-5"); > > The strange thing is, that if I read in the same message from a file with the help of an Hl7InputStreamMessageIterator > the terser works fine. > Can somebody help me? > I'm really desperate… > > Thanks in advance > Greets > ------------------------------------------------------------------------------ > See everything from the browser to the database with AppDynamics > Get end-to-end visibility with application monitoring from AppDynamics > Isolate bottlenecks and diagnose root cause in seconds. > Start your free trial of AppDynamics Pro today! > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Lisa <lis...@go...> - 2013-07-28 08:11:28
|
Hi everyone, I have a problem when using the terser to parse an ORU_R01 message. I receive the message via an REST POSt request. It still works for the MSH segment, but starting with the PID segment, my terser always returns null. e.g. mContext = new DefaultHapiContext(); mParser = mContext.getPipeParser(); mMessage = (ORU_R01) mParser.parse(msgRepresentation); Terser terser = new Terser(mMessage); String result = terser.get("/PATIENT_RESULT/ORU_R01_ORDER_OBSERVATION/ORU_R01_OBSERVATION/OBX-5"); The strange thing is, that if I read in the same message from a file with the help of an Hl7InputStreamMessageIterator the terser works fine. Can somebody help me? I'm really desperate… Thanks in advance Greets |
From: Uddipan M. <udd...@tc...> - 2013-07-19 12:16:22
|
Hi all, I am facing a problem while sending a base64 string inside HL7 message in the OBX segment field 5 of the ORU_R01 message. Actually I have encoded one png image in base64 string and the size of base64 string is around 37kB. But while receiving the message on server side(inside servlet) I am getting an error.(I am trying to receive the message in processMessage method with signature public Message processMessage(Message theMessage, Map<String, Object> theMetadata) throws ReceivingApplicationException, HL7Exception) Jul 19, 2013 2:35:06 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet [com.tcs.hl7server.MyServer] in context with path [/MyHL7Server] threw exception java.lang.ArrayIndexOutOfBoundsException at java.lang.System.arraycopy(Native Method) at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:441) at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:315) at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:200) at ca.uhn.hl7v2.hoh.encoder.AbstractHl7OverHttpDecoder.readBytesNonChunked(AbstractHl7OverHttpDecoder.java:370) at ca.uhn.hl7v2.hoh.encoder.AbstractHl7OverHttpDecoder.doReadContentsFromInputStreamAndDecode(AbstractHl7OverHttpDecoder.java:191) at ca.uhn.hl7v2.hoh.encoder.AbstractHl7OverHttpDecoder.readContentsFromInputStreamAndDecode(AbstractHl7OverHttpDecoder.java:421) at ca.uhn.hl7v2.hoh.raw.server.HohRawServlet.doPost(HohRawServlet.java:68) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) But if I try to capture the incoming HL7 message in doPost method of the servlet,the Message can be read using BufferedReader. Can anyone please point out why the error is coming at line no 370 in AbstractHl7OverHttpDecoder.java ?Is there any size limit of HL7 message implemented using HAPi? Uddipan Mukherjee Systems Engineer Tata Consultancy Services Ph:- 8981151600 Cell:- 8125893206 Mailto: udd...@tc... Website: http://www.tcs.com ____________________________________________ Experience certainty. IT Services Business Solutions Consulting ____________________________________________ =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you |
From: Gabi <ga...@id...> - 2013-07-19 10:22:21
|
Hello I'm a beginner here, I've started trying to read the date in an appointment message. I've started with the typical code in the example: HapiContext context = new DefaultHapiContext(); Parser p = context.getGenericParser(); Message hapiMsg=null; try { hapiMsg = p.parse(msg); } catch (EncodingNotSupportedException e) { e.printStackTrace(); return; } catch (HL7Exception e) { e.printStackTrace(); return; } And then: SIU_S13 siuMsg = (SIU_S13)hapiMsg; SCH sch=siuMsg.getSCH(); The message is SIU^S13, it's version 2.3, and after doing SCH sch=siuMsg.getSCH(); , whatever field I try to get is empty, but this part of the HL7 message is not empty, it's something like: SCH|23702095|23702095||||||WC-NP|||^^^20130717150000^20130717153000^^^^| sch.getSch11_AppointmentTimingQuantity() or anything under sch.getSchXX is emprty or null. What I'm doing wrong? Regards. John. |
From: Loyall, D. <dav...@ne...> - 2013-07-18 15:13:48
|
Hello. I'm trying to build rev 893. But the tests don't pass. I am aware that I can skip the tests, but that's not the path I'm interested in. After some googling, I learned that I can't build all of HAPI on my Linux box anyway. Apparently the "HL7 Database" is accessed via Windows-specific mechanisms during the build. I have some ideas about removing that limitation. But first, I'd like to get as much of the build working here as I can. So, please have a look at hl7api-code/hapi-mvn/hapi-test/target/surefire-reports/ca.uhn.hl7v2.model.SuperStructureTest.txt below. Is this an expected error? It looks like a problem with the message definitions, or the test data, or something like that rather than the code that processes the test data? Thanks, cheers, --Dave ------------------------------------------------------------------------------- Test set: ca.uhn.hl7v2.model.SuperStructureTest ------------------------------------------------------------------------------- Tests run: 6, Failures: 0, Errors: 4, Skipped: 0, Time elapsed: 0.054 sec <<< FAILURE! testValidationForCreateMessage(ca.uhn.hl7v2.model.SuperStructureTest) Time elapsed: 0.01 sec <<< ERROR! ca.uhn.hl7v2.HL7Exception: Message (superstructure ADT_AXX) of type ADT_A01 must not have content in MSH at ca.uhn.hl7v2.validation.ReportingValidationExceptionHandler.result(ReportingValidationExceptionHandler.java:85) at ca.uhn.hl7v2.validation.ReportingValidationExceptionHandler.result(ReportingValidationExceptionHandler.java:43) at ca.uhn.hl7v2.validation.AbstractValidator.validate(AbstractValidator.java:83) at ca.uhn.hl7v2.parser.Parser.assertMessageValidates(Parser.java:611) at ca.uhn.hl7v2.parser.Parser.encode(Parser.java:275) at ca.uhn.hl7v2.parser.PipeParser.encode(PipeParser.java:997) at ca.uhn.hl7v2.model.SuperStructureTest.testValidationForCreateMessage(SuperStructureTest.java:107) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) Caused by: ca.uhn.hl7v2.validation.ValidationException: Message (superstructure ADT_AXX) of type ADT_A01 must not have content in MSH at ca.uhn.hl7v2.validation.builder.support.OnlyAllowableSegmentsInSuperstructureRule.checkStructure(OnlyAllowableSegmentsInSuperstructureRule.java:74) at ca.uhn.hl7v2.validation.builder.support.OnlyAllowableSegmentsInSuperstructureRule.apply(OnlyAllowableSegmentsInSuperstructureRule.java:55) at ca.uhn.hl7v2.validation.builder.support.OnlyAllowableSegmentsInSuperstructureRule.apply(OnlyAllowableSegmentsInSuperstructureRule.java:46) at ca.uhn.hl7v2.validation.AbstractValidator.testMessageRules(AbstractValidator.java:98) at ca.uhn.hl7v2.validation.AbstractValidator.validate(AbstractValidator.java:82) ... 33 more testParseTwoPidA01(ca.uhn.hl7v2.model.SuperStructureTest) Time elapsed: 0 sec <<< ERROR! ca.uhn.hl7v2.HL7Exception: Superstructure ADT_AXX does not apply to message ADT_A01, can not parse. at ca.uhn.hl7v2.parser.PipeParser.getStructureDefinition(PipeParser.java:260) at ca.uhn.hl7v2.parser.PipeParser.parse(PipeParser.java:1101) at ca.uhn.hl7v2.model.AbstractMessage.parse(AbstractMessage.java:200) at ca.uhn.hl7v2.model.SuperStructureTest.testParseTwoPidA01(SuperStructureTest.java:32) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) testParseTwoPidA17(ca.uhn.hl7v2.model.SuperStructureTest) Time elapsed: 0.001 sec <<< ERROR! ca.uhn.hl7v2.HL7Exception: Superstructure ADT_AXX does not apply to message ADT_A17, can not parse. at ca.uhn.hl7v2.parser.PipeParser.getStructureDefinition(PipeParser.java:260) at ca.uhn.hl7v2.parser.PipeParser.parse(PipeParser.java:1101) at ca.uhn.hl7v2.model.AbstractMessage.parse(AbstractMessage.java:200) at ca.uhn.hl7v2.model.SuperStructureTest.testParseTwoPidA17(SuperStructureTest.java:51) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) testVersionsLoadCorrectly(ca.uhn.hl7v2.model.SuperStructureTest) Time elapsed: 0.01 sec <<< ERROR! ca.uhn.hl7v2.HL7Exception: Superstructure ADT_AXX does not apply to message ADT_A01, can not parse. at ca.uhn.hl7v2.parser.PipeParser.getStructureDefinition(PipeParser.java:260) at ca.uhn.hl7v2.parser.PipeParser.parse(PipeParser.java:1101) at ca.uhn.hl7v2.model.AbstractMessage.parse(AbstractMessage.java:200) at ca.uhn.hl7v2.model.SuperStructureTest.testVersionsLoadCorrectly(SuperStructureTest.java:160) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) |
From: Bartłomiej B. <b.b...@ph...> - 2013-07-12 10:28:39
|
Hi, I was following example send multiple messages out <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendLotsOfMessages.html> and found out something like this: // Setup server to listen for incoming message int port = 8813; boolean useTls = false; HapiContext context = new DefaultHapiContext(); HL7Service server = context.newServer(port, useTls); // We want to listen ADT^A01 messages ReceivingApplication handler = (ReceivingApplication) new ExampleReceiverApplication(); server.registerApplication("ADT", "A01", handler); So I run the application and as far as I understand I have setup server and a client application which will listen for ADT^A01 messages. Now I want to create another application (let's say another client) which will connect with that already created server and listen for ADT^A02 messages. I found on documentation something like that: "If you are wondering how to integrate HAPI into an existing server application, this is probably the place. Create a class that implements ReceivingApplication, then look at HL7Server and ApplicationRouter to see how to get HAPI to listen for messages on a socket and pass them to your ReceivingApplication." But how should I use HL7Server and ApplicationRouter to connect with previously created server? Maybe I'm missing something in the logic but let's consider that one software already has running server and I want to integrate with them to listen for messages special for my application (like ADT^A02) - how to do this? -- Bartłomiej Buczek Phoenix Tecnologie Sp. z o.o. ul. Wiosenna 14/2; 53-017 Wrocław, Poland NIP: 899 258 73 59 Tel. +48 71 338 65 64; Kom. +48 668 891 540 Fax +48 71 338 65 55 b.b...@ph... phxtecno.com |
From: Ian V. <Ian...@he...> - 2013-07-07 21:32:51
|
We have been finding the same, run time seems to be 1.5, but we have had some issues where generics have been used in imported libraries. I will have to conduct a set of tests. Given that you have managed to nail JCAPS, what did you use to implement queues/topics, guaranteed delivery and such things that the integration engine offered? Thanks Ian >>> James Agnew <ja...@ja...> 05/07/13 21:36 >>> Hi Ian, Does the 2.1 JAR actually fail to work in your JCAPS install? We actually just finally put the last nail the coffin of our own JCAPS installation at UHN about 3 weeks ago oddly enough, but for years we were running 5.1.2 with HAPI embedded in it (the non JDK14 version). The edesigner doesn't support Java 5+ code, but the runtime worked fine with it so really all this prevented was the use of things like generics in the code editor. Cheers, James On Thu, Jul 4, 2013 at 8:56 PM, Ian Vowles <Ian...@he...> wrote: I like the look of isEmpty(), easy to see and understand. Leads me to another question. In HAPI 2.1 I don't see a java 1.4 implementation. We use JCAPS and HAPI together these days, but our JCAPS version expects code at 1.4, and can run some stuff at 1.5 Thanks Ian >>> James Agnew <ja...@ja...> 03/07/13 21:47 >>> Oops, looks like Christian beat me to it. :) James On Wed, Jul 3, 2013 at 7:41 AM, James Agnew <ja...@ja...> wrote: Hi Ian, The cleaner alternative, which was just added in HAPI 2.1 oddly enough is as follows: if (!hl7Message.getINSURANCE(0).getIN1().isEmpty()) { .. blah .. } There is also the somewhat uglier alternative which would work in older releases: if (!hl7Message.getINSURANCE(0).getAll("IN1").length == 0) { .. blah .. } It's worth noting that these two techniques are not 100% semantically equivalent. In the case of a message containing an empty IN1 segment (in other words, you parsed a message that contained an IN1 segment, but that segment had no field values), the second "blah" would get triggered but the first one wouldn't. Cheers, James On Tue, Jul 2, 2013 at 7:51 PM, Ian Vowles <Ian...@he...> wrote: When building a transform of an HL7 message where some segment is optional, but if it is present lots of fields are to be checked and transformed, I like to check for existence of the segment first. Using HAPI I code the check like this: if (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { hl7In1 = hl7Message.getINSURANCE(0).getIN1(); . . Do the get/set/change of various fields of the hl7In1 . . } Is this a good way to check if it's there? It has never looked quite right to me, but I haven't figured out another way. Thanks Ian ******************************************************************************** This email, including any attachments sent with it, is confidential and for the sole use of the intended recipient(s). This confidentiality is not waived or lost, if you receive it and you are not the intended recipient(s), or if it is transmitted/received in error. Any unauthorised use, alteration, disclosure, distribution or review of this email is strictly prohibited. The information contained in this email, including any attachment sent with it, may be subject to a statutory duty of confidentiality if it relates to health service matters. If you are not the intended recipient(s), or if you have received this email in error, you are asked to immediately notify the sender by telephone collect on Australia +61 1800 198 175 or by return email. You should also delete this email, and any copies, from your computer system network and destroy any hard copies produced. If not an intended recipient of this email, you must not copy, distribute or take any action(s) that relies on it; any form of disclosure, modification, distribution and/or publication of this email is also prohibited. Although Queensland Health takes all reasonable steps to ensure this email does not contain malicious software, Queensland Health does not accept responsibility for the consequences if any person's computer inadvertently suffers any disruption to services, loss of information, harm or is infected with a virus, other malicious computer programme or code that may occur as a consequence of receiving this email. Unless stated otherwise, this email represents only the views of the sender and not the views of the Queensland Government. ********************************************************************************** ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ Hl7api-devel mailing list Hl7...@li... https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: James A. <ja...@ja...> - 2013-07-05 11:37:20
|
Hi Ian, Does the 2.1 JAR actually fail to work in your JCAPS install? We actually just finally put the last nail the coffin of our own JCAPS installation at UHN about 3 weeks ago oddly enough, but for years we were running 5.1.2 with HAPI embedded in it (the non JDK14 version). The edesigner doesn't support Java 5+ code, but the runtime worked fine with it so really all this prevented was the use of things like generics in the code editor. Cheers, James On Thu, Jul 4, 2013 at 8:56 PM, Ian Vowles <Ian...@he...>wrote: > I like the look of isEmpty(), easy to see and understand. > > Leads me to another question. > > In HAPI 2.1 I don't see a java 1.4 implementation. We use JCAPS and HAPI > together these days, but our JCAPS version expects code at 1.4, and can run > some stuff at 1.5 > > Thanks > Ian > > >>> James Agnew <ja...@ja...> 03/07/13 21:47 >>> > Oops, looks like Christian beat me to it. :) > > James > > > On Wed, Jul 3, 2013 at 7:41 AM, James Agnew <ja...@ja...> wrote: > >> Hi Ian, >> >> The cleaner alternative, which was just added in HAPI 2.1 oddly enough is >> as follows: >> >> if (!hl7Message.getINSURANCE(0).getIN1().isEmpty()) { >> .. blah .. >> } >> >> There is also the somewhat uglier alternative which would work in older >> releases: >> >> if (!hl7Message.getINSURANCE(0).getAll("IN1").length == 0) { >> .. blah .. >> } >> >> It's worth noting that these two techniques are not 100% semantically >> equivalent. In the case of a message containing an empty IN1 segment (in >> other words, you parsed a message that contained an IN1 segment, but that >> segment had no field values), the second "blah" would get triggered but the >> first one wouldn't. >> >> Cheers, >> James >> >> >> On Tue, Jul 2, 2013 at 7:51 PM, Ian Vowles <Ian...@he... >> > wrote: >> >>> When building a transform of an HL7 message where some segment is >>> optional, but if it is present lots of fields are to be checked and >>> transformed, I like to check for existence of the segment first. >>> Using HAPI I code the check like this: >>> if (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { >>> hl7In1 = hl7Message.getINSURANCE(0).getIN1(); >>> . >>> . >>> Do the get/set/change of various fields of the hl7In1 >>> . >>> . >>> } >>> Is this a good way to check if it's there? It has never looked quite >>> right to me, but I haven't figured out another way. >>> Thanks >>> Ian >>> >>> >>> ******************************************************************************** >>> >>> This email, including any attachments sent with it, is confidential and >>> for the sole use of the intended recipient(s). This confidentiality is not >>> waived or lost, if you receive it and you are not the intended >>> recipient(s), or if it is transmitted/received in error. >>> >>> Any unauthorised use, alteration, disclosure, distribution or review of >>> this email is strictly prohibited. The information contained in this email, >>> including any attachment sent with it, may be subject to a statutory duty >>> of confidentiality if it relates to health service matters. >>> >>> If you are not the intended recipient(s), or if you have received this >>> email in error, you are asked to immediately notify the sender by telephone >>> collect on Australia +61 1800 198 175 or by return email. You should also >>> delete this email, and any copies, from your computer system network and >>> destroy any hard copies produced. >>> >>> If not an intended recipient of this email, you must not copy, >>> distribute or take any action(s) that relies on it; any form of disclosure, >>> modification, distribution and/or publication of this email is also >>> prohibited. >>> >>> Although Queensland Health takes all reasonable steps to ensure this >>> email does not contain malicious software, Queensland Health does not >>> accept responsibility for the consequences if any person's computer >>> inadvertently suffers any disruption to services, loss of information, harm >>> or is infected with a virus, other malicious computer programme or code >>> that may occur as a consequence of receiving this email. >>> >>> Unless stated otherwise, this email represents only the views of the >>> sender and not the views of the Queensland Government. >>> >>> >>> ********************************************************************************** >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> This SF.net email is sponsored by Windows: >>> >>> Build for Windows Store. >>> >>> http://p.sf.net/sfu/windows-dev2dev >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> >>> >> > |
From: James A. <ja...@ja...> - 2013-07-03 11:48:19
|
Oops, looks like Christian beat me to it. :) James On Wed, Jul 3, 2013 at 7:41 AM, James Agnew <ja...@ja...> wrote: > Hi Ian, > > The cleaner alternative, which was just added in HAPI 2.1 oddly enough is > as follows: > > if (!hl7Message.getINSURANCE(0).getIN1().isEmpty()) { > .. blah .. > } > > There is also the somewhat uglier alternative which would work in older > releases: > > if (!hl7Message.getINSURANCE(0).getAll("IN1").length == 0) { > .. blah .. > } > > It's worth noting that these two techniques are not 100% semantically > equivalent. In the case of a message containing an empty IN1 segment (in > other words, you parsed a message that contained an IN1 segment, but that > segment had no field values), the second "blah" would get triggered but the > first one wouldn't. > > Cheers, > James > > > On Tue, Jul 2, 2013 at 7:51 PM, Ian Vowles <Ian...@he...>wrote: > >> When building a transform of an HL7 message where some segment is >> optional, but if it is present lots of fields are to be checked and >> transformed, I like to check for existence of the segment first. >> >> Using HAPI I code the check like this: >> >> if >> (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { >> hl7In1 = hl7Message.getINSURANCE(0).getIN1(); >> . >> . >> Do the get/set/change of various fields of the hl7In1 >> . >> . >> } >> >> Is this a good way to check if it's there? It has never looked quite >> right to me, but I haven't figured out another way. >> >> Thanks >> Ian >> >> >> ******************************************************************************** >> >> This email, including any attachments sent with it, is confidential and >> for the sole use of the intended recipient(s). This confidentiality is not >> waived or lost, if you receive it and you are not the intended >> recipient(s), or if it is transmitted/received in error. >> >> Any unauthorised use, alteration, disclosure, distribution or review of >> this email is strictly prohibited. The information contained in this email, >> including any attachment sent with it, may be subject to a statutory duty >> of confidentiality if it relates to health service matters. >> >> If you are not the intended recipient(s), or if you have received this >> email in error, you are asked to immediately notify the sender by telephone >> collect on Australia +61 1800 198 175 or by return email. You should also >> delete this email, and any copies, from your computer system network and >> destroy any hard copies produced. >> >> If not an intended recipient of this email, you must not copy, distribute >> or take any action(s) that relies on it; any form of disclosure, >> modification, distribution and/or publication of this email is also >> prohibited. >> >> Although Queensland Health takes all reasonable steps to ensure this >> email does not contain malicious software, Queensland Health does not >> accept responsibility for the consequences if any person's computer >> inadvertently suffers any disruption to services, loss of information, harm >> or is infected with a virus, other malicious computer programme or code >> that may occur as a consequence of receiving this email. >> >> Unless stated otherwise, this email represents only the views of the >> sender and not the views of the Queensland Government. >> >> >> ********************************************************************************** >> >> >> >> >> ------------------------------------------------------------------------------ >> This SF.net email is sponsored by Windows: >> >> Build for Windows Store. >> >> http://p.sf.net/sfu/windows-dev2dev >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> > |
From: James A. <ja...@ja...> - 2013-07-03 11:41:47
|
Hi Ian, The cleaner alternative, which was just added in HAPI 2.1 oddly enough is as follows: if (!hl7Message.getINSURANCE(0).getIN1().isEmpty()) { .. blah .. } There is also the somewhat uglier alternative which would work in older releases: if (!hl7Message.getINSURANCE(0).getAll("IN1").length == 0) { .. blah .. } It's worth noting that these two techniques are not 100% semantically equivalent. In the case of a message containing an empty IN1 segment (in other words, you parsed a message that contained an IN1 segment, but that segment had no field values), the second "blah" would get triggered but the first one wouldn't. Cheers, James On Tue, Jul 2, 2013 at 7:51 PM, Ian Vowles <Ian...@he...>wrote: > When building a transform of an HL7 message where some segment is > optional, but if it is present lots of fields are to be checked and > transformed, I like to check for existence of the segment first. > > Using HAPI I code the check like this: > > if > (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { > hl7In1 = hl7Message.getINSURANCE(0).getIN1(); > . > . > Do the get/set/change of various fields of the hl7In1 > . > . > } > > Is this a good way to check if it's there? It has never looked quite > right to me, but I haven't figured out another way. > > Thanks > Ian > > > ******************************************************************************** > > This email, including any attachments sent with it, is confidential and > for the sole use of the intended recipient(s). This confidentiality is not > waived or lost, if you receive it and you are not the intended > recipient(s), or if it is transmitted/received in error. > > Any unauthorised use, alteration, disclosure, distribution or review of > this email is strictly prohibited. The information contained in this email, > including any attachment sent with it, may be subject to a statutory duty > of confidentiality if it relates to health service matters. > > If you are not the intended recipient(s), or if you have received this > email in error, you are asked to immediately notify the sender by telephone > collect on Australia +61 1800 198 175 or by return email. You should also > delete this email, and any copies, from your computer system network and > destroy any hard copies produced. > > If not an intended recipient of this email, you must not copy, distribute > or take any action(s) that relies on it; any form of disclosure, > modification, distribution and/or publication of this email is also > prohibited. > > Although Queensland Health takes all reasonable steps to ensure this email > does not contain malicious software, Queensland Health does not accept > responsibility for the consequences if any person's computer inadvertently > suffers any disruption to services, loss of information, harm or is > infected with a virus, other malicious computer programme or code that may > occur as a consequence of receiving this email. > > Unless stated otherwise, this email represents only the views of the > sender and not the views of the Queensland Government. > > > ********************************************************************************** > > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: Christian O. <chr...@gm...> - 2013-07-03 08:40:04
|
Try if hl7Message.getINSURANCE(0).getIN1().isEmpty() works for you. And, have a look at the Validation framework in HAPI (some examples in http://hl7api.sourceforge.net/devbyexample.html) - basically you define your expectations as MessageRules and associate these rules to a ValidationContext. cheers Christian 2013/7/3 Ian Vowles <Ian...@he...> > When building a transform of an HL7 message where some segment is > optional, but if it is present lots of fields are to be checked and > transformed, I like to check for existence of the segment first. > > Using HAPI I code the check like this: > > if > (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { > hl7In1 = hl7Message.getINSURANCE(0).getIN1(); > . > . > Do the get/set/change of various fields of the hl7In1 > . > . > } > > Is this a good way to check if it's there? It has never looked quite > right to me, but I haven't figured out another way. > > Thanks > Ian > > > ******************************************************************************** > > This email, including any attachments sent with it, is confidential and > for the sole use of the intended recipient(s). This confidentiality is not > waived or lost, if you receive it and you are not the intended > recipient(s), or if it is transmitted/received in error. > > Any unauthorised use, alteration, disclosure, distribution or review of > this email is strictly prohibited. The information contained in this email, > including any attachment sent with it, may be subject to a statutory duty > of confidentiality if it relates to health service matters. > > If you are not the intended recipient(s), or if you have received this > email in error, you are asked to immediately notify the sender by telephone > collect on Australia +61 1800 198 175 or by return email. You should also > delete this email, and any copies, from your computer system network and > destroy any hard copies produced. > > If not an intended recipient of this email, you must not copy, distribute > or take any action(s) that relies on it; any form of disclosure, > modification, distribution and/or publication of this email is also > prohibited. > > Although Queensland Health takes all reasonable steps to ensure this email > does not contain malicious software, Queensland Health does not accept > responsibility for the consequences if any person's computer inadvertently > suffers any disruption to services, loss of information, harm or is > infected with a virus, other malicious computer programme or code that may > occur as a consequence of receiving this email. > > Unless stated otherwise, this email represents only the views of the > sender and not the views of the Queensland Government. > > > ********************************************************************************** > > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: Ian V. <Ian...@he...> - 2013-07-02 23:52:18
|
When building a transform of an HL7 message where some segment is optional, but if it is present lots of fields are to be checked and transformed, I like to check for existence of the segment first. Using HAPI I code the check like this: if (!("IN1".equals(hl7Message.getINSURANCE(0).getIN1().encode()))) { hl7In1 = hl7Message.getINSURANCE(0).getIN1(); . . Do the get/set/change of various fields of the hl7In1 . . } Is this a good way to check if it's there? It has never looked quite right to me, but I haven't figured out another way. Thanks Ian ******************************************************************************** This email, including any attachments sent with it, is confidential and for the sole use of the intended recipient(s). This confidentiality is not waived or lost, if you receive it and you are not the intended recipient(s), or if it is transmitted/received in error. Any unauthorised use, alteration, disclosure, distribution or review of this email is strictly prohibited. The information contained in this email, including any attachment sent with it, may be subject to a statutory duty of confidentiality if it relates to health service matters. If you are not the intended recipient(s), or if you have received this email in error, you are asked to immediately notify the sender by telephone collect on Australia +61 1800 198 175 or by return email. You should also delete this email, and any copies, from your computer system network and destroy any hard copies produced. If not an intended recipient of this email, you must not copy, distribute or take any action(s) that relies on it; any form of disclosure, modification, distribution and/or publication of this email is also prohibited. Although Queensland Health takes all reasonable steps to ensure this email does not contain malicious software, Queensland Health does not accept responsibility for the consequences if any person's computer inadvertently suffers any disruption to services, loss of information, harm or is infected with a virus, other malicious computer programme or code that may occur as a consequence of receiving this email. Unless stated otherwise, this email represents only the views of the sender and not the views of the Queensland Government. ********************************************************************************** |
From: Niederlander A. <ani...@uu...> - 2013-07-02 14:23:48
|
Hi, Is it normal that the field OBX.8 (AbnormalFlags) allow repetition in version 2.3 and does not allow repetition in version 2.4 Thank your for your help. -- Best regards Alex Niederländer Support responsible GNT Suisse Rue Peillonnex, 39 CH-1225 Chêne-Bourg Tél +41 22 869 19 99 Fax +41 22 869 19 88 |