Index: topia/src/java/org/codelutin/topia/persistence/TopiaJDBCQueryHelper.java diff -u topia/src/java/org/codelutin/topia/persistence/TopiaJDBCQueryHelper.java:1.1 topia/src/java/org/codelutin/topia/persistence/TopiaJDBCQueryHelper.java:1.2 --- topia/src/java/org/codelutin/topia/persistence/TopiaJDBCQueryHelper.java:1.1 Mon Aug 1 17:10:15 2005 +++ topia/src/java/org/codelutin/topia/persistence/TopiaJDBCQueryHelper.java Tue Aug 2 13:13:02 2005 @@ -23,9 +23,9 @@ * * @author Arnaud Thimel * Copyright Code Lutin - * @version $Revision: 1.1 $ + * @version $Revision: 1.2 $ * - * Mise a jour: $Date: 2005/08/01 17:10:15 $ + * Mise a jour: $Date: 2005/08/02 13:13:02 $ * par : $Author: thimel $ */ package org.codelutin.topia.persistence; @@ -49,7 +49,8 @@ public class TopiaJDBCQueryHelper extends QueryHelper { - public static final String IN_START = " AND (id,longdate) IN ("; + public static final String AND = " AND"; + public static final String IN_START = " (id,longdate) IN ("; public static final String IN_AND_SELECT = "SELECT id, longdate FROM data WHERE "; public static final String LEAD_SELECT = "SELECT DISTINCT id FROM data WHERE "; @@ -90,10 +91,11 @@ request = LEAD_SELECT; for (String s : queryBuilder.getANDs()) { - request += s + IN_START + IN_AND_SELECT; + request += s + AND + IN_START + IN_AND_SELECT; } - request += queryBuilder.getFilter() + IN_START; - request += END_BEFORE_TYPE + queryBuilder.getFrom() + END_MIDDLE_TYPE + queryBuilder.getFrom() + END_AFTER_TYPE; + if (queryBuilder.getFilter() != null && !("".equals(queryBuilder.getFilter()))) + request += queryBuilder.getFilter() + AND; + request += IN_START + END_BEFORE_TYPE + queryBuilder.getFrom() + END_MIDDLE_TYPE + queryBuilder.getFrom() + END_AFTER_TYPE; for (int i = 0; i < queryBuilder.getANDs().size(); i++) { request += ")"; }