Index: trunk/ippTasks/detrend.reject.pro
===================================================================
--- trunk/ippTasks/detrend.reject.pro	(revision 16173)
+++ trunk/ippTasks/detrend.reject.pro	(revision 16195)
@@ -122,5 +122,5 @@
     book getword detRejectExp $pageName mode      -var MODE     
     book getword detRejectExp $pageName camera    -var CAMERA   
-    book getword detRejectExp $pageName workdir   -var WORKDIR
+    book getword detRejectExp $pageName workdir   -var WORKDIR_TEMPLATE
     book getword detRejectExp $pageName dbname    -var DBNAME
 
@@ -128,19 +128,18 @@
     set.host.for.camera $camera FPA
 
-    if ("$WORKDIR" == "NULL")
-      $outroot = `pwd`
-    else
-      $outroot = `ipp_datapath.pl $WORKDIR`
-    end
-    sprintf outroot "%s/%s.%s.%s" $outroot $CAMERA $DET_TYPE $DET_ID
-    sprintf logfile "%s/%s.%s.%s.%s.detreject.log" $outroot $CAMERA $DET_TYPE $DET_ID $ITERATION
+    # set workdir (interpolate host; see camera.pro for examples)
+    set.workdir.by.camera $CAMERA FPA $WORKDIR_TEMPLATE $default_host WORKDIR
+
+    ## generate outroot specific to this exposure (& chip)
+    sprintf outroot "%s/%s.%s.%s/%s/%s.detreject.%s.%s" $WORKDIR $CAMERA $DET_TYPE $DET_ID $EXP_TAG $EXP_TAG $DET_ID $ITERATION
+
+    ## generate output log based on filerule (convert the URI to a PATH)
+    $logfile = $outroot.log
+    $logfile = `ipp_datapath.pl $logfile`
+
     stdout $logfile
     stderr $logfile
-    exec mkdir -p $outroot
 
-    $run = detrend_reject_exp.pl --det_id $DET_ID --iteration $ITERATION --det_type $DET_TYPE --camera $CAMERA
-    if ("$WORKDIR" != "NULL")
-      $run = $run --workdir $WORKDIR
-    end
+    $run = detrend_reject_exp.pl --det_id $DET_ID --iteration $ITERATION --det_type $DET_TYPE --camera $CAMERA --outroot $outroot
     add_standard_args run
 
