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.v27.segment;
035
036// import ca.uhn.hl7v2.model.v27.group.*;
037import ca.uhn.hl7v2.model.v27.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 FT1 message segment (Financial Transaction). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>FT1-1: Set ID - FT1 (SI) <b>optional </b>
053     * <li>FT1-2: Transaction ID (ST) <b>optional </b>
054     * <li>FT1-3: Transaction Batch ID (ST) <b>optional </b>
055     * <li>FT1-4: Transaction Date (DR) <b> </b>
056     * <li>FT1-5: Transaction Posting Date (DTM) <b>optional </b>
057     * <li>FT1-6: Transaction Type (CWE) <b> </b>
058     * <li>FT1-7: Transaction Code (CWE) <b> </b>
059     * <li>FT1-8: Transaction Description (NULLDT) <b>optional </b>
060     * <li>FT1-9: Transaction Description - Alt (NULLDT) <b>optional </b>
061     * <li>FT1-10: Transaction Quantity (NM) <b>optional </b>
062     * <li>FT1-11: Transaction Amount - Extended (CP) <b>optional </b>
063     * <li>FT1-12: Transaction amount - unit (CP) <b>optional </b>
064     * <li>FT1-13: Department Code (CWE) <b>optional </b>
065     * <li>FT1-14: Health Plan ID (CWE) <b>optional </b>
066     * <li>FT1-15: Insurance Amount (CP) <b>optional </b>
067     * <li>FT1-16: Assigned Patient Location (PL) <b>optional </b>
068     * <li>FT1-17: Fee Schedule (CWE) <b>optional </b>
069     * <li>FT1-18: Patient Type (CWE) <b>optional </b>
070     * <li>FT1-19: Diagnosis Code - FT1 (CWE) <b>optional repeating</b>
071     * <li>FT1-20: Performed By Code (XCN) <b>optional repeating</b>
072     * <li>FT1-21: Ordered By Code (XCN) <b>optional repeating</b>
073     * <li>FT1-22: Unit Cost (CP) <b>optional </b>
074     * <li>FT1-23: Filler Order Number (EI) <b>optional </b>
075     * <li>FT1-24: Entered By Code (XCN) <b>optional repeating</b>
076     * <li>FT1-25: Procedure Code (CNE) <b>optional </b>
077     * <li>FT1-26: Procedure Code Modifier (CNE) <b>optional repeating</b>
078     * <li>FT1-27: Advanced Beneficiary Notice Code (CWE) <b>optional </b>
079     * <li>FT1-28: Medically Necessary Duplicate Procedure Reason (CWE) <b>optional </b>
080     * <li>FT1-29: NDC Code (CWE) <b>optional </b>
081     * <li>FT1-30: Payment Reference ID (CX) <b>optional </b>
082     * <li>FT1-31: Transaction Reference Key (SI) <b>optional repeating</b>
083     * <li>FT1-32: Performing Facility (XON) <b>optional repeating</b>
084     * <li>FT1-33: Ordering Facility (XON) <b>optional </b>
085     * <li>FT1-34: Item Number (CWE) <b>optional </b>
086     * <li>FT1-35: Model Number (ST) <b>optional </b>
087     * <li>FT1-36: Special Processing Code (CWE) <b>optional repeating</b>
088     * <li>FT1-37: Clinic Code (CWE) <b>optional </b>
089     * <li>FT1-38: Referral Number (CX) <b>optional </b>
090     * <li>FT1-39: Authorization Number (CX) <b>optional </b>
091     * <li>FT1-40: Service Provider Taxonomy Code (CWE) <b>optional </b>
092     * <li>FT1-41: Revenue Code (CWE) <b>optional </b>
093     * <li>FT1-42: Prescription Number (ST) <b>optional </b>
094     * <li>FT1-43: NDC Qty and UOM (CQ) <b>optional </b>
095 * </ul>
096 */
097@SuppressWarnings("unused")
098public class FT1 extends AbstractSegment {
099
100    /** 
101     * Creates a new FT1 segment
102     */
103    public FT1(Group parent, ModelClassFactory factory) {
104       super(parent, factory);
105       init(factory);
106    }
107
108    private void init(ModelClassFactory factory) {
109       try {
110                                  this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - FT1");
111                                  this.add(ST.class, false, 1, 12, new Object[]{ getMessage() }, "Transaction ID");
112                                  this.add(ST.class, false, 1, 10, new Object[]{ getMessage() }, "Transaction Batch ID");
113                                  this.add(DR.class, true, 1, 0, new Object[]{ getMessage() }, "Transaction Date");
114                                  this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction Posting Date");
115                                  this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Transaction Type");
116                                  this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Transaction Code");
117                                  this.add(NULLDT.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction Description");
118                                  this.add(NULLDT.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction Description - Alt");
119                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction Quantity");
120                                  this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction Amount - Extended");
121                                  this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Transaction amount - unit");
122                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Department Code");
123                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Health Plan ID");
124                                  this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Insurance Amount");
125                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Assigned Patient Location");
126                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Fee Schedule");
127                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Type");
128                                  this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Diagnosis Code - FT1");
129                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Performed By Code");
130                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Ordered By Code");
131                                  this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Unit Cost");
132                                  this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Filler Order Number");
133                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Entered By Code");
134                                  this.add(CNE.class, false, 1, 0, new Object[]{ getMessage() }, "Procedure Code");
135                                  this.add(CNE.class, false, 0, 0, new Object[]{ getMessage() }, "Procedure Code Modifier");
136                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Advanced Beneficiary Notice Code");
137                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Medically Necessary Duplicate Procedure Reason");
138                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "NDC Code");
139                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Payment Reference ID");
140                                  this.add(SI.class, false, 0, 4, new Object[]{ getMessage() }, "Transaction Reference Key");
141                                  this.add(XON.class, false, 0, 0, new Object[]{ getMessage() }, "Performing Facility");
142                                  this.add(XON.class, false, 1, 0, new Object[]{ getMessage() }, "Ordering Facility");
143                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Item Number");
144                                  this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Model Number");
145                                  this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Special Processing Code");
146                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Clinic Code");
147                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Referral Number");
148                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Authorization Number");
149                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Service Provider Taxonomy Code");
150                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Revenue Code");
151                                  this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Prescription Number");
152                                  this.add(CQ.class, false, 1, 0, new Object[]{ getMessage() }, "NDC Qty and UOM");
153       } catch(HL7Exception e) {
154          log.error("Unexpected error creating FT1 - this is probably a bug in the source code generator.", e);
155       }
156    }
157
158
159
160    /**
161     * Returns
162     * FT1-1: "Set ID - FT1" - creates it if necessary
163     */
164    public SI getSetIDFT1() { 
165                SI retVal = this.getTypedField(1, 0);
166                return retVal;
167    }
168    
169    /**
170     * Returns
171     * FT1-1: "Set ID - FT1" - creates it if necessary
172     */
173    public SI getFt11_SetIDFT1() { 
174                SI retVal = this.getTypedField(1, 0);
175                return retVal;
176    }
177
178
179
180    /**
181     * Returns
182     * FT1-2: "Transaction ID" - creates it if necessary
183     */
184    public ST getTransactionID() { 
185                ST retVal = this.getTypedField(2, 0);
186                return retVal;
187    }
188    
189    /**
190     * Returns
191     * FT1-2: "Transaction ID" - creates it if necessary
192     */
193    public ST getFt12_TransactionID() { 
194                ST retVal = this.getTypedField(2, 0);
195                return retVal;
196    }
197
198
199
200    /**
201     * Returns
202     * FT1-3: "Transaction Batch ID" - creates it if necessary
203     */
204    public ST getTransactionBatchID() { 
205                ST retVal = this.getTypedField(3, 0);
206                return retVal;
207    }
208    
209    /**
210     * Returns
211     * FT1-3: "Transaction Batch ID" - creates it if necessary
212     */
213    public ST getFt13_TransactionBatchID() { 
214                ST retVal = this.getTypedField(3, 0);
215                return retVal;
216    }
217
218
219
220    /**
221     * Returns
222     * FT1-4: "Transaction Date" - creates it if necessary
223     */
224    public DR getTransactionDate() { 
225                DR retVal = this.getTypedField(4, 0);
226                return retVal;
227    }
228    
229    /**
230     * Returns
231     * FT1-4: "Transaction Date" - creates it if necessary
232     */
233    public DR getFt14_TransactionDate() { 
234                DR retVal = this.getTypedField(4, 0);
235                return retVal;
236    }
237
238
239
240    /**
241     * Returns
242     * FT1-5: "Transaction Posting Date" - creates it if necessary
243     */
244    public DTM getTransactionPostingDate() { 
245                DTM retVal = this.getTypedField(5, 0);
246                return retVal;
247    }
248    
249    /**
250     * Returns
251     * FT1-5: "Transaction Posting Date" - creates it if necessary
252     */
253    public DTM getFt15_TransactionPostingDate() { 
254                DTM retVal = this.getTypedField(5, 0);
255                return retVal;
256    }
257
258
259
260    /**
261     * Returns
262     * FT1-6: "Transaction Type" - creates it if necessary
263     */
264    public CWE getTransactionType() { 
265                CWE retVal = this.getTypedField(6, 0);
266                return retVal;
267    }
268    
269    /**
270     * Returns
271     * FT1-6: "Transaction Type" - creates it if necessary
272     */
273    public CWE getFt16_TransactionType() { 
274                CWE retVal = this.getTypedField(6, 0);
275                return retVal;
276    }
277
278
279
280    /**
281     * Returns
282     * FT1-7: "Transaction Code" - creates it if necessary
283     */
284    public CWE getTransactionCode() { 
285                CWE retVal = this.getTypedField(7, 0);
286                return retVal;
287    }
288    
289    /**
290     * Returns
291     * FT1-7: "Transaction Code" - creates it if necessary
292     */
293    public CWE getFt17_TransactionCode() { 
294                CWE retVal = this.getTypedField(7, 0);
295                return retVal;
296    }
297
298
299
300    /**
301     * Returns
302     * FT1-8: "Transaction Description" - creates it if necessary
303     */
304    public NULLDT getTransactionDescription() { 
305                NULLDT retVal = this.getTypedField(8, 0);
306                return retVal;
307    }
308    
309    /**
310     * Returns
311     * FT1-8: "Transaction Description" - creates it if necessary
312     */
313    public NULLDT getFt18_TransactionDescription() { 
314                NULLDT retVal = this.getTypedField(8, 0);
315                return retVal;
316    }
317
318
319
320    /**
321     * Returns
322     * FT1-9: "Transaction Description - Alt" - creates it if necessary
323     */
324    public NULLDT getTransactionDescriptionAlt() { 
325                NULLDT retVal = this.getTypedField(9, 0);
326                return retVal;
327    }
328    
329    /**
330     * Returns
331     * FT1-9: "Transaction Description - Alt" - creates it if necessary
332     */
333    public NULLDT getFt19_TransactionDescriptionAlt() { 
334                NULLDT retVal = this.getTypedField(9, 0);
335                return retVal;
336    }
337
338
339
340    /**
341     * Returns
342     * FT1-10: "Transaction Quantity" - creates it if necessary
343     */
344    public NM getTransactionQuantity() { 
345                NM retVal = this.getTypedField(10, 0);
346                return retVal;
347    }
348    
349    /**
350     * Returns
351     * FT1-10: "Transaction Quantity" - creates it if necessary
352     */
353    public NM getFt110_TransactionQuantity() { 
354                NM retVal = this.getTypedField(10, 0);
355                return retVal;
356    }
357
358
359
360    /**
361     * Returns
362     * FT1-11: "Transaction Amount - Extended" - creates it if necessary
363     */
364    public CP getTransactionAmountExtended() { 
365                CP retVal = this.getTypedField(11, 0);
366                return retVal;
367    }
368    
369    /**
370     * Returns
371     * FT1-11: "Transaction Amount - Extended" - creates it if necessary
372     */
373    public CP getFt111_TransactionAmountExtended() { 
374                CP retVal = this.getTypedField(11, 0);
375                return retVal;
376    }
377
378
379
380    /**
381     * Returns
382     * FT1-12: "Transaction amount - unit" - creates it if necessary
383     */
384    public CP getTransactionAmountUnit() { 
385                CP retVal = this.getTypedField(12, 0);
386                return retVal;
387    }
388    
389    /**
390     * Returns
391     * FT1-12: "Transaction amount - unit" - creates it if necessary
392     */
393    public CP getFt112_TransactionAmountUnit() { 
394                CP retVal = this.getTypedField(12, 0);
395                return retVal;
396    }
397
398
399
400    /**
401     * Returns
402     * FT1-13: "Department Code" - creates it if necessary
403     */
404    public CWE getDepartmentCode() { 
405                CWE retVal = this.getTypedField(13, 0);
406                return retVal;
407    }
408    
409    /**
410     * Returns
411     * FT1-13: "Department Code" - creates it if necessary
412     */
413    public CWE getFt113_DepartmentCode() { 
414                CWE retVal = this.getTypedField(13, 0);
415                return retVal;
416    }
417
418
419
420    /**
421     * Returns
422     * FT1-14: "Health Plan ID" - creates it if necessary
423     */
424    public CWE getHealthPlanID() { 
425                CWE retVal = this.getTypedField(14, 0);
426                return retVal;
427    }
428    
429    /**
430     * Returns
431     * FT1-14: "Health Plan ID" - creates it if necessary
432     */
433    public CWE getFt114_HealthPlanID() { 
434                CWE retVal = this.getTypedField(14, 0);
435                return retVal;
436    }
437
438
439
440    /**
441     * Returns
442     * FT1-15: "Insurance Amount" - creates it if necessary
443     */
444    public CP getInsuranceAmount() { 
445                CP retVal = this.getTypedField(15, 0);
446                return retVal;
447    }
448    
449    /**
450     * Returns
451     * FT1-15: "Insurance Amount" - creates it if necessary
452     */
453    public CP getFt115_InsuranceAmount() { 
454                CP retVal = this.getTypedField(15, 0);
455                return retVal;
456    }
457
458
459
460    /**
461     * Returns
462     * FT1-16: "Assigned Patient Location" - creates it if necessary
463     */
464    public PL getAssignedPatientLocation() { 
465                PL retVal = this.getTypedField(16, 0);
466                return retVal;
467    }
468    
469    /**
470     * Returns
471     * FT1-16: "Assigned Patient Location" - creates it if necessary
472     */
473    public PL getFt116_AssignedPatientLocation() { 
474                PL retVal = this.getTypedField(16, 0);
475                return retVal;
476    }
477
478
479
480    /**
481     * Returns
482     * FT1-17: "Fee Schedule" - creates it if necessary
483     */
484    public CWE getFeeSchedule() { 
485                CWE retVal = this.getTypedField(17, 0);
486                return retVal;
487    }
488    
489    /**
490     * Returns
491     * FT1-17: "Fee Schedule" - creates it if necessary
492     */
493    public CWE getFt117_FeeSchedule() { 
494                CWE retVal = this.getTypedField(17, 0);
495                return retVal;
496    }
497
498
499
500    /**
501     * Returns
502     * FT1-18: "Patient Type" - creates it if necessary
503     */
504    public CWE getPatientType() { 
505                CWE retVal = this.getTypedField(18, 0);
506                return retVal;
507    }
508    
509    /**
510     * Returns
511     * FT1-18: "Patient Type" - creates it if necessary
512     */
513    public CWE getFt118_PatientType() { 
514                CWE retVal = this.getTypedField(18, 0);
515                return retVal;
516    }
517
518
519    /**
520     * Returns all repetitions of Diagnosis Code - FT1 (FT1-19).
521     */
522    public CWE[] getDiagnosisCodeFT1() {
523        CWE[] retVal = this.getTypedField(19, new CWE[0]);
524        return retVal;
525    }
526
527
528    /**
529     * Returns all repetitions of Diagnosis Code - FT1 (FT1-19).
530     */
531    public CWE[] getFt119_DiagnosisCodeFT1() {
532        CWE[] retVal = this.getTypedField(19, new CWE[0]);
533        return retVal;
534    }
535
536
537    /**
538     * Returns a count of the current number of repetitions of Diagnosis Code - FT1 (FT1-19).
539     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
540     * it will return zero.
541     */
542    public int getDiagnosisCodeFT1Reps() {
543        return this.getReps(19);
544    }
545
546
547    /**
548     * Returns a specific repetition of
549     * FT1-19: "Diagnosis Code - FT1" - creates it if necessary
550     *
551     * @param rep The repetition index (0-indexed)
552     */
553    public CWE getDiagnosisCodeFT1(int rep) { 
554                CWE retVal = this.getTypedField(19, rep);
555                return retVal;
556    }
557
558    /**
559     * Returns a specific repetition of
560     * FT1-19: "Diagnosis Code - FT1" - creates it if necessary
561     *
562     * @param rep The repetition index (0-indexed)
563     */
564    public CWE getFt119_DiagnosisCodeFT1(int rep) { 
565                CWE retVal = this.getTypedField(19, rep);
566                return retVal;
567    }
568
569    /**
570     * Returns a count of the current number of repetitions of Diagnosis Code - FT1 (FT1-19).
571     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
572     * it will return zero.
573     */
574    public int getFt119_DiagnosisCodeFT1Reps() {
575        return this.getReps(19);
576    }
577
578
579    /**
580     * Inserts a repetition of
581     * FT1-19: "Diagnosis Code - FT1" at a specific index
582     *
583     * @param rep The repetition index (0-indexed)
584     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
585     */
586    public CWE insertDiagnosisCodeFT1(int rep) throws HL7Exception { 
587        return (CWE) super.insertRepetition(19, rep);
588    }
589
590
591    /**
592     * Inserts a repetition of
593     * FT1-19: "Diagnosis Code - FT1" at a specific index
594     *
595     * @param rep The repetition index (0-indexed)
596     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
597     */
598    public CWE insertFt119_DiagnosisCodeFT1(int rep) throws HL7Exception { 
599        return (CWE) super.insertRepetition(19, rep);
600    }
601
602
603    /**
604     * Removes a repetition of
605     * FT1-19: "Diagnosis Code - FT1" at a specific index
606     *
607     * @param rep The repetition index (0-indexed)
608     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
609     */
610    public CWE removeDiagnosisCodeFT1(int rep) throws HL7Exception { 
611        return (CWE) super.removeRepetition(19, rep);
612    }
613
614
615    /**
616     * Removes a repetition of
617     * FT1-19: "Diagnosis Code - FT1" at a specific index
618     *
619     * @param rep The repetition index (0-indexed)
620     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
621     */
622    public CWE removeFt119_DiagnosisCodeFT1(int rep) throws HL7Exception { 
623        return (CWE) super.removeRepetition(19, rep);
624    }
625
626
627
628    /**
629     * Returns all repetitions of Performed By Code (FT1-20).
630     */
631    public XCN[] getPerformedByCode() {
632        XCN[] retVal = this.getTypedField(20, new XCN[0]);
633        return retVal;
634    }
635
636
637    /**
638     * Returns all repetitions of Performed By Code (FT1-20).
639     */
640    public XCN[] getFt120_PerformedByCode() {
641        XCN[] retVal = this.getTypedField(20, new XCN[0]);
642        return retVal;
643    }
644
645
646    /**
647     * Returns a count of the current number of repetitions of Performed By Code (FT1-20).
648     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
649     * it will return zero.
650     */
651    public int getPerformedByCodeReps() {
652        return this.getReps(20);
653    }
654
655
656    /**
657     * Returns a specific repetition of
658     * FT1-20: "Performed By Code" - creates it if necessary
659     *
660     * @param rep The repetition index (0-indexed)
661     */
662    public XCN getPerformedByCode(int rep) { 
663                XCN retVal = this.getTypedField(20, rep);
664                return retVal;
665    }
666
667    /**
668     * Returns a specific repetition of
669     * FT1-20: "Performed By Code" - creates it if necessary
670     *
671     * @param rep The repetition index (0-indexed)
672     */
673    public XCN getFt120_PerformedByCode(int rep) { 
674                XCN retVal = this.getTypedField(20, rep);
675                return retVal;
676    }
677
678    /**
679     * Returns a count of the current number of repetitions of Performed By Code (FT1-20).
680     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
681     * it will return zero.
682     */
683    public int getFt120_PerformedByCodeReps() {
684        return this.getReps(20);
685    }
686
687
688    /**
689     * Inserts a repetition of
690     * FT1-20: "Performed By Code" at a specific index
691     *
692     * @param rep The repetition index (0-indexed)
693     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
694     */
695    public XCN insertPerformedByCode(int rep) throws HL7Exception { 
696        return (XCN) super.insertRepetition(20, rep);
697    }
698
699
700    /**
701     * Inserts a repetition of
702     * FT1-20: "Performed By Code" at a specific index
703     *
704     * @param rep The repetition index (0-indexed)
705     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
706     */
707    public XCN insertFt120_PerformedByCode(int rep) throws HL7Exception { 
708        return (XCN) super.insertRepetition(20, rep);
709    }
710
711
712    /**
713     * Removes a repetition of
714     * FT1-20: "Performed By Code" at a specific index
715     *
716     * @param rep The repetition index (0-indexed)
717     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
718     */
719    public XCN removePerformedByCode(int rep) throws HL7Exception { 
720        return (XCN) super.removeRepetition(20, rep);
721    }
722
723
724    /**
725     * Removes a repetition of
726     * FT1-20: "Performed By Code" at a specific index
727     *
728     * @param rep The repetition index (0-indexed)
729     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
730     */
731    public XCN removeFt120_PerformedByCode(int rep) throws HL7Exception { 
732        return (XCN) super.removeRepetition(20, rep);
733    }
734
735
736
737    /**
738     * Returns all repetitions of Ordered By Code (FT1-21).
739     */
740    public XCN[] getOrderedByCode() {
741        XCN[] retVal = this.getTypedField(21, new XCN[0]);
742        return retVal;
743    }
744
745
746    /**
747     * Returns all repetitions of Ordered By Code (FT1-21).
748     */
749    public XCN[] getFt121_OrderedByCode() {
750        XCN[] retVal = this.getTypedField(21, new XCN[0]);
751        return retVal;
752    }
753
754
755    /**
756     * Returns a count of the current number of repetitions of Ordered By Code (FT1-21).
757     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
758     * it will return zero.
759     */
760    public int getOrderedByCodeReps() {
761        return this.getReps(21);
762    }
763
764
765    /**
766     * Returns a specific repetition of
767     * FT1-21: "Ordered By Code" - creates it if necessary
768     *
769     * @param rep The repetition index (0-indexed)
770     */
771    public XCN getOrderedByCode(int rep) { 
772                XCN retVal = this.getTypedField(21, rep);
773                return retVal;
774    }
775
776    /**
777     * Returns a specific repetition of
778     * FT1-21: "Ordered By Code" - creates it if necessary
779     *
780     * @param rep The repetition index (0-indexed)
781     */
782    public XCN getFt121_OrderedByCode(int rep) { 
783                XCN retVal = this.getTypedField(21, rep);
784                return retVal;
785    }
786
787    /**
788     * Returns a count of the current number of repetitions of Ordered By Code (FT1-21).
789     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
790     * it will return zero.
791     */
792    public int getFt121_OrderedByCodeReps() {
793        return this.getReps(21);
794    }
795
796
797    /**
798     * Inserts a repetition of
799     * FT1-21: "Ordered By Code" at a specific index
800     *
801     * @param rep The repetition index (0-indexed)
802     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
803     */
804    public XCN insertOrderedByCode(int rep) throws HL7Exception { 
805        return (XCN) super.insertRepetition(21, rep);
806    }
807
808
809    /**
810     * Inserts a repetition of
811     * FT1-21: "Ordered By Code" 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 XCN insertFt121_OrderedByCode(int rep) throws HL7Exception { 
817        return (XCN) super.insertRepetition(21, rep);
818    }
819
820
821    /**
822     * Removes a repetition of
823     * FT1-21: "Ordered By Code" 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 XCN removeOrderedByCode(int rep) throws HL7Exception { 
829        return (XCN) super.removeRepetition(21, rep);
830    }
831
832
833    /**
834     * Removes a repetition of
835     * FT1-21: "Ordered By Code" 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 XCN removeFt121_OrderedByCode(int rep) throws HL7Exception { 
841        return (XCN) super.removeRepetition(21, rep);
842    }
843
844
845
846
847    /**
848     * Returns
849     * FT1-22: "Unit Cost" - creates it if necessary
850     */
851    public CP getUnitCost() { 
852                CP retVal = this.getTypedField(22, 0);
853                return retVal;
854    }
855    
856    /**
857     * Returns
858     * FT1-22: "Unit Cost" - creates it if necessary
859     */
860    public CP getFt122_UnitCost() { 
861                CP retVal = this.getTypedField(22, 0);
862                return retVal;
863    }
864
865
866
867    /**
868     * Returns
869     * FT1-23: "Filler Order Number" - creates it if necessary
870     */
871    public EI getFillerOrderNumber() { 
872                EI retVal = this.getTypedField(23, 0);
873                return retVal;
874    }
875    
876    /**
877     * Returns
878     * FT1-23: "Filler Order Number" - creates it if necessary
879     */
880    public EI getFt123_FillerOrderNumber() { 
881                EI retVal = this.getTypedField(23, 0);
882                return retVal;
883    }
884
885
886    /**
887     * Returns all repetitions of Entered By Code (FT1-24).
888     */
889    public XCN[] getEnteredByCode() {
890        XCN[] retVal = this.getTypedField(24, new XCN[0]);
891        return retVal;
892    }
893
894
895    /**
896     * Returns all repetitions of Entered By Code (FT1-24).
897     */
898    public XCN[] getFt124_EnteredByCode() {
899        XCN[] retVal = this.getTypedField(24, new XCN[0]);
900        return retVal;
901    }
902
903
904    /**
905     * Returns a count of the current number of repetitions of Entered By Code (FT1-24).
906     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
907     * it will return zero.
908     */
909    public int getEnteredByCodeReps() {
910        return this.getReps(24);
911    }
912
913
914    /**
915     * Returns a specific repetition of
916     * FT1-24: "Entered By Code" - creates it if necessary
917     *
918     * @param rep The repetition index (0-indexed)
919     */
920    public XCN getEnteredByCode(int rep) { 
921                XCN retVal = this.getTypedField(24, rep);
922                return retVal;
923    }
924
925    /**
926     * Returns a specific repetition of
927     * FT1-24: "Entered By Code" - creates it if necessary
928     *
929     * @param rep The repetition index (0-indexed)
930     */
931    public XCN getFt124_EnteredByCode(int rep) { 
932                XCN retVal = this.getTypedField(24, rep);
933                return retVal;
934    }
935
936    /**
937     * Returns a count of the current number of repetitions of Entered By Code (FT1-24).
938     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
939     * it will return zero.
940     */
941    public int getFt124_EnteredByCodeReps() {
942        return this.getReps(24);
943    }
944
945
946    /**
947     * Inserts a repetition of
948     * FT1-24: "Entered By Code" at a specific index
949     *
950     * @param rep The repetition index (0-indexed)
951     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
952     */
953    public XCN insertEnteredByCode(int rep) throws HL7Exception { 
954        return (XCN) super.insertRepetition(24, rep);
955    }
956
957
958    /**
959     * Inserts a repetition of
960     * FT1-24: "Entered By Code" at a specific index
961     *
962     * @param rep The repetition index (0-indexed)
963     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
964     */
965    public XCN insertFt124_EnteredByCode(int rep) throws HL7Exception { 
966        return (XCN) super.insertRepetition(24, rep);
967    }
968
969
970    /**
971     * Removes a repetition of
972     * FT1-24: "Entered By Code" at a specific index
973     *
974     * @param rep The repetition index (0-indexed)
975     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
976     */
977    public XCN removeEnteredByCode(int rep) throws HL7Exception { 
978        return (XCN) super.removeRepetition(24, rep);
979    }
980
981
982    /**
983     * Removes a repetition of
984     * FT1-24: "Entered By Code" at a specific index
985     *
986     * @param rep The repetition index (0-indexed)
987     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
988     */
989    public XCN removeFt124_EnteredByCode(int rep) throws HL7Exception { 
990        return (XCN) super.removeRepetition(24, rep);
991    }
992
993
994
995
996    /**
997     * Returns
998     * FT1-25: "Procedure Code" - creates it if necessary
999     */
1000    public CNE getProcedureCode() { 
1001                CNE retVal = this.getTypedField(25, 0);
1002                return retVal;
1003    }
1004    
1005    /**
1006     * Returns
1007     * FT1-25: "Procedure Code" - creates it if necessary
1008     */
1009    public CNE getFt125_ProcedureCode() { 
1010                CNE retVal = this.getTypedField(25, 0);
1011                return retVal;
1012    }
1013
1014
1015    /**
1016     * Returns all repetitions of Procedure Code Modifier (FT1-26).
1017     */
1018    public CNE[] getProcedureCodeModifier() {
1019        CNE[] retVal = this.getTypedField(26, new CNE[0]);
1020        return retVal;
1021    }
1022
1023
1024    /**
1025     * Returns all repetitions of Procedure Code Modifier (FT1-26).
1026     */
1027    public CNE[] getFt126_ProcedureCodeModifier() {
1028        CNE[] retVal = this.getTypedField(26, new CNE[0]);
1029        return retVal;
1030    }
1031
1032
1033    /**
1034     * Returns a count of the current number of repetitions of Procedure Code Modifier (FT1-26).
1035     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1036     * it will return zero.
1037     */
1038    public int getProcedureCodeModifierReps() {
1039        return this.getReps(26);
1040    }
1041
1042
1043    /**
1044     * Returns a specific repetition of
1045     * FT1-26: "Procedure Code Modifier" - creates it if necessary
1046     *
1047     * @param rep The repetition index (0-indexed)
1048     */
1049    public CNE getProcedureCodeModifier(int rep) { 
1050                CNE retVal = this.getTypedField(26, rep);
1051                return retVal;
1052    }
1053
1054    /**
1055     * Returns a specific repetition of
1056     * FT1-26: "Procedure Code Modifier" - creates it if necessary
1057     *
1058     * @param rep The repetition index (0-indexed)
1059     */
1060    public CNE getFt126_ProcedureCodeModifier(int rep) { 
1061                CNE retVal = this.getTypedField(26, rep);
1062                return retVal;
1063    }
1064
1065    /**
1066     * Returns a count of the current number of repetitions of Procedure Code Modifier (FT1-26).
1067     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1068     * it will return zero.
1069     */
1070    public int getFt126_ProcedureCodeModifierReps() {
1071        return this.getReps(26);
1072    }
1073
1074
1075    /**
1076     * Inserts a repetition of
1077     * FT1-26: "Procedure Code Modifier" at a specific index
1078     *
1079     * @param rep The repetition index (0-indexed)
1080     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1081     */
1082    public CNE insertProcedureCodeModifier(int rep) throws HL7Exception { 
1083        return (CNE) super.insertRepetition(26, rep);
1084    }
1085
1086
1087    /**
1088     * Inserts a repetition of
1089     * FT1-26: "Procedure Code Modifier" at a specific index
1090     *
1091     * @param rep The repetition index (0-indexed)
1092     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1093     */
1094    public CNE insertFt126_ProcedureCodeModifier(int rep) throws HL7Exception { 
1095        return (CNE) super.insertRepetition(26, rep);
1096    }
1097
1098
1099    /**
1100     * Removes a repetition of
1101     * FT1-26: "Procedure Code Modifier" at a specific index
1102     *
1103     * @param rep The repetition index (0-indexed)
1104     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1105     */
1106    public CNE removeProcedureCodeModifier(int rep) throws HL7Exception { 
1107        return (CNE) super.removeRepetition(26, rep);
1108    }
1109
1110
1111    /**
1112     * Removes a repetition of
1113     * FT1-26: "Procedure Code Modifier" at a specific index
1114     *
1115     * @param rep The repetition index (0-indexed)
1116     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1117     */
1118    public CNE removeFt126_ProcedureCodeModifier(int rep) throws HL7Exception { 
1119        return (CNE) super.removeRepetition(26, rep);
1120    }
1121
1122
1123
1124
1125    /**
1126     * Returns
1127     * FT1-27: "Advanced Beneficiary Notice Code" - creates it if necessary
1128     */
1129    public CWE getAdvancedBeneficiaryNoticeCode() { 
1130                CWE retVal = this.getTypedField(27, 0);
1131                return retVal;
1132    }
1133    
1134    /**
1135     * Returns
1136     * FT1-27: "Advanced Beneficiary Notice Code" - creates it if necessary
1137     */
1138    public CWE getFt127_AdvancedBeneficiaryNoticeCode() { 
1139                CWE retVal = this.getTypedField(27, 0);
1140                return retVal;
1141    }
1142
1143
1144
1145    /**
1146     * Returns
1147     * FT1-28: "Medically Necessary Duplicate Procedure Reason" - creates it if necessary
1148     */
1149    public CWE getMedicallyNecessaryDuplicateProcedureReason() { 
1150                CWE retVal = this.getTypedField(28, 0);
1151                return retVal;
1152    }
1153    
1154    /**
1155     * Returns
1156     * FT1-28: "Medically Necessary Duplicate Procedure Reason" - creates it if necessary
1157     */
1158    public CWE getFt128_MedicallyNecessaryDuplicateProcedureReason() { 
1159                CWE retVal = this.getTypedField(28, 0);
1160                return retVal;
1161    }
1162
1163
1164
1165    /**
1166     * Returns
1167     * FT1-29: "NDC Code" - creates it if necessary
1168     */
1169    public CWE getNDCCode() { 
1170                CWE retVal = this.getTypedField(29, 0);
1171                return retVal;
1172    }
1173    
1174    /**
1175     * Returns
1176     * FT1-29: "NDC Code" - creates it if necessary
1177     */
1178    public CWE getFt129_NDCCode() { 
1179                CWE retVal = this.getTypedField(29, 0);
1180                return retVal;
1181    }
1182
1183
1184
1185    /**
1186     * Returns
1187     * FT1-30: "Payment Reference ID" - creates it if necessary
1188     */
1189    public CX getPaymentReferenceID() { 
1190                CX retVal = this.getTypedField(30, 0);
1191                return retVal;
1192    }
1193    
1194    /**
1195     * Returns
1196     * FT1-30: "Payment Reference ID" - creates it if necessary
1197     */
1198    public CX getFt130_PaymentReferenceID() { 
1199                CX retVal = this.getTypedField(30, 0);
1200                return retVal;
1201    }
1202
1203
1204    /**
1205     * Returns all repetitions of Transaction Reference Key (FT1-31).
1206     */
1207    public SI[] getTransactionReferenceKey() {
1208        SI[] retVal = this.getTypedField(31, new SI[0]);
1209        return retVal;
1210    }
1211
1212
1213    /**
1214     * Returns all repetitions of Transaction Reference Key (FT1-31).
1215     */
1216    public SI[] getFt131_TransactionReferenceKey() {
1217        SI[] retVal = this.getTypedField(31, new SI[0]);
1218        return retVal;
1219    }
1220
1221
1222    /**
1223     * Returns a count of the current number of repetitions of Transaction Reference Key (FT1-31).
1224     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1225     * it will return zero.
1226     */
1227    public int getTransactionReferenceKeyReps() {
1228        return this.getReps(31);
1229    }
1230
1231
1232    /**
1233     * Returns a specific repetition of
1234     * FT1-31: "Transaction Reference Key" - creates it if necessary
1235     *
1236     * @param rep The repetition index (0-indexed)
1237     */
1238    public SI getTransactionReferenceKey(int rep) { 
1239                SI retVal = this.getTypedField(31, rep);
1240                return retVal;
1241    }
1242
1243    /**
1244     * Returns a specific repetition of
1245     * FT1-31: "Transaction Reference Key" - creates it if necessary
1246     *
1247     * @param rep The repetition index (0-indexed)
1248     */
1249    public SI getFt131_TransactionReferenceKey(int rep) { 
1250                SI retVal = this.getTypedField(31, rep);
1251                return retVal;
1252    }
1253
1254    /**
1255     * Returns a count of the current number of repetitions of Transaction Reference Key (FT1-31).
1256     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1257     * it will return zero.
1258     */
1259    public int getFt131_TransactionReferenceKeyReps() {
1260        return this.getReps(31);
1261    }
1262
1263
1264    /**
1265     * Inserts a repetition of
1266     * FT1-31: "Transaction Reference Key" at a specific index
1267     *
1268     * @param rep The repetition index (0-indexed)
1269     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1270     */
1271    public SI insertTransactionReferenceKey(int rep) throws HL7Exception { 
1272        return (SI) super.insertRepetition(31, rep);
1273    }
1274
1275
1276    /**
1277     * Inserts a repetition of
1278     * FT1-31: "Transaction Reference Key" at a specific index
1279     *
1280     * @param rep The repetition index (0-indexed)
1281     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1282     */
1283    public SI insertFt131_TransactionReferenceKey(int rep) throws HL7Exception { 
1284        return (SI) super.insertRepetition(31, rep);
1285    }
1286
1287
1288    /**
1289     * Removes a repetition of
1290     * FT1-31: "Transaction Reference Key" at a specific index
1291     *
1292     * @param rep The repetition index (0-indexed)
1293     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1294     */
1295    public SI removeTransactionReferenceKey(int rep) throws HL7Exception { 
1296        return (SI) super.removeRepetition(31, rep);
1297    }
1298
1299
1300    /**
1301     * Removes a repetition of
1302     * FT1-31: "Transaction Reference Key" at a specific index
1303     *
1304     * @param rep The repetition index (0-indexed)
1305     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1306     */
1307    public SI removeFt131_TransactionReferenceKey(int rep) throws HL7Exception { 
1308        return (SI) super.removeRepetition(31, rep);
1309    }
1310
1311
1312
1313    /**
1314     * Returns all repetitions of Performing Facility (FT1-32).
1315     */
1316    public XON[] getPerformingFacility() {
1317        XON[] retVal = this.getTypedField(32, new XON[0]);
1318        return retVal;
1319    }
1320
1321
1322    /**
1323     * Returns all repetitions of Performing Facility (FT1-32).
1324     */
1325    public XON[] getFt132_PerformingFacility() {
1326        XON[] retVal = this.getTypedField(32, new XON[0]);
1327        return retVal;
1328    }
1329
1330
1331    /**
1332     * Returns a count of the current number of repetitions of Performing Facility (FT1-32).
1333     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1334     * it will return zero.
1335     */
1336    public int getPerformingFacilityReps() {
1337        return this.getReps(32);
1338    }
1339
1340
1341    /**
1342     * Returns a specific repetition of
1343     * FT1-32: "Performing Facility" - creates it if necessary
1344     *
1345     * @param rep The repetition index (0-indexed)
1346     */
1347    public XON getPerformingFacility(int rep) { 
1348                XON retVal = this.getTypedField(32, rep);
1349                return retVal;
1350    }
1351
1352    /**
1353     * Returns a specific repetition of
1354     * FT1-32: "Performing Facility" - creates it if necessary
1355     *
1356     * @param rep The repetition index (0-indexed)
1357     */
1358    public XON getFt132_PerformingFacility(int rep) { 
1359                XON retVal = this.getTypedField(32, rep);
1360                return retVal;
1361    }
1362
1363    /**
1364     * Returns a count of the current number of repetitions of Performing Facility (FT1-32).
1365     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1366     * it will return zero.
1367     */
1368    public int getFt132_PerformingFacilityReps() {
1369        return this.getReps(32);
1370    }
1371
1372
1373    /**
1374     * Inserts a repetition of
1375     * FT1-32: "Performing Facility" at a specific index
1376     *
1377     * @param rep The repetition index (0-indexed)
1378     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1379     */
1380    public XON insertPerformingFacility(int rep) throws HL7Exception { 
1381        return (XON) super.insertRepetition(32, rep);
1382    }
1383
1384
1385    /**
1386     * Inserts a repetition of
1387     * FT1-32: "Performing Facility" at a specific index
1388     *
1389     * @param rep The repetition index (0-indexed)
1390     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1391     */
1392    public XON insertFt132_PerformingFacility(int rep) throws HL7Exception { 
1393        return (XON) super.insertRepetition(32, rep);
1394    }
1395
1396
1397    /**
1398     * Removes a repetition of
1399     * FT1-32: "Performing Facility" at a specific index
1400     *
1401     * @param rep The repetition index (0-indexed)
1402     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1403     */
1404    public XON removePerformingFacility(int rep) throws HL7Exception { 
1405        return (XON) super.removeRepetition(32, rep);
1406    }
1407
1408
1409    /**
1410     * Removes a repetition of
1411     * FT1-32: "Performing Facility" at a specific index
1412     *
1413     * @param rep The repetition index (0-indexed)
1414     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1415     */
1416    public XON removeFt132_PerformingFacility(int rep) throws HL7Exception { 
1417        return (XON) super.removeRepetition(32, rep);
1418    }
1419
1420
1421
1422
1423    /**
1424     * Returns
1425     * FT1-33: "Ordering Facility" - creates it if necessary
1426     */
1427    public XON getOrderingFacility() { 
1428                XON retVal = this.getTypedField(33, 0);
1429                return retVal;
1430    }
1431    
1432    /**
1433     * Returns
1434     * FT1-33: "Ordering Facility" - creates it if necessary
1435     */
1436    public XON getFt133_OrderingFacility() { 
1437                XON retVal = this.getTypedField(33, 0);
1438                return retVal;
1439    }
1440
1441
1442
1443    /**
1444     * Returns
1445     * FT1-34: "Item Number" - creates it if necessary
1446     */
1447    public CWE getItemNumber() { 
1448                CWE retVal = this.getTypedField(34, 0);
1449                return retVal;
1450    }
1451    
1452    /**
1453     * Returns
1454     * FT1-34: "Item Number" - creates it if necessary
1455     */
1456    public CWE getFt134_ItemNumber() { 
1457                CWE retVal = this.getTypedField(34, 0);
1458                return retVal;
1459    }
1460
1461
1462
1463    /**
1464     * Returns
1465     * FT1-35: "Model Number" - creates it if necessary
1466     */
1467    public ST getModelNumber() { 
1468                ST retVal = this.getTypedField(35, 0);
1469                return retVal;
1470    }
1471    
1472    /**
1473     * Returns
1474     * FT1-35: "Model Number" - creates it if necessary
1475     */
1476    public ST getFt135_ModelNumber() { 
1477                ST retVal = this.getTypedField(35, 0);
1478                return retVal;
1479    }
1480
1481
1482    /**
1483     * Returns all repetitions of Special Processing Code (FT1-36).
1484     */
1485    public CWE[] getSpecialProcessingCode() {
1486        CWE[] retVal = this.getTypedField(36, new CWE[0]);
1487        return retVal;
1488    }
1489
1490
1491    /**
1492     * Returns all repetitions of Special Processing Code (FT1-36).
1493     */
1494    public CWE[] getFt136_SpecialProcessingCode() {
1495        CWE[] retVal = this.getTypedField(36, new CWE[0]);
1496        return retVal;
1497    }
1498
1499
1500    /**
1501     * Returns a count of the current number of repetitions of Special Processing Code (FT1-36).
1502     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1503     * it will return zero.
1504     */
1505    public int getSpecialProcessingCodeReps() {
1506        return this.getReps(36);
1507    }
1508
1509
1510    /**
1511     * Returns a specific repetition of
1512     * FT1-36: "Special Processing Code" - creates it if necessary
1513     *
1514     * @param rep The repetition index (0-indexed)
1515     */
1516    public CWE getSpecialProcessingCode(int rep) { 
1517                CWE retVal = this.getTypedField(36, rep);
1518                return retVal;
1519    }
1520
1521    /**
1522     * Returns a specific repetition of
1523     * FT1-36: "Special Processing Code" - creates it if necessary
1524     *
1525     * @param rep The repetition index (0-indexed)
1526     */
1527    public CWE getFt136_SpecialProcessingCode(int rep) { 
1528                CWE retVal = this.getTypedField(36, rep);
1529                return retVal;
1530    }
1531
1532    /**
1533     * Returns a count of the current number of repetitions of Special Processing Code (FT1-36).
1534     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1535     * it will return zero.
1536     */
1537    public int getFt136_SpecialProcessingCodeReps() {
1538        return this.getReps(36);
1539    }
1540
1541
1542    /**
1543     * Inserts a repetition of
1544     * FT1-36: "Special Processing Code" at a specific index
1545     *
1546     * @param rep The repetition index (0-indexed)
1547     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1548     */
1549    public CWE insertSpecialProcessingCode(int rep) throws HL7Exception { 
1550        return (CWE) super.insertRepetition(36, rep);
1551    }
1552
1553
1554    /**
1555     * Inserts a repetition of
1556     * FT1-36: "Special Processing Code" at a specific index
1557     *
1558     * @param rep The repetition index (0-indexed)
1559     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1560     */
1561    public CWE insertFt136_SpecialProcessingCode(int rep) throws HL7Exception { 
1562        return (CWE) super.insertRepetition(36, rep);
1563    }
1564
1565
1566    /**
1567     * Removes a repetition of
1568     * FT1-36: "Special Processing Code" at a specific index
1569     *
1570     * @param rep The repetition index (0-indexed)
1571     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1572     */
1573    public CWE removeSpecialProcessingCode(int rep) throws HL7Exception { 
1574        return (CWE) super.removeRepetition(36, rep);
1575    }
1576
1577
1578    /**
1579     * Removes a repetition of
1580     * FT1-36: "Special Processing Code" at a specific index
1581     *
1582     * @param rep The repetition index (0-indexed)
1583     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1584     */
1585    public CWE removeFt136_SpecialProcessingCode(int rep) throws HL7Exception { 
1586        return (CWE) super.removeRepetition(36, rep);
1587    }
1588
1589
1590
1591
1592    /**
1593     * Returns
1594     * FT1-37: "Clinic Code" - creates it if necessary
1595     */
1596    public CWE getClinicCode() { 
1597                CWE retVal = this.getTypedField(37, 0);
1598                return retVal;
1599    }
1600    
1601    /**
1602     * Returns
1603     * FT1-37: "Clinic Code" - creates it if necessary
1604     */
1605    public CWE getFt137_ClinicCode() { 
1606                CWE retVal = this.getTypedField(37, 0);
1607                return retVal;
1608    }
1609
1610
1611
1612    /**
1613     * Returns
1614     * FT1-38: "Referral Number" - creates it if necessary
1615     */
1616    public CX getReferralNumber() { 
1617                CX retVal = this.getTypedField(38, 0);
1618                return retVal;
1619    }
1620    
1621    /**
1622     * Returns
1623     * FT1-38: "Referral Number" - creates it if necessary
1624     */
1625    public CX getFt138_ReferralNumber() { 
1626                CX retVal = this.getTypedField(38, 0);
1627                return retVal;
1628    }
1629
1630
1631
1632    /**
1633     * Returns
1634     * FT1-39: "Authorization Number" - creates it if necessary
1635     */
1636    public CX getAuthorizationNumber() { 
1637                CX retVal = this.getTypedField(39, 0);
1638                return retVal;
1639    }
1640    
1641    /**
1642     * Returns
1643     * FT1-39: "Authorization Number" - creates it if necessary
1644     */
1645    public CX getFt139_AuthorizationNumber() { 
1646                CX retVal = this.getTypedField(39, 0);
1647                return retVal;
1648    }
1649
1650
1651
1652    /**
1653     * Returns
1654     * FT1-40: "Service Provider Taxonomy Code" - creates it if necessary
1655     */
1656    public CWE getServiceProviderTaxonomyCode() { 
1657                CWE retVal = this.getTypedField(40, 0);
1658                return retVal;
1659    }
1660    
1661    /**
1662     * Returns
1663     * FT1-40: "Service Provider Taxonomy Code" - creates it if necessary
1664     */
1665    public CWE getFt140_ServiceProviderTaxonomyCode() { 
1666                CWE retVal = this.getTypedField(40, 0);
1667                return retVal;
1668    }
1669
1670
1671
1672    /**
1673     * Returns
1674     * FT1-41: "Revenue Code" - creates it if necessary
1675     */
1676    public CWE getRevenueCode() { 
1677                CWE retVal = this.getTypedField(41, 0);
1678                return retVal;
1679    }
1680    
1681    /**
1682     * Returns
1683     * FT1-41: "Revenue Code" - creates it if necessary
1684     */
1685    public CWE getFt141_RevenueCode() { 
1686                CWE retVal = this.getTypedField(41, 0);
1687                return retVal;
1688    }
1689
1690
1691
1692    /**
1693     * Returns
1694     * FT1-42: "Prescription Number" - creates it if necessary
1695     */
1696    public ST getPrescriptionNumber() { 
1697                ST retVal = this.getTypedField(42, 0);
1698                return retVal;
1699    }
1700    
1701    /**
1702     * Returns
1703     * FT1-42: "Prescription Number" - creates it if necessary
1704     */
1705    public ST getFt142_PrescriptionNumber() { 
1706                ST retVal = this.getTypedField(42, 0);
1707                return retVal;
1708    }
1709
1710
1711
1712    /**
1713     * Returns
1714     * FT1-43: "NDC Qty and UOM" - creates it if necessary
1715     */
1716    public CQ getNDCQtyAndUOM() { 
1717                CQ retVal = this.getTypedField(43, 0);
1718                return retVal;
1719    }
1720    
1721    /**
1722     * Returns
1723     * FT1-43: "NDC Qty and UOM" - creates it if necessary
1724     */
1725    public CQ getFt143_NDCQtyAndUOM() { 
1726                CQ retVal = this.getTypedField(43, 0);
1727                return retVal;
1728    }
1729
1730
1731
1732
1733
1734    /** {@inheritDoc} */   
1735    protected Type createNewTypeWithoutReflection(int field) {
1736       switch (field) {
1737          case 0: return new SI(getMessage());
1738          case 1: return new ST(getMessage());
1739          case 2: return new ST(getMessage());
1740          case 3: return new DR(getMessage());
1741          case 4: return new DTM(getMessage());
1742          case 5: return new CWE(getMessage());
1743          case 6: return new CWE(getMessage());
1744          case 7: return new NULLDT(getMessage());
1745          case 8: return new NULLDT(getMessage());
1746          case 9: return new NM(getMessage());
1747          case 10: return new CP(getMessage());
1748          case 11: return new CP(getMessage());
1749          case 12: return new CWE(getMessage());
1750          case 13: return new CWE(getMessage());
1751          case 14: return new CP(getMessage());
1752          case 15: return new PL(getMessage());
1753          case 16: return new CWE(getMessage());
1754          case 17: return new CWE(getMessage());
1755          case 18: return new CWE(getMessage());
1756          case 19: return new XCN(getMessage());
1757          case 20: return new XCN(getMessage());
1758          case 21: return new CP(getMessage());
1759          case 22: return new EI(getMessage());
1760          case 23: return new XCN(getMessage());
1761          case 24: return new CNE(getMessage());
1762          case 25: return new CNE(getMessage());
1763          case 26: return new CWE(getMessage());
1764          case 27: return new CWE(getMessage());
1765          case 28: return new CWE(getMessage());
1766          case 29: return new CX(getMessage());
1767          case 30: return new SI(getMessage());
1768          case 31: return new XON(getMessage());
1769          case 32: return new XON(getMessage());
1770          case 33: return new CWE(getMessage());
1771          case 34: return new ST(getMessage());
1772          case 35: return new CWE(getMessage());
1773          case 36: return new CWE(getMessage());
1774          case 37: return new CX(getMessage());
1775          case 38: return new CX(getMessage());
1776          case 39: return new CWE(getMessage());
1777          case 40: return new CWE(getMessage());
1778          case 41: return new ST(getMessage());
1779          case 42: return new CQ(getMessage());
1780          default: return null;
1781       }
1782   }
1783
1784
1785}
1786