X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fsvc_Common.pm;h=71290f4411578f3c177c38ecddbe666c50bef33f;hp=fd2745dacf0108b93bf0c1b6850a48d7f1042795;hb=276c1e6f4efb7ba5568bee9189298bc1a757d34d;hpb=f1cd7f98b487e74aa60b6c41d3377cc60f7ac25a diff --git a/FS/FS/svc_Common.pm b/FS/FS/svc_Common.pm index fd2745dac..71290f441 100644 --- a/FS/FS/svc_Common.pm +++ b/FS/FS/svc_Common.pm @@ -735,10 +735,17 @@ sub set_auto_inventory { $hash{'item'} = $self->getfield($field); } + my $agentnums_sql = $FS::CurrentUser::CurrentUser->agentnums_sql( + 'null' => 1, + 'table' => 'inventory_item', + ); + my $inventory_item = qsearchs({ 'table' => 'inventory_item', 'hashref' => \%hash, - 'extra_sql' => 'LIMIT 1 FOR UPDATE', + 'extra_sql' => "AND $agentnums_sql", + 'order_by' => 'ORDER BY ( agentnum IS NULL ) '. #agent inventory first + ' LIMIT 1 FOR UPDATE', }); unless ( $inventory_item ) {