Index: trunk/ippTasks/summit.copy.pro
===================================================================
--- trunk/ippTasks/summit.copy.pro	(revision 16643)
+++ trunk/ippTasks/summit.copy.pro	(revision 17345)
@@ -70,7 +70,11 @@
 end
 
+# these variables will cycle through the known database names
+$pztoolDatastore_DB = 0
+$pztoolPendingExp_DB = 0
+$pztoolPendingImfile_DB = 0
+
 # build a book of datastores to poll for data
 task pztool.datastore
-    command      pztool -datastore
     host         local
 
@@ -83,4 +87,17 @@
     # trange       00:00 04:00
 
+    task.exec
+      if ($DB:n == 0)
+        option DEFAULT
+        command pztool -datastore
+      else
+        # save the DB name for the exit tasks
+        option $DB:$pztoolDatastore_DB
+        command pztool -datastore -dbname $DB:$pztoolDatastore_DB
+        $pztoolDatastore_DB ++
+        if ($pztoolDatastore_DB >= $DB:n) set pztoolDatastore_DB = 0
+      end
+    end
+
     # success
     task.exit 0
@@ -88,5 +105,5 @@
         book init pzDataStore
         # convert 'stdout' to book format
-        ipptool2book stdout pzDataStore -key camera:telescope -uniq
+        ipptool2book stdout pzDataStore -key camera:telescope -uniq -setword dbname $options:0
     end
 
@@ -126,12 +143,13 @@
         end
 
-        book getword pzDataStore $pageName camera -var CAMERA
+        book getword pzDataStore $pageName camera    -var CAMERA
         book getword pzDataStore $pageName telescope -var TELESCOPE
-        book getword pzDataStore $pageName uri -var URI
+        book getword pzDataStore $pageName uri       -var URI
+        book getword pzDataStore $pageName dbname    -var DBNAME
 
         # store the current page
         options $pageName
 
-        $run = pzgetexp -uri $URI -inst $CAMERA -telescope $TELESCOPE
+        $run = pzgetexp -uri $URI -inst $CAMERA -telescope $TELESCOPE -dbname $DBNAME
 
         # create the command line
@@ -156,5 +174,4 @@
 # build a book of exps/filesetids that need to be queried
 task pztool.pendingexp
-    command      pztool -pendingexp -limit 5
     host         local
 
@@ -162,14 +179,25 @@
     periods      -poll     1
     periods      -timeout  20
-    # trage       16:00 23:59
-    # trage       00:00 04:00
+    # trange       16:00 23:59
+    # trange       00:00 04:00
     npending     1
+
+    task.exec
+      if ($DB:n == 0)
+        option DEFAULT
+        command pztool -pendingexp -limit 5
+      else
+        # save the DB name for the exit tasks
+        option $DB:$pztoolPendingExp_DB
+        command pztool -pendingexp -limit 5 -dbname $DB:$pztoolPendingExt_DB
+        $pztoolPendingExp_DB ++
+        if ($pztoolPendingExp_DB >= $DB:n) set pztoolPendingExp_DB = 0
+      end
+    end
 
     # success
     task.exit 0
         # convert 'stdout' to book format
-# XXX we probably want the database to be user-defined...
-#       ipptool2book stdout pzPendingExp -key exp_name:camera:telescope -uniq -setword dbname $options:0 -setword pantaskState INIT
-        ipptool2book stdout pzPendingExp -key exp_name:camera:telescope -uniq -setword pantaskState INIT
+        ipptool2book stdout pzPendingExp -key exp_name:camera:telescope -uniq -setword dbname $options:0 -setword pantaskState INIT
 
         # delete existing entries in the appropriate pantaskStates
@@ -216,11 +244,12 @@
         book setword pzPendingExp $pageName pantaskState RUN
 
