diff options
author | ivan <ivan> | 2009-07-21 07:03:11 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-07-21 07:03:11 +0000 |
commit | 48214eb5dfdaf96e35a60959d9c227c699a2a3d3 (patch) | |
tree | 65df6110f3a5089807f90a9dd9221b3bdde7575e | |
parent | 8de398042315381f8db2a62475e95d391ca0a24f (diff) |
yow. fix spurious charge errors w/single_price, round to four decimal places (wtf?) instead of 2, RT#5495
-rw-r--r-- | FS/FS/part_pkg/voip_cdr.pm | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/FS/FS/part_pkg/voip_cdr.pm b/FS/FS/part_pkg/voip_cdr.pm index 11ff76be4..4f05963ef 100644 --- a/FS/FS/part_pkg/voip_cdr.pm +++ b/FS/FS/part_pkg/voip_cdr.pm @@ -475,10 +475,12 @@ sub calc_usage { my $minutes = sprintf("%.1f", $seconds / 60); $minutes =~ s/\.0$// ;# if $granularity == 60; - $charge = sprintf('%.2f', ( $self->option('min_charge') * $minutes ) - + 0.00000001 ); #so 1.005 rounds to 1.01 + # XXX config? + #$charge = sprintf('%.2f', ( $self->option('min_charge') * $minutes ) + #+ 0.00000001 ); #so 1.005 rounds to 1.01 + $charge = sprintf('%.4f', ( $self->option('min_charge') * $minutes ) + + 0.0000000001 ); #so 1.00005 rounds to 1.0001 - $charge = $charges += $charge; @call_details = ($cdr->downstream_csv( 'format' => $output_format, |