Index: /trunk/ippTools/scripts/dettest.sh
===================================================================
--- /trunk/ippTools/scripts/dettest.sh	(revision 14042)
+++ /trunk/ippTools/scripts/dettest.sh	(revision 14043)
@@ -10,4 +10,6 @@
 
 dettool -raw || exit 1
+
+dettool -toprocessedimfile || exit 1
 
 for ID in `seq 0 3` ; do
Index: /trunk/ippTools/share/Makefile.am
===================================================================
--- /trunk/ippTools/share/Makefile.am	(revision 14042)
+++ /trunk/ippTools/share/Makefile.am	(revision 14043)
@@ -14,4 +14,5 @@
 	dettool_find_completed_runs.sql \
 	dettool_raw.sql \
+    dettool_toprocessedimfile.sql \
 	difftool_inputskyfile.sql \
 	difftool_skyfile.sql \
Index: /trunk/ippTools/share/dettool_toprocessedimfile.sql
===================================================================
--- /trunk/ippTools/share/dettool_toprocessedimfile.sql	(revision 14043)
+++ /trunk/ippTools/share/dettool_toprocessedimfile.sql	(revision 14043)
@@ -0,0 +1,23 @@
+SELECT
+    detRun.det_id,
+    detRun.det_type,
+    detRun.workdir,
+    detRun.reduction,
+    rawImfile.*
+FROM detRun
+JOIN detInputExp
+    USING(det_id, iteration)
+JOIN rawExp
+    ON detInputExp.exp_id = rawExp.exp_id
+JOIN rawImfile
+    ON detInputExp.exp_id = rawImfile.exp_id
+LEFT JOIN detProcessedImfile
+    ON detInputExp.det_id = detProcessedImfile.det_id
+    AND rawImfile.exp_id = detProcessedImfile.exp_id
+    AND rawImfile.class_id = detProcessedImfile.class_id
+WHERE
+    detRun.state = 'run'
+    AND detRun.mode = 'master'
+    AND detProcessedImfile.det_id IS NULL
+    AND detProcessedImfile.exp_id IS NULL
+    AND detProcessedImfile.class_id IS NULL
Index: /trunk/ippTools/src/dettool.c
===================================================================
--- /trunk/ippTools/src/dettool.c	(revision 14042)
+++ /trunk/ippTools/src/dettool.c	(revision 14043)
@@ -2113,39 +2113,9 @@
     }
 
-    // select det_id, det_type & rawImfile *
-    // get det_id from detInputExp.det_id
-    // get det_type from detRun.det_id
-    //
-    // det_id is in detInputExp
-    // exp_id is in detInputExp
-    // det_id is not in detProccessedImfile
-    // exp_id is not in detProccessedImfile
-    // class_is is not in detProccessedImfile
-    psString query = psStringCopy(
-            "SELECT"
-            "   detRun.det_id,"
-            "   detRun.det_type,"
-            "   detRun.workdir,"
-            "   detRun.reduction,"
-            "   rawImfile.*,"
-            "   rawExp.camera"
-            " FROM detRun"
-            " JOIN detInputExp"
-            "    USING(det_id, iteration)"
-            " JOIN rawExp"
-            "    ON detInputExp.exp_id = rawExp.exp_id"
-            " JOIN rawImfile"
-            "    ON detInputExp.exp_id = rawImfile.exp_id"
-            " LEFT JOIN detProcessedImfile"
-            "   ON detInputExp.det_id = detProcessedImfile.det_id"
-            "   AND rawImfile.exp_id = detProcessedImfile.exp_id"
-            "   AND rawImfile.class_id = detProcessedImfile.class_id"
-            " WHERE"
-            "   detRun.state = 'run'"
-            "   AND detRun.mode = 'master'"
-            "   AND detProcessedImfile.det_id IS NULL"
-            "   AND detProcessedImfile.exp_id IS NULL"
-            "   AND detProcessedImfile.class_id IS NULL"
-        );
+    psString query = pxDataGet("dettool_toprocessedimfile.sql");
+    if (!query) {
+        psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");
+        return false;
+    }
 
     if (config->where) {
