Revision affafa23
Von Niclas Zimmermann vor etwa 11 Jahren hinzugefügt
SL/GL.pm | ||
---|---|---|
}
|
||
|
||
sub get_tax_dropdown {
|
||
my ($self, $accno) = @_;
|
||
|
||
my $myconfig = \%main::myconfig;
|
||
my $form = $main::form;
|
||
|
||
my $dbh = $form->get_standard_dbh($myconfig);
|
||
|
||
my $query = qq|SELECT category FROM chart WHERE accno = ?|;
|
||
my ($category) = selectrow_query($form, $dbh, $query, $form->{accno});
|
||
my ($category) = selectrow_query($form, $dbh, $query, $accno);
|
||
|
||
$query = qq|SELECT * FROM tax WHERE chart_categories like '%$category%' order by taxkey, rate|;
|
||
|
||
my $sth = prepare_execute_query($form, $dbh, $query);
|
||
|
||
$form->{TAX_ACCOUNTS} = [];
|
||
my @tax_accounts = ();
|
||
while (my $ref = $sth->fetchrow_hashref("NAME_lc")) {
|
||
push(@{ $form->{TAX_ACCOUNTS} }, $ref);
|
||
push(@tax_accounts, $ref);
|
||
}
|
||
|
||
return @tax_accounts;
|
||
}
|
||
|
||
1;
|
bin/mozilla/gl.pl | ||
---|---|---|
$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}) {
|
||
... | ... | |
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)) {
|
||
... | ... | |
"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};
|
||
... | ... | |
}
|
||
|
||
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();
|
Auch abrufbar als: Unified diff
Behebt Bug bei Steuerfilterung in Dialogbuchungen
Bisher kam es zu einem Fehler, wenn in Dialogbuchungen auf 'Erneuern'
geklickt hat (der Filter für die Steuerkonten wurde für das erste
Konto in der Liste aller Konten gesetzt statt dem ausgewählten).