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