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.v23.segment;
035
036// import ca.uhn.hl7v2.model.v23.group.*;
037import ca.uhn.hl7v2.model.v23.datatype.*;
038import ca.uhn.hl7v2.HL7Exception;
039import ca.uhn.hl7v2.parser.ModelClassFactory;
040import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
041import ca.uhn.hl7v2.model.AbstractMessage;
042import ca.uhn.hl7v2.model.Group;
043import ca.uhn.hl7v2.model.Type;
044import ca.uhn.hl7v2.model.AbstractSegment;
045import ca.uhn.hl7v2.model.Varies;
046
047/**
048 *<p>Represents an HL7 ORC message segment (Common order segment). 
049 * This segment has the following fields:</p>
050 * <ul>
051     * <li>ORC-1: Order Control (ID) <b> </b>
052     * <li>ORC-2: Placer Order Number (EI) <b>optional repeating</b>
053     * <li>ORC-3: Filler Order Number (EI) <b>optional </b>
054     * <li>ORC-4: Placer Group Number (EI) <b>optional </b>
055     * <li>ORC-5: Order Status (ID) <b>optional </b>
056     * <li>ORC-6: Response Flag (ID) <b>optional </b>
057     * <li>ORC-7: Quantity/Timing (TQ) <b> </b>
058     * <li>ORC-8: Parent Order (CM_EIP) <b>optional </b>
059     * <li>ORC-9: Date/Time of Transaction (TS) <b>optional </b>
060     * <li>ORC-10: Entered By (XCN) <b>optional </b>
061     * <li>ORC-11: Verified By (XCN) <b>optional </b>
062     * <li>ORC-12: Ordering Provider (XCN) <b>optional repeating</b>
063     * <li>ORC-13: Enterer's Location (PL) <b>optional </b>
064     * <li>ORC-14: Call Back Phone Number (TN) <b>optional repeating</b>
065     * <li>ORC-15: Order Effective Date/Time (TS) <b>optional </b>
066     * <li>ORC-16: Order Control Code Reason (CE) <b>optional </b>
067     * <li>ORC-17: Entering Organization (CE) <b>optional </b>
068     * <li>ORC-18: Entering Device (CE) <b>optional </b>
069     * <li>ORC-19: Action By (XCN) <b>optional </b>
070 * </ul>
071 */
072@SuppressWarnings("unused")
073public class ORC extends AbstractSegment {
074
075    /** 
076     * Creates a new ORC segment
077     */
078    public ORC(Group parent, ModelClassFactory factory) {
079       super(parent, factory);
080       init(factory);
081    }
082
083    private void init(ModelClassFactory factory) {
084       try {
085                                              this.add(ID.class, true, 1, 2, new Object[]{ getMessage(), new Integer(119) }, "Order Control");
086                                  this.add(EI.class, false, 0, 22, new Object[]{ getMessage() }, "Placer Order Number");
087                                  this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Filler Order Number");
088                                  this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Placer Group Number");
089                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(38) }, "Order Status");
090                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(121) }, "Response Flag");
091                                  this.add(TQ.class, true, 1, 200, new Object[]{ getMessage() }, "Quantity/Timing");
092                                  this.add(CM_EIP.class, false, 1, 200, new Object[]{ getMessage() }, "Parent Order");
093                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of Transaction");
094                                  this.add(XCN.class, false, 1, 120, new Object[]{ getMessage() }, "Entered By");
095                                  this.add(XCN.class, false, 1, 120, new Object[]{ getMessage() }, "Verified By");
096                                  this.add(XCN.class, false, 0, 120, new Object[]{ getMessage() }, "Ordering Provider");
097                                  this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Enterer's Location");
098                                  this.add(TN.class, false, 2, 40, new Object[]{ getMessage() }, "Call Back Phone Number");
099                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Order Effective Date/Time");
100                                  this.add(CE.class, false, 1, 200, new Object[]{ getMessage() }, "Order Control Code Reason");
101                                  this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Entering Organization");
102                                  this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Entering Device");
103                                  this.add(XCN.class, false, 1, 120, new Object[]{ getMessage() }, "Action By");
104       } catch(HL7Exception e) {
105          log.error("Unexpected error creating ORC - this is probably a bug in the source code generator.", e);
106       }
107    }
108
109
110
111    /**
112     * Returns
113     * ORC-1: "Order Control" - creates it if necessary
114     */
115    public ID getOrderControl() { 
116                ID retVal = this.getTypedField(1, 0);
117                return retVal;
118    }
119    
120    /**
121     * Returns
122     * ORC-1: "Order Control" - creates it if necessary
123     */
124    public ID getOrc1_OrderControl() { 
125                ID retVal = this.getTypedField(1, 0);
126                return retVal;
127    }
128
129
130    /**
131     * Returns all repetitions of Placer Order Number (ORC-2).
132     */
133    public EI[] getPlacerOrderNumber() {
134        EI[] retVal = this.getTypedField(2, new EI[0]);
135        return retVal;
136    }
137
138
139    /**
140     * Returns all repetitions of Placer Order Number (ORC-2).
141     */
142    public EI[] getOrc2_PlacerOrderNumber() {
143        EI[] retVal = this.getTypedField(2, new EI[0]);
144        return retVal;
145    }
146
147
148    /**
149     * Returns a count of the current number of repetitions of Placer Order Number (ORC-2).
150     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
151     * it will return zero.
152     */
153    public int getPlacerOrderNumberReps() {
154        return this.getReps(2);
155    }
156
157
158    /**
159     * Returns a specific repetition of
160     * ORC-2: "Placer Order Number" - creates it if necessary
161     *
162     * @param rep The repetition index (0-indexed)
163     */
164    public EI getPlacerOrderNumber(int rep) { 
165                EI retVal = this.getTypedField(2, rep);
166                return retVal;
167    }
168
169    /**
170     * Returns a specific repetition of
171     * ORC-2: "Placer Order Number" - creates it if necessary
172     *
173     * @param rep The repetition index (0-indexed)
174     */
175    public EI getOrc2_PlacerOrderNumber(int rep) { 
176                EI retVal = this.getTypedField(2, rep);
177                return retVal;
178    }
179
180    /**
181     * Returns a count of the current number of repetitions of Placer Order Number (ORC-2).
182     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
183     * it will return zero.
184     */
185    public int getOrc2_PlacerOrderNumberReps() {
186        return this.getReps(2);
187    }
188
189
190    /**
191     * Inserts a repetition of
192     * ORC-2: "Placer Order Number" at a specific index
193     *
194     * @param rep The repetition index (0-indexed)
195     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
196     */
197    public EI insertPlacerOrderNumber(int rep) throws HL7Exception { 
198        return (EI) super.insertRepetition(2, rep);
199    }
200
201
202    /**
203     * Inserts a repetition of
204     * ORC-2: "Placer Order Number" at a specific index
205     *
206     * @param rep The repetition index (0-indexed)
207     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
208     */
209    public EI insertOrc2_PlacerOrderNumber(int rep) throws HL7Exception { 
210        return (EI) super.insertRepetition(2, rep);
211    }
212
213
214    /**
215     * Removes a repetition of
216     * ORC-2: "Placer Order Number" at a specific index
217     *
218     * @param rep The repetition index (0-indexed)
219     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
220     */
221    public EI removePlacerOrderNumber(int rep) throws HL7Exception { 
222        return (EI) super.removeRepetition(2, rep);
223    }
224
225
226    /**
227     * Removes a repetition of
228     * ORC-2: "Placer Order Number" at a specific index
229     *
230     * @param rep The repetition index (0-indexed)
231     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
232     */
233    public EI removeOrc2_PlacerOrderNumber(int rep) throws HL7Exception { 
234        return (EI) super.removeRepetition(2, rep);
235    }
236
237
238
239
240    /**
241     * Returns
242     * ORC-3: "Filler Order Number" - creates it if necessary
243     */
244    public EI getFillerOrderNumber() { 
245                EI retVal = this.getTypedField(3, 0);
246                return retVal;
247    }
248    
249    /**
250     * Returns
251     * ORC-3: "Filler Order Number" - creates it if necessary
252     */
253    public EI getOrc3_FillerOrderNumber() { 
254                EI retVal = this.getTypedField(3, 0);
255                return retVal;
256    }
257
258
259
260    /**
261     * Returns
262     * ORC-4: "Placer Group Number" - creates it if necessary
263     */
264    public EI getPlacerGroupNumber() { 
265                EI retVal = this.getTypedField(4, 0);
266                return retVal;
267    }
268    
269    /**
270     * Returns
271     * ORC-4: "Placer Group Number" - creates it if necessary
272     */
273    public EI getOrc4_PlacerGroupNumber() { 
274                EI retVal = this.getTypedField(4, 0);
275                return retVal;
276    }
277
278
279
280    /**
281     * Returns
282     * ORC-5: "Order Status" - creates it if necessary
283     */
284    public ID getOrderStatus() { 
285                ID retVal = this.getTypedField(5, 0);
286                return retVal;
287    }
288    
289    /**
290     * Returns
291     * ORC-5: "Order Status" - creates it if necessary
292     */
293    public ID getOrc5_OrderStatus() { 
294                ID retVal = this.getTypedField(5, 0);
295                return retVal;
296    }
297
298
299
300    /**
301     * Returns
302     * ORC-6: "Response Flag" - creates it if necessary
303     */
304    public ID getResponseFlag() { 
305                ID retVal = this.getTypedField(6, 0);
306                return retVal;
307    }
308    
309    /**
310     * Returns
311     * ORC-6: "Response Flag" - creates it if necessary
312     */
313    public ID getOrc6_ResponseFlag() { 
314                ID retVal = this.getTypedField(6, 0);
315                return retVal;
316    }
317
318
319
320    /**
321     * Returns
322     * ORC-7: "Quantity/Timing" - creates it if necessary
323     */
324    public TQ getQuantityTiming() { 
325                TQ retVal = this.getTypedField(7, 0);
326                return retVal;
327    }
328    
329    /**
330     * Returns
331     * ORC-7: "Quantity/Timing" - creates it if necessary
332     */
333    public TQ getOrc7_QuantityTiming() { 
334                TQ retVal = this.getTypedField(7, 0);
335                return retVal;
336    }
337
338
339
340    /**
341     * Returns
342     * ORC-8: "Parent Order" - creates it if necessary
343     */
344    public CM_EIP getParentOrder() { 
345                CM_EIP retVal = this.getTypedField(8, 0);
346                return retVal;
347    }
348    
349    /**
350     * Returns
351     * ORC-8: "Parent Order" - creates it if necessary
352     */
353    public CM_EIP getOrc8_ParentOrder() { 
354                CM_EIP retVal = this.getTypedField(8, 0);
355                return retVal;
356    }
357
358
359
360    /**
361     * Returns
362     * ORC-9: "Date/Time of Transaction" - creates it if necessary
363     */
364    public TS getDateTimeOfTransaction() { 
365                TS retVal = this.getTypedField(9, 0);
366                return retVal;
367    }
368    
369    /**
370     * Returns
371     * ORC-9: "Date/Time of Transaction" - creates it if necessary
372     */
373    public TS getOrc9_DateTimeOfTransaction() { 
374                TS retVal = this.getTypedField(9, 0);
375                return retVal;
376    }
377
378
379
380    /**
381     * Returns
382     * ORC-10: "Entered By" - creates it if necessary
383     */
384    public XCN getEnteredBy() { 
385                XCN retVal = this.getTypedField(10, 0);
386                return retVal;
387    }
388    
389    /**
390     * Returns
391     * ORC-10: "Entered By" - creates it if necessary
392     */
393    public XCN getOrc10_EnteredBy() { 
394                XCN retVal = this.getTypedField(10, 0);
395                return retVal;
396    }
397
398
399
400    /**
401     * Returns
402     * ORC-11: "Verified By" - creates it if necessary
403     */
404    public XCN getVerifiedBy() { 
405                XCN retVal = this.getTypedField(11, 0);
406                return retVal;
407    }
408    
409    /**
410     * Returns
411     * ORC-11: "Verified By" - creates it if necessary
412     */
413    public XCN getOrc11_VerifiedBy() { 
414                XCN retVal = this.getTypedField(11, 0);
415                return retVal;
416    }
417
418
419    /**
420     * Returns all repetitions of Ordering Provider (ORC-12).
421     */
422    public XCN[] getOrderingProvider() {
423        XCN[] retVal = this.getTypedField(12, new XCN[0]);
424        return retVal;
425    }
426
427
428    /**
429     * Returns all repetitions of Ordering Provider (ORC-12).
430     */
431    public XCN[] getOrc12_OrderingProvider() {
432        XCN[] retVal = this.getTypedField(12, new XCN[0]);
433        return retVal;
434    }
435
436
437    /**
438     * Returns a count of the current number of repetitions of Ordering Provider (ORC-12).
439     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
440     * it will return zero.
441     */
442    public int getOrderingProviderReps() {
443        return this.getReps(12);
444    }
445
446
447    /**
448     * Returns a specific repetition of
449     * ORC-12: "Ordering Provider" - creates it if necessary
450     *
451     * @param rep The repetition index (0-indexed)
452     */
453    public XCN getOrderingProvider(int rep) { 
454                XCN retVal = this.getTypedField(12, rep);
455                return retVal;
456    }
457
458    /**
459     * Returns a specific repetition of
460     * ORC-12: "Ordering Provider" - creates it if necessary
461     *
462     * @param rep The repetition index (0-indexed)
463     */
464    public XCN getOrc12_OrderingProvider(int rep) { 
465                XCN retVal = this.getTypedField(12, rep);
466                return retVal;
467    }
468
469    /**
470     * Returns a count of the current number of repetitions of Ordering Provider (ORC-12).
471     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
472     * it will return zero.
473     */
474    public int getOrc12_OrderingProviderReps() {
475        return this.getReps(12);
476    }
477
478
479    /**
480     * Inserts a repetition of
481     * ORC-12: "Ordering Provider" at a specific index
482     *
483     * @param rep The repetition index (0-indexed)
484     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
485     */
486    public XCN insertOrderingProvider(int rep) throws HL7Exception { 
487        return (XCN) super.insertRepetition(12, rep);
488    }
489
490
491    /**
492     * Inserts a repetition of
493     * ORC-12: "Ordering Provider" at a specific index
494     *
495     * @param rep The repetition index (0-indexed)
496     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
497     */
498    public XCN insertOrc12_OrderingProvider(int rep) throws HL7Exception { 
499        return (XCN) super.insertRepetition(12, rep);
500    }
501
502
503    /**
504     * Removes a repetition of
505     * ORC-12: "Ordering Provider" at a specific index
506     *
507     * @param rep The repetition index (0-indexed)
508     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
509     */
510    public XCN removeOrderingProvider(int rep) throws HL7Exception { 
511        return (XCN) super.removeRepetition(12, rep);
512    }
513
514
515    /**
516     * Removes a repetition of
517     * ORC-12: "Ordering Provider" at a specific index
518     *
519     * @param rep The repetition index (0-indexed)
520     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
521     */
522    public XCN removeOrc12_OrderingProvider(int rep) throws HL7Exception { 
523        return (XCN) super.removeRepetition(12, rep);
524    }
525
526
527
528
529    /**
530     * Returns
531     * ORC-13: "Enterer's Location" - creates it if necessary
532     */
533    public PL getEntererSLocation() { 
534                PL retVal = this.getTypedField(13, 0);
535                return retVal;
536    }
537    
538    /**
539     * Returns
540     * ORC-13: "Enterer's Location" - creates it if necessary
541     */
542    public PL getOrc13_EntererSLocation() { 
543                PL retVal = this.getTypedField(13, 0);
544                return retVal;
545    }
546
547
548    /**
549     * Returns all repetitions of Call Back Phone Number (ORC-14).
550     */
551    public TN[] getCallBackPhoneNumber() {
552        TN[] retVal = this.getTypedField(14, new TN[0]);
553        return retVal;
554    }
555
556
557    /**
558     * Returns all repetitions of Call Back Phone Number (ORC-14).
559     */
560    public TN[] getOrc14_CallBackPhoneNumber() {
561        TN[] retVal = this.getTypedField(14, new TN[0]);
562        return retVal;
563    }
564
565
566    /**
567     * Returns a count of the current number of repetitions of Call Back Phone Number (ORC-14).
568     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
569     * it will return zero.
570     */
571    public int getCallBackPhoneNumberReps() {
572        return this.getReps(14);
573    }
574
575
576    /**
577     * Returns a specific repetition of
578     * ORC-14: "Call Back Phone Number" - creates it if necessary
579     *
580     * @param rep The repetition index (0-indexed)
581     */
582    public TN getCallBackPhoneNumber(int rep) { 
583                TN retVal = this.getTypedField(14, rep);
584                return retVal;
585    }
586
587    /**
588     * Returns a specific repetition of
589     * ORC-14: "Call Back Phone Number" - creates it if necessary
590     *
591     * @param rep The repetition index (0-indexed)
592     */
593    public TN getOrc14_CallBackPhoneNumber(int rep) { 
594                TN retVal = this.getTypedField(14, rep);
595                return retVal;
596    }
597
598    /**
599     * Returns a count of the current number of repetitions of Call Back Phone Number (ORC-14).
600     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
601     * it will return zero.
602     */
603    public int getOrc14_CallBackPhoneNumberReps() {
604        return this.getReps(14);
605    }
606
607
608    /**
609     * Inserts a repetition of
610     * ORC-14: "Call Back Phone Number" at a specific index
611     *
612     * @param rep The repetition index (0-indexed)
613     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
614     */
615    public TN insertCallBackPhoneNumber(int rep) throws HL7Exception { 
616        return (TN) super.insertRepetition(14, rep);
617    }
618
619
620    /**
621     * Inserts a repetition of
622     * ORC-14: "Call Back Phone Number" at a specific index
623     *
624     * @param rep The repetition index (0-indexed)
625     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
626     */
627    public TN insertOrc14_CallBackPhoneNumber(int rep) throws HL7Exception { 
628        return (TN) super.insertRepetition(14, rep);
629    }
630
631
632    /**
633     * Removes a repetition of
634     * ORC-14: "Call Back Phone Number" at a specific index
635     *
636     * @param rep The repetition index (0-indexed)
637     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
638     */
639    public TN removeCallBackPhoneNumber(int rep) throws HL7Exception { 
640        return (TN) super.removeRepetition(14, rep);
641    }
642
643
644    /**
645     * Removes a repetition of
646     * ORC-14: "Call Back Phone Number" at a specific index
647     *
648     * @param rep The repetition index (0-indexed)
649     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
650     */
651    public TN removeOrc14_CallBackPhoneNumber(int rep) throws HL7Exception { 
652        return (TN) super.removeRepetition(14, rep);
653    }
654
655
656
657
658    /**
659     * Returns
660     * ORC-15: "Order Effective Date/Time" - creates it if necessary
661     */
662    public TS getOrderEffectiveDateTime() { 
663                TS retVal = this.getTypedField(15, 0);
664                return retVal;
665    }
666    
667    /**
668     * Returns
669     * ORC-15: "Order Effective Date/Time" - creates it if necessary
670     */
671    public TS getOrc15_OrderEffectiveDateTime() { 
672                TS retVal = this.getTypedField(15, 0);
673                return retVal;
674    }
675
676
677
678    /**
679     * Returns
680     * ORC-16: "Order Control Code Reason" - creates it if necessary
681     */
682    public CE getOrderControlCodeReason() { 
683                CE retVal = this.getTypedField(16, 0);
684                return retVal;
685    }
686    
687    /**
688     * Returns
689     * ORC-16: "Order Control Code Reason" - creates it if necessary
690     */
691    public CE getOrc16_OrderControlCodeReason() { 
692                CE retVal = this.getTypedField(16, 0);
693                return retVal;
694    }
695
696
697
698    /**
699     * Returns
700     * ORC-17: "Entering Organization" - creates it if necessary
701     */
702    public CE getEnteringOrganization() { 
703                CE retVal = this.getTypedField(17, 0);
704                return retVal;
705    }
706    
707    /**
708     * Returns
709     * ORC-17: "Entering Organization" - creates it if necessary
710     */
711    public CE getOrc17_EnteringOrganization() { 
712                CE retVal = this.getTypedField(17, 0);
713                return retVal;
714    }
715
716
717
718    /**
719     * Returns
720     * ORC-18: "Entering Device" - creates it if necessary
721     */
722    public CE getEnteringDevice() { 
723                CE retVal = this.getTypedField(18, 0);
724                return retVal;
725    }
726    
727    /**
728     * Returns
729     * ORC-18: "Entering Device" - creates it if necessary
730     */
731    public CE getOrc18_EnteringDevice() { 
732                CE retVal = this.getTypedField(18, 0);
733                return retVal;
734    }
735
736
737
738    /**
739     * Returns
740     * ORC-19: "Action By" - creates it if necessary
741     */
742    public XCN getActionBy() { 
743                XCN retVal = this.getTypedField(19, 0);
744                return retVal;
745    }
746    
747    /**
748     * Returns
749     * ORC-19: "Action By" - creates it if necessary
750     */
751    public XCN getOrc19_ActionBy() { 
752                XCN retVal = this.getTypedField(19, 0);
753                return retVal;
754    }
755
756
757
758
759
760    /** {@inheritDoc} */   
761    protected Type createNewTypeWithoutReflection(int field) {
762       switch (field) {
763          case 0: return new ID(getMessage(), new Integer( 119 ));
764          case 1: return new EI(getMessage());
765          case 2: return new EI(getMessage());
766          case 3: return new EI(getMessage());
767          case 4: return new ID(getMessage(), new Integer( 38 ));
768          case 5: return new ID(getMessage(), new Integer( 121 ));
769          case 6: return new TQ(getMessage());
770          case 7: return new CM_EIP(getMessage());
771          case 8: return new TS(getMessage());
772          case 9: return new XCN(getMessage());
773          case 10: return new XCN(getMessage());
774          case 11: return new XCN(getMessage());
775          case 12: return new PL(getMessage());
776          case 13: return new TN(getMessage());
777          case 14: return new TS(getMessage());
778          case 15: return new CE(getMessage());
779          case 16: return new CE(getMessage());
780          case 17: return new CE(getMessage());
781          case 18: return new XCN(getMessage());
782          default: return null;
783       }
784   }
785
786
787}
788