summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2012-06-21 22:14:14 -0700
committerIvan Kohler <ivan@freeside.biz>2012-06-21 22:14:14 -0700
commit3d15558284480e5c0cd9dc713de880e6099bf5fd (patch)
tree5b6219ff13d2c0f06584b3c238ac3ba2ca10bd50
parent977bf74053199c902011851d72260c44694a2793 (diff)
freeside-daily optimization
-rw-r--r--FS/FS/Cron/bill.pm6
1 files changed, 3 insertions, 3 deletions
diff --git a/FS/FS/Cron/bill.pm b/FS/FS/Cron/bill.pm
index cb617a05e..bdf7e7827 100644
--- a/FS/FS/Cron/bill.pm
+++ b/FS/FS/Cron/bill.pm
@@ -191,15 +191,15 @@ sub bill_where {
# select * from cust_main where
my $where_pkg = <<"END";
EXISTS(
- SELECT 1 FROM cust_pkg
+ SELECT 1 FROM cust_pkg LEFT JOIN part_pkg USING ( pkgpart )
WHERE cust_main.custnum = cust_pkg.custnum
AND ( cancel IS NULL OR cancel = 0 )
- AND ( ( ( setup IS NULL OR setup = 0 )
+ AND ( ( ( cust_pkg.setup IS NULL OR cust_pkg.setup = 0 )
AND ( start_date IS NULL OR start_date = 0
OR ( start_date IS NOT NULL AND start_date <= $^T )
)
)
- OR bill IS NULL OR bill <= $billtime
+ OR ( freq != '0' AND ( bill IS NULL OR bill <= $billtime ) )
OR ( expire IS NOT NULL AND expire <= $^T )
OR ( adjourn IS NOT NULL AND adjourn <= $^T )
OR ( resume IS NOT NULL AND resume <= $^T )