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.v231.segment;
35  
36  // import ca.uhn.hl7v2.model.v231.group.*;
37  import ca.uhn.hl7v2.model.v231.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 RXE message segment (RXE - pharmacy/treatment encoded order segment). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>RXE-1: Quantity/Timing (TQ) <b> </b>
53       * <li>RXE-2: Give Code (CE) <b> </b>
54       * <li>RXE-3: Give Amount - Minimum (NM) <b> </b>
55       * <li>RXE-4: Give Amount - Maximum (NM) <b>optional </b>
56       * <li>RXE-5: Give Units (CE) <b> </b>
57       * <li>RXE-6: Give Dosage Form (CE) <b>optional </b>
58       * <li>RXE-7: Provider’s Administration Instructions (CE) <b>optional repeating</b>
59       * <li>RXE-8: Deliver-to Location (LA1) <b>optional </b>
60       * <li>RXE-9: Substitution Status (ID) <b>optional </b>
61       * <li>RXE-10: Dispense Amount (NM) <b>optional </b>
62       * <li>RXE-11: Dispense Units (CE) <b>optional </b>
63       * <li>RXE-12: Number Of Refills (NM) <b>optional </b>
64       * <li>RXE-13: Ordering Provider’s DEA Number (XCN) <b>optional repeating</b>
65       * <li>RXE-14: Pharmacist/Treatment Supplier’s Verifier ID (XCN) <b>optional repeating</b>
66       * <li>RXE-15: Prescription Number (ST) <b>optional </b>
67       * <li>RXE-16: Number of Refills Remaining (NM) <b>optional </b>
68       * <li>RXE-17: Number of Refills/Doses Dispensed (NM) <b>optional </b>
69       * <li>RXE-18: D/T of Most Recent Refill or Dose Dispensed (TS) <b>optional </b>
70       * <li>RXE-19: Total Daily Dose (CQ) <b>optional </b>
71       * <li>RXE-20: Needs Human Review (ID) <b>optional </b>
72       * <li>RXE-21: Pharmacy/Treatment Supplier’s Special Dispensing Instructions (CE) <b>optional repeating</b>
73       * <li>RXE-22: Give Per (Time Unit) (ST) <b>optional </b>
74       * <li>RXE-23: Give Rate Amount (ST) <b>optional </b>
75       * <li>RXE-24: Give Rate Units (CE) <b>optional </b>
76       * <li>RXE-25: Give Strength (NM) <b>optional </b>
77       * <li>RXE-26: Give Strength Units (CE) <b>optional </b>
78       * <li>RXE-27: Give Indication (CE) <b>optional repeating</b>
79       * <li>RXE-28: Dispense Package Size (NM) <b>optional </b>
80       * <li>RXE-29: Dispense Package Size Unit (CE) <b>optional </b>
81       * <li>RXE-30: Dispense Package Method (ID) <b>optional </b>
82   * </ul>
83   */
84  @SuppressWarnings("unused")
85  public class RXE extends AbstractSegment {
86  
87      /** 
88       * Creates a new RXE segment
89       */
90      public RXE(Group parent, ModelClassFactory factory) {
91         super(parent, factory);
92         init(factory);
93      }
94  
95      private void init(ModelClassFactory factory) {
96         try {
97                                    this.add(TQ.class, true, 1, 200, new Object[]{ getMessage() }, "Quantity/Timing");
98                                    this.add(CE.class, true, 1, 100, new Object[]{ getMessage() }, "Give Code");
99                                    this.add(NM.class, true, 1, 20, new Object[]{ getMessage() }, "Give Amount - Minimum");
100                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Give Amount - Maximum");
101                                   this.add(CE.class, true, 1, 60, new Object[]{ getMessage() }, "Give Units");
102                                   this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Give Dosage Form");
103                                   this.add(CE.class, false, 0, 200, new Object[]{ getMessage() }, "Provider’s Administration Instructions");
104                                   this.add(LA1.class, false, 1, 200, new Object[]{ getMessage() }, "Deliver-to Location");
105                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(167) }, "Substitution Status");
106                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Dispense Amount");
107                                   this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Dispense Units");
108                                   this.add(NM.class, false, 1, 3, new Object[]{ getMessage() }, "Number Of Refills");
109                                   this.add(XCN.class, false, 0, 60, new Object[]{ getMessage() }, "Ordering Provider’s DEA Number");
110                                   this.add(XCN.class, false, 0, 60, new Object[]{ getMessage() }, "Pharmacist/Treatment Supplier’s Verifier ID");
111                                   this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Prescription Number");
112                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Number of Refills Remaining");
113                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Number of Refills/Doses Dispensed");
114                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "D/T of Most Recent Refill or Dose Dispensed");
115                                   this.add(CQ.class, false, 1, 10, new Object[]{ getMessage() }, "Total Daily Dose");
116                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Needs Human Review");
117                                   this.add(CE.class, false, 0, 200, new Object[]{ getMessage() }, "Pharmacy/Treatment Supplier’s Special Dispensing Instructions");
118                                   this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Give Per (Time Unit)");
119                                   this.add(ST.class, false, 1, 6, new Object[]{ getMessage() }, "Give Rate Amount");
120                                   this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Give Rate Units");
121                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Give Strength");
122                                   this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Give Strength Units");
123                                   this.add(CE.class, false, 0, 200, new Object[]{ getMessage() }, "Give Indication");
124                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Dispense Package Size");
125                                   this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Dispense Package Size Unit");
126                                               this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(321) }, "Dispense Package Method");
127        } catch(HL7Exception e) {
128           log.error("Unexpected error creating RXE - this is probably a bug in the source code generator.", e);
129        }
130     }
131 
132 
133 
134     /**
135      * Returns
136      * RXE-1: "Quantity/Timing" - creates it if necessary
137      */
138     public TQ getQuantityTiming() { 
139 		TQ retVal = this.getTypedField(1, 0);
140 		return retVal;
141     }
142     
143     /**
144      * Returns
145      * RXE-1: "Quantity/Timing" - creates it if necessary
146      */
147     public TQ getRxe1_QuantityTiming() { 
148 		TQ retVal = this.getTypedField(1, 0);
149 		return retVal;
150     }
151 
152 
153 
154     /**
155      * Returns
156      * RXE-2: "Give Code" - creates it if necessary
157      */
158     public CE getGiveCode() { 
159 		CE retVal = this.getTypedField(2, 0);
160 		return retVal;
161     }
162     
163     /**
164      * Returns
165      * RXE-2: "Give Code" - creates it if necessary
166      */
167     public CE getRxe2_GiveCode() { 
168 		CE retVal = this.getTypedField(2, 0);
169 		return retVal;
170     }
171 
172 
173 
174     /**
175      * Returns
176      * RXE-3: "Give Amount - Minimum" - creates it if necessary
177      */
178     public NM getGiveAmountMinimum() { 
179 		NM retVal = this.getTypedField(3, 0);
180 		return retVal;
181     }
182     
183     /**
184      * Returns
185      * RXE-3: "Give Amount - Minimum" - creates it if necessary
186      */
187     public NM getRxe3_GiveAmountMinimum() { 
188 		NM retVal = this.getTypedField(3, 0);
189 		return retVal;
190     }
191 
192 
193 
194     /**
195      * Returns
196      * RXE-4: "Give Amount - Maximum" - creates it if necessary
197      */
198     public NM getGiveAmountMaximum() { 
199 		NM retVal = this.getTypedField(4, 0);
200 		return retVal;
201     }
202     
203     /**
204      * Returns
205      * RXE-4: "Give Amount - Maximum" - creates it if necessary
206      */
207     public NM getRxe4_GiveAmountMaximum() { 
208 		NM retVal = this.getTypedField(4, 0);
209 		return retVal;
210     }
211 
212 
213 
214     /**
215      * Returns
216      * RXE-5: "Give Units" - creates it if necessary
217      */
218     public CE getGiveUnits() { 
219 		CE retVal = this.getTypedField(5, 0);
220 		return retVal;
221     }
222     
223     /**
224      * Returns
225      * RXE-5: "Give Units" - creates it if necessary
226      */
227     public CE getRxe5_GiveUnits() { 
228 		CE retVal = this.getTypedField(5, 0);
229 		return retVal;
230     }
231 
232 
233 
234     /**
235      * Returns
236      * RXE-6: "Give Dosage Form" - creates it if necessary
237      */
238     public CE getGiveDosageForm() { 
239 		CE retVal = this.getTypedField(6, 0);
240 		return retVal;
241     }
242     
243     /**
244      * Returns
245      * RXE-6: "Give Dosage Form" - creates it if necessary
246      */
247     public CE getRxe6_GiveDosageForm() { 
248 		CE retVal = this.getTypedField(6, 0);
249 		return retVal;
250     }
251 
252 
253     /**
254      * Returns all repetitions of Provider’s Administration Instructions (RXE-7).
255      */
256     public CE[] getProviderSAdministrationInstructions() {
257     	CE[] retVal = this.getTypedField(7, new CE[0]);
258     	return retVal;
259     }
260 
261 
262     /**
263      * Returns all repetitions of Provider’s Administration Instructions (RXE-7).
264      */
265     public CE[] getRxe7_ProviderSAdministrationInstructions() {
266     	CE[] retVal = this.getTypedField(7, new CE[0]);
267     	return retVal;
268     }
269 
270 
271     /**
272      * Returns a count of the current number of repetitions of Provider’s Administration Instructions (RXE-7).
273      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
274      * it will return zero.
275      */
276     public int getProviderSAdministrationInstructionsReps() {
277     	return this.getReps(7);
278     }
279 
280 
281     /**
282      * Returns a specific repetition of
283      * RXE-7: "Provider’s Administration Instructions" - creates it if necessary
284      *
285      * @param rep The repetition index (0-indexed)
286      */
287     public CE getProviderSAdministrationInstructions(int rep) { 
288 		CE retVal = this.getTypedField(7, rep);
289 		return retVal;
290     }
291 
292     /**
293      * Returns a specific repetition of
294      * RXE-7: "Provider’s Administration Instructions" - creates it if necessary
295      *
296      * @param rep The repetition index (0-indexed)
297      */
298     public CE getRxe7_ProviderSAdministrationInstructions(int rep) { 
299 		CE retVal = this.getTypedField(7, rep);
300 		return retVal;
301     }
302 
303     /**
304      * Returns a count of the current number of repetitions of Provider’s Administration Instructions (RXE-7).
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 getRxe7_ProviderSAdministrationInstructionsReps() {
309     	return this.getReps(7);
310     }
311 
312 
313     /**
314      * Inserts a repetition of
315      * RXE-7: "Provider’s Administration Instructions" at a specific index
316      *
317      * @param rep The repetition index (0-indexed)
318      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
319      */
320     public CE insertProviderSAdministrationInstructions(int rep) throws HL7Exception { 
321         return (CE) super.insertRepetition(7, rep);
322     }
323 
324 
325     /**
326      * Inserts a repetition of
327      * RXE-7: "Provider’s Administration Instructions" at a specific index
328      *
329      * @param rep The repetition index (0-indexed)
330      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
331      */
332     public CE insertRxe7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
333         return (CE) super.insertRepetition(7, rep);
334     }
335 
336 
337     /**
338      * Removes a repetition of
339      * RXE-7: "Provider’s Administration Instructions" at a specific index
340      *
341      * @param rep The repetition index (0-indexed)
342      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
343      */
344     public CE removeProviderSAdministrationInstructions(int rep) throws HL7Exception { 
345         return (CE) super.removeRepetition(7, rep);
346     }
347 
348 
349     /**
350      * Removes a repetition of
351      * RXE-7: "Provider’s Administration Instructions" at a specific index
352      *
353      * @param rep The repetition index (0-indexed)
354      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
355      */
356     public CE removeRxe7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
357         return (CE) super.removeRepetition(7, rep);
358     }
359 
360 
361 
362 
363     /**
364      * Returns
365      * RXE-8: "Deliver-to Location" - creates it if necessary
366      */
367     public LA1 getDeliverToLocation() { 
368 		LA1 retVal = this.getTypedField(8, 0);
369 		return retVal;
370     }
371     
372     /**
373      * Returns
374      * RXE-8: "Deliver-to Location" - creates it if necessary
375      */
376     public LA1 getRxe8_DeliverToLocation() { 
377 		LA1 retVal = this.getTypedField(8, 0);
378 		return retVal;
379     }
380 
381 
382 
383     /**
384      * Returns
385      * RXE-9: "Substitution Status" - creates it if necessary
386      */
387     public ID getSubstitutionStatus() { 
388 		ID retVal = this.getTypedField(9, 0);
389 		return retVal;
390     }
391     
392     /**
393      * Returns
394      * RXE-9: "Substitution Status" - creates it if necessary
395      */
396     public ID getRxe9_SubstitutionStatus() { 
397 		ID retVal = this.getTypedField(9, 0);
398 		return retVal;
399     }
400 
401 
402 
403     /**
404      * Returns
405      * RXE-10: "Dispense Amount" - creates it if necessary
406      */
407     public NM getDispenseAmount() { 
408 		NM retVal = this.getTypedField(10, 0);
409 		return retVal;
410     }
411     
412     /**
413      * Returns
414      * RXE-10: "Dispense Amount" - creates it if necessary
415      */
416     public NM getRxe10_DispenseAmount() { 
417 		NM retVal = this.getTypedField(10, 0);
418 		return retVal;
419     }
420 
421 
422 
423     /**
424      * Returns
425      * RXE-11: "Dispense Units" - creates it if necessary
426      */
427     public CE getDispenseUnits() { 
428 		CE retVal = this.getTypedField(11, 0);
429 		return retVal;
430     }
431     
432     /**
433      * Returns
434      * RXE-11: "Dispense Units" - creates it if necessary
435      */
436     public CE getRxe11_DispenseUnits() { 
437 		CE retVal = this.getTypedField(11, 0);
438 		return retVal;
439     }
440 
441 
442 
443     /**
444      * Returns
445      * RXE-12: "Number Of Refills" - creates it if necessary
446      */
447     public NM getNumberOfRefills() { 
448 		NM retVal = this.getTypedField(12, 0);
449 		return retVal;
450     }
451     
452     /**
453      * Returns
454      * RXE-12: "Number Of Refills" - creates it if necessary
455      */
456     public NM getRxe12_NumberOfRefills() { 
457 		NM retVal = this.getTypedField(12, 0);
458 		return retVal;
459     }
460 
461 
462     /**
463      * Returns all repetitions of Ordering Provider’s DEA Number (RXE-13).
464      */
465     public XCN[] getOrderingProviderSDEANumber() {
466     	XCN[] retVal = this.getTypedField(13, new XCN[0]);
467     	return retVal;
468     }
469 
470 
471     /**
472      * Returns all repetitions of Ordering Provider’s DEA Number (RXE-13).
473      */
474     public XCN[] getRxe13_OrderingProviderSDEANumber() {
475     	XCN[] retVal = this.getTypedField(13, new XCN[0]);
476     	return retVal;
477     }
478 
479 
480     /**
481      * Returns a count of the current number of repetitions of Ordering Provider’s DEA Number (RXE-13).
482      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
483      * it will return zero.
484      */
485     public int getOrderingProviderSDEANumberReps() {
486     	return this.getReps(13);
487     }
488 
489 
490     /**
491      * Returns a specific repetition of
492      * RXE-13: "Ordering Provider’s DEA Number" - creates it if necessary
493      *
494      * @param rep The repetition index (0-indexed)
495      */
496     public XCN getOrderingProviderSDEANumber(int rep) { 
497 		XCN retVal = this.getTypedField(13, rep);
498 		return retVal;
499     }
500 
501     /**
502      * Returns a specific repetition of
503      * RXE-13: "Ordering Provider’s DEA Number" - creates it if necessary
504      *
505      * @param rep The repetition index (0-indexed)
506      */
507     public XCN getRxe13_OrderingProviderSDEANumber(int rep) { 
508 		XCN retVal = this.getTypedField(13, rep);
509 		return retVal;
510     }
511 
512     /**
513      * Returns a count of the current number of repetitions of Ordering Provider’s DEA Number (RXE-13).
514      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
515      * it will return zero.
516      */
517     public int getRxe13_OrderingProviderSDEANumberReps() {
518     	return this.getReps(13);
519     }
520 
521 
522     /**
523      * Inserts a repetition of
524      * RXE-13: "Ordering Provider’s DEA Number" at a specific index
525      *
526      * @param rep The repetition index (0-indexed)
527      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
528      */
529     public XCN insertOrderingProviderSDEANumber(int rep) throws HL7Exception { 
530         return (XCN) super.insertRepetition(13, rep);
531     }
532 
533 
534     /**
535      * Inserts a repetition of
536      * RXE-13: "Ordering Provider’s DEA Number" at a specific index
537      *
538      * @param rep The repetition index (0-indexed)
539      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
540      */
541     public XCN insertRxe13_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
542         return (XCN) super.insertRepetition(13, rep);
543     }
544 
545 
546     /**
547      * Removes a repetition of
548      * RXE-13: "Ordering Provider’s DEA Number" at a specific index
549      *
550      * @param rep The repetition index (0-indexed)
551      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
552      */
553     public XCN removeOrderingProviderSDEANumber(int rep) throws HL7Exception { 
554         return (XCN) super.removeRepetition(13, rep);
555     }
556 
557 
558     /**
559      * Removes a repetition of
560      * RXE-13: "Ordering Provider’s DEA Number" at a specific index
561      *
562      * @param rep The repetition index (0-indexed)
563      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
564      */
565     public XCN removeRxe13_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
566         return (XCN) super.removeRepetition(13, rep);
567     }
568 
569 
570 
571     /**
572      * Returns all repetitions of Pharmacist/Treatment Supplier’s Verifier ID (RXE-14).
573      */
574     public XCN[] getPharmacistTreatmentSupplierSVerifierID() {
575     	XCN[] retVal = this.getTypedField(14, new XCN[0]);
576     	return retVal;
577     }
578 
579 
580     /**
581      * Returns all repetitions of Pharmacist/Treatment Supplier’s Verifier ID (RXE-14).
582      */
583     public XCN[] getRxe14_PharmacistTreatmentSupplierSVerifierID() {
584     	XCN[] retVal = this.getTypedField(14, new XCN[0]);
585     	return retVal;
586     }
587 
588 
589     /**
590      * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier’s Verifier ID (RXE-14).
591      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
592      * it will return zero.
593      */
594     public int getPharmacistTreatmentSupplierSVerifierIDReps() {
595     	return this.getReps(14);
596     }
597 
598 
599     /**
600      * Returns a specific repetition of
601      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" - creates it if necessary
602      *
603      * @param rep The repetition index (0-indexed)
604      */
605     public XCN getPharmacistTreatmentSupplierSVerifierID(int rep) { 
606 		XCN retVal = this.getTypedField(14, rep);
607 		return retVal;
608     }
609 
610     /**
611      * Returns a specific repetition of
612      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" - creates it if necessary
613      *
614      * @param rep The repetition index (0-indexed)
615      */
616     public XCN getRxe14_PharmacistTreatmentSupplierSVerifierID(int rep) { 
617 		XCN retVal = this.getTypedField(14, rep);
618 		return retVal;
619     }
620 
621     /**
622      * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier’s Verifier ID (RXE-14).
623      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
624      * it will return zero.
625      */
626     public int getRxe14_PharmacistTreatmentSupplierSVerifierIDReps() {
627     	return this.getReps(14);
628     }
629 
630 
631     /**
632      * Inserts a repetition of
633      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" at a specific index
634      *
635      * @param rep The repetition index (0-indexed)
636      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
637      */
638     public XCN insertPharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
639         return (XCN) super.insertRepetition(14, rep);
640     }
641 
642 
643     /**
644      * Inserts a repetition of
645      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" 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 XCN insertRxe14_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
651         return (XCN) super.insertRepetition(14, rep);
652     }
653 
654 
655     /**
656      * Removes a repetition of
657      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" 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 XCN removePharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
663         return (XCN) super.removeRepetition(14, rep);
664     }
665 
666 
667     /**
668      * Removes a repetition of
669      * RXE-14: "Pharmacist/Treatment Supplier’s Verifier ID" 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 XCN removeRxe14_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
675         return (XCN) super.removeRepetition(14, rep);
676     }
677 
678 
679 
680 
681     /**
682      * Returns
683      * RXE-15: "Prescription Number" - creates it if necessary
684      */
685     public ST getPrescriptionNumber() { 
686 		ST retVal = this.getTypedField(15, 0);
687 		return retVal;
688     }
689     
690     /**
691      * Returns
692      * RXE-15: "Prescription Number" - creates it if necessary
693      */
694     public ST getRxe15_PrescriptionNumber() { 
695 		ST retVal = this.getTypedField(15, 0);
696 		return retVal;
697     }
698 
699 
700 
701     /**
702      * Returns
703      * RXE-16: "Number of Refills Remaining" - creates it if necessary
704      */
705     public NM getNumberOfRefillsRemaining() { 
706 		NM retVal = this.getTypedField(16, 0);
707 		return retVal;
708     }
709     
710     /**
711      * Returns
712      * RXE-16: "Number of Refills Remaining" - creates it if necessary
713      */
714     public NM getRxe16_NumberOfRefillsRemaining() { 
715 		NM retVal = this.getTypedField(16, 0);
716 		return retVal;
717     }
718 
719 
720 
721     /**
722      * Returns
723      * RXE-17: "Number of Refills/Doses Dispensed" - creates it if necessary
724      */
725     public NM getNumberOfRefillsDosesDispensed() { 
726 		NM retVal = this.getTypedField(17, 0);
727 		return retVal;
728     }
729     
730     /**
731      * Returns
732      * RXE-17: "Number of Refills/Doses Dispensed" - creates it if necessary
733      */
734     public NM getRxe17_NumberOfRefillsDosesDispensed() { 
735 		NM retVal = this.getTypedField(17, 0);
736 		return retVal;
737     }
738 
739 
740 
741     /**
742      * Returns
743      * RXE-18: "D/T of Most Recent Refill or Dose Dispensed" - creates it if necessary
744      */
745     public TS getDTOfMostRecentRefillOrDoseDispensed() { 
746 		TS retVal = this.getTypedField(18, 0);
747 		return retVal;
748     }
749     
750     /**
751      * Returns
752      * RXE-18: "D/T of Most Recent Refill or Dose Dispensed" - creates it if necessary
753      */
754     public TS getRxe18_DTOfMostRecentRefillOrDoseDispensed() { 
755 		TS retVal = this.getTypedField(18, 0);
756 		return retVal;
757     }
758 
759 
760 
761     /**
762      * Returns
763      * RXE-19: "Total Daily Dose" - creates it if necessary
764      */
765     public CQ getTotalDailyDose() { 
766 		CQ retVal = this.getTypedField(19, 0);
767 		return retVal;
768     }
769     
770     /**
771      * Returns
772      * RXE-19: "Total Daily Dose" - creates it if necessary
773      */
774     public CQ getRxe19_TotalDailyDose() { 
775 		CQ retVal = this.getTypedField(19, 0);
776 		return retVal;
777     }
778 
779 
780 
781     /**
782      * Returns
783      * RXE-20: "Needs Human Review" - creates it if necessary
784      */
785     public ID getNeedsHumanReview() { 
786 		ID retVal = this.getTypedField(20, 0);
787 		return retVal;
788     }
789     
790     /**
791      * Returns
792      * RXE-20: "Needs Human Review" - creates it if necessary
793      */
794     public ID getRxe20_NeedsHumanReview() { 
795 		ID retVal = this.getTypedField(20, 0);
796 		return retVal;
797     }
798 
799 
800     /**
801      * Returns all repetitions of Pharmacy/Treatment Supplier’s Special Dispensing Instructions (RXE-21).
802      */
803     public CE[] getPharmacyTreatmentSupplierSSpecialDispensingInstructions() {
804     	CE[] retVal = this.getTypedField(21, new CE[0]);
805     	return retVal;
806     }
807 
808 
809     /**
810      * Returns all repetitions of Pharmacy/Treatment Supplier’s Special Dispensing Instructions (RXE-21).
811      */
812     public CE[] getRxe21_PharmacyTreatmentSupplierSSpecialDispensingInstructions() {
813     	CE[] retVal = this.getTypedField(21, new CE[0]);
814     	return retVal;
815     }
816 
817 
818     /**
819      * Returns a count of the current number of repetitions of Pharmacy/Treatment Supplier’s Special Dispensing Instructions (RXE-21).
820      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
821      * it will return zero.
822      */
823     public int getPharmacyTreatmentSupplierSSpecialDispensingInstructionsReps() {
824     	return this.getReps(21);
825     }
826 
827 
828     /**
829      * Returns a specific repetition of
830      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" - creates it if necessary
831      *
832      * @param rep The repetition index (0-indexed)
833      */
834     public CE getPharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) { 
835 		CE retVal = this.getTypedField(21, rep);
836 		return retVal;
837     }
838 
839     /**
840      * Returns a specific repetition of
841      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" - creates it if necessary
842      *
843      * @param rep The repetition index (0-indexed)
844      */
845     public CE getRxe21_PharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) { 
846 		CE retVal = this.getTypedField(21, rep);
847 		return retVal;
848     }
849 
850     /**
851      * Returns a count of the current number of repetitions of Pharmacy/Treatment Supplier’s Special Dispensing Instructions (RXE-21).
852      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
853      * it will return zero.
854      */
855     public int getRxe21_PharmacyTreatmentSupplierSSpecialDispensingInstructionsReps() {
856     	return this.getReps(21);
857     }
858 
859 
860     /**
861      * Inserts a repetition of
862      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" at a specific index
863      *
864      * @param rep The repetition index (0-indexed)
865      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
866      */
867     public CE insertPharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) throws HL7Exception { 
868         return (CE) super.insertRepetition(21, rep);
869     }
870 
871 
872     /**
873      * Inserts a repetition of
874      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" at a specific index
875      *
876      * @param rep The repetition index (0-indexed)
877      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
878      */
879     public CE insertRxe21_PharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) throws HL7Exception { 
880         return (CE) super.insertRepetition(21, rep);
881     }
882 
883 
884     /**
885      * Removes a repetition of
886      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" at a specific index
887      *
888      * @param rep The repetition index (0-indexed)
889      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
890      */
891     public CE removePharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) throws HL7Exception { 
892         return (CE) super.removeRepetition(21, rep);
893     }
894 
895 
896     /**
897      * Removes a repetition of
898      * RXE-21: "Pharmacy/Treatment Supplier’s Special Dispensing Instructions" at a specific index
899      *
900      * @param rep The repetition index (0-indexed)
901      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
902      */
903     public CE removeRxe21_PharmacyTreatmentSupplierSSpecialDispensingInstructions(int rep) throws HL7Exception { 
904         return (CE) super.removeRepetition(21, rep);
905     }
906 
907 
908 
909 
910     /**
911      * Returns
912      * RXE-22: "Give Per (Time Unit)" - creates it if necessary
913      */
914     public ST getGivePerTimeUnit() { 
915 		ST retVal = this.getTypedField(22, 0);
916 		return retVal;
917     }
918     
919     /**
920      * Returns
921      * RXE-22: "Give Per (Time Unit)" - creates it if necessary
922      */
923     public ST getRxe22_GivePerTimeUnit() { 
924 		ST retVal = this.getTypedField(22, 0);
925 		return retVal;
926     }
927 
928 
929 
930     /**
931      * Returns
932      * RXE-23: "Give Rate Amount" - creates it if necessary
933      */
934     public ST getGiveRateAmount() { 
935 		ST retVal = this.getTypedField(23, 0);
936 		return retVal;
937     }
938     
939     /**
940      * Returns
941      * RXE-23: "Give Rate Amount" - creates it if necessary
942      */
943     public ST getRxe23_GiveRateAmount() { 
944 		ST retVal = this.getTypedField(23, 0);
945 		return retVal;
946     }
947 
948 
949 
950     /**
951      * Returns
952      * RXE-24: "Give Rate Units" - creates it if necessary
953      */
954     public CE getGiveRateUnits() { 
955 		CE retVal = this.getTypedField(24, 0);
956 		return retVal;
957     }
958     
959     /**
960      * Returns
961      * RXE-24: "Give Rate Units" - creates it if necessary
962      */
963     public CE getRxe24_GiveRateUnits() { 
964 		CE retVal = this.getTypedField(24, 0);
965 		return retVal;
966     }
967 
968 
969 
970     /**
971      * Returns
972      * RXE-25: "Give Strength" - creates it if necessary
973      */
974     public NM getGiveStrength() { 
975 		NM retVal = this.getTypedField(25, 0);
976 		return retVal;
977     }
978     
979     /**
980      * Returns
981      * RXE-25: "Give Strength" - creates it if necessary
982      */
983     public NM getRxe25_GiveStrength() { 
984 		NM retVal = this.getTypedField(25, 0);
985 		return retVal;
986     }
987 
988 
989 
990     /**
991      * Returns
992      * RXE-26: "Give Strength Units" - creates it if necessary
993      */
994     public CE getGiveStrengthUnits() { 
995 		CE retVal = this.getTypedField(26, 0);
996 		return retVal;
997     }
998     
999     /**
1000      * Returns
1001      * RXE-26: "Give Strength Units" - creates it if necessary
1002      */
1003     public CE getRxe26_GiveStrengthUnits() { 
1004 		CE retVal = this.getTypedField(26, 0);
1005 		return retVal;
1006     }
1007 
1008 
1009     /**
1010      * Returns all repetitions of Give Indication (RXE-27).
1011      */
1012     public CE[] getGiveIndication() {
1013     	CE[] retVal = this.getTypedField(27, new CE[0]);
1014     	return retVal;
1015     }
1016 
1017 
1018     /**
1019      * Returns all repetitions of Give Indication (RXE-27).
1020      */
1021     public CE[] getRxe27_GiveIndication() {
1022     	CE[] retVal = this.getTypedField(27, new CE[0]);
1023     	return retVal;
1024     }
1025 
1026 
1027     /**
1028      * Returns a count of the current number of repetitions of Give Indication (RXE-27).
1029      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1030      * it will return zero.
1031      */
1032     public int getGiveIndicationReps() {
1033     	return this.getReps(27);
1034     }
1035 
1036 
1037     /**
1038      * Returns a specific repetition of
1039      * RXE-27: "Give Indication" - creates it if necessary
1040      *
1041      * @param rep The repetition index (0-indexed)
1042      */
1043     public CE getGiveIndication(int rep) { 
1044 		CE retVal = this.getTypedField(27, rep);
1045 		return retVal;
1046     }
1047 
1048     /**
1049      * Returns a specific repetition of
1050      * RXE-27: "Give Indication" - creates it if necessary
1051      *
1052      * @param rep The repetition index (0-indexed)
1053      */
1054     public CE getRxe27_GiveIndication(int rep) { 
1055 		CE retVal = this.getTypedField(27, rep);
1056 		return retVal;
1057     }
1058 
1059     /**
1060      * Returns a count of the current number of repetitions of Give Indication (RXE-27).
1061      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1062      * it will return zero.
1063      */
1064     public int getRxe27_GiveIndicationReps() {
1065     	return this.getReps(27);
1066     }
1067 
1068 
1069     /**
1070      * Inserts a repetition of
1071      * RXE-27: "Give Indication" at a specific index
1072      *
1073      * @param rep The repetition index (0-indexed)
1074      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1075      */
1076     public CE insertGiveIndication(int rep) throws HL7Exception { 
1077         return (CE) super.insertRepetition(27, rep);
1078     }
1079 
1080 
1081     /**
1082      * Inserts a repetition of
1083      * RXE-27: "Give Indication" at a specific index
1084      *
1085      * @param rep The repetition index (0-indexed)
1086      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1087      */
1088     public CE insertRxe27_GiveIndication(int rep) throws HL7Exception { 
1089         return (CE) super.insertRepetition(27, rep);
1090     }
1091 
1092 
1093     /**
1094      * Removes a repetition of
1095      * RXE-27: "Give Indication" at a specific index
1096      *
1097      * @param rep The repetition index (0-indexed)
1098      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1099      */
1100     public CE removeGiveIndication(int rep) throws HL7Exception { 
1101         return (CE) super.removeRepetition(27, rep);
1102     }
1103 
1104 
1105     /**
1106      * Removes a repetition of
1107      * RXE-27: "Give Indication" at a specific index
1108      *
1109      * @param rep The repetition index (0-indexed)
1110      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1111      */
1112     public CE removeRxe27_GiveIndication(int rep) throws HL7Exception { 
1113         return (CE) super.removeRepetition(27, rep);
1114     }
1115 
1116 
1117 
1118 
1119     /**
1120      * Returns
1121      * RXE-28: "Dispense Package Size" - creates it if necessary
1122      */
1123     public NM getDispensePackageSize() { 
1124 		NM retVal = this.getTypedField(28, 0);
1125 		return retVal;
1126     }
1127     
1128     /**
1129      * Returns
1130      * RXE-28: "Dispense Package Size" - creates it if necessary
1131      */
1132     public NM getRxe28_DispensePackageSize() { 
1133 		NM retVal = this.getTypedField(28, 0);
1134 		return retVal;
1135     }
1136 
1137 
1138 
1139     /**
1140      * Returns
1141      * RXE-29: "Dispense Package Size Unit" - creates it if necessary
1142      */
1143     public CE getDispensePackageSizeUnit() { 
1144 		CE retVal = this.getTypedField(29, 0);
1145 		return retVal;
1146     }
1147     
1148     /**
1149      * Returns
1150      * RXE-29: "Dispense Package Size Unit" - creates it if necessary
1151      */
1152     public CE getRxe29_DispensePackageSizeUnit() { 
1153 		CE retVal = this.getTypedField(29, 0);
1154 		return retVal;
1155     }
1156 
1157 
1158 
1159     /**
1160      * Returns
1161      * RXE-30: "Dispense Package Method" - creates it if necessary
1162      */
1163     public ID getDispensePackageMethod() { 
1164 		ID retVal = this.getTypedField(30, 0);
1165 		return retVal;
1166     }
1167     
1168     /**
1169      * Returns
1170      * RXE-30: "Dispense Package Method" - creates it if necessary
1171      */
1172     public ID getRxe30_DispensePackageMethod() { 
1173 		ID retVal = this.getTypedField(30, 0);
1174 		return retVal;
1175     }
1176 
1177 
1178 
1179 
1180 
1181     /** {@inheritDoc} */   
1182     protected Type createNewTypeWithoutReflection(int field) {
1183        switch (field) {
1184           case 0: return new TQ(getMessage());
1185           case 1: return new CE(getMessage());
1186           case 2: return new NM(getMessage());
1187           case 3: return new NM(getMessage());
1188           case 4: return new CE(getMessage());
1189           case 5: return new CE(getMessage());
1190           case 6: return new CE(getMessage());
1191           case 7: return new LA1(getMessage());
1192           case 8: return new ID(getMessage(), new Integer( 167 ));
1193           case 9: return new NM(getMessage());
1194           case 10: return new CE(getMessage());
1195           case 11: return new NM(getMessage());
1196           case 12: return new XCN(getMessage());
1197           case 13: return new XCN(getMessage());
1198           case 14: return new ST(getMessage());
1199           case 15: return new NM(getMessage());
1200           case 16: return new NM(getMessage());
1201           case 17: return new TS(getMessage());
1202           case 18: return new CQ(getMessage());
1203           case 19: return new ID(getMessage(), new Integer( 136 ));
1204           case 20: return new CE(getMessage());
1205           case 21: return new ST(getMessage());
1206           case 22: return new ST(getMessage());
1207           case 23: return new CE(getMessage());
1208           case 24: return new NM(getMessage());
1209           case 25: return new CE(getMessage());
1210           case 26: return new CE(getMessage());
1211           case 27: return new NM(getMessage());
1212           case 28: return new CE(getMessage());
1213           case 29: return new ID(getMessage(), new Integer( 321 ));
1214           default: return null;
1215        }
1216    }
1217 
1218 
1219 }
1220