-        book getword pzPendingExp $pageName exp_name -var EXP_NAME
-        book getword pzPendingExp $pageName camera -var CAMERA
+        book getword pzPendingExp $pageName exp_name  -var EXP_NAME
+        book getword pzPendingExp $pageName camera    -var CAMERA
         book getword pzPendingExp $pageName telescope -var TELESCOPE
-        book getword pzPendingExp $pageName dateobs -var DATEOBS
-        book getword pzPendingExp $pageName exp_type -var EXP_TYPE
-        book getword pzPendingExp $pageName uri -var URI
-        book getword pzPendingExp $pageName imfiles -var IMFILES
+        book getword pzPendingExp $pageName dateobs   -var DATEOBS
+        book getword pzPendingExp $pageName exp_type  -var EXP_TYPE
+        book getword pzPendingExp $pageName uri       -var URI
+        book getword pzPendingExp $pageName imfiles   -var IMFILES
+        book getword pzPendingExp $pageName dbname    -var DBNAME
 
         # store the current page
@@ -228,5 +257,5 @@
 
         $batman = $EXP_NAME
-        $run = pzgetimfiles -uri $URI -filesetid $batman -inst $CAMERA -telescope $TELESCOPE
+        $run = pzgetimfiles -uri $URI -filesetid $batman -inst $CAMERA -telescope $TELESCOPE -dbname $DBNAME
 
         # create the command line
@@ -256,5 +285,4 @@
 # build a book of imfiles/files that need to be downloaded
 task pztool.pendingimfile
-    command      pztool -pendingimfile -limit 40
     host         local
 
@@ -266,9 +294,23 @@
     npending     1
 
+    # select entries from the current DB; cycle to the next DB, if it exists
+    # iff the DB list is not set, use the value defined in .ipprc
+    task.exec
+      if ($DB:n == 0)
+        option DEFAULT
+        command pztool -pendingimfile -limit 40
+      else
+        # save the DB name for the exit tasks
+        option $DB:$pztoolPendingImfile_DB
+        command pztool -pendingimfile -limit 40 -dbname $DB:$pztoolPendingImfile_DB
+        $pztoolPendingImfile_DB ++
+        if ($pztoolPendingImfile_DB >= $DB:n) set pztoolPendingImfile_DB = 0
+      end
+    end
+  
     # success
     task.exit    0
         # convert 'stdout' to book format
-#       ipptool2book stdout pzPendingImfile -key exp_name:camera:telescope:class:class_id -uniq -setword dbname $options:0 -setword pantaskState INIT
-        ipptool2book stdout pzPendingImfile -key exp_name:camera:telescope:class:class_id -uniq -setword pantaskState INIT
+        ipptool2book stdout pzPendingImfile -key exp_name:camera:telescope:class:class_id -uniq -setword dbname $options:0 -setword pantaskState INIT
 	book shuffle pzPendingImfile 
 
@@ -284,5 +326,4 @@
     end
 end
-
 
 # retreive an imfile with dsget and then call pztool -copydone
@@ -321,4 +362,5 @@
         book getword pzPendingImfile $pageName class     -var CLASS
         book getword pzPendingImfile $pageName class_id  -var CLASS_ID
+        book getword pzPendingImfile $pageName dbname    -var DBNAME
 
         set.host.for.camera $CAMERA $CLASS_ID
@@ -349,5 +391,5 @@
         book setword pzPendingImfile $pageName filename $FILENAME
 
-        $run = summit_copy.pl --uri $URI --filename $FILENAME --exp_name $EXP_NAME --inst $CAMERA --telescope $TELESCOPE --class $CLASS --class_id $CLASS_ID --end_stage reg --workdir $workdir
+        $run = summit_copy.pl --uri $URI --filename $FILENAME --exp_name $EXP_NAME --inst $CAMERA --telescope $TELESCOPE --class $CLASS --class_id $CLASS_ID --end_stage reg --workdir $workdir --dbname $DBNAME
 	if ($COMPRESS) 
             $run = $run --compress
