X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Frp.pl;h=b7adc2176d5dc058d5e684e2c10a6d08c94b00d9;hb=24b6b41bbc19de53e40315124350df14314c6fd6;hp=663a20ebc4b4a5dfc24db9d5954e83327e4ab5e7;hpb=8b2aefcdef74d2fc9fb292c38fe64fa246913565;p=kivitendo-erp.git diff --git a/bin/mozilla/rp.pl b/bin/mozilla/rp.pl index 663a20ebc..b7adc2176 100644 --- a/bin/mozilla/rp.pl +++ b/bin/mozilla/rp.pl @@ -107,10 +107,6 @@ my $rp_access_map = { 'balance_sheet' => 'report', }; -# subs use these pretty freely, so declare them here -our (%column_data, @column_index); -our ($subtotalnetamount, $subtotaltax, $subtotal); - sub check_rp_access { my $form = $main::form; @@ -2115,19 +2111,19 @@ sub generate_tax_report { my $descvar = "$form->{accno}_description"; my $description = $form->escape($form->{$descvar}); my $ratevar = "$form->{accno}_rate"; - our $taxrate; # most likely error + my ($subtotalnetamount, $subtotaltax, $subtotal) = (0, 0, 0); my $department = $form->escape($form->{department}); # construct href my $href = - "$form->{script}?&action=generate_tax_report&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}"; + "$form->{script}?&action=generate_tax_report&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&report=$form->{report}"; # construct callback $description = $form->escape($form->{$descvar}, 1); $department = $form->escape($form->{department}, 1); my $callback = - "$form->{script}?&action=generate_tax_report&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}"; + "$form->{script}?&action=generate_tax_report&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&accno=$form->{accno}&$descvar=$description&department=$department&report=$form->{report}"; my $title = $form->escape($form->{title}); $href .= "&title=$title"; @@ -2138,6 +2134,7 @@ sub generate_tax_report { my @columns = $form->sort_columns(qw(id transdate invnumber name netamount tax amount)); + my @column_index; foreach my $item (@columns) { if ($form->{"l_$item"} eq "Y") { @@ -2242,7 +2239,7 @@ sub generate_tax_report { if ($form->{l_subtotal} eq 'Y') { if ($sameitem ne $ref->{ $form->{sort} }) { - &tax_subtotal; + tax_subtotal(\@column_index, \$subtotalnetamount, \$subtotaltax, \$subtotal); $sameitem = $ref->{ $form->{sort} }; } } @@ -2258,6 +2255,7 @@ sub generate_tax_report { $ref->{$_} = $form->format_amount(\%myconfig, $ref->{$_}, 2, " "); } qw(netamount tax amount); + my %column_data; $column_data{id} = qq|$ref->{id}|; $column_data{invnumber} = qq|{id}&callback=$callback>$ref->{invnumber}|; @@ -2282,9 +2280,10 @@ sub generate_tax_report { } if ($form->{l_subtotal} eq 'Y') { - &tax_subtotal; + tax_subtotal(\@column_index, \$subtotalnetamount, \$subtotaltax, \$subtotal); } + my %column_data; map { $column_data{$_} = qq| | } @column_index; print qq| @@ -2322,27 +2321,30 @@ sub generate_tax_report { sub tax_subtotal { $main::lxdebug->enter_sub(); + my ($column_index, $subtotalnetamount, $subtotaltax, $subtotal) = @_; + my $form = $main::form; my %myconfig = %main::myconfig; my $locale = $main::locale; - map { $column_data{$_} = " " } @column_index; + my %column_data; + map { $column_data{$_} = " " } @{ $column_index }; - $subtotalnetamount = $form->format_amount(\%myconfig, $subtotalnetamount, 2, " "); - $subtotaltax = $form->format_amount(\%myconfig, $subtotaltax, 2, " "); - $subtotal = $form->format_amount(\%myconfig, $subtotalnetamount + $subtotaltax, 2, " "); + $$subtotalnetamount = $form->format_amount(\%myconfig, $$subtotalnetamount, 2, " "); + $$subtotaltax = $form->format_amount(\%myconfig, $$subtotaltax, 2, " "); + $$subtotal = $form->format_amount(\%myconfig, $$subtotalnetamount + $$subtotaltax, 2, " "); - $column_data{netamount} = "$subtotalnetamount"; - $column_data{tax} = "$subtotaltax"; - $column_data{amount} = "$subtotal"; + $column_data{netamount} = "$$subtotalnetamount"; + $column_data{tax} = "$$subtotaltax"; + $column_data{amount} = "$$subtotal"; - $subtotalnetamount = 0; - $subtotaltax = 0; + $$subtotalnetamount = 0; + $$subtotaltax = 0; print qq| |; - map { print "\n$column_data{$_}" } @column_index; + map { print "\n$column_data{$_}" } @{ $column_index }; print qq|