".$key."
\n";
$sql = "SELECT SUBSTRING(username,1,3) AS institution, COUNT(jobid) AS jobcount, SUM(nproc*TIME_TO_SEC(walltime))/3600.0 AS cpuhours, COUNT(DISTINCT(username)) AS users, COUNT(DISTINCT(groupname)) AS groups FROM Jobs WHERE system LIKE '".$_POST['system']."' AND ( username IS NOT NULL AND username REGEXP '[A-z]{3,4}[0-9]{3,4}' AND username NOT LIKE 'osc%' AND username NOT LIKE 'wrk%' ) AND ( ";
if ( isset($pkgmatch[$key]) )
{
$sql .= $pkgmatch[$key];
}
else
{
$sql .= "script LIKE '%".$key."%' OR software LIKE '%".$key."%'";
}
$sql .= " ) AND ( ".dateselect("start",$_POST['start_date'],$_POST['end_date'])." ) GROUP BY institution UNION SELECT 'osc' AS institution, COUNT(jobid) AS jobcount, SUM(nproc*TIME_TO_SEC(walltime))/3600.0 AS cpuhours, COUNT(DISTINCT(username)) AS users, COUNT(DISTINCT(groupname)) AS groups FROM Jobs WHERE system LIKE '".$_POST['system']."' AND ( username IS NOT NULL AND (username NOT REGEXP '[A-z]{3,4}[0-9]{3,4}' OR username LIKE 'osc%' OR username LIKE 'wrk%') ) AND ( ";
if ( isset($pkgmatch[$key]) )
{
$sql .= $pkgmatch[$key];
}
else
{
$sql .= "script LIKE '%".$key."%' OR software LIKE '%".$key."%'";
}
$sql .= " ) AND ( ".dateselect("start",$_POST['start_date'],$_POST['end_date'])." ) ORDER BY ".$_POST['order']." DESC";
#echo "".htmlspecialchars($sql)."
";
$result = db_query($db,$sql);
echo "\n";
echo "groupname | jobcount | cpuhours | users | groups |
\n";
while ($result->fetchInto($row))
{
$rkeys=array_keys($row);
echo "";
foreach ($rkeys as $rkey)
{
$data[$rkey]=array_shift($row);
echo "".$data[$rkey]." | ";
}
echo "
\n";
ob_flush();
flush();
}
$sql = "SELECT 'TOTAL:',COUNT(jobid) AS jobcount, SUM(nproc*TIME_TO_SEC(walltime))/3600.0 AS cpuhours, COUNT(DISTINCT(username)) AS users, COUNT(DISTINCT(groupname)) AS groups FROM Jobs WHERE system LIKE '".$_POST['system']."' AND username IS NOT NULL AND ( ";
if ( isset($pkgmatch[$key]) )
{
$sql .= $pkgmatch[$key];
}
else
{
$sql .= "script LIKE '%".$key."%' OR software LIKE '%".$key."%'";
}
$sql .= " ) AND ( ".dateselect("start",$_POST['start_date'],$_POST['end_date'])." )";
$result = db_query($db,$sql);
while ($result->fetchInto($row))
{
$rkeys=array_keys($row);
echo "";
foreach ($rkeys as $rkey)
{
$data[$rkey]=array_shift($row);
echo "".$data[$rkey]." | ";
}
echo "
\n";
}
echo "
\n";
}
}
db_disconnect($db);
bookmarkable_url();
}
else
{
begin_form("software-usage-by-institution.php");
system_chooser();
date_fields();
$orders=array("jobcount","cpuhours","users","groups");
$defaultorder="cpuhours";
pulldown("order","Order by",$orders,$defaultorder);
checkboxes_from_array("Packages",$packages);
end_form();
}
page_footer();
?>