diff options
author | Jonathan Prykop <jonathan@freeside.biz> | 2015-07-31 18:21:14 -0500 |
---|---|---|
committer | Jonathan Prykop <jonathan@freeside.biz> | 2015-07-31 18:21:14 -0500 |
commit | 6650941e7d21dbe82d7fa0944ae9217edb8adf28 (patch) | |
tree | c871510c0f9a15448c19a86c39b1f20d5defd139 | |
parent | 41aef8bd93f7cc3a39056a8fd997d3072dfcdf8a (diff) |
RT#37465: RBC PAD error when calculating totals
-rw-r--r-- | FS/FS/pay_batch/RBC.pm | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/FS/FS/pay_batch/RBC.pm b/FS/FS/pay_batch/RBC.pm index 47fc8d49d..53f810852 100644 --- a/FS/FS/pay_batch/RBC.pm +++ b/FS/FS/pay_batch/RBC.pm @@ -90,7 +90,6 @@ $name = 'RBC'; my( $hash, $total, $line ) = @_; return "Can't process Credit Detail Record, aborting import" if ($hash->{'recordtype'} eq '2'); - $totaloffset = sprintf("%.2f", $totaloffset / 100 ); $total += $totaloffset; $total = sprintf("%.2f", $total); # We assume here that this is an 'All Records' or 'Input Records' report. @@ -109,10 +108,16 @@ $name = 'RBC'; #we already declined it this run, no takebacks if ($declined->{$hash->{'paybatchnum'}}) { #file counts this as part of total, but we skip - $totaloffset += $hash->{'paid'} + $totaloffset += sprintf("%.2f", $hash->{'paid'} / 100 ) if $hash->{'status'} eq ' '; #false laziness with 'approved' above return 1; } + #skipping W for now (maybe it should be declined?) + if ($hash->{'status'} eq 'W') { + #file counts this as part of total, but we skip + $totaloffset += sprintf("%.2f", $hash->{'paid'} / 100 ); + return 1; + } return ($hash->{'recordtype'} eq '3') || #Account Trailer Record, concludes returned items ($hash->{'subtype'} ne '0'); #error messages, etc, too late to apply to previous entry |