X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fcust_main.pm;h=06dcd0ccfeeb2696a44b1545d043a2a709da9d2b;hp=a2eb72473f348e41bdac61e96bc8f5ab3321ce3a;hb=d453a487d95258e1f11f134fc5864f7e6458a6ef;hpb=7bdf17a005cf4c0fe8b6b6ad1ce97abaa52a4510 diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm index a2eb72473..06dcd0ccf 100644 --- a/FS/FS/cust_main.pm +++ b/FS/FS/cust_main.pm @@ -3711,6 +3711,27 @@ sub cancel_sql { " ) "; } +=item uncancel_sql +=item uncancelled_sql + +Returns an SQL expression identifying un-cancelled cust_main records. + +=cut + +sub uncancelled_sql { uncancel_sql(@_); } +sub uncancel_sql { " + ( 0 < ( SELECT COUNT(*) FROM cust_pkg + WHERE cust_pkg.custnum = cust_main.custnum + AND ( cust_pkg.cancel IS NULL + OR cust_pkg.cancel = 0 + ) + ) + OR 0 = ( SELECT COUNT(*) FROM cust_pkg + WHERE cust_pkg.custnum = cust_main.custnum + ) + ) +"; } + =item fuzzy_search FUZZY_HASHREF [ HASHREF, SELECT, EXTRA_SQL, CACHE_OBJ ] Performs a fuzzy (approximate) search and returns the matching FS::cust_main @@ -3860,6 +3881,7 @@ sub rebuild_fuzzyfiles { use Fcntl qw(:flock); my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc; + mkdir $dir, 0700 unless -d $dir; #last