code: public BaseField setupField(int iFieldSeq)
      {
          BaseField field = null;
          if (iFieldSeq == 0)
              field = new ContactTypeLevelOneField(this, CONTACT_TYPE_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 1)
              field = new ContactField(this, CONTACT_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 2)
              field = new MessageInfoTypeField(this, MESSAGE_INFO_TYPE_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 3)
              field = new MessageTypeField(this, MESSAGE_TYPE_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 4)
              field = new MessageStatusField(this, MESSAGE_STATUS_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 5)
              field = new MessageTransportSelect(this, MESSAGE_TRANSPORT_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 6)
              field = new UserField(this, USER_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 7)
              field = new DateField(this, START_DATE, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 8)
              field = new DateField(this, END_DATE, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 9)
              field = new ShortField(this, SORT_KEY, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (iFieldSeq == 10)
              field = new StringField(this, REFERENCE_TYPE, 60, null, null);
          if (iFieldSeq == 11)
              field = new ReferenceField(this, REFERENCE_ID, Constants.DEFAULT_FIELD_LENGTH, null, null);
          if (field == null)
              field = super.setupField(iFieldSeq);
          return field;
      }
docs: Add this field in the Record's field sequence.