001/*
002 * This class is an auto-generated source file for a HAPI
003 * HL7 v2.x standard structure class.
004 *
005 * For more information, visit: http://hl7api.sourceforge.net/
006 * 
007 * The contents of this file are subject to the Mozilla Public License Version 1.1 
008 * (the "License"); you may not use this file except in compliance with the License. 
009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
010 * Software distributed under the License is distributed on an "AS IS" basis, 
011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
012 * specific language governing rights and limitations under the License. 
013 * 
014 * The Original Code is "[file_name]".  Description: 
015 * "[one_line_description]" 
016 * 
017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
018 * 2012.  All Rights Reserved. 
019 * 
020 * Contributor(s): ______________________________________. 
021 * 
022 * Alternatively, the contents of this file may be used under the terms of the 
023 * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
024 * applicable instead of those above.  If you wish to allow use of your version of this 
025 * file only under the terms of the GPL and not to allow others to use your version 
026 * of this file under the MPL, indicate your decision by deleting  the provisions above 
027 * and replace  them with the notice and other provisions required by the GPL License.  
028 * If you do not delete the provisions above, a recipient may use your version of 
029 * this file under either the MPL or the GPL. 
030 * 
031 */
032
033
034package ca.uhn.hl7v2.model.v25.segment;
035
036// import ca.uhn.hl7v2.model.v25.group.*;
037import ca.uhn.hl7v2.model.v25.datatype.*;
038import ca.uhn.hl7v2.HL7Exception;
039import ca.uhn.hl7v2.parser.ModelClassFactory;
040import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
041import ca.uhn.hl7v2.model.AbstractMessage;
042import ca.uhn.hl7v2.model.Group;
043import ca.uhn.hl7v2.model.Type;
044import ca.uhn.hl7v2.model.AbstractSegment;
045import ca.uhn.hl7v2.model.Varies;
046
047
048/**
049 *<p>Represents an HL7 ORC message segment (Common Order). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>ORC-1: Order Control (ID) <b> </b>
053     * <li>ORC-2: Placer Order Number (EI) <b>optional </b>
054     * <li>ORC-3: Filler Order Number (EI) <b>optional </b>
055     * <li>ORC-4: Placer Group Number (EI) <b>optional </b>
056     * <li>ORC-5: Order Status (ID) <b>optional </b>
057     * <li>ORC-6: Response Flag (ID) <b>optional </b>
058     * <li>ORC-7: Quantity/Timing (TQ) <b>optional repeating</b>
059     * <li>ORC-8: Parent Order (EIP) <b>optional </b>
060     * <li>ORC-9: Date/Time of Transaction (TS) <b>optional </b>
061     * <li>ORC-10: Entered By (XCN) <b>optional repeating</b>
062     * <li>ORC-11: Verified By (XCN) <b>optional repeating</b>
063     * <li>ORC-12: Ordering Provider (XCN) <b>optional repeating</b>
064     * <li>ORC-13: Enterer's Location (PL) <b>optional </b>
065     * <li>ORC-14: Call Back Phone Number (XTN) <b>optional repeating</b>
066     * <li>ORC-15: Order Effective Date/Time (TS) <b>optional </b>
067     * <li>ORC-16: Order Control Code Reason (CE) <b>optional </b>
068     * <li>ORC-17: Entering Organization (CE) <b>optional </b>
069     * <li>ORC-18: Entering Device (CE) <b>optional </b>
070     * <li>ORC-19: Action By (XCN) <b>optional repeating</b>
071     * <li>ORC-20: Advanced Beneficiary Notice Code (CE) <b>optional </b>
072     * <li>ORC-21: Ordering Facility Name (XON) <b>optional repeating</b>
073     * <li>ORC-22: Ordering Facility Address (XAD) <b>optional repeating</b>
074     * <li>ORC-23: Ordering Facility Phone Number (XTN) <b>optional repeating</b>
075     * <li>ORC-24: Ordering Provider Address (XAD) <b>optional repeating</b>
076     * <li>ORC-25: Order Status Modifier (CWE) <b>optional </b>
077     * <li>ORC-26: Advanced Beneficiary Notice Override Reason (CWE) <b>optional </b>
078     * <li>ORC-27: Filler's Expected Availability Date/Time (TS) <b>optional </b>
079     * <li>ORC-28: Confidentiality Code (CWE) <b>optional </b>
080     * <li>ORC-29: Order Type (CWE) <b>optional </b>
081     * <li>ORC-30: Enterer Authorization Mode (CNE) <b>optional </b>
082 * </ul>
083 */
084@SuppressWarnings("unused")
085public class ORC extends AbstractSegment {
086
087    /** 
088     * Creates a new ORC segment
089     */
090    public ORC(Group parent, ModelClassFactory factory) {
091       super(parent, factory);
092       init(factory);
093    }
094
095    private void init(ModelClassFactory factory) {
096       try {
097                                              this.add(ID.class, true, 1, 2, new Object[]{ getMessage(), new Integer(119) }, "Order Control");
098                                  this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Placer Order Number");
099                                  this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Filler Order Number");
100                                  this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Placer Group Number");
101                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(38) }, "Order Status");
102                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(121) }, "Response Flag");
103                                  this.add(TQ.class, false, 0, 200, new Object[]{ getMessage() }, "Quantity/Timing");
104                                  this.add(EIP.class, false, 1, 200, new Object[]{ getMessage() }, "Parent Order");
105                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of Transaction");
106                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Entered By");
107                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Verified By");
108                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Provider");
109                                  this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Enterer's Location");
110                                  this.add(XTN.class, false, 0, 250, new Object[]{ getMessage() }, "Call Back Phone Number");
111                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Order Effective Date/Time");
112                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Order Control Code Reason");
113                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Entering Organization");
114                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Entering Device");
115                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Action By");
116                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Advanced Beneficiary Notice Code");
117                                  this.add(XON.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Facility Name");
118                                  this.add(XAD.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Facility Address");
119                                  this.add(XTN.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Facility Phone Number");
120                                  this.add(XAD.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Provider Address");
121                                  this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Order Status Modifier");
122                                  this.add(CWE.class, false, 1, 60, new Object[]{ getMessage() }, "Advanced Beneficiary Notice Override Reason");
123                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Filler's Expected Availability Date/Time");
124                                  this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Confidentiality Code");
125                                  this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Order Type");
126                                  this.add(CNE.class, false, 1, 250, new Object[]{ getMessage() }, "Enterer Authorization Mode");
127       } catch(HL7Exception e) {
128          log.error("Unexpected error creating ORC - this is probably a bug in the source code generator.", e);
129       }
130    }
131
132
133
134    /**
135     * Returns
136     * ORC-1: "Order Control" - creates it if necessary
137     */
138    public ID getOrderControl() { 
139                ID retVal = this.getTypedField(1, 0);
140                return retVal;
141    }
142    
143    /**
144     * Returns
145     * ORC-1: "Order Control" - creates it if necessary
146     */
147    public ID getOrc1_OrderControl() { 
148                ID retVal = this.getTypedField(1, 0);
149                return retVal;
150    }
151
152
153
154    /**
155     * Returns
156     * ORC-2: "Placer Order Number" - creates it if necessary
157     */
158    public EI getPlacerOrderNumber() { 
159                EI retVal = this.getTypedField(2, 0);
160                return retVal;
161    }
162    
163    /**
164     * Returns
165     * ORC-2: "Placer Order Number" - creates it if necessary
166     */
167    public EI getOrc2_PlacerOrderNumber() { 
168                EI retVal = this.getTypedField(2, 0);
169                return retVal;
170    }
171
172
173
174    /**
175     * Returns
176     * ORC-3: "Filler Order Number" - creates it if necessary
177     */
178    public EI getFillerOrderNumber() { 
179                EI retVal = this.getTypedField(3, 0);
180                return retVal;
181    }
182    
183    /**
184     * Returns
185     * ORC-3: "Filler Order Number" - creates it if necessary
186     */
187    public EI getOrc3_FillerOrderNumber() { 
188                EI retVal = this.getTypedField(3, 0);
189                return retVal;
190    }
191
192
193
194    /**
195     * Returns
196     * ORC-4: "Placer Group Number" - creates it if necessary
197     */
198    public EI getPlacerGroupNumber() { 
199                EI retVal = this.getTypedField(4, 0);
200                return retVal;
201    }
202    
203    /**
204     * Returns
205     * ORC-4: "Placer Group Number" - creates it if necessary
206     */
207    public EI getOrc4_PlacerGroupNumber() { 
208                EI retVal = this.getTypedField(4, 0);
209                return retVal;
210    }
211
212
213
214    /**
215     * Returns
216     * ORC-5: "Order Status" - creates it if necessary
217     */
218    public ID getOrderStatus() { 
219                ID retVal = this.getTypedField(5, 0);
220                return retVal;
221    }
222    
223    /**
224     * Returns
225     * ORC-5: "Order Status" - creates it if necessary
226     */
227    public ID getOrc5_OrderStatus() { 
228                ID retVal = this.getTypedField(5, 0);
229                return retVal;
230    }
231
232
233
234    /**
235     * Returns
236     * ORC-6: "Response Flag" - creates it if necessary
237     */
238    public ID getResponseFlag() { 
239                ID retVal = this.getTypedField(6, 0);
240                return retVal;
241    }
242    
243    /**
244     * Returns
245     * ORC-6: "Response Flag" - creates it if necessary
246     */
247    public ID getOrc6_ResponseFlag() { 
248                ID retVal = this.getTypedField(6, 0);
249                return retVal;
250    }
251
252
253    /**
254     * Returns all repetitions of Quantity/Timing (ORC-7).
255     */
256    public TQ[] getQuantityTiming() {
257        TQ[] retVal = this.getTypedField(7, new TQ[0]);
258        return retVal;
259    }
260
261
262    /**
263     * Returns all repetitions of Quantity/Timing (ORC-7).
264     */
265    public TQ[] getOrc7_QuantityTiming() {
266        TQ[] retVal = this.getTypedField(7, new TQ[0]);
267        return retVal;
268    }
269
270
271    /**
272     * Returns a count of the current number of repetitions of Quantity/Timing (ORC-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 getQuantityTimingReps() {
277        return this.getReps(7);
278    }
279
280
281    /**
282     * Returns a specific repetition of
283     * ORC-7: "Quantity/Timing" - creates it if necessary
284     *
285     * @param rep The repetition index (0-indexed)
286     */
287    public TQ getQuantityTiming(int rep) { 
288                TQ retVal = this.getTypedField(7, rep);
289                return retVal;
290    }
291
292    /**
293     * Returns a specific repetition of
294     * ORC-7: "Quantity/Timing" - creates it if necessary
295     *
296     * @param rep The repetition index (0-indexed)
297     */
298    public TQ getOrc7_QuantityTiming(int rep) { 
299                TQ retVal = this.getTypedField(7, rep);
300                return retVal;
301    }
302
303    /**
304     * Returns a count of the current number of repetitions of Quantity/Timing (ORC-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 getOrc7_QuantityTimingReps() {
309        return this.getReps(7);
310    }
311
312
313    /**
314     * Inserts a repetition of
315     * ORC-7: "Quantity/Timing" 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 TQ insertQuantityTiming(int rep) throws HL7Exception { 
321        return (TQ) super.insertRepetition(7, rep);
322    }
323
324
325    /**
326     * Inserts a repetition of
327     * ORC-7: "Quantity/Timing" 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 TQ insertOrc7_QuantityTiming(int rep) throws HL7Exception { 
333        return (TQ) super.insertRepetition(7, rep);
334    }
335
336
337    /**
338     * Removes a repetition of
339     * ORC-7: "Quantity/Timing" 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 TQ removeQuantityTiming(int rep) throws HL7Exception { 
345        return (TQ) super.removeRepetition(7, rep);
346    }
347
348
349    /**
350     * Removes a repetition of
351     * ORC-7: "Quantity/Timing" 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 TQ removeOrc7_QuantityTiming(int rep) throws HL7Exception { 
357        return (TQ) super.removeRepetition(7, rep);
358    }
359
360
361
362
363    /**
364     * Returns
365     * ORC-8: "Parent Order" - creates it if necessary
366     */
367    public EIP getParentOrder() { 
368                EIP retVal = this.getTypedField(8, 0);
369                return retVal;
370    }
371    
372    /**
373     * Returns
374     * ORC-8: "Parent Order" - creates it if necessary
375     */
376    public EIP getOrc8_ParentOrder() { 
377                EIP retVal = this.getTypedField(8, 0);
378                return retVal;
379    }
380
381
382
383    /**
384     * Returns
385     * ORC-9: "Date/Time of Transaction" - creates it if necessary
386     */
387    public TS getDateTimeOfTransaction() { 
388                TS retVal = this.getTypedField(9, 0);
389                return retVal;
390    }
391    
392    /**
393     * Returns
394     * ORC-9: "Date/Time of Transaction" - creates it if necessary
395     */
396    public TS getOrc9_DateTimeOfTransaction() { 
397                TS retVal = this.getTypedField(9, 0);
398                return retVal;
399    }
400
401
402    /**
403     * Returns all repetitions of Entered By (ORC-10).
404     */
405    public XCN[] getEnteredBy() {
406        XCN[] retVal = this.getTypedField(10, new XCN[0]);
407        return retVal;
408    }
409
410
411    /**
412     * Returns all repetitions of Entered By (ORC-10).
413     */
414    public XCN[] getOrc10_EnteredBy() {
415        XCN[] retVal = this.getTypedField(10, new XCN[0]);
416        return retVal;
417    }
418
419
420    /**
421     * Returns a count of the current number of repetitions of Entered By (ORC-10).
422     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
423     * it will return zero.
424     */
425    public int getEnteredByReps() {
426        return this.getReps(10);
427    }
428
429
430    /**
431     * Returns a specific repetition of
432     * ORC-10: "Entered By" - creates it if necessary
433     *
434     * @param rep The repetition index (0-indexed)
435     */
436    public XCN getEnteredBy(int rep) { 
437                XCN retVal = this.getTypedField(10, rep);
438                return retVal;
439    }
440
441    /**
442     * Returns a specific repetition of
443     * ORC-10: "Entered By" - creates it if necessary
444     *
445     * @param rep The repetition index (0-indexed)
446     */
447    public XCN getOrc10_EnteredBy(int rep) { 
448                XCN retVal = this.getTypedField(10, rep);
449                return retVal;
450    }
451
452    /**
453     * Returns a count of the current number of repetitions of Entered By (ORC-10).
454     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
455     * it will return zero.
456     */
457    public int getOrc10_EnteredByReps() {
458        return this.getReps(10);
459    }
460
461
462    /**
463     * Inserts a repetition of
464     * ORC-10: "Entered By" at a specific index
465     *
466     * @param rep The repetition index (0-indexed)
467     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
468     */
469    public XCN insertEnteredBy(int rep) throws HL7Exception { 
470        return (XCN) super.insertRepetition(10, rep);
471    }
472
473
474    /**
475     * Inserts a repetition of
476     * ORC-10: "Entered By" at a specific index
477     *
478     * @param rep The repetition index (0-indexed)
479     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
480     */
481    public XCN insertOrc10_EnteredBy(int rep) throws HL7Exception { 
482        return (XCN) super.insertRepetition(10, rep);
483    }
484
485
486    /**
487     * Removes a repetition of
488     * ORC-10: "Entered By" at a specific index
489     *
490     * @param rep The repetition index (0-indexed)
491     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
492     */
493    public XCN removeEnteredBy(int rep) throws HL7Exception { 
494        return (XCN) super.removeRepetition(10, rep);
495    }
496
497
498    /**
499     * Removes a repetition of
500     * ORC-10: "Entered By" at a specific index
501     *
502     * @param rep The repetition index (0-indexed)
503     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
504     */
505    public XCN removeOrc10_EnteredBy(int rep) throws HL7Exception { 
506        return (XCN) super.removeRepetition(10, rep);
507    }
508
509
510
511    /**
512     * Returns all repetitions of Verified By (ORC-11).
513     */
514    public XCN[] getVerifiedBy() {
515        XCN[] retVal = this.getTypedField(11, new XCN[0]);
516        return retVal;
517    }
518
519
520    /**
521     * Returns all repetitions of Verified By (ORC-11).
522     */
523    public XCN[] getOrc11_VerifiedBy() {
524        XCN[] retVal = this.getTypedField(11, new XCN[0]);
525        return retVal;
526    }
527
528
529    /**
530     * Returns a count of the current number of repetitions of Verified By (ORC-11).
531     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
532     * it will return zero.
533     */
534    public int getVerifiedByReps() {
535        return this.getReps(11);
536    }
537
538
539    /**
540     * Returns a specific repetition of
541     * ORC-11: "Verified By" - creates it if necessary
542     *
543     * @param rep The repetition index (0-indexed)
544     */
545    public XCN getVerifiedBy(int rep) { 
546                XCN retVal = this.getTypedField(11, rep);
547                return retVal;
548    }
549
550    /**
551     * Returns a specific repetition of
552     * ORC-11: "Verified By" - creates it if necessary
553     *
554     * @param rep The repetition index (0-indexed)
555     */
556    public XCN getOrc11_VerifiedBy(int rep) { 
557                XCN retVal = this.getTypedField(11, rep);
558                return retVal;
559    }
560
561    /**
562     * Returns a count of the current number of repetitions of Verified By (ORC-11).
563     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
564     * it will return zero.
565     */
566    public int getOrc11_VerifiedByReps() {
567        return this.getReps(11);
568    }
569
570
571    /**
572     * Inserts a repetition of
573     * ORC-11: "Verified By" at a specific index
574     *
575     * @param rep The repetition index (0-indexed)
576     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
577     */
578    public XCN insertVerifiedBy(int rep) throws HL7Exception { 
579        return (XCN) super.insertRepetition(11, rep);
580    }
581
582
583    /**
584     * Inserts a repetition of
585     * ORC-11: "Verified By" at a specific index
586     *
587     * @param rep The repetition index (0-indexed)
588     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
589     */
590    public XCN insertOrc11_VerifiedBy(int rep) throws HL7Exception { 
591        return (XCN) super.insertRepetition(11, rep);
592    }
593
594
595    /**
596     * Removes a repetition of
597     * ORC-11: "Verified By" at a specific index
598     *
599     * @param rep The repetition index (0-indexed)
600     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
601     */
602    public XCN removeVerifiedBy(int rep) throws HL7Exception { 
603        return (XCN) super.removeRepetition(11, rep);
604    }
605
606
607    /**
608     * Removes a repetition of
609     * ORC-11: "Verified By" at a specific index
610     *
611     * @param rep The repetition index (0-indexed)
612     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
613     */
614    public XCN removeOrc11_VerifiedBy(int rep) throws HL7Exception { 
615        return (XCN) super.removeRepetition(11, rep);
616    }
617
618
619
620    /**
621     * Returns all repetitions of Ordering Provider (ORC-12).
622     */
623    public XCN[] getOrderingProvider() {
624        XCN[] retVal = this.getTypedField(12, new XCN[0]);
625        return retVal;
626    }
627
628
629    /**
630     * Returns all repetitions of Ordering Provider (ORC-12).
631     */
632    public XCN[] getOrc12_OrderingProvider() {
633        XCN[] retVal = this.getTypedField(12, new XCN[0]);
634        return retVal;
635    }
636
637
638    /**
639     * Returns a count of the current number of repetitions of Ordering Provider (ORC-12).
640     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
641     * it will return zero.
642     */
643    public int getOrderingProviderReps() {
644        return this.getReps(12);
645    }
646
647
648    /**
649     * Returns a specific repetition of
650     * ORC-12: "Ordering Provider" - creates it if necessary
651     *
652     * @param rep The repetition index (0-indexed)
653     */
654    public XCN getOrderingProvider(int rep) { 
655                XCN retVal = this.getTypedField(12, rep);
656                return retVal;
657    }
658
659    /**
660     * Returns a specific repetition of
661     * ORC-12: "Ordering Provider" - creates it if necessary
662     *
663     * @param rep The repetition index (0-indexed)
664     */
665    public XCN getOrc12_OrderingProvider(int rep) { 
666                XCN retVal = this.getTypedField(12, rep);
667                return retVal;
668    }
669
670    /**
671     * Returns a count of the current number of repetitions of Ordering Provider (ORC-12).
672     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
673     * it will return zero.
674     */
675    public int getOrc12_OrderingProviderReps() {
676        return this.getReps(12);
677    }
678
679
680    /**
681     * Inserts a repetition of
682     * ORC-12: "Ordering Provider" at a specific index
683     *
684     * @param rep The repetition index (0-indexed)
685     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
686     */
687    public XCN insertOrderingProvider(int rep) throws HL7Exception { 
688        return (XCN) super.insertRepetition(12, rep);
689    }
690
691
692    /**
693     * Inserts a repetition of
694     * ORC-12: "Ordering Provider" at a specific index
695     *
696     * @param rep The repetition index (0-indexed)
697     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
698     */
699    public XCN insertOrc12_OrderingProvider(int rep) throws HL7Exception { 
700        return (XCN) super.insertRepetition(12, rep);
701    }
702
703
704    /**
705     * Removes a repetition of
706     * ORC-12: "Ordering Provider" at a specific index
707     *
708     * @param rep The repetition index (0-indexed)
709     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
710     */
711    public XCN removeOrderingProvider(int rep) throws HL7Exception { 
712        return (XCN) super.removeRepetition(12, rep);
713    }
714
715
716    /**
717     * Removes a repetition of
718     * ORC-12: "Ordering Provider" at a specific index
719     *
720     * @param rep The repetition index (0-indexed)
721     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
722     */
723    public XCN removeOrc12_OrderingProvider(int rep) throws HL7Exception { 
724        return (XCN) super.removeRepetition(12, rep);
725    }
726
727
728
729
730    /**
731     * Returns
732     * ORC-13: "Enterer's Location" - creates it if necessary
733     */
734    public PL getEntererSLocation() { 
735                PL retVal = this.getTypedField(13, 0);
736                return retVal;
737    }
738    
739    /**
740     * Returns
741     * ORC-13: "Enterer's Location" - creates it if necessary
742     */
743    public PL getOrc13_EntererSLocation() { 
744                PL retVal = this.getTypedField(13, 0);
745                return retVal;
746    }
747
748
749    /**
750     * Returns all repetitions of Call Back Phone Number (ORC-14).
751     */
752    public XTN[] getCallBackPhoneNumber() {
753        XTN[] retVal = this.getTypedField(14, new XTN[0]);
754        return retVal;
755    }
756
757
758    /**
759     * Returns all repetitions of Call Back Phone Number (ORC-14).
760     */
761    public XTN[] getOrc14_CallBackPhoneNumber() {
762        XTN[] retVal = this.getTypedField(14, new XTN[0]);
763        return retVal;
764    }
765
766
767    /**
768     * Returns a count of the current number of repetitions of Call Back Phone Number (ORC-14).
769     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
770     * it will return zero.
771     */
772    public int getCallBackPhoneNumberReps() {
773        return this.getReps(14);
774    }
775
776
777    /**
778     * Returns a specific repetition of
779     * ORC-14: "Call Back Phone Number" - creates it if necessary
780     *
781     * @param rep The repetition index (0-indexed)
782     */
783    public XTN getCallBackPhoneNumber(int rep) { 
784                XTN retVal = this.getTypedField(14, rep);
785                return retVal;
786    }
787
788    /**
789     * Returns a specific repetition of
790     * ORC-14: "Call Back Phone Number" - creates it if necessary
791     *
792     * @param rep The repetition index (0-indexed)
793     */
794    public XTN getOrc14_CallBackPhoneNumber(int rep) { 
795                XTN retVal = this.getTypedField(14, rep);
796                return retVal;
797    }
798
799    /**
800     * Returns a count of the current number of repetitions of Call Back Phone Number (ORC-14).
801     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
802     * it will return zero.
803     */
804    public int getOrc14_CallBackPhoneNumberReps() {
805        return this.getReps(14);
806    }
807
808
809    /**
810     * Inserts a repetition of
811     * ORC-14: "Call Back Phone Number" at a specific index
812     *
813     * @param rep The repetition index (0-indexed)
814     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
815     */
816    public XTN insertCallBackPhoneNumber(int rep) throws HL7Exception { 
817        return (XTN) super.insertRepetition(14, rep);
818    }
819
820
821    /**
822     * Inserts a repetition of
823     * ORC-14: "Call Back Phone Number" at a specific index
824     *
825     * @param rep The repetition index (0-indexed)
826     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
827     */
828    public XTN insertOrc14_CallBackPhoneNumber(int rep) throws HL7Exception { 
829        return (XTN) super.insertRepetition(14, rep);
830    }
831
832
833    /**
834     * Removes a repetition of
835     * ORC-14: "Call Back Phone Number" at a specific index
836     *
837     * @param rep The repetition index (0-indexed)
838     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
839     */
840    public XTN removeCallBackPhoneNumber(int rep) throws HL7Exception { 
841        return (XTN) super.removeRepetition(14, rep);
842    }
843
844
845    /**
846     * Removes a repetition of
847     * ORC-14: "Call Back Phone Number" at a specific index
848     *
849     * @param rep The repetition index (0-indexed)
850     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
851     */
852    public XTN removeOrc14_CallBackPhoneNumber(int rep) throws HL7Exception { 
853        return (XTN) super.removeRepetition(14, rep);
854    }
855
856
857
858
859    /**
860     * Returns
861     * ORC-15: "Order Effective Date/Time" - creates it if necessary
862     */
863    public TS getOrderEffectiveDateTime() { 
864                TS retVal = this.getTypedField(15, 0);
865                return retVal;
866    }
867    
868    /**
869     * Returns
870     * ORC-15: "Order Effective Date/Time" - creates it if necessary
871     */
872    public TS getOrc15_OrderEffectiveDateTime() { 
873                TS retVal = this.getTypedField(15, 0);
874                return retVal;
875    }
876
877
878
879    /**
880     * Returns
881     * ORC-16: "Order Control Code Reason" - creates it if necessary
882     */
883    public CE getOrderControlCodeReason() { 
884                CE retVal = this.getTypedField(16, 0);
885                return retVal;
886    }
887    
888    /**
889     * Returns
890     * ORC-16: "Order Control Code Reason" - creates it if necessary
891     */
892    public CE getOrc16_OrderControlCodeReason() { 
893                CE retVal = this.getTypedField(16, 0);
894                return retVal;
895    }
896
897
898
899    /**
900     * Returns
901     * ORC-17: "Entering Organization" - creates it if necessary
902     */
903    public CE getEnteringOrganization() { 
904                CE retVal = this.getTypedField(17, 0);
905                return retVal;
906    }
907    
908    /**
909     * Returns
910     * ORC-17: "Entering Organization" - creates it if necessary
911     */
912    public CE getOrc17_EnteringOrganization() { 
913                CE retVal = this.getTypedField(17, 0);
914                return retVal;
915    }
916
917
918
919    /**
920     * Returns
921     * ORC-18: "Entering Device" - creates it if necessary
922     */
923    public CE getEnteringDevice() { 
924                CE retVal = this.getTypedField(18, 0);
925                return retVal;
926    }
927    
928    /**
929     * Returns
930     * ORC-18: "Entering Device" - creates it if necessary
931     */
932    public CE getOrc18_EnteringDevice() { 
933                CE retVal = this.getTypedField(18, 0);
934                return retVal;
935    }
936
937
938    /**
939     * Returns all repetitions of Action By (ORC-19).
940     */
941    public XCN[] getActionBy() {
942        XCN[] retVal = this.getTypedField(19, new XCN[0]);
943        return retVal;
944    }
945
946
947    /**
948     * Returns all repetitions of Action By (ORC-19).
949     */
950    public XCN[] getOrc19_ActionBy() {
951        XCN[] retVal = this.getTypedField(19, new XCN[0]);
952        return retVal;
953    }
954
955
956    /**
957     * Returns a count of the current number of repetitions of Action By (ORC-19).
958     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
959     * it will return zero.
960     */
961    public int getActionByReps() {
962        return this.getReps(19);
963    }
964
965
966    /**
967     * Returns a specific repetition of
968     * ORC-19: "Action By" - creates it if necessary
969     *
970     * @param rep The repetition index (0-indexed)
971     */
972    public XCN getActionBy(int rep) { 
973                XCN retVal = this.getTypedField(19, rep);
974                return retVal;
975    }
976
977    /**
978     * Returns a specific repetition of
979     * ORC-19: "Action By" - creates it if necessary
980     *
981     * @param rep The repetition index (0-indexed)
982     */
983    public XCN getOrc19_ActionBy(int rep) { 
984                XCN retVal = this.getTypedField(19, rep);
985                return retVal;
986    }
987
988    /**
989     * Returns a count of the current number of repetitions of Action By (ORC-19).
990     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
991     * it will return zero.
992     */
993    public int getOrc19_ActionByReps() {
994        return this.getReps(19);
995    }
996
997
998    /**
999     * Inserts a repetition of
1000     * ORC-19: "Action By" at a specific index
1001     *
1002     * @param rep The repetition index (0-indexed)
1003     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1004     */
1005    public XCN insertActionBy(int rep) throws HL7Exception { 
1006        return (XCN) super.insertRepetition(19, rep);
1007    }
1008
1009
1010    /**
1011     * Inserts a repetition of
1012     * ORC-19: "Action By" at a specific index
1013     *
1014     * @param rep The repetition index (0-indexed)
1015     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1016     */
1017    public XCN insertOrc19_ActionBy(int rep) throws HL7Exception { 
1018        return (XCN) super.insertRepetition(19, rep);
1019    }
1020
1021
1022    /**
1023     * Removes a repetition of
1024     * ORC-19: "Action By" at a specific index
1025     *
1026     * @param rep The repetition index (0-indexed)
1027     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1028     */
1029    public XCN removeActionBy(int rep) throws HL7Exception { 
1030        return (XCN) super.removeRepetition(19, rep);
1031    }
1032
1033
1034    /**
1035     * Removes a repetition of
1036     * ORC-19: "Action By" at a specific index
1037     *
1038     * @param rep The repetition index (0-indexed)
1039     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1040     */
1041    public XCN removeOrc19_ActionBy(int rep) throws HL7Exception { 
1042        return (XCN) super.removeRepetition(19, rep);
1043    }
1044
1045
1046
1047
1048    /**
1049     * Returns
1050     * ORC-20: "Advanced Beneficiary Notice Code" - creates it if necessary
1051     */
1052    public CE getAdvancedBeneficiaryNoticeCode() { 
1053                CE retVal = this.getTypedField(20, 0);
1054                return retVal;
1055    }
1056    
1057    /**
1058     * Returns
1059     * ORC-20: "Advanced Beneficiary Notice Code" - creates it if necessary
1060     */
1061    public CE getOrc20_AdvancedBeneficiaryNoticeCode() { 
1062                CE retVal = this.getTypedField(20, 0);
1063                return retVal;
1064    }
1065
1066
1067    /**
1068     * Returns all repetitions of Ordering Facility Name (ORC-21).
1069     */
1070    public XON[] getOrderingFacilityName() {
1071        XON[] retVal = this.getTypedField(21, new XON[0]);
1072        return retVal;
1073    }
1074
1075
1076    /**
1077     * Returns all repetitions of Ordering Facility Name (ORC-21).
1078     */
1079    public XON[] getOrc21_OrderingFacilityName() {
1080        XON[] retVal = this.getTypedField(21, new XON[0]);
1081        return retVal;
1082    }
1083
1084
1085    /**
1086     * Returns a count of the current number of repetitions of Ordering Facility Name (ORC-21).
1087     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1088     * it will return zero.
1089     */
1090    public int getOrderingFacilityNameReps() {
1091        return this.getReps(21);
1092    }
1093
1094
1095    /**
1096     * Returns a specific repetition of
1097     * ORC-21: "Ordering Facility Name" - creates it if necessary
1098     *
1099     * @param rep The repetition index (0-indexed)
1100     */
1101    public XON getOrderingFacilityName(int rep) { 
1102                XON retVal = this.getTypedField(21, rep);
1103                return retVal;
1104    }
1105
1106    /**
1107     * Returns a specific repetition of
1108     * ORC-21: "Ordering Facility Name" - creates it if necessary
1109     *
1110     * @param rep The repetition index (0-indexed)
1111     */
1112    public XON getOrc21_OrderingFacilityName(int rep) { 
1113                XON retVal = this.getTypedField(21, rep);
1114                return retVal;
1115    }
1116
1117    /**
1118     * Returns a count of the current number of repetitions of Ordering Facility Name (ORC-21).
1119     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1120     * it will return zero.
1121     */
1122    public int getOrc21_OrderingFacilityNameReps() {
1123        return this.getReps(21);
1124    }
1125
1126
1127    /**
1128     * Inserts a repetition of
1129     * ORC-21: "Ordering Facility Name" at a specific index
1130     *
1131     * @param rep The repetition index (0-indexed)
1132     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1133     */
1134    public XON insertOrderingFacilityName(int rep) throws HL7Exception { 
1135        return (XON) super.insertRepetition(21, rep);
1136    }
1137
1138
1139    /**
1140     * Inserts a repetition of
1141     * ORC-21: "Ordering Facility Name" at a specific index
1142     *
1143     * @param rep The repetition index (0-indexed)
1144     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1145     */
1146    public XON insertOrc21_OrderingFacilityName(int rep) throws HL7Exception { 
1147        return (XON) super.insertRepetition(21, rep);
1148    }
1149
1150
1151    /**
1152     * Removes a repetition of
1153     * ORC-21: "Ordering Facility Name" at a specific index
1154     *
1155     * @param rep The repetition index (0-indexed)
1156     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1157     */
1158    public XON removeOrderingFacilityName(int rep) throws HL7Exception { 
1159        return (XON) super.removeRepetition(21, rep);
1160    }
1161
1162
1163    /**
1164     * Removes a repetition of
1165     * ORC-21: "Ordering Facility Name" at a specific index
1166     *
1167     * @param rep The repetition index (0-indexed)
1168     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1169     */
1170    public XON removeOrc21_OrderingFacilityName(int rep) throws HL7Exception { 
1171        return (XON) super.removeRepetition(21, rep);
1172    }
1173
1174
1175
1176    /**
1177     * Returns all repetitions of Ordering Facility Address (ORC-22).
1178     */
1179    public XAD[] getOrderingFacilityAddress() {
1180        XAD[] retVal = this.getTypedField(22, new XAD[0]);
1181        return retVal;
1182    }
1183
1184
1185    /**
1186     * Returns all repetitions of Ordering Facility Address (ORC-22).
1187     */
1188    public XAD[] getOrc22_OrderingFacilityAddress() {
1189        XAD[] retVal = this.getTypedField(22, new XAD[0]);
1190        return retVal;
1191    }
1192
1193
1194    /**
1195     * Returns a count of the current number of repetitions of Ordering Facility Address (ORC-22).
1196     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1197     * it will return zero.
1198     */
1199    public int getOrderingFacilityAddressReps() {
1200        return this.getReps(22);
1201    }
1202
1203
1204    /**
1205     * Returns a specific repetition of
1206     * ORC-22: "Ordering Facility Address" - creates it if necessary
1207     *
1208     * @param rep The repetition index (0-indexed)
1209     */
1210    public XAD getOrderingFacilityAddress(int rep) { 
1211                XAD retVal = this.getTypedField(22, rep);
1212                return retVal;
1213    }
1214
1215    /**
1216     * Returns a specific repetition of
1217     * ORC-22: "Ordering Facility Address" - creates it if necessary
1218     *
1219     * @param rep The repetition index (0-indexed)
1220     */
1221    public XAD getOrc22_OrderingFacilityAddress(int rep) { 
1222                XAD retVal = this.getTypedField(22, rep);
1223                return retVal;
1224    }
1225
1226    /**
1227     * Returns a count of the current number of repetitions of Ordering Facility Address (ORC-22).
1228     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1229     * it will return zero.
1230     */
1231    public int getOrc22_OrderingFacilityAddressReps() {
1232        return this.getReps(22);
1233    }
1234
1235
1236    /**
1237     * Inserts a repetition of
1238     * ORC-22: "Ordering Facility Address" at a specific index
1239     *
1240     * @param rep The repetition index (0-indexed)
1241     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1242     */
1243    public XAD insertOrderingFacilityAddress(int rep) throws HL7Exception { 
1244        return (XAD) super.insertRepetition(22, rep);
1245    }
1246
1247
1248    /**
1249     * Inserts a repetition of
1250     * ORC-22: "Ordering Facility Address" at a specific index
1251     *
1252     * @param rep The repetition index (0-indexed)
1253     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1254     */
1255    public XAD insertOrc22_OrderingFacilityAddress(int rep) throws HL7Exception { 
1256        return (XAD) super.insertRepetition(22, rep);
1257    }
1258
1259
1260    /**
1261     * Removes a repetition of
1262     * ORC-22: "Ordering Facility Address" at a specific index
1263     *
1264     * @param rep The repetition index (0-indexed)
1265     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1266     */
1267    public XAD removeOrderingFacilityAddress(int rep) throws HL7Exception { 
1268        return (XAD) super.removeRepetition(22, rep);
1269    }
1270
1271
1272    /**
1273     * Removes a repetition of
1274     * ORC-22: "Ordering Facility Address" at a specific index
1275     *
1276     * @param rep The repetition index (0-indexed)
1277     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1278     */
1279    public XAD removeOrc22_OrderingFacilityAddress(int rep) throws HL7Exception { 
1280        return (XAD) super.removeRepetition(22, rep);
1281    }
1282
1283
1284
1285    /**
1286     * Returns all repetitions of Ordering Facility Phone Number (ORC-23).
1287     */
1288    public XTN[] getOrderingFacilityPhoneNumber() {
1289        XTN[] retVal = this.getTypedField(23, new XTN[0]);
1290        return retVal;
1291    }
1292
1293
1294    /**
1295     * Returns all repetitions of Ordering Facility Phone Number (ORC-23).
1296     */
1297    public XTN[] getOrc23_OrderingFacilityPhoneNumber() {
1298        XTN[] retVal = this.getTypedField(23, new XTN[0]);
1299        return retVal;
1300    }
1301
1302
1303    /**
1304     * Returns a count of the current number of repetitions of Ordering Facility Phone Number (ORC-23).
1305     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1306     * it will return zero.
1307     */
1308    public int getOrderingFacilityPhoneNumberReps() {
1309        return this.getReps(23);
1310    }
1311
1312
1313    /**
1314     * Returns a specific repetition of
1315     * ORC-23: "Ordering Facility Phone Number" - creates it if necessary
1316     *
1317     * @param rep The repetition index (0-indexed)
1318     */
1319    public XTN getOrderingFacilityPhoneNumber(int rep) { 
1320                XTN retVal = this.getTypedField(23, rep);
1321                return retVal;
1322    }
1323
1324    /**
1325     * Returns a specific repetition of
1326     * ORC-23: "Ordering Facility Phone Number" - creates it if necessary
1327     *
1328     * @param rep The repetition index (0-indexed)
1329     */
1330    public XTN getOrc23_OrderingFacilityPhoneNumber(int rep) { 
1331                XTN retVal = this.getTypedField(23, rep);
1332                return retVal;
1333    }
1334
1335    /**
1336     * Returns a count of the current number of repetitions of Ordering Facility Phone Number (ORC-23).
1337     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1338     * it will return zero.
1339     */
1340    public int getOrc23_OrderingFacilityPhoneNumberReps() {
1341        return this.getReps(23);
1342    }
1343
1344
1345    /**
1346     * Inserts a repetition of
1347     * ORC-23: "Ordering Facility Phone Number" at a specific index
1348     *
1349     * @param rep The repetition index (0-indexed)
1350     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1351     */
1352    public XTN insertOrderingFacilityPhoneNumber(int rep) throws HL7Exception { 
1353        return (XTN) super.insertRepetition(23, rep);
1354    }
1355
1356
1357    /**
1358     * Inserts a repetition of
1359     * ORC-23: "Ordering Facility Phone Number" at a specific index
1360     *
1361     * @param rep The repetition index (0-indexed)
1362     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1363     */
1364    public XTN insertOrc23_OrderingFacilityPhoneNumber(int rep) throws HL7Exception { 
1365        return (XTN) super.insertRepetition(23, rep);
1366    }
1367
1368
1369    /**
1370     * Removes a repetition of
1371     * ORC-23: "Ordering Facility Phone Number" at a specific index
1372     *
1373     * @param rep The repetition index (0-indexed)
1374     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1375     */
1376    public XTN removeOrderingFacilityPhoneNumber(int rep) throws HL7Exception { 
1377        return (XTN) super.removeRepetition(23, rep);
1378    }
1379
1380
1381    /**
1382     * Removes a repetition of
1383     * ORC-23: "Ordering Facility Phone Number" at a specific index
1384     *
1385     * @param rep The repetition index (0-indexed)
1386     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1387     */
1388    public XTN removeOrc23_OrderingFacilityPhoneNumber(int rep) throws HL7Exception { 
1389        return (XTN) super.removeRepetition(23, rep);
1390    }
1391
1392
1393
1394    /**
1395     * Returns all repetitions of Ordering Provider Address (ORC-24).
1396     */
1397    public XAD[] getOrderingProviderAddress() {
1398        XAD[] retVal = this.getTypedField(24, new XAD[0]);
1399        return retVal;
1400    }
1401
1402
1403    /**
1404     * Returns all repetitions of Ordering Provider Address (ORC-24).
1405     */
1406    public XAD[] getOrc24_OrderingProviderAddress() {
1407        XAD[] retVal = this.getTypedField(24, new XAD[0]);
1408        return retVal;
1409    }
1410
1411
1412    /**
1413     * Returns a count of the current number of repetitions of Ordering Provider Address (ORC-24).
1414     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1415     * it will return zero.
1416     */
1417    public int getOrderingProviderAddressReps() {
1418        return this.getReps(24);
1419    }
1420
1421
1422    /**
1423     * Returns a specific repetition of
1424     * ORC-24: "Ordering Provider Address" - creates it if necessary
1425     *
1426     * @param rep The repetition index (0-indexed)
1427     */
1428    public XAD getOrderingProviderAddress(int rep) { 
1429                XAD retVal = this.getTypedField(24, rep);
1430                return retVal;
1431    }
1432
1433    /**
1434     * Returns a specific repetition of
1435     * ORC-24: "Ordering Provider Address" - creates it if necessary
1436     *
1437     * @param rep The repetition index (0-indexed)
1438     */
1439    public XAD getOrc24_OrderingProviderAddress(int rep) { 
1440                XAD retVal = this.getTypedField(24, rep);
1441                return retVal;
1442    }
1443
1444    /**
1445     * Returns a count of the current number of repetitions of Ordering Provider Address (ORC-24).
1446     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1447     * it will return zero.
1448     */
1449    public int getOrc24_OrderingProviderAddressReps() {
1450        return this.getReps(24);
1451    }
1452
1453
1454    /**
1455     * Inserts a repetition of
1456     * ORC-24: "Ordering Provider Address" at a specific index
1457     *
1458     * @param rep The repetition index (0-indexed)
1459     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1460     */
1461    public XAD insertOrderingProviderAddress(int rep) throws HL7Exception { 
1462        return (XAD) super.insertRepetition(24, rep);
1463    }
1464
1465
1466    /**
1467     * Inserts a repetition of
1468     * ORC-24: "Ordering Provider Address" at a specific index
1469     *
1470     * @param rep The repetition index (0-indexed)
1471     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1472     */
1473    public XAD insertOrc24_OrderingProviderAddress(int rep) throws HL7Exception { 
1474        return (XAD) super.insertRepetition(24, rep);
1475    }
1476
1477
1478    /**
1479     * Removes a repetition of
1480     * ORC-24: "Ordering Provider Address" at a specific index
1481     *
1482     * @param rep The repetition index (0-indexed)
1483     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1484     */
1485    public XAD removeOrderingProviderAddress(int rep) throws HL7Exception { 
1486        return (XAD) super.removeRepetition(24, rep);
1487    }
1488
1489
1490    /**
1491     * Removes a repetition of
1492     * ORC-24: "Ordering Provider Address" at a specific index
1493     *
1494     * @param rep The repetition index (0-indexed)
1495     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1496     */
1497    public XAD removeOrc24_OrderingProviderAddress(int rep) throws HL7Exception { 
1498        return (XAD) super.removeRepetition(24, rep);
1499    }
1500
1501
1502
1503
1504    /**
1505     * Returns
1506     * ORC-25: "Order Status Modifier" - creates it if necessary
1507     */
1508    public CWE getOrderStatusModifier() { 
1509                CWE retVal = this.getTypedField(25, 0);
1510                return retVal;
1511    }
1512    
1513    /**
1514     * Returns
1515     * ORC-25: "Order Status Modifier" - creates it if necessary
1516     */
1517    public CWE getOrc25_OrderStatusModifier() { 
1518                CWE retVal = this.getTypedField(25, 0);
1519                return retVal;
1520    }
1521
1522
1523
1524    /**
1525     * Returns
1526     * ORC-26: "Advanced Beneficiary Notice Override Reason" - creates it if necessary
1527     */
1528    public CWE getAdvancedBeneficiaryNoticeOverrideReason() { 
1529                CWE retVal = this.getTypedField(26, 0);
1530                return retVal;
1531    }
1532    
1533    /**
1534     * Returns
1535     * ORC-26: "Advanced Beneficiary Notice Override Reason" - creates it if necessary
1536     */
1537    public CWE getOrc26_AdvancedBeneficiaryNoticeOverrideReason() { 
1538                CWE retVal = this.getTypedField(26, 0);
1539                return retVal;
1540    }
1541
1542
1543
1544    /**
1545     * Returns
1546     * ORC-27: "Filler's Expected Availability Date/Time" - creates it if necessary
1547     */
1548    public TS getFillerSExpectedAvailabilityDateTime() { 
1549                TS retVal = this.getTypedField(27, 0);
1550                return retVal;
1551    }
1552    
1553    /**
1554     * Returns
1555     * ORC-27: "Filler's Expected Availability Date/Time" - creates it if necessary
1556     */
1557    public TS getOrc27_FillerSExpectedAvailabilityDateTime() { 
1558                TS retVal = this.getTypedField(27, 0);
1559                return retVal;
1560    }
1561
1562
1563
1564    /**
1565     * Returns
1566     * ORC-28: "Confidentiality Code" - creates it if necessary
1567     */
1568    public CWE getConfidentialityCode() { 
1569                CWE retVal = this.getTypedField(28, 0);
1570                return retVal;
1571    }
1572    
1573    /**
1574     * Returns
1575     * ORC-28: "Confidentiality Code" - creates it if necessary
1576     */
1577    public CWE getOrc28_ConfidentialityCode() { 
1578                CWE retVal = this.getTypedField(28, 0);
1579                return retVal;
1580    }
1581
1582
1583
1584    /**
1585     * Returns
1586     * ORC-29: "Order Type" - creates it if necessary
1587     */
1588    public CWE getOrderType() { 
1589                CWE retVal = this.getTypedField(29, 0);
1590                return retVal;
1591    }
1592    
1593    /**
1594     * Returns
1595     * ORC-29: "Order Type" - creates it if necessary
1596     */
1597    public CWE getOrc29_OrderType() { 
1598                CWE retVal = this.getTypedField(29, 0);
1599                return retVal;
1600    }
1601
1602
1603
1604    /**
1605     * Returns
1606     * ORC-30: "Enterer Authorization Mode" - creates it if necessary
1607     */
1608    public CNE getEntererAuthorizationMode() { 
1609                CNE retVal = this.getTypedField(30, 0);
1610                return retVal;
1611    }
1612    
1613    /**
1614     * Returns
1615     * ORC-30: "Enterer Authorization Mode" - creates it if necessary
1616     */
1617    public CNE getOrc30_EntererAuthorizationMode() { 
1618                CNE retVal = this.getTypedField(30, 0);
1619                return retVal;
1620    }
1621
1622
1623
1624
1625
1626    /** {@inheritDoc} */   
1627    protected Type createNewTypeWithoutReflection(int field) {
1628       switch (field) {
1629          case 0: return new ID(getMessage(), new Integer( 119 ));
1630          case 1: return new EI(getMessage());
1631          case 2: return new EI(getMessage());
1632          case 3: return new EI(getMessage());
1633          case 4: return new ID(getMessage(), new Integer( 38 ));
1634          case 5: return new ID(getMessage(), new Integer( 121 ));
1635          case 6: return new TQ(getMessage());
1636          case 7: return new EIP(getMessage());
1637          case 8: return new TS(getMessage());
1638          case 9: return new XCN(getMessage());
1639          case 10: return new XCN(getMessage());
1640          case 11: return new XCN(getMessage());
1641          case 12: return new PL(getMessage());
1642          case 13: return new XTN(getMessage());
1643          case 14: return new TS(getMessage());
1644          case 15: return new CE(getMessage());
1645          case 16: return new CE(getMessage());
1646          case 17: return new CE(getMessage());
1647          case 18: return new XCN(getMessage());
1648          case 19: return new CE(getMessage());
1649          case 20: return new XON(getMessage());
1650          case 21: return new XAD(getMessage());
1651          case 22: return new XTN(getMessage());
1652          case 23: return new XAD(getMessage());
1653          case 24: return new CWE(getMessage());
1654          case 25: return new CWE(getMessage());
1655          case 26: return new TS(getMessage());
1656          case 27: return new CWE(getMessage());
1657          case 28: return new CWE(getMessage());
1658          case 29: return new CNE(getMessage());
1659          default: return null;
1660       }
1661   }
1662
1663
1664}
1665