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 >> >> > |