// <editor-fold defaultstate="collapsed" desc="SQL LIST"> public SqlUnit getListSqlUnit(CrudModel cp, String xalias) { String alias = cp.getAlias(); if (alias == null || alias.trim().length() == 0) alias = xalias; alias = alias.replaceAll("/", "_"); List<CrudField> primKeys = new ArrayList(); List paramNames = new ArrayList(); StringBuffer sb = new StringBuffer(); sb.append("SELECT ${columns} FROM ("); sb.append("SELECT "); boolean firstPass = true; for (CrudModel.CrudField cf : cp.getFields()) { if (firstPass) firstPass = false; else { sb.append(","); } if (!cf.isLinked()) sb.append(escapeField(cp.getTableName()) + "."); sb.append(escapeField(cf.getFieldName()) + " AS " + cf.getName()); } sb.append(" FROM " + escapeField(cp.getTableName())); if (cp.getLinkTable() != null) sb.append(escapeField(cp.getLinkTable())); sb.append(" ) " + alias); sb.append(" ${condition}"); String stmt = sb.toString(); return new SqlUnit(stmt, paramNames); }