Index: /trunk/ippTools/src/dettool.c
===================================================================
--- /trunk/ippTools/src/dettool.c	(revision 9964)
+++ /trunk/ippTools/src/dettool.c	(revision 9965)
@@ -1583,36 +1583,43 @@
     psString query = psStringCopy(
         " SELECT DISTINCT"
-        "    detProcessedImfile.det_id,"
+        "    det_id,"
+        "    iteration,"
+        "    det_type,"
+        "    exp_tag,"
+        "    camera"
+        " FROM"
+        " (SELECT DISTINCT"
+        "    detRun.det_id,"
         "    detRun.iteration,"
         "    detRun.det_type,"
         "    detProcessedImfile.exp_tag,"
-        "    rawDetrendExp.camera"
+        "    rawDetrendExp.camera,"
+        "    detProcessedImfile.class_id,"
+        "    rawDetrendExp.imfiles"
         " FROM detRun"
         " JOIN detInputExp"
-        "    ON detRun.det_id = detInputExp.det_id"
-        "    AND detRun.iteration = detInputExp.iteration"
+        "   USING(det_id, iteration)"
         " JOIN rawDetrendExp"
-        "    ON detInputExp.exp_tag = rawDetrendExp.exp_tag"
-        " JOIN detProcessedImfile"
-        "    ON detInputExp.det_id = detProcessedImfile.det_id"
-        "    AND detInputExp.exp_tag = detProcessedImfile.exp_tag"
+        "   ON detInputExp.exp_tag = rawDetrendExp.exp_tag"
+        " JOIN rawImfile"
+        "   ON rawDetrendExp.exp_tag = rawImfile.exp_tag"
+        " LEFT JOIN detProcessedImfile"
+        "   ON detRun.det_id = detProcessedImfile.det_id"
+        "   AND detInputExp.exp_tag = detProcessedImfile.exp_tag"
+        "   AND rawImfile.class_id = detProcessedImfile.class_id"
         " LEFT JOIN detProcessedExp"
-        "    ON detInputExp.det_id = detProcessedExp.det_id"
-        "    AND detProcessedImfile.exp_tag= detProcessedExp.exp_tag"
-        " LEFT JOIN rawImfile"
-        "    ON detInputExp.exp_tag = rawImfile.exp_tag"
-        "    AND detProcessedImfile.class_id = rawImfile.class_id"
+        "   ON detProcessedImfile.det_id = detProcessedExp.det_id"
+        "   AND detProcessedImfile.exp_tag = detProcessedExp.exp_tag"
         " WHERE"
         "   detRun.state = 'run'"
-        "   AND  detProcessedExp.det_id IS NULL"
+        "   AND detProcessedExp.det_id IS NULL"
         "   AND detProcessedExp.exp_tag IS NULL"
         "   AND detInputExp.include = 1"
         " GROUP BY"
-        "    detProcessedImfile.class_id,"
-        "    rawImfile.class_id,"
-        "    detInputExp.exp_tag,"
+        "    rawDetrendExp.exp_tag,"
         "    detRun.det_id"
         " HAVING"
-        "    COUNT(detProcessedImfile.class_id) = COUNT(rawImfile.class_id)"
+        "    COUNT(detProcessedImfile.class_id) = rawDetrendExp.imfiles"
+        " ) AS detProcessedExp"
         );
 
