diff options
author | Ivan Kohler <ivan@freeside.biz> | 2012-06-04 04:58:16 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2012-06-04 04:58:16 -0700 |
commit | 7a04769ed1ee654301b0ce01f1ccbc7aa77985cb (patch) | |
tree | e66b9e2174732d93716dc11210ddb1c3b209cc3b | |
parent | 77cb9bbd8481e2841034b6275907ec9740715e27 (diff) |
retry cards when change for batching, too< RT#17858
-rw-r--r-- | FS/FS/cust_main/Billing.pm | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm index 339fa448e..bc9b9387b 100644 --- a/FS/FS/cust_main/Billing.pm +++ b/FS/FS/cust_main/Billing.pm @@ -1539,17 +1539,23 @@ sub retry_realtime { cust_bill_batch ); - my $is_realtime_event = ' ( '. join(' OR ', map "part_event.action = '$_'", - @realtime_events - ). - ' ) '; + my $is_realtime_event = + ' part_event.action IN ( '. + join(',', map "'$_'", @realtime_events ). + ' ) '; + + my $batch_or_statustext = + "( part_event.action = 'cust_bill_batch' + OR ( statustext IS NOT NULL AND statustext != '' ) + )"; + my @cust_event = qsearch({ 'table' => 'cust_event', 'select' => 'cust_event.*', 'addl_from' => "LEFT JOIN part_event USING ( eventpart ) $join", 'hashref' => { 'status' => 'done' }, - 'extra_sql' => " AND statustext IS NOT NULL AND statustext != '' ". + 'extra_sql' => " AND $batch_or_statustext ". " AND $mine AND $is_realtime_event AND $agent_virt $order" # LIMIT 1" }); |