Performance improvement on count location data.
authorJason Terry <jterry@jterry-mac.local>
Thu, 1 May 2014 20:41:02 +0000 (14:41 -0600)
committerJason Terry <jterry@jterry-mac.local>
Thu, 1 May 2014 20:41:02 +0000 (14:41 -0600)
FS/FS/Schema.pm
FS/FS/cust_location.pm

index ae43b60..94d7f36 100644 (file)
@@ -1617,6 +1617,8 @@ sub tables_hashref {
                           [ 'referral_custnum' ],
                           [ 'payby' ], [ 'paydate' ],
                           [ 'archived' ],
+                          [ 'ship_locationnum' ],
+                          [ 'bill_locationnum' ],
                         ],
       'foreign_keys' => [
                           { columns    => [ 'agentnum' ],
index 70ccbfd..309ab06 100644 (file)
@@ -438,8 +438,8 @@ sub disable_if_unused {
 
   my $self = shift;
   my $locationnum = $self->locationnum;
-  return '' if FS::cust_main->count('bill_locationnum = '.$locationnum)
-            or FS::cust_main->count('ship_locationnum = '.$locationnum)
+  return '' if FS::cust_main->count('bill_locationnum = '.$locationnum.' OR
+                                     ship_locationnum = '.$locationnum)
             or FS::contact->count(      'locationnum  = '.$locationnum)
             or FS::cust_pkg->count('cancel IS NULL AND 
                                          locationnum  = '.$locationnum)