my $status = CGI::param('status') || '';
if ($status =~ /^(\w)$/) {
$ret{status} = $1;
- $limit .= "AND Job.JobStatus = '$1' ";
+ if ($1 eq 'f') {
+ $limit .= "AND Job.JobStatus IN ('f','E') ";
+ } else {
+ $limit .= "AND Job.JobStatus = '$1' ";
+ }
}
}
$update .= " Slot=0, ";
}
} else {
- $update = " Slot=0, InChanger=0, ";
+ $update .= " Slot=0, InChanger=0, ";
}
my $pool = CGI::param('pool') || '';
# TODO : afficher les tailles et les dates
my $query = "
-SELECT sum(subq.volmax) AS volmax,
- sum(subq.volnum) AS volnum,
- sum(subq.voltotal) AS voltotal,
+SELECT subq.volmax AS volmax,
+ subq.volnum AS volnum,
+ subq.voltotal AS voltotal,
Pool.Name AS name,
Pool.Recycle AS recycle,
Pool.VolRetention AS volretention,
WHERE Media.VolStatus = 'Full'
GROUP BY Media.MediaType
) AS media_avg_size ON (Media.MediaType = media_avg_size.MediaType)
- GROUP BY Media.MediaType, Media.PoolId
- ) AS subq
-LEFT JOIN Pool ON (Pool.PoolId = subq.PoolId)
-GROUP BY subq.PoolId
+ GROUP BY Media.MediaType, Media.PoolId, media_avg_size.volavg
+ ) AS subq
+LEFT JOIN Pool ON (Pool.PoolId = subq.PoolId)
";
my $all = $self->dbh_selectall_hashref($query, 'name') ;
foreach my $vol (values %$all) {
my $a = $self->ach_get($vol->{location});
- unless ($a) {
- $self->error("Can't find autochanger $vol->{location}");
- next;
- }
+ next unless ($a) ;
unless ($a->{have_status}) {
$a->status();