View Javadoc
1   /*
2    * This class is an auto-generated source file for a HAPI
3    * HL7 v2.x standard structure class.
4    *
5    * For more information, visit: http://hl7api.sourceforge.net/
6    * 
7    * The contents of this file are subject to the Mozilla Public License Version 1.1 
8    * (the "License"); you may not use this file except in compliance with the License. 
9    * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
10   * Software distributed under the License is distributed on an "AS IS" basis, 
11   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
12   * specific language governing rights and limitations under the License. 
13   * 
14   * The Original Code is "[file_name]".  Description: 
15   * "[one_line_description]" 
16   * 
17   * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
18   * 2012.  All Rights Reserved. 
19   * 
20   * Contributor(s): ______________________________________. 
21   * 
22   * Alternatively, the contents of this file may be used under the terms of the 
23   * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
24   * applicable instead of those above.  If you wish to allow use of your version of this 
25   * file only under the terms of the GPL and not to allow others to use your version 
26   * of this file under the MPL, indicate your decision by deleting  the provisions above 
27   * and replace  them with the notice and other provisions required by the GPL License.  
28   * If you do not delete the provisions above, a recipient may use your version of 
29   * this file under either the MPL or the GPL. 
30   * 
31   */
32  
33  
34  package ca.uhn.hl7v2.model.v25.segment;
35  
36  // import ca.uhn.hl7v2.model.v25.group.*;
37  import ca.uhn.hl7v2.model.v25.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 RXA message segment (Pharmacy/Treatment Administration). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>RXA-1: Give Sub-ID Counter (NM) <b> </b>
53       * <li>RXA-2: Administration Sub-ID Counter (NM) <b> </b>
54       * <li>RXA-3: Date/Time Start of Administration (TS) <b> </b>
55       * <li>RXA-4: Date/Time End of Administration (TS) <b> </b>
56       * <li>RXA-5: Administered Code (CE) <b> </b>
57       * <li>RXA-6: Administered Amount (NM) <b> </b>
58       * <li>RXA-7: Administered Units (CE) <b>optional </b>
59       * <li>RXA-8: Administered Dosage Form (CE) <b>optional </b>
60       * <li>RXA-9: Administration Notes (CE) <b>optional repeating</b>
61       * <li>RXA-10: Administering Provider (XCN) <b>optional repeating</b>
62       * <li>RXA-11: Administered-at Location (LA2) <b>optional </b>
63       * <li>RXA-12: Administered Per (Time Unit) (ST) <b>optional </b>
64       * <li>RXA-13: Administered Strength (NM) <b>optional </b>
65       * <li>RXA-14: Administered Strength Units (CE) <b>optional </b>
66       * <li>RXA-15: Substance Lot Number (ST) <b>optional repeating</b>
67       * <li>RXA-16: Substance Expiration Date (TS) <b>optional repeating</b>
68       * <li>RXA-17: Substance Manufacturer Name (CE) <b>optional repeating</b>
69       * <li>RXA-18: Substance/Treatment Refusal Reason (CE) <b>optional repeating</b>
70       * <li>RXA-19: Indication (CE) <b>optional repeating</b>
71       * <li>RXA-20: Completion Status (ID) <b>optional </b>
72       * <li>RXA-21: Action Code - RXA (ID) <b>optional </b>
73       * <li>RXA-22: System Entry Date/Time (TS) <b>optional </b>
74       * <li>RXA-23: Administered Drug Strength Volume (NM) <b>optional </b>
75       * <li>RXA-24: Administered Drug Strength Volume Units (CWE) <b>optional </b>
76       * <li>RXA-25: Administered Barcode Identifier (CWE) <b>optional </b>
77       * <li>RXA-26: Pharmacy Order Type (ID) <b>optional </b>
78   * </ul>
79   */
80  @SuppressWarnings("unused")
81  public class RXA extends AbstractSegment {
82  
83      /** 
84       * Creates a new RXA segment
85       */
86      public RXA(Group parent, ModelClassFactory factory) {
87         super(parent, factory);
88         init(factory);
89      }
90  
91      private void init(ModelClassFactory factory) {
92         try {
93                                    this.add(NM.class, true, 1, 4, new Object[]{ getMessage() }, "Give Sub-ID Counter");
94                                    this.add(NM.class, true, 1, 4, new Object[]{ getMessage() }, "Administration Sub-ID Counter");
95                                    this.add(TS.class, true, 1, 26, new Object[]{ getMessage() }, "Date/Time Start of Administration");
96                                    this.add(TS.class, true, 1, 26, new Object[]{ getMessage() }, "Date/Time End of Administration");
97                                    this.add(CE.class, true, 1, 250, new Object[]{ getMessage() }, "Administered Code");
98                                    this.add(NM.class, true, 1, 20, new Object[]{ getMessage() }, "Administered Amount");
99                                    this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Administered Units");
100                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Administered Dosage Form");
101                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Administration Notes");
102                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Administering Provider");
103                                   this.add(LA2.class, false, 1, 200, new Object[]{ getMessage() }, "Administered-at Location");
104                                   this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Administered Per (Time Unit)");
105                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Administered Strength");
106                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Administered Strength Units");
107                                   this.add(ST.class, false, 0, 20, new Object[]{ getMessage() }, "Substance Lot Number");
108                                   this.add(TS.class, false, 0, 26, new Object[]{ getMessage() }, "Substance Expiration Date");
109                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Substance Manufacturer Name");
110                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Substance/Treatment Refusal Reason");
111                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Indication");
112                                               this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(322) }, "Completion Status");
113                                               this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(323) }, "Action Code - RXA");
114                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "System Entry Date/Time");
115                                   this.add(NM.class, false, 1, 5, new Object[]{ getMessage() }, "Administered Drug Strength Volume");
116                                   this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Administered Drug Strength Volume Units");
117                                   this.add(CWE.class, false, 1, 60, new Object[]{ getMessage() }, "Administered Barcode Identifier");
118                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(480) }, "Pharmacy Order Type");
119        } catch(HL7Exception e) {
120           log.error("Unexpected error creating RXA - this is probably a bug in the source code generator.", e);
121        }
122     }
123 
124 
125 
126     /**
127      * Returns
128      * RXA-1: "Give Sub-ID Counter" - creates it if necessary
129      */
130     public NM getGiveSubIDCounter() { 
131 		NM retVal = this.getTypedField(1, 0);
132 		return retVal;
133     }
134     
135     /**
136      * Returns
137      * RXA-1: "Give Sub-ID Counter" - creates it if necessary
138      */
139     public NM getRxa1_GiveSubIDCounter() { 
140 		NM retVal = this.getTypedField(1, 0);
141 		return retVal;
142     }
143 
144 
145 
146     /**
147      * Returns
148      * RXA-2: "Administration Sub-ID Counter" - creates it if necessary
149      */
150     public NM getAdministrationSubIDCounter() { 
151 		NM retVal = this.getTypedField(2, 0);
152 		return retVal;
153     }
154     
155     /**
156      * Returns
157      * RXA-2: "Administration Sub-ID Counter" - creates it if necessary
158      */
159     public NM getRxa2_AdministrationSubIDCounter() { 
160 		NM retVal = this.getTypedField(2, 0);
161 		return retVal;
162     }
163 
164 
165 
166     /**
167      * Returns
168      * RXA-3: "Date/Time Start of Administration" - creates it if necessary
169      */
170     public TS getDateTimeStartOfAdministration() { 
171 		TS retVal = this.getTypedField(3, 0);
172 		return retVal;
173     }
174     
175     /**
176      * Returns
177      * RXA-3: "Date/Time Start of Administration" - creates it if necessary
178      */
179     public TS getRxa3_DateTimeStartOfAdministration() { 
180 		TS retVal = this.getTypedField(3, 0);
181 		return retVal;
182     }
183 
184 
185 
186     /**
187      * Returns
188      * RXA-4: "Date/Time End of Administration" - creates it if necessary
189      */
190     public TS getDateTimeEndOfAdministration() { 
191 		TS retVal = this.getTypedField(4, 0);
192 		return retVal;
193     }
194     
195     /**
196      * Returns
197      * RXA-4: "Date/Time End of Administration" - creates it if necessary
198      */
199     public TS getRxa4_DateTimeEndOfAdministration() { 
200 		TS retVal = this.getTypedField(4, 0);
201 		return retVal;
202     }
203 
204 
205 
206     /**
207      * Returns
208      * RXA-5: "Administered Code" - creates it if necessary
209      */
210     public CE getAdministeredCode() { 
211 		CE retVal = this.getTypedField(5, 0);
212 		return retVal;
213     }
214     
215     /**
216      * Returns
217      * RXA-5: "Administered Code" - creates it if necessary
218      */
219     public CE getRxa5_AdministeredCode() { 
220 		CE retVal = this.getTypedField(5, 0);
221 		return retVal;
222     }
223 
224 
225 
226     /**
227      * Returns
228      * RXA-6: "Administered Amount" - creates it if necessary
229      */
230     public NM getAdministeredAmount() { 
231 		NM retVal = this.getTypedField(6, 0);
232 		return retVal;
233     }
234     
235     /**
236      * Returns
237      * RXA-6: "Administered Amount" - creates it if necessary
238      */
239     public NM getRxa6_AdministeredAmount() { 
240 		NM retVal = this.getTypedField(6, 0);
241 		return retVal;
242     }
243 
244 
245 
246     /**
247      * Returns
248      * RXA-7: "Administered Units" - creates it if necessary
249      */
250     public CE getAdministeredUnits() { 
251 		CE retVal = this.getTypedField(7, 0);
252 		return retVal;
253     }
254     
255     /**
256      * Returns
257      * RXA-7: "Administered Units" - creates it if necessary
258      */
259     public CE getRxa7_AdministeredUnits() { 
260 		CE retVal = this.getTypedField(7, 0);
261 		return retVal;
262     }
263 
264 
265 
266     /**
267      * Returns
268      * RXA-8: "Administered Dosage Form" - creates it if necessary
269      */
270     public CE getAdministeredDosageForm() { 
271 		CE retVal = this.getTypedField(8, 0);
272 		return retVal;
273     }
274     
275     /**
276      * Returns
277      * RXA-8: "Administered Dosage Form" - creates it if necessary
278      */
279     public CE getRxa8_AdministeredDosageForm() { 
280 		CE retVal = this.getTypedField(8, 0);
281 		return retVal;
282     }
283 
284 
285     /**
286      * Returns all repetitions of Administration Notes (RXA-9).
287      */
288     public CE[] getAdministrationNotes() {
289     	CE[] retVal = this.getTypedField(9, new CE[0]);
290     	return retVal;
291     }
292 
293 
294     /**
295      * Returns all repetitions of Administration Notes (RXA-9).
296      */
297     public CE[] getRxa9_AdministrationNotes() {
298     	CE[] retVal = this.getTypedField(9, new CE[0]);
299     	return retVal;
300     }
301 
302 
303     /**
304      * Returns a count of the current number of repetitions of Administration Notes (RXA-9).
305      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
306      * it will return zero.
307      */
308     public int getAdministrationNotesReps() {
309     	return this.getReps(9);
310     }
311 
312 
313     /**
314      * Returns a specific repetition of
315      * RXA-9: "Administration Notes" - creates it if necessary
316      *
317      * @param rep The repetition index (0-indexed)
318      */
319     public CE getAdministrationNotes(int rep) { 
320 		CE retVal = this.getTypedField(9, rep);
321 		return retVal;
322     }
323 
324     /**
325      * Returns a specific repetition of
326      * RXA-9: "Administration Notes" - creates it if necessary
327      *
328      * @param rep The repetition index (0-indexed)
329      */
330     public CE getRxa9_AdministrationNotes(int rep) { 
331 		CE retVal = this.getTypedField(9, rep);
332 		return retVal;
333     }
334 
335     /**
336      * Returns a count of the current number of repetitions of Administration Notes (RXA-9).
337      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
338      * it will return zero.
339      */
340     public int getRxa9_AdministrationNotesReps() {
341     	return this.getReps(9);
342     }
343 
344 
345     /**
346      * Inserts a repetition of
347      * RXA-9: "Administration Notes" at a specific index
348      *
349      * @param rep The repetition index (0-indexed)
350      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
351      */
352     public CE insertAdministrationNotes(int rep) throws HL7Exception { 
353         return (CE) super.insertRepetition(9, rep);
354     }
355 
356 
357     /**
358      * Inserts a repetition of
359      * RXA-9: "Administration Notes" at a specific index
360      *
361      * @param rep The repetition index (0-indexed)
362      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
363      */
364     public CE insertRxa9_AdministrationNotes(int rep) throws HL7Exception { 
365         return (CE) super.insertRepetition(9, rep);
366     }
367 
368 
369     /**
370      * Removes a repetition of
371      * RXA-9: "Administration Notes" at a specific index
372      *
373      * @param rep The repetition index (0-indexed)
374      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
375      */
376     public CE removeAdministrationNotes(int rep) throws HL7Exception { 
377         return (CE) super.removeRepetition(9, rep);
378     }
379 
380 
381     /**
382      * Removes a repetition of
383      * RXA-9: "Administration Notes" at a specific index
384      *
385      * @param rep The repetition index (0-indexed)
386      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
387      */
388     public CE removeRxa9_AdministrationNotes(int rep) throws HL7Exception { 
389         return (CE) super.removeRepetition(9, rep);
390     }
391 
392 
393 
394     /**
395      * Returns all repetitions of Administering Provider (RXA-10).
396      */
397     public XCN[] getAdministeringProvider() {
398     	XCN[] retVal = this.getTypedField(10, new XCN[0]);
399     	return retVal;
400     }
401 
402 
403     /**
404      * Returns all repetitions of Administering Provider (RXA-10).
405      */
406     public XCN[] getRxa10_AdministeringProvider() {
407     	XCN[] retVal = this.getTypedField(10, new XCN[0]);
408     	return retVal;
409     }
410 
411 
412     /**
413      * Returns a count of the current number of repetitions of Administering Provider (RXA-10).
414      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
415      * it will return zero.
416      */
417     public int getAdministeringProviderReps() {
418     	return this.getReps(10);
419     }
420 
421 
422     /**
423      * Returns a specific repetition of
424      * RXA-10: "Administering Provider" - creates it if necessary
425      *
426      * @param rep The repetition index (0-indexed)
427      */
428     public XCN getAdministeringProvider(int rep) { 
429 		XCN retVal = this.getTypedField(10, rep);
430 		return retVal;
431     }
432 
433     /**
434      * Returns a specific repetition of
435      * RXA-10: "Administering Provider" - creates it if necessary
436      *
437      * @param rep The repetition index (0-indexed)
438      */
439     public XCN getRxa10_AdministeringProvider(int rep) { 
440 		XCN retVal = this.getTypedField(10, rep);
441 		return retVal;
442     }
443 
444     /**
445      * Returns a count of the current number of repetitions of Administering Provider (RXA-10).
446      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
447      * it will return zero.
448      */
449     public int getRxa10_AdministeringProviderReps() {
450     	return this.getReps(10);
451     }
452 
453 
454     /**
455      * Inserts a repetition of
456      * RXA-10: "Administering Provider" at a specific index
457      *
458      * @param rep The repetition index (0-indexed)
459      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
460      */
461     public XCN insertAdministeringProvider(int rep) throws HL7Exception { 
462         return (XCN) super.insertRepetition(10, rep);
463     }
464 
465 
466     /**
467      * Inserts a repetition of
468      * RXA-10: "Administering Provider" at a specific index
469      *
470      * @param rep The repetition index (0-indexed)
471      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
472      */
473     public XCN insertRxa10_AdministeringProvider(int rep) throws HL7Exception { 
474         return (XCN) super.insertRepetition(10, rep);
475     }
476 
477 
478     /**
479      * Removes a repetition of
480      * RXA-10: "Administering Provider" at a specific index
481      *
482      * @param rep The repetition index (0-indexed)
483      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
484      */
485     public XCN removeAdministeringProvider(int rep) throws HL7Exception { 
486         return (XCN) super.removeRepetition(10, rep);
487     }
488 
489 
490     /**
491      * Removes a repetition of
492      * RXA-10: "Administering Provider" at a specific index
493      *
494      * @param rep The repetition index (0-indexed)
495      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
496      */
497     public XCN removeRxa10_AdministeringProvider(int rep) throws HL7Exception { 
498         return (XCN) super.removeRepetition(10, rep);
499     }
500 
501 
502 
503 
504     /**
505      * Returns
506      * RXA-11: "Administered-at Location" - creates it if necessary
507      */
508     public LA2 getAdministeredAtLocation() { 
509 		LA2 retVal = this.getTypedField(11, 0);
510 		return retVal;
511     }
512     
513     /**
514      * Returns
515      * RXA-11: "Administered-at Location" - creates it if necessary
516      */
517     public LA2 getRxa11_AdministeredAtLocation() { 
518 		LA2 retVal = this.getTypedField(11, 0);
519 		return retVal;
520     }
521 
522 
523 
524     /**
525      * Returns
526      * RXA-12: "Administered Per (Time Unit)" - creates it if necessary
527      */
528     public ST getAdministeredPerTimeUnit() { 
529 		ST retVal = this.getTypedField(12, 0);
530 		return retVal;
531     }
532     
533     /**
534      * Returns
535      * RXA-12: "Administered Per (Time Unit)" - creates it if necessary
536      */
537     public ST getRxa12_AdministeredPerTimeUnit() { 
538 		ST retVal = this.getTypedField(12, 0);
539 		return retVal;
540     }
541 
542 
543 
544     /**
545      * Returns
546      * RXA-13: "Administered Strength" - creates it if necessary
547      */
548     public NM getAdministeredStrength() { 
549 		NM retVal = this.getTypedField(13, 0);
550 		return retVal;
551     }
552     
553     /**
554      * Returns
555      * RXA-13: "Administered Strength" - creates it if necessary
556      */
557     public NM getRxa13_AdministeredStrength() { 
558 		NM retVal = this.getTypedField(13, 0);
559 		return retVal;
560     }
561 
562 
563 
564     /**
565      * Returns
566      * RXA-14: "Administered Strength Units" - creates it if necessary
567      */
568     public CE getAdministeredStrengthUnits() { 
569 		CE retVal = this.getTypedField(14, 0);
570 		return retVal;
571     }
572     
573     /**
574      * Returns
575      * RXA-14: "Administered Strength Units" - creates it if necessary
576      */
577     public CE getRxa14_AdministeredStrengthUnits() { 
578 		CE retVal = this.getTypedField(14, 0);
579 		return retVal;
580     }
581 
582 
583     /**
584      * Returns all repetitions of Substance Lot Number (RXA-15).
585      */
586     public ST[] getSubstanceLotNumber() {
587     	ST[] retVal = this.getTypedField(15, new ST[0]);
588     	return retVal;
589     }
590 
591 
592     /**
593      * Returns all repetitions of Substance Lot Number (RXA-15).
594      */
595     public ST[] getRxa15_SubstanceLotNumber() {
596     	ST[] retVal = this.getTypedField(15, new ST[0]);
597     	return retVal;
598     }
599 
600 
601     /**
602      * Returns a count of the current number of repetitions of Substance Lot Number (RXA-15).
603      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
604      * it will return zero.
605      */
606     public int getSubstanceLotNumberReps() {
607     	return this.getReps(15);
608     }
609 
610 
611     /**
612      * Returns a specific repetition of
613      * RXA-15: "Substance Lot Number" - creates it if necessary
614      *
615      * @param rep The repetition index (0-indexed)
616      */
617     public ST getSubstanceLotNumber(int rep) { 
618 		ST retVal = this.getTypedField(15, rep);
619 		return retVal;
620     }
621 
622     /**
623      * Returns a specific repetition of
624      * RXA-15: "Substance Lot Number" - creates it if necessary
625      *
626      * @param rep The repetition index (0-indexed)
627      */
628     public ST getRxa15_SubstanceLotNumber(int rep) { 
629 		ST retVal = this.getTypedField(15, rep);
630 		return retVal;
631     }
632 
633     /**
634      * Returns a count of the current number of repetitions of Substance Lot Number (RXA-15).
635      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
636      * it will return zero.
637      */
638     public int getRxa15_SubstanceLotNumberReps() {
639     	return this.getReps(15);
640     }
641 
642 
643     /**
644      * Inserts a repetition of
645      * RXA-15: "Substance Lot Number" at a specific index
646      *
647      * @param rep The repetition index (0-indexed)
648      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
649      */
650     public ST insertSubstanceLotNumber(int rep) throws HL7Exception { 
651         return (ST) super.insertRepetition(15, rep);
652     }
653 
654 
655     /**
656      * Inserts a repetition of
657      * RXA-15: "Substance Lot Number" at a specific index
658      *
659      * @param rep The repetition index (0-indexed)
660      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
661      */
662     public ST insertRxa15_SubstanceLotNumber(int rep) throws HL7Exception { 
663         return (ST) super.insertRepetition(15, rep);
664     }
665 
666 
667     /**
668      * Removes a repetition of
669      * RXA-15: "Substance Lot Number" at a specific index
670      *
671      * @param rep The repetition index (0-indexed)
672      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
673      */
674     public ST removeSubstanceLotNumber(int rep) throws HL7Exception { 
675         return (ST) super.removeRepetition(15, rep);
676     }
677 
678 
679     /**
680      * Removes a repetition of
681      * RXA-15: "Substance Lot Number" at a specific index
682      *
683      * @param rep The repetition index (0-indexed)
684      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
685      */
686     public ST removeRxa15_SubstanceLotNumber(int rep) throws HL7Exception { 
687         return (ST) super.removeRepetition(15, rep);
688     }
689 
690 
691 
692     /**
693      * Returns all repetitions of Substance Expiration Date (RXA-16).
694      */
695     public TS[] getSubstanceExpirationDate() {
696     	TS[] retVal = this.getTypedField(16, new TS[0]);
697     	return retVal;
698     }
699 
700 
701     /**
702      * Returns all repetitions of Substance Expiration Date (RXA-16).
703      */
704     public TS[] getRxa16_SubstanceExpirationDate() {
705     	TS[] retVal = this.getTypedField(16, new TS[0]);
706     	return retVal;
707     }
708 
709 
710     /**
711      * Returns a count of the current number of repetitions of Substance Expiration Date (RXA-16).
712      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
713      * it will return zero.
714      */
715     public int getSubstanceExpirationDateReps() {
716     	return this.getReps(16);
717     }
718 
719 
720     /**
721      * Returns a specific repetition of
722      * RXA-16: "Substance Expiration Date" - creates it if necessary
723      *
724      * @param rep The repetition index (0-indexed)
725      */
726     public TS getSubstanceExpirationDate(int rep) { 
727 		TS retVal = this.getTypedField(16, rep);
728 		return retVal;
729     }
730 
731     /**
732      * Returns a specific repetition of
733      * RXA-16: "Substance Expiration Date" - creates it if necessary
734      *
735      * @param rep The repetition index (0-indexed)
736      */
737     public TS getRxa16_SubstanceExpirationDate(int rep) { 
738 		TS retVal = this.getTypedField(16, rep);
739 		return retVal;
740     }
741 
742     /**
743      * Returns a count of the current number of repetitions of Substance Expiration Date (RXA-16).
744      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
745      * it will return zero.
746      */
747     public int getRxa16_SubstanceExpirationDateReps() {
748     	return this.getReps(16);
749     }
750 
751 
752     /**
753      * Inserts a repetition of
754      * RXA-16: "Substance Expiration Date" at a specific index
755      *
756      * @param rep The repetition index (0-indexed)
757      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
758      */
759     public TS insertSubstanceExpirationDate(int rep) throws HL7Exception { 
760         return (TS) super.insertRepetition(16, rep);
761     }
762 
763 
764     /**
765      * Inserts a repetition of
766      * RXA-16: "Substance Expiration Date" at a specific index
767      *
768      * @param rep The repetition index (0-indexed)
769      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
770      */
771     public TS insertRxa16_SubstanceExpirationDate(int rep) throws HL7Exception { 
772         return (TS) super.insertRepetition(16, rep);
773     }
774 
775 
776     /**
777      * Removes a repetition of
778      * RXA-16: "Substance Expiration Date" at a specific index
779      *
780      * @param rep The repetition index (0-indexed)
781      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
782      */
783     public TS removeSubstanceExpirationDate(int rep) throws HL7Exception { 
784         return (TS) super.removeRepetition(16, rep);
785     }
786 
787 
788     /**
789      * Removes a repetition of
790      * RXA-16: "Substance Expiration Date" at a specific index
791      *
792      * @param rep The repetition index (0-indexed)
793      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
794      */
795     public TS removeRxa16_SubstanceExpirationDate(int rep) throws HL7Exception { 
796         return (TS) super.removeRepetition(16, rep);
797     }
798 
799 
800 
801     /**
802      * Returns all repetitions of Substance Manufacturer Name (RXA-17).
803      */
804     public CE[] getSubstanceManufacturerName() {
805     	CE[] retVal = this.getTypedField(17, new CE[0]);
806     	return retVal;
807     }
808 
809 
810     /**
811      * Returns all repetitions of Substance Manufacturer Name (RXA-17).
812      */
813     public CE[] getRxa17_SubstanceManufacturerName() {
814     	CE[] retVal = this.getTypedField(17, new CE[0]);
815     	return retVal;
816     }
817 
818 
819     /**
820      * Returns a count of the current number of repetitions of Substance Manufacturer Name (RXA-17).
821      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
822      * it will return zero.
823      */
824     public int getSubstanceManufacturerNameReps() {
825     	return this.getReps(17);
826     }
827 
828 
829     /**
830      * Returns a specific repetition of
831      * RXA-17: "Substance Manufacturer Name" - creates it if necessary
832      *
833      * @param rep The repetition index (0-indexed)
834      */
835     public CE getSubstanceManufacturerName(int rep) { 
836 		CE retVal = this.getTypedField(17, rep);
837 		return retVal;
838     }
839 
840     /**
841      * Returns a specific repetition of
842      * RXA-17: "Substance Manufacturer Name" - creates it if necessary
843      *
844      * @param rep The repetition index (0-indexed)
845      */
846     public CE getRxa17_SubstanceManufacturerName(int rep) { 
847 		CE retVal = this.getTypedField(17, rep);
848 		return retVal;
849     }
850 
851     /**
852      * Returns a count of the current number of repetitions of Substance Manufacturer Name (RXA-17).
853      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
854      * it will return zero.
855      */
856     public int getRxa17_SubstanceManufacturerNameReps() {
857     	return this.getReps(17);
858     }
859 
860 
861     /**
862      * Inserts a repetition of
863      * RXA-17: "Substance Manufacturer Name" at a specific index
864      *
865      * @param rep The repetition index (0-indexed)
866      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
867      */
868     public CE insertSubstanceManufacturerName(int rep) throws HL7Exception { 
869         return (CE) super.insertRepetition(17, rep);
870     }
871 
872 
873     /**
874      * Inserts a repetition of
875      * RXA-17: "Substance Manufacturer Name" at a specific index
876      *
877      * @param rep The repetition index (0-indexed)
878      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
879      */
880     public CE insertRxa17_SubstanceManufacturerName(int rep) throws HL7Exception { 
881         return (CE) super.insertRepetition(17, rep);
882     }
883 
884 
885     /**
886      * Removes a repetition of
887      * RXA-17: "Substance Manufacturer Name" at a specific index
888      *
889      * @param rep The repetition index (0-indexed)
890      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
891      */
892     public CE removeSubstanceManufacturerName(int rep) throws HL7Exception { 
893         return (CE) super.removeRepetition(17, rep);
894     }
895 
896 
897     /**
898      * Removes a repetition of
899      * RXA-17: "Substance Manufacturer Name" at a specific index
900      *
901      * @param rep The repetition index (0-indexed)
902      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
903      */
904     public CE removeRxa17_SubstanceManufacturerName(int rep) throws HL7Exception { 
905         return (CE) super.removeRepetition(17, rep);
906     }
907 
908 
909 
910     /**
911      * Returns all repetitions of Substance/Treatment Refusal Reason (RXA-18).
912      */
913     public CE[] getSubstanceTreatmentRefusalReason() {
914     	CE[] retVal = this.getTypedField(18, new CE[0]);
915     	return retVal;
916     }
917 
918 
919     /**
920      * Returns all repetitions of Substance/Treatment Refusal Reason (RXA-18).
921      */
922     public CE[] getRxa18_SubstanceTreatmentRefusalReason() {
923     	CE[] retVal = this.getTypedField(18, new CE[0]);
924     	return retVal;
925     }
926 
927 
928     /**
929      * Returns a count of the current number of repetitions of Substance/Treatment Refusal Reason (RXA-18).
930      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
931      * it will return zero.
932      */
933     public int getSubstanceTreatmentRefusalReasonReps() {
934     	return this.getReps(18);
935     }
936 
937 
938     /**
939      * Returns a specific repetition of
940      * RXA-18: "Substance/Treatment Refusal Reason" - creates it if necessary
941      *
942      * @param rep The repetition index (0-indexed)
943      */
944     public CE getSubstanceTreatmentRefusalReason(int rep) { 
945 		CE retVal = this.getTypedField(18, rep);
946 		return retVal;
947     }
948 
949     /**
950      * Returns a specific repetition of
951      * RXA-18: "Substance/Treatment Refusal Reason" - creates it if necessary
952      *
953      * @param rep The repetition index (0-indexed)
954      */
955     public CE getRxa18_SubstanceTreatmentRefusalReason(int rep) { 
956 		CE retVal = this.getTypedField(18, rep);
957 		return retVal;
958     }
959 
960     /**
961      * Returns a count of the current number of repetitions of Substance/Treatment Refusal Reason (RXA-18).
962      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
963      * it will return zero.
964      */
965     public int getRxa18_SubstanceTreatmentRefusalReasonReps() {
966     	return this.getReps(18);
967     }
968 
969 
970     /**
971      * Inserts a repetition of
972      * RXA-18: "Substance/Treatment Refusal Reason" at a specific index
973      *
974      * @param rep The repetition index (0-indexed)
975      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
976      */
977     public CE insertSubstanceTreatmentRefusalReason(int rep) throws HL7Exception { 
978         return (CE) super.insertRepetition(18, rep);
979     }
980 
981 
982     /**
983      * Inserts a repetition of
984      * RXA-18: "Substance/Treatment Refusal Reason" at a specific index
985      *
986      * @param rep The repetition index (0-indexed)
987      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
988      */
989     public CE insertRxa18_SubstanceTreatmentRefusalReason(int rep) throws HL7Exception { 
990         return (CE) super.insertRepetition(18, rep);
991     }
992 
993 
994     /**
995      * Removes a repetition of
996      * RXA-18: "Substance/Treatment Refusal Reason" at a specific index
997      *
998      * @param rep The repetition index (0-indexed)
999      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1000      */
1001     public CE removeSubstanceTreatmentRefusalReason(int rep) throws HL7Exception { 
1002         return (CE) super.removeRepetition(18, rep);
1003     }
1004 
1005 
1006     /**
1007      * Removes a repetition of
1008      * RXA-18: "Substance/Treatment Refusal Reason" at a specific index
1009      *
1010      * @param rep The repetition index (0-indexed)
1011      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1012      */
1013     public CE removeRxa18_SubstanceTreatmentRefusalReason(int rep) throws HL7Exception { 
1014         return (CE) super.removeRepetition(18, rep);
1015     }
1016 
1017 
1018 
1019     /**
1020      * Returns all repetitions of Indication (RXA-19).
1021      */
1022     public CE[] getIndication() {
1023     	CE[] retVal = this.getTypedField(19, new CE[0]);
1024     	return retVal;
1025     }
1026 
1027 
1028     /**
1029      * Returns all repetitions of Indication (RXA-19).
1030      */
1031     public CE[] getRxa19_Indication() {
1032     	CE[] retVal = this.getTypedField(19, new CE[0]);
1033     	return retVal;
1034     }
1035 
1036 
1037     /**
1038      * Returns a count of the current number of repetitions of Indication (RXA-19).
1039      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1040      * it will return zero.
1041      */
1042     public int getIndicationReps() {
1043     	return this.getReps(19);
1044     }
1045 
1046 
1047     /**
1048      * Returns a specific repetition of
1049      * RXA-19: "Indication" - creates it if necessary
1050      *
1051      * @param rep The repetition index (0-indexed)
1052      */
1053     public CE getIndication(int rep) { 
1054 		CE retVal = this.getTypedField(19, rep);
1055 		return retVal;
1056     }
1057 
1058     /**
1059      * Returns a specific repetition of
1060      * RXA-19: "Indication" - creates it if necessary
1061      *
1062      * @param rep The repetition index (0-indexed)
1063      */
1064     public CE getRxa19_Indication(int rep) { 
1065 		CE retVal = this.getTypedField(19, rep);
1066 		return retVal;
1067     }
1068 
1069     /**
1070      * Returns a count of the current number of repetitions of Indication (RXA-19).
1071      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1072      * it will return zero.
1073      */
1074     public int getRxa19_IndicationReps() {
1075     	return this.getReps(19);
1076     }
1077 
1078 
1079     /**
1080      * Inserts a repetition of
1081      * RXA-19: "Indication" at a specific index
1082      *
1083      * @param rep The repetition index (0-indexed)
1084      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1085      */
1086     public CE insertIndication(int rep) throws HL7Exception { 
1087         return (CE) super.insertRepetition(19, rep);
1088     }
1089 
1090 
1091     /**
1092      * Inserts a repetition of
1093      * RXA-19: "Indication" at a specific index
1094      *
1095      * @param rep The repetition index (0-indexed)
1096      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1097      */
1098     public CE insertRxa19_Indication(int rep) throws HL7Exception { 
1099         return (CE) super.insertRepetition(19, rep);
1100     }
1101 
1102 
1103     /**
1104      * Removes a repetition of
1105      * RXA-19: "Indication" at a specific index
1106      *
1107      * @param rep The repetition index (0-indexed)
1108      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1109      */
1110     public CE removeIndication(int rep) throws HL7Exception { 
1111         return (CE) super.removeRepetition(19, rep);
1112     }
1113 
1114 
1115     /**
1116      * Removes a repetition of
1117      * RXA-19: "Indication" at a specific index
1118      *
1119      * @param rep The repetition index (0-indexed)
1120      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1121      */
1122     public CE removeRxa19_Indication(int rep) throws HL7Exception { 
1123         return (CE) super.removeRepetition(19, rep);
1124     }
1125 
1126 
1127 
1128 
1129     /**
1130      * Returns
1131      * RXA-20: "Completion Status" - creates it if necessary
1132      */
1133     public ID getCompletionStatus() { 
1134 		ID retVal = this.getTypedField(20, 0);
1135 		return retVal;
1136     }
1137     
1138     /**
1139      * Returns
1140      * RXA-20: "Completion Status" - creates it if necessary
1141      */
1142     public ID getRxa20_CompletionStatus() { 
1143 		ID retVal = this.getTypedField(20, 0);
1144 		return retVal;
1145     }
1146 
1147 
1148 
1149     /**
1150      * Returns
1151      * RXA-21: "Action Code - RXA" - creates it if necessary
1152      */
1153     public ID getActionCodeRXA() { 
1154 		ID retVal = this.getTypedField(21, 0);
1155 		return retVal;
1156     }
1157     
1158     /**
1159      * Returns
1160      * RXA-21: "Action Code - RXA" - creates it if necessary
1161      */
1162     public ID getRxa21_ActionCodeRXA() { 
1163 		ID retVal = this.getTypedField(21, 0);
1164 		return retVal;
1165     }
1166 
1167 
1168 
1169     /**
1170      * Returns
1171      * RXA-22: "System Entry Date/Time" - creates it if necessary
1172      */
1173     public TS getSystemEntryDateTime() { 
1174 		TS retVal = this.getTypedField(22, 0);
1175 		return retVal;
1176     }
1177     
1178     /**
1179      * Returns
1180      * RXA-22: "System Entry Date/Time" - creates it if necessary
1181      */
1182     public TS getRxa22_SystemEntryDateTime() { 
1183 		TS retVal = this.getTypedField(22, 0);
1184 		return retVal;
1185     }
1186 
1187 
1188 
1189     /**
1190      * Returns
1191      * RXA-23: "Administered Drug Strength Volume" - creates it if necessary
1192      */
1193     public NM getAdministeredDrugStrengthVolume() { 
1194 		NM retVal = this.getTypedField(23, 0);
1195 		return retVal;
1196     }
1197     
1198     /**
1199      * Returns
1200      * RXA-23: "Administered Drug Strength Volume" - creates it if necessary
1201      */
1202     public NM getRxa23_AdministeredDrugStrengthVolume() { 
1203 		NM retVal = this.getTypedField(23, 0);
1204 		return retVal;
1205     }
1206 
1207 
1208 
1209     /**
1210      * Returns
1211      * RXA-24: "Administered Drug Strength Volume Units" - creates it if necessary
1212      */
1213     public CWE getAdministeredDrugStrengthVolumeUnits() { 
1214 		CWE retVal = this.getTypedField(24, 0);
1215 		return retVal;
1216     }
1217     
1218     /**
1219      * Returns
1220      * RXA-24: "Administered Drug Strength Volume Units" - creates it if necessary
1221      */
1222     public CWE getRxa24_AdministeredDrugStrengthVolumeUnits() { 
1223 		CWE retVal = this.getTypedField(24, 0);
1224 		return retVal;
1225     }
1226 
1227 
1228 
1229     /**
1230      * Returns
1231      * RXA-25: "Administered Barcode Identifier" - creates it if necessary
1232      */
1233     public CWE getAdministeredBarcodeIdentifier() { 
1234 		CWE retVal = this.getTypedField(25, 0);
1235 		return retVal;
1236     }
1237     
1238     /**
1239      * Returns
1240      * RXA-25: "Administered Barcode Identifier" - creates it if necessary
1241      */
1242     public CWE getRxa25_AdministeredBarcodeIdentifier() { 
1243 		CWE retVal = this.getTypedField(25, 0);
1244 		return retVal;
1245     }
1246 
1247 
1248 
1249     /**
1250      * Returns
1251      * RXA-26: "Pharmacy Order Type" - creates it if necessary
1252      */
1253     public ID getPharmacyOrderType() { 
1254 		ID retVal = this.getTypedField(26, 0);
1255 		return retVal;
1256     }
1257     
1258     /**
1259      * Returns
1260      * RXA-26: "Pharmacy Order Type" - creates it if necessary
1261      */
1262     public ID getRxa26_PharmacyOrderType() { 
1263 		ID retVal = this.getTypedField(26, 0);
1264 		return retVal;
1265     }
1266 
1267 
1268 
1269 
1270 
1271     /** {@inheritDoc} */   
1272     protected Type createNewTypeWithoutReflection(int field) {
1273        switch (field) {
1274           case 0: return new NM(getMessage());
1275           case 1: return new NM(getMessage());
1276           case 2: return new TS(getMessage());
1277           case 3: return new TS(getMessage());
1278           case 4: return new CE(getMessage());
1279           case 5: return new NM(getMessage());
1280           case 6: return new CE(getMessage());
1281           case 7: return new CE(getMessage());
1282           case 8: return new CE(getMessage());
1283           case 9: return new XCN(getMessage());
1284           case 10: return new LA2(getMessage());
1285           case 11: return new ST(getMessage());
1286           case 12: return new NM(getMessage());
1287           case 13: return new CE(getMessage());
1288           case 14: return new ST(getMessage());
1289           case 15: return new TS(getMessage());
1290           case 16: return new CE(getMessage());
1291           case 17: return new CE(getMessage());
1292           case 18: return new CE(getMessage());
1293           case 19: return new ID(getMessage(), new Integer( 322 ));
1294           case 20: return new ID(getMessage(), new Integer( 323 ));
1295           case 21: return new TS(getMessage());
1296           case 22: return new NM(getMessage());
1297           case 23: return new CWE(getMessage());
1298           case 24: return new CWE(getMessage());
1299           case 25: return new ID(getMessage(), new Integer( 480 ));
1300           default: return null;
1301        }
1302    }
1303 
1304 
1305 }
1306