my $seg = new Net::HL7::Segments::MSH();
$seg->setField(9, "ADT^A24");
print $seg->getField(1);
The Net::HL7::Segments::MSH is an implementation of the Net::HL7::Segment class.
The MSH segment is a bit different from other segments, in that the first
field is the field separator after the segment name. Other fields thus start
counting from 2! The setting for the field separator for a whole message can
be changed by the setField method on index 1 of the MSH for that message. The
MSH segment also contains the default settings for field 2,
COMPONENT_SEPARATOR, REPETITION_SEPARATOR, ESCAPE_CHARACTER and
SUBCOMPONENT_SEPARATOR. These fields default to ^, ~, \ and &
respectively.
- $msh = new Net::HL7::Segments::MSH([$fields])
- Create an instance of the MSH segment. If a reference to an array is
given, all fields will be filled from that array. Note that for composed
fields and subcomponents, the array may hold subarrays and subsubarrays.
If the reference is not given, the MSH segment will be created with the
MSH 1,2,7,10 and 12 fields filled in for convenience.
- setField($index, $value)
- Set the field specified by index to value. Indices start at 1, to stay
with the HL7 standard. Trying to set the value at index 0 has no effect.
Setting the value on index 1, will effectively change the value of
Net::HL7::Message::FIELD_SEPARATOR for the message containing this
segment, if the value has length 1; setting the field on index 2 will
change the values of COMPONENT_SEPARATOR, REPETITION_SEPARATOR,
ESCAPE_CHARACTER and SUBCOMPONENT_SEPARATOR for the message, if the string
is of length 4.
D.A.Dokter <dokter@wyldebeast-wunderliebe.com>
Copyright (c) 2002 D.A.Dokter. All rights reserved. This program is free
software; you can redistribute it and/or modify it under the same terms as
Perl itself.
Hey! The above document had some coding errors, which are explained
below:
- Around line 131:
- You forgot a '=back' before '=head1'