docs: public BaseField getField(int iAreaDesc)
      {
          switch (iAreaDesc)
          {
          default:
          case DBConstants.FILE_KEY_AREA:
              return m_field;
          case DBConstants.TEMP_KEY_AREA:
              if (m_fieldTempParam == null)
              {
                  try   {
                      m_fieldTempParam = (BaseField)m_field.clone();  // Buffer areas
                      m_fieldTempParam.setFieldName(new String(m_field.getFieldName(false, false) + "Temp"));
                      m_fieldTempParam.setNullable(true);
                  } catch (CloneNotSupportedException ex)   {
                      m_fieldTempParam = null;
                  }
              }
              return m_fieldTempParam;
          case DBConstants.START_SELECT_KEY:
              if (m_fieldStartParam == null)
              {
                  try   {
                      m_fieldStartParam = (BaseField)m_field.clone();   // Buffer areas
                      m_fieldStartParam.setFieldName(new String(m_field.getFieldName(false, false) + "Start"));
                      m_fieldStartParam.setNullable(true);
                  } catch (CloneNotSupportedException ex)   {
                      m_fieldStartParam = null;
                  }
              }
              return m_fieldStartParam;
          case DBConstants.END_SELECT_KEY:
              if (m_fieldEndParam == null)
              {
                  try   {
                      m_fieldEndParam = (BaseField)m_field.clone();
                      m_fieldEndParam.setFieldName(new String(m_field.getFieldName(false, false) + "End"));
                      m_fieldEndParam.setNullable(true);
                  } catch (CloneNotSupportedException ex)   {
                      m_fieldEndParam = null;
                  }
              }
              return m_fieldEndParam;
          }
      }