Index: /trunk/ippScripts/scripts/night_report.pl
===================================================================
--- /trunk/ippScripts/scripts/night_report.pl	(revision 40875)
+++ /trunk/ippScripts/scripts/night_report.pl	(revision 40876)
@@ -433,4 +433,7 @@
     print " * $diffExpect diffRuns expected *\n";
     if ($verbose) { print "\n"; }
+
+
+
 }
 
@@ -520,4 +523,84 @@
     if ($diffDone != $diffExpect) { 
 	print "*** WARNING: Expect $diffExpect diffRuns, complete $diffDone diffRuns: inconsistent ***\n"; 
+
+        if ($verbose) { 
+	   print "Published diffs split by Nvisit :\n"; 
+           printf "%8s %10s\n", "Nvisit", "N_pubdiff";
+
+           my $query = "SELECT Nvisit, SUM(Ndiffs) FROM ";
+           $query .= " (SELECT object, filter, chunk, count(*) as Nvisit,count(DISTINCT diff_id) as Ndiffs FROM";
+           $query .= "  (SELECT expall.object, expall.filter, expall.chunk as chunk, expall.exp_name,exppub.diff_id from";
+           $query .= "  (";
+           $query .= "    SELECT object, filter,exp_name, substr(comment, 1, position(' ' in comment)) as chunk, dateobs, warp_id";
+           $query .= "    FROM rawExp";
+           $query .= "    JOIN chipRun using (exp_id)";
+           $query .= "    JOIN camRun using (chip_id)";
+           $query .= "    JOIN camProcessedExp using (cam_id)";
+           $query .= "    JOIN fakeRun using (cam_id)";
+           $query .= "    JOIN warpRun using (fake_id)";
+           $query .= "    WHERE dateobs like '$date%'";
+           $query .= "    AND exp_id > $refExpID"; 
+           $query .= "    AND (camProcessedExp.quality = 0)";
+           $query .= "    AND (comment NOT LIKE '%twilight%')";
+           $query .= "  ) AS expall";
+           $query .= "  JOIN";
+           $query .= "  (SELECT * FROM (";
+           $query .= "  (SELECT exp_name, warpRun.warp_id, diffRun.diff_id, publishRun.state as pubstate FROM";
+           $query .= "    diffRun JOIN diffInputSkyfile USING (diff_id) JOIN publishRun ON (diff_id = stage_id)";
+           $query .= "    JOIN warpRun ON (warp1=warp_id) JOIN fakeRun USING (fake_id) JOIN camRun USING (cam_id)";
+           $query .= "    JOIN camProcessedExp USING (cam_id) JOIN chipRun USING (chip_id) JOIN rawExp USING (exp_id)";
+           $query .= "    WHERE rawExp.dateobs like '$date%' AND diffRun.label NOT LIKE '%WS.nigh%' AND diffRun.label NOT LIKE 'goto_cleaned'";
+           $query .= "    AND stack2 IS NULL AND diffRun.data_group LIKE '%.$dataGroupDate')";
+           $query .= "  UNION";
+           $query .= "  (SELECT exp_name, warpRun.warp_id, diffRun.diff_id, publishRun.state as pubstate FROM";
+           $query .= "    diffRun JOIN diffInputSkyfile USING (diff_id) JOIN publishRun ON (diff_id = stage_id)";
+           $query .= "    JOIN warpRun ON (warp2=warp_id) JOIN fakeRun USING (fake_id) JOIN camRun USING (cam_id)";
+           $query .= "    JOIN camProcessedExp USING (cam_id) JOIN chipRun USING (chip_id) JOIN rawExp USING (exp_id)";
+           $query .= "    WHERE rawExp.dateobs like '$date%' AND diffRun.label NOT LIKE '%WS.nigh%' AND diffRun.label NOT LIKE 'goto_cleaned'";
+           $query .= "    AND stack2 IS NULL AND diffRun.data_group LIKE '%.$dataGroupDate')";
+           $query .= "  ) AS diffgather";
+           $query .= "  GROUP BY diffgather.exp_name)";
+           $query .= "  AS exppub"; 
+           $query .= " ON expall.exp_name = exppub.exp_name";
+           $query .= " ) AS pubdiffgather GROUP BY object, filter, chunk";
+           $query .= " ) AS tableVisits GROUP BY Nvisit";
+
+           my $result = &mysql_select ($query);
+           while (@row = $result->fetchrow_array()) {
+         	printf "%8s %10s\n", $row[0], $row[1]; 
+           }
+
+           #-------------------------------------------------------------
+           print "\n"; 
+	   print "Listing objects with 1< Nvisits < 4:\n"; 
+           printf "| %8s | %8s | %17s | %8s |\n", "object", "filter", "chunk", "Nvisit";
+
+           my $query = "SELECT * FROM";
+           $query .= " (";
+           $query .= "   SELECT object, filter, chunk, count(*) as Nvisit FROM";
+           $query .= "   (";
+           $query .= "     SELECT object, filter, substr(comment, 1, position(' ' in comment)) as chunk";
+           $query .= "     FROM rawExp";
+           $query .= "     LEFT JOIN chipRun using (exp_id)";
+           $query .= "     LEFT JOIN camRun using (chip_id)";
+           $query .= "     LEFT JOIN camProcessedExp using (cam_id)";
+           $query .= "     WHERE dateobs LIKE '$date%'";
+           $query .= "     AND exp_id > $refExpID"; #REF
+           $query .= "     AND exp_type = 'OBJECT'";
+           $query .= "     AND obs_mode NOT LIKE 'ENGINEERING'";
+           $query .= "     AND (obs_mode LIKE '%SS%' OR obs_mode LIKE '%BRIGHT%')";
+           $query .= "     AND rawExp.comment like '%visit%'";
+           $query .= "     AND (camProcessedExp.quality IS NULL or camProcessedExp.quality = 0)";
+           $query .= "     GROUP BY comment, filter, substr(comment, 1, position(' ' in comment))";
+           $query .= "   ) AS tableChunks GROUP BY object, filter, chunk";
+           $query .= " ) AS tableVisits WHERE Nvisit > 1 AND Nvisit < 4 ORDER BY Nvisit ";
+           my $result = &mysql_select ($query);
+
+           while (@row = $result->fetchrow_array()) {
+         	printf "| %8s | %8s | %17s | %8s |\n", $row[0], $row[1], $row[2], $row[3]; 
+           }
+           print "\n"; 
+        }
+
     } else {
 	if (not $report) { print " * $diffDone of $diffExpect diffRuns completed *\n";  }
