X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Finventory_class.pm;h=3d7f0499db28bf7444bc8cb9789ab6293ef1aefc;hb=1d63fa587dad1f8dbd54ef576a10e5a209a6fa91;hp=04ee207d342f371ea3c2ee090083e72fbad92c7b;hpb=600a0939e7e7e589dae4f4f5bfef3650728940b7;p=freeside.git diff --git a/FS/FS/inventory_class.pm b/FS/FS/inventory_class.pm index 04ee207d3..3d7f0499d 100644 --- a/FS/FS/inventory_class.pm +++ b/FS/FS/inventory_class.pm @@ -120,11 +120,17 @@ sub num_avail { sub num_sql { my( $self, $sql ) = @_; - my $sql = "AND $sql" if length($sql); - my $statement = - "SELECT COUNT(*) FROM inventory_item WHERE classnum = ? $sql"; - my $sth = dbh->prepare($statement) or die dbh->errstr. " preparing $statement"; - $sth->execute($self->classnum) or die $sth->errstr. " executing $statement"; + $sql = "AND $sql" if length($sql); + + my $agentnums_sql = $FS::CurrentUser::CurrentUser->agentnums_sql( + 'null' => 1, + 'table' => 'inventory_item', + ); + + my $st = "SELECT COUNT(*) FROM inventory_item ". + " WHERE classnum = ? AND $agentnums_sql $sql"; + my $sth = dbh->prepare($st) or die dbh->errstr. " preparing $st"; + $sth->execute($self->classnum) or die $sth->errstr. " executing $st"; $sth->fetchrow_arrayref->[0]; }