From 48214eb5dfdaf96e35a60959d9c227c699a2a3d3 Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 21 Jul 2009 07:03:11 +0000 Subject: [PATCH] yow. fix spurious charge errors w/single_price, round to four decimal places (wtf?) instead of 2, RT#5495 --- FS/FS/part_pkg/voip_cdr.pm | 8 +++++--- 1 file 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, -- 2.11.0