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.v22.segment;
035
036// import ca.uhn.hl7v2.model.v22.group.*;
037import ca.uhn.hl7v2.model.v22.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 PV1 message segment (PATIENT VISIT). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>PV1-1: Set ID - Patient Visit (SI) <b>optional </b>
053     * <li>PV1-2: Patient Class (ID) <b> </b>
054     * <li>PV1-3: Assigned Patient Location (CM_INTERNAL_LOCATION) <b>optional </b>
055     * <li>PV1-4: Admission Type (ID) <b>optional </b>
056     * <li>PV1-5: Preadmit Number (ST) <b>optional </b>
057     * <li>PV1-6: Prior Patient Location (CM_INTERNAL_LOCATION) <b>optional </b>
058     * <li>PV1-7: Attending Doctor (CN) <b>optional </b>
059     * <li>PV1-8: Referring Doctor (CN) <b>optional </b>
060     * <li>PV1-9: Consulting Doctor (CN) <b>optional repeating</b>
061     * <li>PV1-10: Hospital Service (ID) <b>optional </b>
062     * <li>PV1-11: Temporary Location (CM_INTERNAL_LOCATION) <b>optional </b>
063     * <li>PV1-12: Preadmit Test Indicator (ID) <b>optional </b>
064     * <li>PV1-13: Readmission indicator (ID) <b>optional </b>
065     * <li>PV1-14: Admit Source (ID) <b>optional </b>
066     * <li>PV1-15: Ambulatory Status (ID) <b>optional repeating</b>
067     * <li>PV1-16: VIP Indicator (ID) <b>optional </b>
068     * <li>PV1-17: Admitting Doctor (CN) <b>optional </b>
069     * <li>PV1-18: Patient type (ID) <b>optional </b>
070     * <li>PV1-19: Visit Number (CM_PAT_ID) <b>optional </b>
071     * <li>PV1-20: Financial Class (CM_FINANCE) <b>optional repeating</b>
072     * <li>PV1-21: Charge Price Indicator (ID) <b>optional </b>
073     * <li>PV1-22: Courtesy Code (ID) <b>optional </b>
074     * <li>PV1-23: Credit Rating (ID) <b>optional </b>
075     * <li>PV1-24: Contract Code (ID) <b>optional repeating</b>
076     * <li>PV1-25: Contract Effective Date (DT) <b>optional repeating</b>
077     * <li>PV1-26: Contract Amount (NM) <b>optional repeating</b>
078     * <li>PV1-27: Contract Period (NM) <b>optional repeating</b>
079     * <li>PV1-28: Interest Code (ID) <b>optional </b>
080     * <li>PV1-29: Transfer to bad debt - code (ID) <b>optional </b>
081     * <li>PV1-30: Transfer to bad debt - date (DT) <b>optional </b>
082     * <li>PV1-31: Bad Debt Agency Code (ID) <b>optional </b>
083     * <li>PV1-32: Bad Debt Transfer Amount (NM) <b>optional </b>
084     * <li>PV1-33: Bad Debt Recovery Amount (NM) <b>optional </b>
085     * <li>PV1-34: Delete Account Indicator (ID) <b>optional </b>
086     * <li>PV1-35: Delete Account Date (DT) <b>optional </b>
087     * <li>PV1-36: Discharge Disposition (ID) <b>optional </b>
088     * <li>PV1-37: Discharged to Location (CM_DLD) <b>optional </b>
089     * <li>PV1-38: Diet Type (ID) <b>optional </b>
090     * <li>PV1-39: Servicing Facility (ID) <b>optional </b>
091     * <li>PV1-40: Bed Status (ID) <b>optional </b>
092     * <li>PV1-41: Account Status (ID) <b>optional </b>
093     * <li>PV1-42: Pending Location (CM_INTERNAL_LOCATION) <b>optional </b>
094     * <li>PV1-43: Prior Temporary Location (CM_INTERNAL_LOCATION) <b>optional </b>
095     * <li>PV1-44: Admit date / time (TS) <b>optional </b>
096     * <li>PV1-45: Discharge date / time (TS) <b>optional </b>
097     * <li>PV1-46: Current Patient Balance (NM) <b>optional </b>
098     * <li>PV1-47: Total Charges (NM) <b>optional </b>
099     * <li>PV1-48: Total Adjustments (NM) <b>optional </b>
100     * <li>PV1-49: Total Payments (NM) <b>optional </b>
101     * <li>PV1-50: Alternate Visit ID (CM_PAT_ID_0192) <b>optional </b>
102 * </ul>
103 */
104@SuppressWarnings("unused")
105public class PV1 extends AbstractSegment {
106
107    /** 
108     * Creates a new PV1 segment
109     */
110    public PV1(Group parent, ModelClassFactory factory) {
111       super(parent, factory);
112       init(factory);
113    }
114
115    private void init(ModelClassFactory factory) {
116       try {
117                                  this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - Patient Visit");
118                                              this.add(ID.class, true, 1, 1, new Object[]{ getMessage(), new Integer(4) }, "Patient Class");
119                                  this.add(CM_INTERNAL_LOCATION.class, false, 1, 12, new Object[]{ getMessage() }, "Assigned Patient Location");
120                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(7) }, "Admission Type");
121                                  this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Preadmit Number");
122                                  this.add(CM_INTERNAL_LOCATION.class, false, 1, 12, new Object[]{ getMessage() }, "Prior Patient Location");
123                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Attending Doctor");
124                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Referring Doctor");
125                                  this.add(CN.class, false, 0, 60, new Object[]{ getMessage() }, "Consulting Doctor");
126                                              this.add(ID.class, false, 1, 3, new Object[]{ getMessage(), new Integer(69) }, "Hospital Service");
127                                  this.add(CM_INTERNAL_LOCATION.class, false, 1, 12, new Object[]{ getMessage() }, "Temporary Location");
128                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(87) }, "Preadmit Test Indicator");
129                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(92) }, "Readmission indicator");
130                                              this.add(ID.class, false, 1, 3, new Object[]{ getMessage(), new Integer(23) }, "Admit Source");
131                                              this.add(ID.class, false, 0, 2, new Object[]{ getMessage(), new Integer(9) }, "Ambulatory Status");
132                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(99) }, "VIP Indicator");
133                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Admitting Doctor");
134                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(18) }, "Patient type");
135                                  this.add(CM_PAT_ID.class, false, 1, 15, new Object[]{ getMessage() }, "Visit Number");
136                                  this.add(CM_FINANCE.class, false, 4, 50, new Object[]{ getMessage() }, "Financial Class");
137                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(32) }, "Charge Price Indicator");
138                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(45) }, "Courtesy Code");
139                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(46) }, "Credit Rating");
140                                              this.add(ID.class, false, 0, 2, new Object[]{ getMessage(), new Integer(44) }, "Contract Code");
141                                  this.add(DT.class, false, 0, 8, new Object[]{ getMessage() }, "Contract Effective Date");
142                                  this.add(NM.class, false, 0, 12, new Object[]{ getMessage() }, "Contract Amount");
143                                  this.add(NM.class, false, 0, 3, new Object[]{ getMessage() }, "Contract Period");
144                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(73) }, "Interest Code");
145                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(110) }, "Transfer to bad debt - code");
146                                  this.add(DT.class, false, 1, 8, new Object[]{ getMessage() }, "Transfer to bad debt - date");
147                                              this.add(ID.class, false, 1, 10, new Object[]{ getMessage(), new Integer(21) }, "Bad Debt Agency Code");
148                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Bad Debt Transfer Amount");
149                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Bad Debt Recovery Amount");
150                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(111) }, "Delete Account Indicator");
151                                  this.add(DT.class, false, 1, 8, new Object[]{ getMessage() }, "Delete Account Date");
152                                              this.add(ID.class, false, 1, 3, new Object[]{ getMessage(), new Integer(112) }, "Discharge Disposition");
153                                  this.add(CM_DLD.class, false, 1, 25, new Object[]{ getMessage() }, "Discharged to Location");
154                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(114) }, "Diet Type");
155                                              this.add(ID.class, false, 1, 4, new Object[]{ getMessage(), new Integer(115) }, "Servicing Facility");
156                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(116) }, "Bed Status");
157                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(117) }, "Account Status");
158                                  this.add(CM_INTERNAL_LOCATION.class, false, 1, 12, new Object[]{ getMessage() }, "Pending Location");
159                                  this.add(CM_INTERNAL_LOCATION.class, false, 1, 12, new Object[]{ getMessage() }, "Prior Temporary Location");
160                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Admit date / time");
161                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Discharge date / time");
162                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Current Patient Balance");
163                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Charges");
164                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Adjustments");
165                                  this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Payments");
166                                  this.add(CM_PAT_ID_0192.class, false, 1, 20, new Object[]{ getMessage() }, "Alternate Visit ID");
167       } catch(HL7Exception e) {
168          log.error("Unexpected error creating PV1 - this is probably a bug in the source code generator.", e);
169       }
170    }
171
172
173
174    /**
175     * Returns
176     * PV1-1: "Set ID - Patient Visit" - creates it if necessary
177     */
178    public SI getSetIDPatientVisit() { 
179                SI retVal = this.getTypedField(1, 0);
180                return retVal;
181    }
182    
183    /**
184     * Returns
185     * PV1-1: "Set ID - Patient Visit" - creates it if necessary
186     */
187    public SI getPv11_SetIDPatientVisit() { 
188                SI retVal = this.getTypedField(1, 0);
189                return retVal;
190    }
191
192
193
194    /**
195     * Returns
196     * PV1-2: "Patient Class" - creates it if necessary
197     */
198    public ID getPatientClass() { 
199                ID retVal = this.getTypedField(2, 0);
200                return retVal;
201    }
202    
203    /**
204     * Returns
205     * PV1-2: "Patient Class" - creates it if necessary
206     */
207    public ID getPv12_PatientClass() { 
208                ID retVal = this.getTypedField(2, 0);
209                return retVal;
210    }
211
212
213
214    /**
215     * Returns
216     * PV1-3: "Assigned Patient Location" - creates it if necessary
217     */
218    public CM_INTERNAL_LOCATION getAssignedPatientLocation() { 
219                CM_INTERNAL_LOCATION retVal = this.getTypedField(3, 0);
220                return retVal;
221    }
222    
223    /**
224     * Returns
225     * PV1-3: "Assigned Patient Location" - creates it if necessary
226     */
227    public CM_INTERNAL_LOCATION getPv13_AssignedPatientLocation() { 
228                CM_INTERNAL_LOCATION retVal = this.getTypedField(3, 0);
229                return retVal;
230    }
231
232
233
234    /**
235     * Returns
236     * PV1-4: "Admission Type" - creates it if necessary
237     */
238    public ID getAdmissionType() { 
239                ID retVal = this.getTypedField(4, 0);
240                return retVal;
241    }
242    
243    /**
244     * Returns
245     * PV1-4: "Admission Type" - creates it if necessary
246     */
247    public ID getPv14_AdmissionType() { 
248                ID retVal = this.getTypedField(4, 0);
249                return retVal;
250    }
251
252
253
254    /**
255     * Returns
256     * PV1-5: "Preadmit Number" - creates it if necessary
257     */
258    public ST getPreadmitNumber() { 
259                ST retVal = this.getTypedField(5, 0);
260                return retVal;
261    }
262    
263    /**
264     * Returns
265     * PV1-5: "Preadmit Number" - creates it if necessary
266     */
267    public ST getPv15_PreadmitNumber() { 
268                ST retVal = this.getTypedField(5, 0);
269                return retVal;
270    }
271
272
273
274    /**
275     * Returns
276     * PV1-6: "Prior Patient Location" - creates it if necessary
277     */
278    public CM_INTERNAL_LOCATION getPriorPatientLocation() { 
279                CM_INTERNAL_LOCATION retVal = this.getTypedField(6, 0);
280                return retVal;
281    }
282    
283    /**
284     * Returns
285     * PV1-6: "Prior Patient Location" - creates it if necessary
286     */
287    public CM_INTERNAL_LOCATION getPv16_PriorPatientLocation() { 
288                CM_INTERNAL_LOCATION retVal = this.getTypedField(6, 0);
289                return retVal;
290    }
291
292
293
294    /**
295     * Returns
296     * PV1-7: "Attending Doctor" - creates it if necessary
297     */
298    public CN getAttendingDoctor() { 
299                CN retVal = this.getTypedField(7, 0);
300                return retVal;
301    }
302    
303    /**
304     * Returns
305     * PV1-7: "Attending Doctor" - creates it if necessary
306     */
307    public CN getPv17_AttendingDoctor() { 
308                CN retVal = this.getTypedField(7, 0);
309                return retVal;
310    }
311
312
313
314    /**
315     * Returns
316     * PV1-8: "Referring Doctor" - creates it if necessary
317     */
318    public CN getReferringDoctor() { 
319                CN retVal = this.getTypedField(8, 0);
320                return retVal;
321    }
322    
323    /**
324     * Returns
325     * PV1-8: "Referring Doctor" - creates it if necessary
326     */
327    public CN getPv18_ReferringDoctor() { 
328                CN retVal = this.getTypedField(8, 0);
329                return retVal;
330    }
331
332
333    /**
334     * Returns all repetitions of Consulting Doctor (PV1-9).
335     */
336    public CN[] getConsultingDoctor() {
337        CN[] retVal = this.getTypedField(9, new CN[0]);
338        return retVal;
339    }
340
341
342    /**
343     * Returns all repetitions of Consulting Doctor (PV1-9).
344     */
345    public CN[] getPv19_ConsultingDoctor() {
346        CN[] retVal = this.getTypedField(9, new CN[0]);
347        return retVal;
348    }
349
350
351    /**
352     * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
353     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
354     * it will return zero.
355     */
356    public int getConsultingDoctorReps() {
357        return this.getReps(9);
358    }
359
360
361    /**
362     * Returns a specific repetition of
363     * PV1-9: "Consulting Doctor" - creates it if necessary
364     *
365     * @param rep The repetition index (0-indexed)
366     */
367    public CN getConsultingDoctor(int rep) { 
368                CN retVal = this.getTypedField(9, rep);
369                return retVal;
370    }
371
372    /**
373     * Returns a specific repetition of
374     * PV1-9: "Consulting Doctor" - creates it if necessary
375     *
376     * @param rep The repetition index (0-indexed)
377     */
378    public CN getPv19_ConsultingDoctor(int rep) { 
379                CN retVal = this.getTypedField(9, rep);
380                return retVal;
381    }
382
383    /**
384     * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
385     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
386     * it will return zero.
387     */
388    public int getPv19_ConsultingDoctorReps() {
389        return this.getReps(9);
390    }
391
392
393    /**
394     * Inserts a repetition of
395     * PV1-9: "Consulting Doctor" at a specific index
396     *
397     * @param rep The repetition index (0-indexed)
398     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
399     */
400    public CN insertConsultingDoctor(int rep) throws HL7Exception { 
401        return (CN) super.insertRepetition(9, rep);
402    }
403
404
405    /**
406     * Inserts a repetition of
407     * PV1-9: "Consulting Doctor" at a specific index
408     *
409     * @param rep The repetition index (0-indexed)
410     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
411     */
412    public CN insertPv19_ConsultingDoctor(int rep) throws HL7Exception { 
413        return (CN) super.insertRepetition(9, rep);
414    }
415
416
417    /**
418     * Removes a repetition of
419     * PV1-9: "Consulting Doctor" at a specific index
420     *
421     * @param rep The repetition index (0-indexed)
422     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
423     */
424    public CN removeConsultingDoctor(int rep) throws HL7Exception { 
425        return (CN) super.removeRepetition(9, rep);
426    }
427
428
429    /**
430     * Removes a repetition of
431     * PV1-9: "Consulting Doctor" at a specific index
432     *
433     * @param rep The repetition index (0-indexed)
434     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
435     */
436    public CN removePv19_ConsultingDoctor(int rep) throws HL7Exception { 
437        return (CN) super.removeRepetition(9, rep);
438    }
439
440
441
442
443    /**
444     * Returns
445     * PV1-10: "Hospital Service" - creates it if necessary
446     */
447    public ID getHospitalService() { 
448                ID retVal = this.getTypedField(10, 0);
449                return retVal;
450    }
451    
452    /**
453     * Returns
454     * PV1-10: "Hospital Service" - creates it if necessary
455     */
456    public ID getPv110_HospitalService() { 
457                ID retVal = this.getTypedField(10, 0);
458                return retVal;
459    }
460
461
462
463    /**
464     * Returns
465     * PV1-11: "Temporary Location" - creates it if necessary
466     */
467    public CM_INTERNAL_LOCATION getTemporaryLocation() { 
468                CM_INTERNAL_LOCATION retVal = this.getTypedField(11, 0);
469                return retVal;
470    }
471    
472    /**
473     * Returns
474     * PV1-11: "Temporary Location" - creates it if necessary
475     */
476    public CM_INTERNAL_LOCATION getPv111_TemporaryLocation() { 
477                CM_INTERNAL_LOCATION retVal = this.getTypedField(11, 0);
478                return retVal;
479    }
480
481
482
483    /**
484     * Returns
485     * PV1-12: "Preadmit Test Indicator" - creates it if necessary
486     */
487    public ID getPreadmitTestIndicator() { 
488                ID retVal = this.getTypedField(12, 0);
489                return retVal;
490    }
491    
492    /**
493     * Returns
494     * PV1-12: "Preadmit Test Indicator" - creates it if necessary
495     */
496    public ID getPv112_PreadmitTestIndicator() { 
497                ID retVal = this.getTypedField(12, 0);
498                return retVal;
499    }
500
501
502
503    /**
504     * Returns
505     * PV1-13: "Readmission indicator" - creates it if necessary
506     */
507    public ID getReadmissionIndicator() { 
508                ID retVal = this.getTypedField(13, 0);
509                return retVal;
510    }
511    
512    /**
513     * Returns
514     * PV1-13: "Readmission indicator" - creates it if necessary
515     */
516    public ID getPv113_ReadmissionIndicator() { 
517                ID retVal = this.getTypedField(13, 0);
518                return retVal;
519    }
520
521
522
523    /**
524     * Returns
525     * PV1-14: "Admit Source" - creates it if necessary
526     */
527    public ID getAdmitSource() { 
528                ID retVal = this.getTypedField(14, 0);
529                return retVal;
530    }
531    
532    /**
533     * Returns
534     * PV1-14: "Admit Source" - creates it if necessary
535     */
536    public ID getPv114_AdmitSource() { 
537                ID retVal = this.getTypedField(14, 0);
538                return retVal;
539    }
540
541
542    /**
543     * Returns all repetitions of Ambulatory Status (PV1-15).
544     */
545    public ID[] getAmbulatoryStatus() {
546        ID[] retVal = this.getTypedField(15, new ID[0]);
547        return retVal;
548    }
549
550
551    /**
552     * Returns all repetitions of Ambulatory Status (PV1-15).
553     */
554    public ID[] getPv115_AmbulatoryStatus() {
555        ID[] retVal = this.getTypedField(15, new ID[0]);
556        return retVal;
557    }
558
559
560    /**
561     * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
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 getAmbulatoryStatusReps() {
566        return this.getReps(15);
567    }
568
569
570    /**
571     * Returns a specific repetition of
572     * PV1-15: "Ambulatory Status" - creates it if necessary
573     *
574     * @param rep The repetition index (0-indexed)
575     */
576    public ID getAmbulatoryStatus(int rep) { 
577                ID retVal = this.getTypedField(15, rep);
578                return retVal;
579    }
580
581    /**
582     * Returns a specific repetition of
583     * PV1-15: "Ambulatory Status" - creates it if necessary
584     *
585     * @param rep The repetition index (0-indexed)
586     */
587    public ID getPv115_AmbulatoryStatus(int rep) { 
588                ID retVal = this.getTypedField(15, rep);
589                return retVal;
590    }
591
592    /**
593     * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
594     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
595     * it will return zero.
596     */
597    public int getPv115_AmbulatoryStatusReps() {
598        return this.getReps(15);
599    }
600
601
602    /**
603     * Inserts a repetition of
604     * PV1-15: "Ambulatory Status" at a specific index
605     *
606     * @param rep The repetition index (0-indexed)
607     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
608     */
609    public ID insertAmbulatoryStatus(int rep) throws HL7Exception { 
610        return (ID) super.insertRepetition(15, rep);
611    }
612
613
614    /**
615     * Inserts a repetition of
616     * PV1-15: "Ambulatory Status" at a specific index
617     *
618     * @param rep The repetition index (0-indexed)
619     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
620     */
621    public ID insertPv115_AmbulatoryStatus(int rep) throws HL7Exception { 
622        return (ID) super.insertRepetition(15, rep);
623    }
624
625
626    /**
627     * Removes a repetition of
628     * PV1-15: "Ambulatory Status" at a specific index
629     *
630     * @param rep The repetition index (0-indexed)
631     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
632     */
633    public ID removeAmbulatoryStatus(int rep) throws HL7Exception { 
634        return (ID) super.removeRepetition(15, rep);
635    }
636
637
638    /**
639     * Removes a repetition of
640     * PV1-15: "Ambulatory Status" at a specific index
641     *
642     * @param rep The repetition index (0-indexed)
643     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
644     */
645    public ID removePv115_AmbulatoryStatus(int rep) throws HL7Exception { 
646        return (ID) super.removeRepetition(15, rep);
647    }
648
649
650
651
652    /**
653     * Returns
654     * PV1-16: "VIP Indicator" - creates it if necessary
655     */
656    public ID getVIPIndicator() { 
657                ID retVal = this.getTypedField(16, 0);
658                return retVal;
659    }
660    
661    /**
662     * Returns
663     * PV1-16: "VIP Indicator" - creates it if necessary
664     */
665    public ID getPv116_VIPIndicator() { 
666                ID retVal = this.getTypedField(16, 0);
667                return retVal;
668    }
669
670
671
672    /**
673     * Returns
674     * PV1-17: "Admitting Doctor" - creates it if necessary
675     */
676    public CN getAdmittingDoctor() { 
677                CN retVal = this.getTypedField(17, 0);
678                return retVal;
679    }
680    
681    /**
682     * Returns
683     * PV1-17: "Admitting Doctor" - creates it if necessary
684     */
685    public CN getPv117_AdmittingDoctor() { 
686                CN retVal = this.getTypedField(17, 0);
687                return retVal;
688    }
689
690
691
692    /**
693     * Returns
694     * PV1-18: "Patient type" - creates it if necessary
695     */
696    public ID getPatientType() { 
697                ID retVal = this.getTypedField(18, 0);
698                return retVal;
699    }
700    
701    /**
702     * Returns
703     * PV1-18: "Patient type" - creates it if necessary
704     */
705    public ID getPv118_PatientType() { 
706                ID retVal = this.getTypedField(18, 0);
707                return retVal;
708    }
709
710
711
712    /**
713     * Returns
714     * PV1-19: "Visit Number" - creates it if necessary
715     */
716    public CM_PAT_ID getVisitNumber() { 
717                CM_PAT_ID retVal = this.getTypedField(19, 0);
718                return retVal;
719    }
720    
721    /**
722     * Returns
723     * PV1-19: "Visit Number" - creates it if necessary
724     */
725    public CM_PAT_ID getPv119_VisitNumber() { 
726                CM_PAT_ID retVal = this.getTypedField(19, 0);
727                return retVal;
728    }
729
730
731    /**
732     * Returns all repetitions of Financial Class (PV1-20).
733     */
734    public CM_FINANCE[] getFinancialClass() {
735        CM_FINANCE[] retVal = this.getTypedField(20, new CM_FINANCE[0]);
736        return retVal;
737    }
738
739
740    /**
741     * Returns all repetitions of Financial Class (PV1-20).
742     */
743    public CM_FINANCE[] getPv120_FinancialClass() {
744        CM_FINANCE[] retVal = this.getTypedField(20, new CM_FINANCE[0]);
745        return retVal;
746    }
747
748
749    /**
750     * Returns a count of the current number of repetitions of Financial Class (PV1-20).
751     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
752     * it will return zero.
753     */
754    public int getFinancialClassReps() {
755        return this.getReps(20);
756    }
757
758
759    /**
760     * Returns a specific repetition of
761     * PV1-20: "Financial Class" - creates it if necessary
762     *
763     * @param rep The repetition index (0-indexed)
764     */
765    public CM_FINANCE getFinancialClass(int rep) { 
766                CM_FINANCE retVal = this.getTypedField(20, rep);
767                return retVal;
768    }
769
770    /**
771     * Returns a specific repetition of
772     * PV1-20: "Financial Class" - creates it if necessary
773     *
774     * @param rep The repetition index (0-indexed)
775     */
776    public CM_FINANCE getPv120_FinancialClass(int rep) { 
777                CM_FINANCE retVal = this.getTypedField(20, rep);
778                return retVal;
779    }
780
781    /**
782     * Returns a count of the current number of repetitions of Financial Class (PV1-20).
783     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
784     * it will return zero.
785     */
786    public int getPv120_FinancialClassReps() {
787        return this.getReps(20);
788    }
789
790
791    /**
792     * Inserts a repetition of
793     * PV1-20: "Financial Class" at a specific index
794     *
795     * @param rep The repetition index (0-indexed)
796     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
797     */
798    public CM_FINANCE insertFinancialClass(int rep) throws HL7Exception { 
799        return (CM_FINANCE) super.insertRepetition(20, rep);
800    }
801
802
803    /**
804     * Inserts a repetition of
805     * PV1-20: "Financial Class" at a specific index
806     *
807     * @param rep The repetition index (0-indexed)
808     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
809     */
810    public CM_FINANCE insertPv120_FinancialClass(int rep) throws HL7Exception { 
811        return (CM_FINANCE) super.insertRepetition(20, rep);
812    }
813
814
815    /**
816     * Removes a repetition of
817     * PV1-20: "Financial Class" at a specific index
818     *
819     * @param rep The repetition index (0-indexed)
820     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
821     */
822    public CM_FINANCE removeFinancialClass(int rep) throws HL7Exception { 
823        return (CM_FINANCE) super.removeRepetition(20, rep);
824    }
825
826
827    /**
828     * Removes a repetition of
829     * PV1-20: "Financial Class" at a specific index
830     *
831     * @param rep The repetition index (0-indexed)
832     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
833     */
834    public CM_FINANCE removePv120_FinancialClass(int rep) throws HL7Exception { 
835        return (CM_FINANCE) super.removeRepetition(20, rep);
836    }
837
838
839
840
841    /**
842     * Returns
843     * PV1-21: "Charge Price Indicator" - creates it if necessary
844     */
845    public ID getChargePriceIndicator() { 
846                ID retVal = this.getTypedField(21, 0);
847                return retVal;
848    }
849    
850    /**
851     * Returns
852     * PV1-21: "Charge Price Indicator" - creates it if necessary
853     */
854    public ID getPv121_ChargePriceIndicator() { 
855                ID retVal = this.getTypedField(21, 0);
856                return retVal;
857    }
858
859
860
861    /**
862     * Returns
863     * PV1-22: "Courtesy Code" - creates it if necessary
864     */
865    public ID getCourtesyCode() { 
866                ID retVal = this.getTypedField(22, 0);
867                return retVal;
868    }
869    
870    /**
871     * Returns
872     * PV1-22: "Courtesy Code" - creates it if necessary
873     */
874    public ID getPv122_CourtesyCode() { 
875                ID retVal = this.getTypedField(22, 0);
876                return retVal;
877    }
878
879
880
881    /**
882     * Returns
883     * PV1-23: "Credit Rating" - creates it if necessary
884     */
885    public ID getCreditRating() { 
886                ID retVal = this.getTypedField(23, 0);
887                return retVal;
888    }
889    
890    /**
891     * Returns
892     * PV1-23: "Credit Rating" - creates it if necessary
893     */
894    public ID getPv123_CreditRating() { 
895                ID retVal = this.getTypedField(23, 0);
896                return retVal;
897    }
898
899
900    /**
901     * Returns all repetitions of Contract Code (PV1-24).
902     */
903    public ID[] getContractCode() {
904        ID[] retVal = this.getTypedField(24, new ID[0]);
905        return retVal;
906    }
907
908
909    /**
910     * Returns all repetitions of Contract Code (PV1-24).
911     */
912    public ID[] getPv124_ContractCode() {
913        ID[] retVal = this.getTypedField(24, new ID[0]);
914        return retVal;
915    }
916
917
918    /**
919     * Returns a count of the current number of repetitions of Contract Code (PV1-24).
920     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
921     * it will return zero.
922     */
923    public int getContractCodeReps() {
924        return this.getReps(24);
925    }
926
927
928    /**
929     * Returns a specific repetition of
930     * PV1-24: "Contract Code" - creates it if necessary
931     *
932     * @param rep The repetition index (0-indexed)
933     */
934    public ID getContractCode(int rep) { 
935                ID retVal = this.getTypedField(24, rep);
936                return retVal;
937    }
938
939    /**
940     * Returns a specific repetition of
941     * PV1-24: "Contract Code" - creates it if necessary
942     *
943     * @param rep The repetition index (0-indexed)
944     */
945    public ID getPv124_ContractCode(int rep) { 
946                ID retVal = this.getTypedField(24, rep);
947                return retVal;
948    }
949
950    /**
951     * Returns a count of the current number of repetitions of Contract Code (PV1-24).
952     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
953     * it will return zero.
954     */
955    public int getPv124_ContractCodeReps() {
956        return this.getReps(24);
957    }
958
959
960    /**
961     * Inserts a repetition of
962     * PV1-24: "Contract Code" at a specific index
963     *
964     * @param rep The repetition index (0-indexed)
965     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
966     */
967    public ID insertContractCode(int rep) throws HL7Exception { 
968        return (ID) super.insertRepetition(24, rep);
969    }
970
971
972    /**
973     * Inserts a repetition of
974     * PV1-24: "Contract Code" at a specific index
975     *
976     * @param rep The repetition index (0-indexed)
977     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
978     */
979    public ID insertPv124_ContractCode(int rep) throws HL7Exception { 
980        return (ID) super.insertRepetition(24, rep);
981    }
982
983
984    /**
985     * Removes a repetition of
986     * PV1-24: "Contract Code" at a specific index
987     *
988     * @param rep The repetition index (0-indexed)
989     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
990     */
991    public ID removeContractCode(int rep) throws HL7Exception { 
992        return (ID) super.removeRepetition(24, rep);
993    }
994
995
996    /**
997     * Removes a repetition of
998     * PV1-24: "Contract Code" at a specific index
999     *
1000     * @param rep The repetition index (0-indexed)
1001     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1002     */
1003    public ID removePv124_ContractCode(int rep) throws HL7Exception { 
1004        return (ID) super.removeRepetition(24, rep);
1005    }
1006
1007
1008
1009    /**
1010     * Returns all repetitions of Contract Effective Date (PV1-25).
1011     */
1012    public DT[] getContractEffectiveDate() {
1013        DT[] retVal = this.getTypedField(25, new DT[0]);
1014        return retVal;
1015    }
1016
1017
1018    /**
1019     * Returns all repetitions of Contract Effective Date (PV1-25).
1020     */
1021    public DT[] getPv125_ContractEffectiveDate() {
1022        DT[] retVal = this.getTypedField(25, new DT[0]);
1023        return retVal;
1024    }
1025
1026
1027    /**
1028     * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1029     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1030     * it will return zero.
1031     */
1032    public int getContractEffectiveDateReps() {
1033        return this.getReps(25);
1034    }
1035
1036
1037    /**
1038     * Returns a specific repetition of
1039     * PV1-25: "Contract Effective Date" - creates it if necessary
1040     *
1041     * @param rep The repetition index (0-indexed)
1042     */
1043    public DT getContractEffectiveDate(int rep) { 
1044                DT retVal = this.getTypedField(25, rep);
1045                return retVal;
1046    }
1047
1048    /**
1049     * Returns a specific repetition of
1050     * PV1-25: "Contract Effective Date" - creates it if necessary
1051     *
1052     * @param rep The repetition index (0-indexed)
1053     */
1054    public DT getPv125_ContractEffectiveDate(int rep) { 
1055                DT retVal = this.getTypedField(25, rep);
1056                return retVal;
1057    }
1058
1059    /**
1060     * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1061     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1062     * it will return zero.
1063     */
1064    public int getPv125_ContractEffectiveDateReps() {
1065        return this.getReps(25);
1066    }
1067
1068
1069    /**
1070     * Inserts a repetition of
1071     * PV1-25: "Contract Effective Date" at a specific index
1072     *
1073     * @param rep The repetition index (0-indexed)
1074     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1075     */
1076    public DT insertContractEffectiveDate(int rep) throws HL7Exception { 
1077        return (DT) super.insertRepetition(25, rep);
1078    }
1079
1080
1081    /**
1082     * Inserts a repetition of
1083     * PV1-25: "Contract Effective Date" at a specific index
1084     *
1085     * @param rep The repetition index (0-indexed)
1086     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1087     */
1088    public DT insertPv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1089        return (DT) super.insertRepetition(25, rep);
1090    }
1091
1092
1093    /**
1094     * Removes a repetition of
1095     * PV1-25: "Contract Effective Date" at a specific index
1096     *
1097     * @param rep The repetition index (0-indexed)
1098     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1099     */
1100    public DT removeContractEffectiveDate(int rep) throws HL7Exception { 
1101        return (DT) super.removeRepetition(25, rep);
1102    }
1103
1104
1105    /**
1106     * Removes a repetition of
1107     * PV1-25: "Contract Effective Date" at a specific index
1108     *
1109     * @param rep The repetition index (0-indexed)
1110     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1111     */
1112    public DT removePv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1113        return (DT) super.removeRepetition(25, rep);
1114    }
1115
1116
1117
1118    /**
1119     * Returns all repetitions of Contract Amount (PV1-26).
1120     */
1121    public NM[] getContractAmount() {
1122        NM[] retVal = this.getTypedField(26, new NM[0]);
1123        return retVal;
1124    }
1125
1126
1127    /**
1128     * Returns all repetitions of Contract Amount (PV1-26).
1129     */
1130    public NM[] getPv126_ContractAmount() {
1131        NM[] retVal = this.getTypedField(26, new NM[0]);
1132        return retVal;
1133    }
1134
1135
1136    /**
1137     * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1138     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1139     * it will return zero.
1140     */
1141    public int getContractAmountReps() {
1142        return this.getReps(26);
1143    }
1144
1145
1146    /**
1147     * Returns a specific repetition of
1148     * PV1-26: "Contract Amount" - creates it if necessary
1149     *
1150     * @param rep The repetition index (0-indexed)
1151     */
1152    public NM getContractAmount(int rep) { 
1153                NM retVal = this.getTypedField(26, rep);
1154                return retVal;
1155    }
1156
1157    /**
1158     * Returns a specific repetition of
1159     * PV1-26: "Contract Amount" - creates it if necessary
1160     *
1161     * @param rep The repetition index (0-indexed)
1162     */
1163    public NM getPv126_ContractAmount(int rep) { 
1164                NM retVal = this.getTypedField(26, rep);
1165                return retVal;
1166    }
1167
1168    /**
1169     * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1170     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1171     * it will return zero.
1172     */
1173    public int getPv126_ContractAmountReps() {
1174        return this.getReps(26);
1175    }
1176
1177
1178    /**
1179     * Inserts a repetition of
1180     * PV1-26: "Contract Amount" at a specific index
1181     *
1182     * @param rep The repetition index (0-indexed)
1183     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1184     */
1185    public NM insertContractAmount(int rep) throws HL7Exception { 
1186        return (NM) super.insertRepetition(26, rep);
1187    }
1188
1189
1190    /**
1191     * Inserts a repetition of
1192     * PV1-26: "Contract Amount" at a specific index
1193     *
1194     * @param rep The repetition index (0-indexed)
1195     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1196     */
1197    public NM insertPv126_ContractAmount(int rep) throws HL7Exception { 
1198        return (NM) super.insertRepetition(26, rep);
1199    }
1200
1201
1202    /**
1203     * Removes a repetition of
1204     * PV1-26: "Contract Amount" at a specific index
1205     *
1206     * @param rep The repetition index (0-indexed)
1207     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1208     */
1209    public NM removeContractAmount(int rep) throws HL7Exception { 
1210        return (NM) super.removeRepetition(26, rep);
1211    }
1212
1213
1214    /**
1215     * Removes a repetition of
1216     * PV1-26: "Contract Amount" at a specific index
1217     *
1218     * @param rep The repetition index (0-indexed)
1219     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1220     */
1221    public NM removePv126_ContractAmount(int rep) throws HL7Exception { 
1222        return (NM) super.removeRepetition(26, rep);
1223    }
1224
1225
1226
1227    /**
1228     * Returns all repetitions of Contract Period (PV1-27).
1229     */
1230    public NM[] getContractPeriod() {
1231        NM[] retVal = this.getTypedField(27, new NM[0]);
1232        return retVal;
1233    }
1234
1235
1236    /**
1237     * Returns all repetitions of Contract Period (PV1-27).
1238     */
1239    public NM[] getPv127_ContractPeriod() {
1240        NM[] retVal = this.getTypedField(27, new NM[0]);
1241        return retVal;
1242    }
1243
1244
1245    /**
1246     * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1247     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1248     * it will return zero.
1249     */
1250    public int getContractPeriodReps() {
1251        return this.getReps(27);
1252    }
1253
1254
1255    /**
1256     * Returns a specific repetition of
1257     * PV1-27: "Contract Period" - creates it if necessary
1258     *
1259     * @param rep The repetition index (0-indexed)
1260     */
1261    public NM getContractPeriod(int rep) { 
1262                NM retVal = this.getTypedField(27, rep);
1263                return retVal;
1264    }
1265
1266    /**
1267     * Returns a specific repetition of
1268     * PV1-27: "Contract Period" - creates it if necessary
1269     *
1270     * @param rep The repetition index (0-indexed)
1271     */
1272    public NM getPv127_ContractPeriod(int rep) { 
1273                NM retVal = this.getTypedField(27, rep);
1274                return retVal;
1275    }
1276
1277    /**
1278     * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1279     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1280     * it will return zero.
1281     */
1282    public int getPv127_ContractPeriodReps() {
1283        return this.getReps(27);
1284    }
1285
1286
1287    /**
1288     * Inserts a repetition of
1289     * PV1-27: "Contract Period" at a specific index
1290     *
1291     * @param rep The repetition index (0-indexed)
1292     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1293     */
1294    public NM insertContractPeriod(int rep) throws HL7Exception { 
1295        return (NM) super.insertRepetition(27, rep);
1296    }
1297
1298
1299    /**
1300     * Inserts a repetition of
1301     * PV1-27: "Contract Period" at a specific index
1302     *
1303     * @param rep The repetition index (0-indexed)
1304     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1305     */
1306    public NM insertPv127_ContractPeriod(int rep) throws HL7Exception { 
1307        return (NM) super.insertRepetition(27, rep);
1308    }
1309
1310
1311    /**
1312     * Removes a repetition of
1313     * PV1-27: "Contract Period" at a specific index
1314     *
1315     * @param rep The repetition index (0-indexed)
1316     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1317     */
1318    public NM removeContractPeriod(int rep) throws HL7Exception { 
1319        return (NM) super.removeRepetition(27, rep);
1320    }
1321
1322
1323    /**
1324     * Removes a repetition of
1325     * PV1-27: "Contract Period" at a specific index
1326     *
1327     * @param rep The repetition index (0-indexed)
1328     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1329     */
1330    public NM removePv127_ContractPeriod(int rep) throws HL7Exception { 
1331        return (NM) super.removeRepetition(27, rep);
1332    }
1333
1334
1335
1336
1337    /**
1338     * Returns
1339     * PV1-28: "Interest Code" - creates it if necessary
1340     */
1341    public ID getInterestCode() { 
1342                ID retVal = this.getTypedField(28, 0);
1343                return retVal;
1344    }
1345    
1346    /**
1347     * Returns
1348     * PV1-28: "Interest Code" - creates it if necessary
1349     */
1350    public ID getPv128_InterestCode() { 
1351                ID retVal = this.getTypedField(28, 0);
1352                return retVal;
1353    }
1354
1355
1356
1357    /**
1358     * Returns
1359     * PV1-29: "Transfer to bad debt - code" - creates it if necessary
1360     */
1361    public ID getTransferToBadDebtCode() { 
1362                ID retVal = this.getTypedField(29, 0);
1363                return retVal;
1364    }
1365    
1366    /**
1367     * Returns
1368     * PV1-29: "Transfer to bad debt - code" - creates it if necessary
1369     */
1370    public ID getPv129_TransferToBadDebtCode() { 
1371                ID retVal = this.getTypedField(29, 0);
1372                return retVal;
1373    }
1374
1375
1376
1377    /**
1378     * Returns
1379     * PV1-30: "Transfer to bad debt - date" - creates it if necessary
1380     */
1381    public DT getTransferToBadDebtDate() { 
1382                DT retVal = this.getTypedField(30, 0);
1383                return retVal;
1384    }
1385    
1386    /**
1387     * Returns
1388     * PV1-30: "Transfer to bad debt - date" - creates it if necessary
1389     */
1390    public DT getPv130_TransferToBadDebtDate() { 
1391                DT retVal = this.getTypedField(30, 0);
1392                return retVal;
1393    }
1394
1395
1396
1397    /**
1398     * Returns
1399     * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1400     */
1401    public ID getBadDebtAgencyCode() { 
1402                ID retVal = this.getTypedField(31, 0);
1403                return retVal;
1404    }
1405    
1406    /**
1407     * Returns
1408     * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1409     */
1410    public ID getPv131_BadDebtAgencyCode() { 
1411                ID retVal = this.getTypedField(31, 0);
1412                return retVal;
1413    }
1414
1415
1416
1417    /**
1418     * Returns
1419     * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1420     */
1421    public NM getBadDebtTransferAmount() { 
1422                NM retVal = this.getTypedField(32, 0);
1423                return retVal;
1424    }
1425    
1426    /**
1427     * Returns
1428     * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1429     */
1430    public NM getPv132_BadDebtTransferAmount() { 
1431                NM retVal = this.getTypedField(32, 0);
1432                return retVal;
1433    }
1434
1435
1436
1437    /**
1438     * Returns
1439     * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1440     */
1441    public NM getBadDebtRecoveryAmount() { 
1442                NM retVal = this.getTypedField(33, 0);
1443                return retVal;
1444    }
1445    
1446    /**
1447     * Returns
1448     * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1449     */
1450    public NM getPv133_BadDebtRecoveryAmount() { 
1451                NM retVal = this.getTypedField(33, 0);
1452                return retVal;
1453    }
1454
1455
1456
1457    /**
1458     * Returns
1459     * PV1-34: "Delete Account Indicator" - creates it if necessary
1460     */
1461    public ID getDeleteAccountIndicator() { 
1462                ID retVal = this.getTypedField(34, 0);
1463                return retVal;
1464    }
1465    
1466    /**
1467     * Returns
1468     * PV1-34: "Delete Account Indicator" - creates it if necessary
1469     */
1470    public ID getPv134_DeleteAccountIndicator() { 
1471                ID retVal = this.getTypedField(34, 0);
1472                return retVal;
1473    }
1474
1475
1476
1477    /**
1478     * Returns
1479     * PV1-35: "Delete Account Date" - creates it if necessary
1480     */
1481    public DT getDeleteAccountDate() { 
1482                DT retVal = this.getTypedField(35, 0);
1483                return retVal;
1484    }
1485    
1486    /**
1487     * Returns
1488     * PV1-35: "Delete Account Date" - creates it if necessary
1489     */
1490    public DT getPv135_DeleteAccountDate() { 
1491                DT retVal = this.getTypedField(35, 0);
1492                return retVal;
1493    }
1494
1495
1496
1497    /**
1498     * Returns
1499     * PV1-36: "Discharge Disposition" - creates it if necessary
1500     */
1501    public ID getDischargeDisposition() { 
1502                ID retVal = this.getTypedField(36, 0);
1503                return retVal;
1504    }
1505    
1506    /**
1507     * Returns
1508     * PV1-36: "Discharge Disposition" - creates it if necessary
1509     */
1510    public ID getPv136_DischargeDisposition() { 
1511                ID retVal = this.getTypedField(36, 0);
1512                return retVal;
1513    }
1514
1515
1516
1517    /**
1518     * Returns
1519     * PV1-37: "Discharged to Location" - creates it if necessary
1520     */
1521    public CM_DLD getDischargedToLocation() { 
1522                CM_DLD retVal = this.getTypedField(37, 0);
1523                return retVal;
1524    }
1525    
1526    /**
1527     * Returns
1528     * PV1-37: "Discharged to Location" - creates it if necessary
1529     */
1530    public CM_DLD getPv137_DischargedToLocation() { 
1531                CM_DLD retVal = this.getTypedField(37, 0);
1532                return retVal;
1533    }
1534
1535
1536
1537    /**
1538     * Returns
1539     * PV1-38: "Diet Type" - creates it if necessary
1540     */
1541    public ID getDietType() { 
1542                ID retVal = this.getTypedField(38, 0);
1543                return retVal;
1544    }
1545    
1546    /**
1547     * Returns
1548     * PV1-38: "Diet Type" - creates it if necessary
1549     */
1550    public ID getPv138_DietType() { 
1551                ID retVal = this.getTypedField(38, 0);
1552                return retVal;
1553    }
1554
1555
1556
1557    /**
1558     * Returns
1559     * PV1-39: "Servicing Facility" - creates it if necessary
1560     */
1561    public ID getServicingFacility() { 
1562                ID retVal = this.getTypedField(39, 0);
1563                return retVal;
1564    }
1565    
1566    /**
1567     * Returns
1568     * PV1-39: "Servicing Facility" - creates it if necessary
1569     */
1570    public ID getPv139_ServicingFacility() { 
1571                ID retVal = this.getTypedField(39, 0);
1572                return retVal;
1573    }
1574
1575
1576
1577    /**
1578     * Returns
1579     * PV1-40: "Bed Status" - creates it if necessary
1580     */
1581    public ID getBedStatus() { 
1582                ID retVal = this.getTypedField(40, 0);
1583                return retVal;
1584    }
1585    
1586    /**
1587     * Returns
1588     * PV1-40: "Bed Status" - creates it if necessary
1589     */
1590    public ID getPv140_BedStatus() { 
1591                ID retVal = this.getTypedField(40, 0);
1592                return retVal;
1593    }
1594
1595
1596
1597    /**
1598     * Returns
1599     * PV1-41: "Account Status" - creates it if necessary
1600     */
1601    public ID getAccountStatus() { 
1602                ID retVal = this.getTypedField(41, 0);
1603                return retVal;
1604    }
1605    
1606    /**
1607     * Returns
1608     * PV1-41: "Account Status" - creates it if necessary
1609     */
1610    public ID getPv141_AccountStatus() { 
1611                ID retVal = this.getTypedField(41, 0);
1612                return retVal;
1613    }
1614
1615
1616
1617    /**
1618     * Returns
1619     * PV1-42: "Pending Location" - creates it if necessary
1620     */
1621    public CM_INTERNAL_LOCATION getPendingLocation() { 
1622                CM_INTERNAL_LOCATION retVal = this.getTypedField(42, 0);
1623                return retVal;
1624    }
1625    
1626    /**
1627     * Returns
1628     * PV1-42: "Pending Location" - creates it if necessary
1629     */
1630    public CM_INTERNAL_LOCATION getPv142_PendingLocation() { 
1631                CM_INTERNAL_LOCATION retVal = this.getTypedField(42, 0);
1632                return retVal;
1633    }
1634
1635
1636
1637    /**
1638     * Returns
1639     * PV1-43: "Prior Temporary Location" - creates it if necessary
1640     */
1641    public CM_INTERNAL_LOCATION getPriorTemporaryLocation() { 
1642                CM_INTERNAL_LOCATION retVal = this.getTypedField(43, 0);
1643                return retVal;
1644    }
1645    
1646    /**
1647     * Returns
1648     * PV1-43: "Prior Temporary Location" - creates it if necessary
1649     */
1650    public CM_INTERNAL_LOCATION getPv143_PriorTemporaryLocation() { 
1651                CM_INTERNAL_LOCATION retVal = this.getTypedField(43, 0);
1652                return retVal;
1653    }
1654
1655
1656
1657    /**
1658     * Returns
1659     * PV1-44: "Admit date / time" - creates it if necessary
1660     */
1661    public TS getAdmitDateTime() { 
1662                TS retVal = this.getTypedField(44, 0);
1663                return retVal;
1664    }
1665    
1666    /**
1667     * Returns
1668     * PV1-44: "Admit date / time" - creates it if necessary
1669     */
1670    public TS getPv144_AdmitDateTime() { 
1671                TS retVal = this.getTypedField(44, 0);
1672                return retVal;
1673    }
1674
1675
1676
1677    /**
1678     * Returns
1679     * PV1-45: "Discharge date / time" - creates it if necessary
1680     */
1681    public TS getDischargeDateTime() { 
1682                TS retVal = this.getTypedField(45, 0);
1683                return retVal;
1684    }
1685    
1686    /**
1687     * Returns
1688     * PV1-45: "Discharge date / time" - creates it if necessary
1689     */
1690    public TS getPv145_DischargeDateTime() { 
1691                TS retVal = this.getTypedField(45, 0);
1692                return retVal;
1693    }
1694
1695
1696
1697    /**
1698     * Returns
1699     * PV1-46: "Current Patient Balance" - creates it if necessary
1700     */
1701    public NM getCurrentPatientBalance() { 
1702                NM retVal = this.getTypedField(46, 0);
1703                return retVal;
1704    }
1705    
1706    /**
1707     * Returns
1708     * PV1-46: "Current Patient Balance" - creates it if necessary
1709     */
1710    public NM getPv146_CurrentPatientBalance() { 
1711                NM retVal = this.getTypedField(46, 0);
1712                return retVal;
1713    }
1714
1715
1716
1717    /**
1718     * Returns
1719     * PV1-47: "Total Charges" - creates it if necessary
1720     */
1721    public NM getTotalCharges() { 
1722                NM retVal = this.getTypedField(47, 0);
1723                return retVal;
1724    }
1725    
1726    /**
1727     * Returns
1728     * PV1-47: "Total Charges" - creates it if necessary
1729     */
1730    public NM getPv147_TotalCharges() { 
1731                NM retVal = this.getTypedField(47, 0);
1732                return retVal;
1733    }
1734
1735
1736
1737    /**
1738     * Returns
1739     * PV1-48: "Total Adjustments" - creates it if necessary
1740     */
1741    public NM getTotalAdjustments() { 
1742                NM retVal = this.getTypedField(48, 0);
1743                return retVal;
1744    }
1745    
1746    /**
1747     * Returns
1748     * PV1-48: "Total Adjustments" - creates it if necessary
1749     */
1750    public NM getPv148_TotalAdjustments() { 
1751                NM retVal = this.getTypedField(48, 0);
1752                return retVal;
1753    }
1754
1755
1756
1757    /**
1758     * Returns
1759     * PV1-49: "Total Payments" - creates it if necessary
1760     */
1761    public NM getTotalPayments() { 
1762                NM retVal = this.getTypedField(49, 0);
1763                return retVal;
1764    }
1765    
1766    /**
1767     * Returns
1768     * PV1-49: "Total Payments" - creates it if necessary
1769     */
1770    public NM getPv149_TotalPayments() { 
1771                NM retVal = this.getTypedField(49, 0);
1772                return retVal;
1773    }
1774
1775
1776
1777    /**
1778     * Returns
1779     * PV1-50: "Alternate Visit ID" - creates it if necessary
1780     */
1781    public CM_PAT_ID_0192 getAlternateVisitID() { 
1782                CM_PAT_ID_0192 retVal = this.getTypedField(50, 0);
1783                return retVal;
1784    }
1785    
1786    /**
1787     * Returns
1788     * PV1-50: "Alternate Visit ID" - creates it if necessary
1789     */
1790    public CM_PAT_ID_0192 getPv150_AlternateVisitID() { 
1791                CM_PAT_ID_0192 retVal = this.getTypedField(50, 0);
1792                return retVal;
1793    }
1794
1795
1796
1797
1798
1799    /** {@inheritDoc} */   
1800    protected Type createNewTypeWithoutReflection(int field) {
1801       switch (field) {
1802          case 0: return new SI(getMessage());
1803          case 1: return new ID(getMessage(), new Integer( 4 ));
1804          case 2: return new CM_INTERNAL_LOCATION(getMessage());
1805          case 3: return new ID(getMessage(), new Integer( 7 ));
1806          case 4: return new ST(getMessage());
1807          case 5: return new CM_INTERNAL_LOCATION(getMessage());
1808          case 6: return new CN(getMessage());
1809          case 7: return new CN(getMessage());
1810          case 8: return new CN(getMessage());
1811          case 9: return new ID(getMessage(), new Integer( 69 ));
1812          case 10: return new CM_INTERNAL_LOCATION(getMessage());
1813          case 11: return new ID(getMessage(), new Integer( 87 ));
1814          case 12: return new ID(getMessage(), new Integer( 92 ));
1815          case 13: return new ID(getMessage(), new Integer( 23 ));
1816          case 14: return new ID(getMessage(), new Integer( 9 ));
1817          case 15: return new ID(getMessage(), new Integer( 99 ));
1818          case 16: return new CN(getMessage());
1819          case 17: return new ID(getMessage(), new Integer( 18 ));
1820          case 18: return new CM_PAT_ID(getMessage());
1821          case 19: return new CM_FINANCE(getMessage());
1822          case 20: return new ID(getMessage(), new Integer( 32 ));
1823          case 21: return new ID(getMessage(), new Integer( 45 ));
1824          case 22: return new ID(getMessage(), new Integer( 46 ));
1825          case 23: return new ID(getMessage(), new Integer( 44 ));
1826          case 24: return new DT(getMessage());
1827          case 25: return new NM(getMessage());
1828          case 26: return new NM(getMessage());
1829          case 27: return new ID(getMessage(), new Integer( 73 ));
1830          case 28: return new ID(getMessage(), new Integer( 110 ));
1831          case 29: return new DT(getMessage());
1832          case 30: return new ID(getMessage(), new Integer( 21 ));
1833          case 31: return new NM(getMessage());
1834          case 32: return new NM(getMessage());
1835          case 33: return new ID(getMessage(), new Integer( 111 ));
1836          case 34: return new DT(getMessage());
1837          case 35: return new ID(getMessage(), new Integer( 112 ));
1838          case 36: return new CM_DLD(getMessage());
1839          case 37: return new ID(getMessage(), new Integer( 114 ));
1840          case 38: return new ID(getMessage(), new Integer( 115 ));
1841          case 39: return new ID(getMessage(), new Integer( 116 ));
1842          case 40: return new ID(getMessage(), new Integer( 117 ));
1843          case 41: return new CM_INTERNAL_LOCATION(getMessage());
1844          case 42: return new CM_INTERNAL_LOCATION(getMessage());
1845          case 43: return new TS(getMessage());
1846          case 44: return new TS(getMessage());
1847          case 45: return new NM(getMessage());
1848          case 46: return new NM(getMessage());
1849          case 47: return new NM(getMessage());
1850          case 48: return new NM(getMessage());
1851          case 49: return new CM_PAT_ID_0192(getMessage());
1852          default: return null;
1853       }
1854   }
1855
1856
1857}
1858