X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fgl.pl;h=a4ee01d3e3cdc030f1524e055aa33f5c528aa0c8;hb=d139dd31791627953f82749d02702bcb8308ebea;hp=d2e0f9cc32c946e2760c416bd630591d03cc7e6e;hpb=409d5d5fbf7020d69c7062cdde11040dc755ee38;p=kivitendo-erp.git diff --git a/bin/mozilla/gl.pl b/bin/mozilla/gl.pl index d2e0f9cc3..a4ee01d3e 100644 --- a/bin/mozilla/gl.pl +++ b/bin/mozilla/gl.pl @@ -218,7 +218,7 @@ sub search { $::form->get_lists( projects => { key => "ALL_PROJECTS", all => 1 }, ); - $::form->{ALL_EMPLOYEES} = SL::DB::Manager::Employee->get_all(query => [ deleted => 0 ]); + $::form->{ALL_EMPLOYEES} = SL::DB::Manager::Employee->get_all_sorted(query => [ deleted => 0 ]); $::form->header; print $::form->parse_html_template('gl/search', { @@ -683,17 +683,6 @@ sub display_rows { $charts{$item->{accno}} = $item; } - my %taxchart_labels = (); - my @taxchart_values = (); - my %taxcharts = (); - foreach my $item (@{ $form->{TAX_ACCOUNTS} }) { - my $key = $item->{id} . "--" . $item->{rate}; - $taxchart_init = $key if ($taxchart_init == $item->{id}); - push(@taxchart_values, $key); - $taxchart_labels{$key} = $item->{taxdescription} . " " . $item->{rate} * 100 . ' %'; - $taxcharts{$item->{id}} = $item; - } - my ($source, $memo, $source_hidden, $memo_hidden); for my $i (1 .. $form->{rowcount}) { if ($form->{show_details}) { @@ -717,6 +706,20 @@ sub display_rows { my ($selected_accno, $selected_tax_id) = split(/--/, $selected_accno_full); my ($previous_accno, $previous_tax_id) = split(/--/, $form->{"previous_accno_$i"}); + my %taxchart_labels = (); + my @taxchart_values = (); + my %taxcharts = (); + my $filter_accno; + $filter_accno = $::form->{ALL_CHARTS}[0]->{accno}; + $filter_accno = $selected_accno if (!$init and $i < $form->{rowcount}); + foreach my $item ( GL->get_tax_dropdown($filter_accno) ) { + my $key = $item->{id} . "--" . $item->{rate}; + $taxchart_init = $key if ($taxchart_init == $item->{id}); + push(@taxchart_values, $key); + $taxchart_labels{$key} = $item->{taxdescription} . " " . $item->{rate} * 100 . ' %'; + $taxcharts{$item->{id}} = $item; + } + if ($previous_accno && ($previous_accno eq $selected_accno) && ($previous_tax_id ne $selected_tax_id)) { @@ -740,11 +743,11 @@ sub display_rows { . qq||; my $tax_ddbox = qq|| . NTI($cgi->popup_menu('-name' => "taxchart_$i", - '-id' => "taxchart_$i", - '-style' => 'width:200px', - '-values' => \@taxchart_values, - '-labels' => \%taxchart_labels, - '-default' => $selected_taxchart)) + '-id' => "taxchart_$i", + '-style' => 'width:200px', + '-values' => \@taxchart_values, + '-labels' => \%taxchart_labels, + '-default' => $selected_taxchart)) . qq||; my ($fx_transaction, $checked); @@ -864,9 +867,6 @@ sub form_header { "charts" => { "key" => "ALL_CHARTS", "transdate" => $::form->{transdate} }); - $::form->{accno} = $::form->{ALL_CHARTS}[0]->{accno}; - GL->get_tax_dropdown(); - GL->get_chart_balances('charts' => $::form->{ALL_CHARTS}); my $title = $::form->{title}; @@ -1225,16 +1225,18 @@ sub continue { } sub get_tax_dropdown { + $main::lxdebug->enter_sub(); my $form = $main::form; - $main::lxdebug->enter_sub(); - GL->get_tax_dropdown(); + my @tax_accounts = GL->get_tax_dropdown($form->{accno}); - foreach my $item (@{ $form->{TAX_ACCOUNTS} }) { + foreach my $item (@tax_accounts) { $item->{taxdescription} = $::locale->{iconv_utf8}->convert($item->{taxdescription}); $item->{taxdescription} .= ' ' . $form->round_amount($item->{rate} * 100); } + $form->{TAX_ACCOUNTS} = [ @tax_accounts ]; + print $form->ajax_response_header, $form->parse_html_template("gl/update_tax_accounts"); $main::lxdebug->leave_sub();