docs: public String getSQLFields(int iType, boolean bUseCurrentValues)
      {
          String strFields = DBConstants.BLANK;
          boolean bAllSelected = this.isAllSelected();
          boolean bIsQueryRecord = this.isQueryRecord();
          if (iType != DBConstants.SQL_SELECT_TYPE)
              bAllSelected = false;
          if (bAllSelected == true)
              strFields = " *";
          else
          {
              for (int iFieldSeq = DBConstants.MAIN_FIELD; iFieldSeq <= this.getFieldCount() + DBConstants.MAIN_FIELD - 1; iFieldSeq++)
              {
                  BaseField field = this.getField(iFieldSeq);
                  if (field.getSkipSQLParam(iType))
                      continue; // Skip this param
                  if (strFields.length() > 0)
                      strFields += ",";
                  String strCompare = null;
                  if (bUseCurrentValues == false)
                      strCompare = "?";
                  if (iType != DBConstants.SQL_INSERT_VALUE_TYPE)
                      strFields += " " + field.getFieldName(true, bIsQueryRecord);    // Full name if QueryRecord
                  else    // kInsertValueType
                      strFields += field.getSQLFilter("", strCompare, false);   // Full name if QueryRecord
                  if (iType == DBConstants.SQL_UPDATE_TYPE)
                      strFields += field.getSQLFilter("=", strCompare, false);    // Full name if QueryRecord
              }
          }
          return strFields;
      }