View Javadoc
1   /*
2    * This class is an auto-generated source file for a HAPI
3    * HL7 v2.x standard structure class.
4    *
5    * For more information, visit: http://hl7api.sourceforge.net/
6    * 
7    * The contents of this file are subject to the Mozilla Public License Version 1.1 
8    * (the "License"); you may not use this file except in compliance with the License. 
9    * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
10   * Software distributed under the License is distributed on an "AS IS" basis, 
11   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
12   * specific language governing rights and limitations under the License. 
13   * 
14   * The Original Code is "[file_name]".  Description: 
15   * "[one_line_description]" 
16   * 
17   * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
18   * 2012.  All Rights Reserved. 
19   * 
20   * Contributor(s): ______________________________________. 
21   * 
22   * Alternatively, the contents of this file may be used under the terms of the 
23   * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
24   * applicable instead of those above.  If you wish to allow use of your version of this 
25   * file only under the terms of the GPL and not to allow others to use your version 
26   * of this file under the MPL, indicate your decision by deleting  the provisions above 
27   * and replace  them with the notice and other provisions required by the GPL License.  
28   * If you do not delete the provisions above, a recipient may use your version of 
29   * this file under either the MPL or the GPL. 
30   * 
31   */
32  
33  
34  package ca.uhn.hl7v2.model.v28.segment;
35  
36  // import ca.uhn.hl7v2.model.v28.group.*;
37  import ca.uhn.hl7v2.model.v28.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 PSL message segment (Product/Service Line Item). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>PSL-1: Provider Product/Service Line Item Number (EI) <b> </b>
53       * <li>PSL-2: Payer Product/Service Line Item Number (EI) <b>optional </b>
54       * <li>PSL-3: Product/Service Line Item Sequence Number (SI) <b> </b>
55       * <li>PSL-4: Provider Tracking ID (EI) <b>optional </b>
56       * <li>PSL-5: Payer Tracking ID (EI) <b>optional </b>
57       * <li>PSL-6: Product/Service Line Item Status (CWE) <b> </b>
58       * <li>PSL-7: Product/Service Code (CWE) <b> </b>
59       * <li>PSL-8: Product/Service Code Modifier (CWE) <b>optional </b>
60       * <li>PSL-9: Product/Service Code Description (ST) <b>optional </b>
61       * <li>PSL-10: Product/Service Effective Date (DTM) <b>optional </b>
62       * <li>PSL-11: Product/Service Expiration Date (DTM) <b>optional </b>
63       * <li>PSL-12: Product/Service Quantity (CQ) <b>optional </b>
64       * <li>PSL-13: Product/Service Unit Cost (CP) <b>optional </b>
65       * <li>PSL-14: Number of Items per Unit (NM) <b>optional </b>
66       * <li>PSL-15: Product/Service Gross Amount (CP) <b>optional </b>
67       * <li>PSL-16: Product/Service Billed Amount (CP) <b>optional </b>
68       * <li>PSL-17: Product/Service Clarification Code Type (CWE) <b>optional </b>
69       * <li>PSL-18: Product/Service Clarification Code Value (ST) <b>optional </b>
70       * <li>PSL-19: Health Document Reference Identifier (EI) <b>optional </b>
71       * <li>PSL-20: Processing Consideration Code (CWE) <b>optional </b>
72       * <li>PSL-21: Restricted Disclosure Indicator (ID) <b> </b>
73       * <li>PSL-22: Related Product/Service Code Indicator (CWE) <b>optional </b>
74       * <li>PSL-23: Product/Service Amount for Physician (CP) <b>optional </b>
75       * <li>PSL-24: Product/Service Cost Factor (NM) <b>optional </b>
76       * <li>PSL-25: Cost Center (CX) <b>optional </b>
77       * <li>PSL-26: Billing Period (DR) <b>optional </b>
78       * <li>PSL-27: Days without Billing (NM) <b>optional </b>
79       * <li>PSL-28: Session-No (NM) <b>optional </b>
80       * <li>PSL-29: Executing Physician ID (XCN) <b>optional </b>
81       * <li>PSL-30: Responsible Physician ID (XCN) <b>optional </b>
82       * <li>PSL-31: Role Executing Physician (CWE) <b>optional </b>
83       * <li>PSL-32: Medical Role Executing Physician (CWE) <b>optional </b>
84       * <li>PSL-33: Side of body (CWE) <b>optional </b>
85       * <li>PSL-34: Number of TP's PP (NM) <b>optional </b>
86       * <li>PSL-35: TP-Value PP (CP) <b>optional </b>
87       * <li>PSL-36: Internal Scaling Factor PP (NM) <b>optional </b>
88       * <li>PSL-37: External Scaling Factor PP (NM) <b>optional </b>
89       * <li>PSL-38: Amount PP (CP) <b>optional </b>
90       * <li>PSL-39: Number of TP's Technical Part (NM) <b>optional </b>
91       * <li>PSL-40: TP-Value Technical Part (CP) <b>optional </b>
92       * <li>PSL-41: Internal Scaling Factor Technical Part (NM) <b>optional </b>
93       * <li>PSL-42: External Scaling Factor Technical Part (NM) <b>optional </b>
94       * <li>PSL-43: Amount Technical Part (CP) <b>optional </b>
95       * <li>PSL-44: Total Amount Professional Part + Technical Part (CP) <b>optional </b>
96       * <li>PSL-45: VAT-Rate (NM) <b>optional </b>
97       * <li>PSL-46: Main-Service (ID) <b>optional </b>
98       * <li>PSL-47: Validation (ID) <b>optional </b>
99       * <li>PSL-48: Comment (ST) <b>optional </b>
100  * </ul>
101  */
102 @SuppressWarnings("unused")
103 public class PSL extends AbstractSegment {
104 
105     /** 
106      * Creates a new PSL segment
107      */
108     public PSL(Group parent, ModelClassFactory factory) {
109        super(parent, factory);
110        init(factory);
111     }
112 
113     private void init(ModelClassFactory factory) {
114        try {
115                                   this.add(EI.class, true, 1, 0, new Object[]{ getMessage() }, "Provider Product/Service Line Item Number");
116                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Payer Product/Service Line Item Number");
117                                   this.add(SI.class, true, 1, 4, new Object[]{ getMessage() }, "Product/Service Line Item Sequence Number");
118                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Provider Tracking ID");
119                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Payer Tracking ID");
120                                   this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Product/Service Line Item Status");
121                                   this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Product/Service Code");
122                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Code Modifier");
123                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Code Description");
124                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Effective Date");
125                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Expiration Date");
126                                   this.add(CQ.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Quantity");
127                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Unit Cost");
128                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Number of Items per Unit");
129                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Gross Amount");
130                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Billed Amount");
131                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Clarification Code Type");
132                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Clarification Code Value");
133                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Health Document Reference Identifier");
134                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Processing Consideration Code");
135                                               this.add(ID.class, true, 1, 4, new Object[]{ getMessage(), new Integer(532) }, "Restricted Disclosure Indicator");
136                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Related Product/Service Code Indicator");
137                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Amount for Physician");
138                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Product/Service Cost Factor");
139                                   this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Cost Center");
140                                   this.add(DR.class, false, 1, 0, new Object[]{ getMessage() }, "Billing Period");
141                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Days without Billing");
142                                   this.add(NM.class, false, 1, 4, new Object[]{ getMessage() }, "Session-No");
143                                   this.add(XCN.class, false, 1, 0, new Object[]{ getMessage() }, "Executing Physician ID");
144                                   this.add(XCN.class, false, 1, 0, new Object[]{ getMessage() }, "Responsible Physician ID");
145                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Role Executing Physician");
146                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Medical Role Executing Physician");
147                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Side of body");
148                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Number of TP's PP");
149                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "TP-Value PP");
150                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Internal Scaling Factor PP");
151                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "External Scaling Factor PP");
152                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Amount PP");
153                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Number of TP's Technical Part");
154                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "TP-Value Technical Part");
155                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Internal Scaling Factor Technical Part");
156                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "External Scaling Factor Technical Part");
157                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Amount Technical Part");
158                                   this.add(CP.class, false, 1, 0, new Object[]{ getMessage() }, "Total Amount Professional Part + Technical Part");
159                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "VAT-Rate");
160                                               this.add(ID.class, false, 1, 20, new Object[]{ getMessage(), new Integer(0) }, "Main-Service");
161                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Validation");
162                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Comment");
163        } catch(HL7Exception e) {
164           log.error("Unexpected error creating PSL - this is probably a bug in the source code generator.", e);
165        }
166     }
167 
168 
169 
170     /**
171      * Returns
172      * PSL-1: "Provider Product/Service Line Item Number" - creates it if necessary
173      */
174     public EI getProviderProductServiceLineItemNumber() { 
175 		EI retVal = this.getTypedField(1, 0);
176 		return retVal;
177     }
178     
179     /**
180      * Returns
181      * PSL-1: "Provider Product/Service Line Item Number" - creates it if necessary
182      */
183     public EI getPsl1_ProviderProductServiceLineItemNumber() { 
184 		EI retVal = this.getTypedField(1, 0);
185 		return retVal;
186     }
187 
188 
189 
190     /**
191      * Returns
192      * PSL-2: "Payer Product/Service Line Item Number" - creates it if necessary
193      */
194     public EI getPayerProductServiceLineItemNumber() { 
195 		EI retVal = this.getTypedField(2, 0);
196 		return retVal;
197     }
198     
199     /**
200      * Returns
201      * PSL-2: "Payer Product/Service Line Item Number" - creates it if necessary
202      */
203     public EI getPsl2_PayerProductServiceLineItemNumber() { 
204 		EI retVal = this.getTypedField(2, 0);
205 		return retVal;
206     }
207 
208 
209 
210     /**
211      * Returns
212      * PSL-3: "Product/Service Line Item Sequence Number" - creates it if necessary
213      */
214     public SI getProductServiceLineItemSequenceNumber() { 
215 		SI retVal = this.getTypedField(3, 0);
216 		return retVal;
217     }
218     
219     /**
220      * Returns
221      * PSL-3: "Product/Service Line Item Sequence Number" - creates it if necessary
222      */
223     public SI getPsl3_ProductServiceLineItemSequenceNumber() { 
224 		SI retVal = this.getTypedField(3, 0);
225 		return retVal;
226     }
227 
228 
229 
230     /**
231      * Returns
232      * PSL-4: "Provider Tracking ID" - creates it if necessary
233      */
234     public EI getProviderTrackingID() { 
235 		EI retVal = this.getTypedField(4, 0);
236 		return retVal;
237     }
238     
239     /**
240      * Returns
241      * PSL-4: "Provider Tracking ID" - creates it if necessary
242      */
243     public EI getPsl4_ProviderTrackingID() { 
244 		EI retVal = this.getTypedField(4, 0);
245 		return retVal;
246     }
247 
248 
249 
250     /**
251      * Returns
252      * PSL-5: "Payer Tracking ID" - creates it if necessary
253      */
254     public EI getPayerTrackingID() { 
255 		EI retVal = this.getTypedField(5, 0);
256 		return retVal;
257     }
258     
259     /**
260      * Returns
261      * PSL-5: "Payer Tracking ID" - creates it if necessary
262      */
263     public EI getPsl5_PayerTrackingID() { 
264 		EI retVal = this.getTypedField(5, 0);
265 		return retVal;
266     }
267 
268 
269 
270     /**
271      * Returns
272      * PSL-6: "Product/Service Line Item Status" - creates it if necessary
273      */
274     public CWE getProductServiceLineItemStatus() { 
275 		CWE retVal = this.getTypedField(6, 0);
276 		return retVal;
277     }
278     
279     /**
280      * Returns
281      * PSL-6: "Product/Service Line Item Status" - creates it if necessary
282      */
283     public CWE getPsl6_ProductServiceLineItemStatus() { 
284 		CWE retVal = this.getTypedField(6, 0);
285 		return retVal;
286     }
287 
288 
289 
290     /**
291      * Returns
292      * PSL-7: "Product/Service Code" - creates it if necessary
293      */
294     public CWE getProductServiceCode() { 
295 		CWE retVal = this.getTypedField(7, 0);
296 		return retVal;
297     }
298     
299     /**
300      * Returns
301      * PSL-7: "Product/Service Code" - creates it if necessary
302      */
303     public CWE getPsl7_ProductServiceCode() { 
304 		CWE retVal = this.getTypedField(7, 0);
305 		return retVal;
306     }
307 
308 
309 
310     /**
311      * Returns
312      * PSL-8: "Product/Service Code Modifier" - creates it if necessary
313      */
314     public CWE getProductServiceCodeModifier() { 
315 		CWE retVal = this.getTypedField(8, 0);
316 		return retVal;
317     }
318     
319     /**
320      * Returns
321      * PSL-8: "Product/Service Code Modifier" - creates it if necessary
322      */
323     public CWE getPsl8_ProductServiceCodeModifier() { 
324 		CWE retVal = this.getTypedField(8, 0);
325 		return retVal;
326     }
327 
328 
329 
330     /**
331      * Returns
332      * PSL-9: "Product/Service Code Description" - creates it if necessary
333      */
334     public ST getProductServiceCodeDescription() { 
335 		ST retVal = this.getTypedField(9, 0);
336 		return retVal;
337     }
338     
339     /**
340      * Returns
341      * PSL-9: "Product/Service Code Description" - creates it if necessary
342      */
343     public ST getPsl9_ProductServiceCodeDescription() { 
344 		ST retVal = this.getTypedField(9, 0);
345 		return retVal;
346     }
347 
348 
349 
350     /**
351      * Returns
352      * PSL-10: "Product/Service Effective Date" - creates it if necessary
353      */
354     public DTM getProductServiceEffectiveDate() { 
355 		DTM retVal = this.getTypedField(10, 0);
356 		return retVal;
357     }
358     
359     /**
360      * Returns
361      * PSL-10: "Product/Service Effective Date" - creates it if necessary
362      */
363     public DTM getPsl10_ProductServiceEffectiveDate() { 
364 		DTM retVal = this.getTypedField(10, 0);
365 		return retVal;
366     }
367 
368 
369 
370     /**
371      * Returns
372      * PSL-11: "Product/Service Expiration Date" - creates it if necessary
373      */
374     public DTM getProductServiceExpirationDate() { 
375 		DTM retVal = this.getTypedField(11, 0);
376 		return retVal;
377     }
378     
379     /**
380      * Returns
381      * PSL-11: "Product/Service Expiration Date" - creates it if necessary
382      */
383     public DTM getPsl11_ProductServiceExpirationDate() { 
384 		DTM retVal = this.getTypedField(11, 0);
385 		return retVal;
386     }
387 
388 
389 
390     /**
391      * Returns
392      * PSL-12: "Product/Service Quantity" - creates it if necessary
393      */
394     public CQ getProductServiceQuantity() { 
395 		CQ retVal = this.getTypedField(12, 0);
396 		return retVal;
397     }
398     
399     /**
400      * Returns
401      * PSL-12: "Product/Service Quantity" - creates it if necessary
402      */
403     public CQ getPsl12_ProductServiceQuantity() { 
404 		CQ retVal = this.getTypedField(12, 0);
405 		return retVal;
406     }
407 
408 
409 
410     /**
411      * Returns
412      * PSL-13: "Product/Service Unit Cost" - creates it if necessary
413      */
414     public CP getProductServiceUnitCost() { 
415 		CP retVal = this.getTypedField(13, 0);
416 		return retVal;
417     }
418     
419     /**
420      * Returns
421      * PSL-13: "Product/Service Unit Cost" - creates it if necessary
422      */
423     public CP getPsl13_ProductServiceUnitCost() { 
424 		CP retVal = this.getTypedField(13, 0);
425 		return retVal;
426     }
427 
428 
429 
430     /**
431      * Returns
432      * PSL-14: "Number of Items per Unit" - creates it if necessary
433      */
434     public NM getNumberOfItemsPerUnit() { 
435 		NM retVal = this.getTypedField(14, 0);
436 		return retVal;
437     }
438     
439     /**
440      * Returns
441      * PSL-14: "Number of Items per Unit" - creates it if necessary
442      */
443     public NM getPsl14_NumberOfItemsPerUnit() { 
444 		NM retVal = this.getTypedField(14, 0);
445 		return retVal;
446     }
447 
448 
449 
450     /**
451      * Returns
452      * PSL-15: "Product/Service Gross Amount" - creates it if necessary
453      */
454     public CP getProductServiceGrossAmount() { 
455 		CP retVal = this.getTypedField(15, 0);
456 		return retVal;
457     }
458     
459     /**
460      * Returns
461      * PSL-15: "Product/Service Gross Amount" - creates it if necessary
462      */
463     public CP getPsl15_ProductServiceGrossAmount() { 
464 		CP retVal = this.getTypedField(15, 0);
465 		return retVal;
466     }
467 
468 
469 
470     /**
471      * Returns
472      * PSL-16: "Product/Service Billed Amount" - creates it if necessary
473      */
474     public CP getProductServiceBilledAmount() { 
475 		CP retVal = this.getTypedField(16, 0);
476 		return retVal;
477     }
478     
479     /**
480      * Returns
481      * PSL-16: "Product/Service Billed Amount" - creates it if necessary
482      */
483     public CP getPsl16_ProductServiceBilledAmount() { 
484 		CP retVal = this.getTypedField(16, 0);
485 		return retVal;
486     }
487 
488 
489 
490     /**
491      * Returns
492      * PSL-17: "Product/Service Clarification Code Type" - creates it if necessary
493      */
494     public CWE getProductServiceClarificationCodeType() { 
495 		CWE retVal = this.getTypedField(17, 0);
496 		return retVal;
497     }
498     
499     /**
500      * Returns
501      * PSL-17: "Product/Service Clarification Code Type" - creates it if necessary
502      */
503     public CWE getPsl17_ProductServiceClarificationCodeType() { 
504 		CWE retVal = this.getTypedField(17, 0);
505 		return retVal;
506     }
507 
508 
509 
510     /**
511      * Returns
512      * PSL-18: "Product/Service Clarification Code Value" - creates it if necessary
513      */
514     public ST getProductServiceClarificationCodeValue() { 
515 		ST retVal = this.getTypedField(18, 0);
516 		return retVal;
517     }
518     
519     /**
520      * Returns
521      * PSL-18: "Product/Service Clarification Code Value" - creates it if necessary
522      */
523     public ST getPsl18_ProductServiceClarificationCodeValue() { 
524 		ST retVal = this.getTypedField(18, 0);
525 		return retVal;
526     }
527 
528 
529 
530     /**
531      * Returns
532      * PSL-19: "Health Document Reference Identifier" - creates it if necessary
533      */
534     public EI getHealthDocumentReferenceIdentifier() { 
535 		EI retVal = this.getTypedField(19, 0);
536 		return retVal;
537     }
538     
539     /**
540      * Returns
541      * PSL-19: "Health Document Reference Identifier" - creates it if necessary
542      */
543     public EI getPsl19_HealthDocumentReferenceIdentifier() { 
544 		EI retVal = this.getTypedField(19, 0);
545 		return retVal;
546     }
547 
548 
549 
550     /**
551      * Returns
552      * PSL-20: "Processing Consideration Code" - creates it if necessary
553      */
554     public CWE getProcessingConsiderationCode() { 
555 		CWE retVal = this.getTypedField(20, 0);
556 		return retVal;
557     }
558     
559     /**
560      * Returns
561      * PSL-20: "Processing Consideration Code" - creates it if necessary
562      */
563     public CWE getPsl20_ProcessingConsiderationCode() { 
564 		CWE retVal = this.getTypedField(20, 0);
565 		return retVal;
566     }
567 
568 
569 
570     /**
571      * Returns
572      * PSL-21: "Restricted Disclosure Indicator" - creates it if necessary
573      */
574     public ID getRestrictedDisclosureIndicator() { 
575 		ID retVal = this.getTypedField(21, 0);
576 		return retVal;
577     }
578     
579     /**
580      * Returns
581      * PSL-21: "Restricted Disclosure Indicator" - creates it if necessary
582      */
583     public ID getPsl21_RestrictedDisclosureIndicator() { 
584 		ID retVal = this.getTypedField(21, 0);
585 		return retVal;
586     }
587 
588 
589 
590     /**
591      * Returns
592      * PSL-22: "Related Product/Service Code Indicator" - creates it if necessary
593      */
594     public CWE getRelatedProductServiceCodeIndicator() { 
595 		CWE retVal = this.getTypedField(22, 0);
596 		return retVal;
597     }
598     
599     /**
600      * Returns
601      * PSL-22: "Related Product/Service Code Indicator" - creates it if necessary
602      */
603     public CWE getPsl22_RelatedProductServiceCodeIndicator() { 
604 		CWE retVal = this.getTypedField(22, 0);
605 		return retVal;
606     }
607 
608 
609 
610     /**
611      * Returns
612      * PSL-23: "Product/Service Amount for Physician" - creates it if necessary
613      */
614     public CP getProductServiceAmountForPhysician() { 
615 		CP retVal = this.getTypedField(23, 0);
616 		return retVal;
617     }
618     
619     /**
620      * Returns
621      * PSL-23: "Product/Service Amount for Physician" - creates it if necessary
622      */
623     public CP getPsl23_ProductServiceAmountForPhysician() { 
624 		CP retVal = this.getTypedField(23, 0);
625 		return retVal;
626     }
627 
628 
629 
630     /**
631      * Returns
632      * PSL-24: "Product/Service Cost Factor" - creates it if necessary
633      */
634     public NM getProductServiceCostFactor() { 
635 		NM retVal = this.getTypedField(24, 0);
636 		return retVal;
637     }
638     
639     /**
640      * Returns
641      * PSL-24: "Product/Service Cost Factor" - creates it if necessary
642      */
643     public NM getPsl24_ProductServiceCostFactor() { 
644 		NM retVal = this.getTypedField(24, 0);
645 		return retVal;
646     }
647 
648 
649 
650     /**
651      * Returns
652      * PSL-25: "Cost Center" - creates it if necessary
653      */
654     public CX getCostCenter() { 
655 		CX retVal = this.getTypedField(25, 0);
656 		return retVal;
657     }
658     
659     /**
660      * Returns
661      * PSL-25: "Cost Center" - creates it if necessary
662      */
663     public CX getPsl25_CostCenter() { 
664 		CX retVal = this.getTypedField(25, 0);
665 		return retVal;
666     }
667 
668 
669 
670     /**
671      * Returns
672      * PSL-26: "Billing Period" - creates it if necessary
673      */
674     public DR getBillingPeriod() { 
675 		DR retVal = this.getTypedField(26, 0);
676 		return retVal;
677     }
678     
679     /**
680      * Returns
681      * PSL-26: "Billing Period" - creates it if necessary
682      */
683     public DR getPsl26_BillingPeriod() { 
684 		DR retVal = this.getTypedField(26, 0);
685 		return retVal;
686     }
687 
688 
689 
690     /**
691      * Returns
692      * PSL-27: "Days without Billing" - creates it if necessary
693      */
694     public NM getDaysWithoutBilling() { 
695 		NM retVal = this.getTypedField(27, 0);
696 		return retVal;
697     }
698     
699     /**
700      * Returns
701      * PSL-27: "Days without Billing" - creates it if necessary
702      */
703     public NM getPsl27_DaysWithoutBilling() { 
704 		NM retVal = this.getTypedField(27, 0);
705 		return retVal;
706     }
707 
708 
709 
710     /**
711      * Returns
712      * PSL-28: "Session-No" - creates it if necessary
713      */
714     public NM getSessionNo() { 
715 		NM retVal = this.getTypedField(28, 0);
716 		return retVal;
717     }
718     
719     /**
720      * Returns
721      * PSL-28: "Session-No" - creates it if necessary
722      */
723     public NM getPsl28_SessionNo() { 
724 		NM retVal = this.getTypedField(28, 0);
725 		return retVal;
726     }
727 
728 
729 
730     /**
731      * Returns
732      * PSL-29: "Executing Physician ID" - creates it if necessary
733      */
734     public XCN getExecutingPhysicianID() { 
735 		XCN retVal = this.getTypedField(29, 0);
736 		return retVal;
737     }
738     
739     /**
740      * Returns
741      * PSL-29: "Executing Physician ID" - creates it if necessary
742      */
743     public XCN getPsl29_ExecutingPhysicianID() { 
744 		XCN retVal = this.getTypedField(29, 0);
745 		return retVal;
746     }
747 
748 
749 
750     /**
751      * Returns
752      * PSL-30: "Responsible Physician ID" - creates it if necessary
753      */
754     public XCN getResponsiblePhysicianID() { 
755 		XCN retVal = this.getTypedField(30, 0);
756 		return retVal;
757     }
758     
759     /**
760      * Returns
761      * PSL-30: "Responsible Physician ID" - creates it if necessary
762      */
763     public XCN getPsl30_ResponsiblePhysicianID() { 
764 		XCN retVal = this.getTypedField(30, 0);
765 		return retVal;
766     }
767 
768 
769 
770     /**
771      * Returns
772      * PSL-31: "Role Executing Physician" - creates it if necessary
773      */
774     public CWE getRoleExecutingPhysician() { 
775 		CWE retVal = this.getTypedField(31, 0);
776 		return retVal;
777     }
778     
779     /**
780      * Returns
781      * PSL-31: "Role Executing Physician" - creates it if necessary
782      */
783     public CWE getPsl31_RoleExecutingPhysician() { 
784 		CWE retVal = this.getTypedField(31, 0);
785 		return retVal;
786     }
787 
788 
789 
790     /**
791      * Returns
792      * PSL-32: "Medical Role Executing Physician" - creates it if necessary
793      */
794     public CWE getMedicalRoleExecutingPhysician() { 
795 		CWE retVal = this.getTypedField(32, 0);
796 		return retVal;
797     }
798     
799     /**
800      * Returns
801      * PSL-32: "Medical Role Executing Physician" - creates it if necessary
802      */
803     public CWE getPsl32_MedicalRoleExecutingPhysician() { 
804 		CWE retVal = this.getTypedField(32, 0);
805 		return retVal;
806     }
807 
808 
809 
810     /**
811      * Returns
812      * PSL-33: "Side of body" - creates it if necessary
813      */
814     public CWE getSideOfBody() { 
815 		CWE retVal = this.getTypedField(33, 0);
816 		return retVal;
817     }
818     
819     /**
820      * Returns
821      * PSL-33: "Side of body" - creates it if necessary
822      */
823     public CWE getPsl33_SideOfBody() { 
824 		CWE retVal = this.getTypedField(33, 0);
825 		return retVal;
826     }
827 
828 
829 
830     /**
831      * Returns
832      * PSL-34: "Number of TP's PP" - creates it if necessary
833      */
834     public NM getNumberOfTPSPP() { 
835 		NM retVal = this.getTypedField(34, 0);
836 		return retVal;
837     }
838     
839     /**
840      * Returns
841      * PSL-34: "Number of TP's PP" - creates it if necessary
842      */
843     public NM getPsl34_NumberOfTPSPP() { 
844 		NM retVal = this.getTypedField(34, 0);
845 		return retVal;
846     }
847 
848 
849 
850     /**
851      * Returns
852      * PSL-35: "TP-Value PP" - creates it if necessary
853      */
854     public CP getTPValuePP() { 
855 		CP retVal = this.getTypedField(35, 0);
856 		return retVal;
857     }
858     
859     /**
860      * Returns
861      * PSL-35: "TP-Value PP" - creates it if necessary
862      */
863     public CP getPsl35_TPValuePP() { 
864 		CP retVal = this.getTypedField(35, 0);
865 		return retVal;
866     }
867 
868 
869 
870     /**
871      * Returns
872      * PSL-36: "Internal Scaling Factor PP" - creates it if necessary
873      */
874     public NM getInternalScalingFactorPP() { 
875 		NM retVal = this.getTypedField(36, 0);
876 		return retVal;
877     }
878     
879     /**
880      * Returns
881      * PSL-36: "Internal Scaling Factor PP" - creates it if necessary
882      */
883     public NM getPsl36_InternalScalingFactorPP() { 
884 		NM retVal = this.getTypedField(36, 0);
885 		return retVal;
886     }
887 
888 
889 
890     /**
891      * Returns
892      * PSL-37: "External Scaling Factor PP" - creates it if necessary
893      */
894     public NM getExternalScalingFactorPP() { 
895 		NM retVal = this.getTypedField(37, 0);
896 		return retVal;
897     }
898     
899     /**
900      * Returns
901      * PSL-37: "External Scaling Factor PP" - creates it if necessary
902      */
903     public NM getPsl37_ExternalScalingFactorPP() { 
904 		NM retVal = this.getTypedField(37, 0);
905 		return retVal;
906     }
907 
908 
909 
910     /**
911      * Returns
912      * PSL-38: "Amount PP" - creates it if necessary
913      */
914     public CP getAmountPP() { 
915 		CP retVal = this.getTypedField(38, 0);
916 		return retVal;
917     }
918     
919     /**
920      * Returns
921      * PSL-38: "Amount PP" - creates it if necessary
922      */
923     public CP getPsl38_AmountPP() { 
924 		CP retVal = this.getTypedField(38, 0);
925 		return retVal;
926     }
927 
928 
929 
930     /**
931      * Returns
932      * PSL-39: "Number of TP's Technical Part" - creates it if necessary
933      */
934     public NM getNumberOfTPSTechnicalPart() { 
935 		NM retVal = this.getTypedField(39, 0);
936 		return retVal;
937     }
938     
939     /**
940      * Returns
941      * PSL-39: "Number of TP's Technical Part" - creates it if necessary
942      */
943     public NM getPsl39_NumberOfTPSTechnicalPart() { 
944 		NM retVal = this.getTypedField(39, 0);
945 		return retVal;
946     }
947 
948 
949 
950     /**
951      * Returns
952      * PSL-40: "TP-Value Technical Part" - creates it if necessary
953      */
954     public CP getTPValueTechnicalPart() { 
955 		CP retVal = this.getTypedField(40, 0);
956 		return retVal;
957     }
958     
959     /**
960      * Returns
961      * PSL-40: "TP-Value Technical Part" - creates it if necessary
962      */
963     public CP getPsl40_TPValueTechnicalPart() { 
964 		CP retVal = this.getTypedField(40, 0);
965 		return retVal;
966     }
967 
968 
969 
970     /**
971      * Returns
972      * PSL-41: "Internal Scaling Factor Technical Part" - creates it if necessary
973      */
974     public NM getInternalScalingFactorTechnicalPart() { 
975 		NM retVal = this.getTypedField(41, 0);
976 		return retVal;
977     }
978     
979     /**
980      * Returns
981      * PSL-41: "Internal Scaling Factor Technical Part" - creates it if necessary
982      */
983     public NM getPsl41_InternalScalingFactorTechnicalPart() { 
984 		NM retVal = this.getTypedField(41, 0);
985 		return retVal;
986     }
987 
988 
989 
990     /**
991      * Returns
992      * PSL-42: "External Scaling Factor Technical Part" - creates it if necessary
993      */
994     public NM getExternalScalingFactorTechnicalPart() { 
995 		NM retVal = this.getTypedField(42, 0);
996 		return retVal;
997     }
998     
999     /**
1000      * Returns
1001      * PSL-42: "External Scaling Factor Technical Part" - creates it if necessary
1002      */
1003     public NM getPsl42_ExternalScalingFactorTechnicalPart() { 
1004 		NM retVal = this.getTypedField(42, 0);
1005 		return retVal;
1006     }
1007 
1008 
1009 
1010     /**
1011      * Returns
1012      * PSL-43: "Amount Technical Part" - creates it if necessary
1013      */
1014     public CP getAmountTechnicalPart() { 
1015 		CP retVal = this.getTypedField(43, 0);
1016 		return retVal;
1017     }
1018     
1019     /**
1020      * Returns
1021      * PSL-43: "Amount Technical Part" - creates it if necessary
1022      */
1023     public CP getPsl43_AmountTechnicalPart() { 
1024 		CP retVal = this.getTypedField(43, 0);
1025 		return retVal;
1026     }
1027 
1028 
1029 
1030     /**
1031      * Returns
1032      * PSL-44: "Total Amount Professional Part + Technical Part" - creates it if necessary
1033      */
1034     public CP getTotalAmountProfessionalPartTechnicalPart() { 
1035 		CP retVal = this.getTypedField(44, 0);
1036 		return retVal;
1037     }
1038     
1039     /**
1040      * Returns
1041      * PSL-44: "Total Amount Professional Part + Technical Part" - creates it if necessary
1042      */
1043     public CP getPsl44_TotalAmountProfessionalPartTechnicalPart() { 
1044 		CP retVal = this.getTypedField(44, 0);
1045 		return retVal;
1046     }
1047 
1048 
1049 
1050     /**
1051      * Returns
1052      * PSL-45: "VAT-Rate" - creates it if necessary
1053      */
1054     public NM getVATRate() { 
1055 		NM retVal = this.getTypedField(45, 0);
1056 		return retVal;
1057     }
1058     
1059     /**
1060      * Returns
1061      * PSL-45: "VAT-Rate" - creates it if necessary
1062      */
1063     public NM getPsl45_VATRate() { 
1064 		NM retVal = this.getTypedField(45, 0);
1065 		return retVal;
1066     }
1067 
1068 
1069 
1070     /**
1071      * Returns
1072      * PSL-46: "Main-Service" - creates it if necessary
1073      */
1074     public ID getMainService() { 
1075 		ID retVal = this.getTypedField(46, 0);
1076 		return retVal;
1077     }
1078     
1079     /**
1080      * Returns
1081      * PSL-46: "Main-Service" - creates it if necessary
1082      */
1083     public ID getPsl46_MainService() { 
1084 		ID retVal = this.getTypedField(46, 0);
1085 		return retVal;
1086     }
1087 
1088 
1089 
1090     /**
1091      * Returns
1092      * PSL-47: "Validation" - creates it if necessary
1093      */
1094     public ID getValidation() { 
1095 		ID retVal = this.getTypedField(47, 0);
1096 		return retVal;
1097     }
1098     
1099     /**
1100      * Returns
1101      * PSL-47: "Validation" - creates it if necessary
1102      */
1103     public ID getPsl47_Validation() { 
1104 		ID retVal = this.getTypedField(47, 0);
1105 		return retVal;
1106     }
1107 
1108 
1109 
1110     /**
1111      * Returns
1112      * PSL-48: "Comment" - creates it if necessary
1113      */
1114     public ST getComment() { 
1115 		ST retVal = this.getTypedField(48, 0);
1116 		return retVal;
1117     }
1118     
1119     /**
1120      * Returns
1121      * PSL-48: "Comment" - creates it if necessary
1122      */
1123     public ST getPsl48_Comment() { 
1124 		ST retVal = this.getTypedField(48, 0);
1125 		return retVal;
1126     }
1127 
1128 
1129 
1130 
1131 
1132     /** {@inheritDoc} */   
1133     protected Type createNewTypeWithoutReflection(int field) {
1134        switch (field) {
1135           case 0: return new EI(getMessage());
1136           case 1: return new EI(getMessage());
1137           case 2: return new SI(getMessage());
1138           case 3: return new EI(getMessage());
1139           case 4: return new EI(getMessage());
1140           case 5: return new CWE(getMessage());
1141           case 6: return new CWE(getMessage());
1142           case 7: return new CWE(getMessage());
1143           case 8: return new ST(getMessage());
1144           case 9: return new DTM(getMessage());
1145           case 10: return new DTM(getMessage());
1146           case 11: return new CQ(getMessage());
1147           case 12: return new CP(getMessage());
1148           case 13: return new NM(getMessage());
1149           case 14: return new CP(getMessage());
1150           case 15: return new CP(getMessage());
1151           case 16: return new CWE(getMessage());
1152           case 17: return new ST(getMessage());
1153           case 18: return new EI(getMessage());
1154           case 19: return new CWE(getMessage());
1155           case 20: return new ID(getMessage(), new Integer( 532 ));
1156           case 21: return new CWE(getMessage());
1157           case 22: return new CP(getMessage());
1158           case 23: return new NM(getMessage());
1159           case 24: return new CX(getMessage());
1160           case 25: return new DR(getMessage());
1161           case 26: return new NM(getMessage());
1162           case 27: return new NM(getMessage());
1163           case 28: return new XCN(getMessage());
1164           case 29: return new XCN(getMessage());
1165           case 30: return new CWE(getMessage());
1166           case 31: return new CWE(getMessage());
1167           case 32: return new CWE(getMessage());
1168           case 33: return new NM(getMessage());
1169           case 34: return new CP(getMessage());
1170           case 35: return new NM(getMessage());
1171           case 36: return new NM(getMessage());
1172           case 37: return new CP(getMessage());
1173           case 38: return new NM(getMessage());
1174           case 39: return new CP(getMessage());
1175           case 40: return new NM(getMessage());
1176           case 41: return new NM(getMessage());
1177           case 42: return new CP(getMessage());
1178           case 43: return new CP(getMessage());
1179           case 44: return new NM(getMessage());
1180           case 45: return new ID(getMessage(), new Integer( 0 ));
1181           case 46: return new ID(getMessage(), new Integer( 136 ));
1182           case 47: return new ST(getMessage());
1183           default: return null;
1184        }
1185    }
1186 
1187 
1188 }
1189