From 967813e1507fcf8da70d955b0129a8b92b696e20 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Mon, 15 May 2017 12:30:38 +0200 Subject: [PATCH] Finanzbuchhaltung: abweichend gesetzte Steuer respektieren MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Das Standardsteuerkonto wird inzwischen bereits vom Chart-Picker belegt. Wenn also die Benutzer*in sowohl Buchungskonto als auch die Steuer ändert, so sollte das Programm die Steuer nicht erneut setzen. --- bin/mozilla/ap.pl | 7 +++---- bin/mozilla/ar.pl | 5 ++--- bin/mozilla/gl.pl | 9 ++++----- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/bin/mozilla/ap.pl b/bin/mozilla/ap.pl index 802e52a33..82b8a508d 100644 --- a/bin/mozilla/ap.pl +++ b/bin/mozilla/ap.pl @@ -451,9 +451,8 @@ sub form_header { $form->{"tax_$i"} = $form->format_amount(\%myconfig, $form->{"tax_$i"}, 2); my ($default_taxchart, $taxchart_to_use); - my $amount_chart_id = $form->{"AP_amount_chart_id_$i"} || $default_ap_amount_chart_id; - my $chart_has_changed = $::form->{"previous_AP_amount_chart_id_$i"} && ($amount_chart_id != $::form->{"previous_AP_amount_chart_id_$i"}); - my @taxcharts = GL->get_active_taxes_for_chart($amount_chart_id, $transdate); + my $amount_chart_id = $form->{"AP_amount_chart_id_$i"} || $default_ap_amount_chart_id; + my @taxcharts = GL->get_active_taxes_for_chart($amount_chart_id, $transdate); foreach my $item (@taxcharts) { my $key = $item->id . "--" . $item->rate; @@ -462,7 +461,7 @@ sub form_header { $taxchart_to_use = $item if $key eq $form->{"taxchart_$i"}; } - $taxchart_to_use = $default_taxchart // $first_taxchart if $chart_has_changed || !$taxchart_to_use; + $taxchart_to_use //= $default_taxchart // $first_taxchart; my $selected_taxchart = $taxchart_to_use->id . '--' . $taxchart_to_use->rate; $form->{"selected_taxchart_$i"} = $selected_taxchart; $form->{"AP_amount_chart_id_$i"} = $amount_chart_id; diff --git a/bin/mozilla/ar.pl b/bin/mozilla/ar.pl index 0f020a3a0..7af34d8fb 100644 --- a/bin/mozilla/ar.pl +++ b/bin/mozilla/ar.pl @@ -407,8 +407,7 @@ sub form_header { }; my (%taxchart_labels, @taxchart_values, $default_taxchart, $taxchart_to_use); - my $amount_chart_id = $form->{"AR_amount_chart_id_$i"} // $default_ar_amount_chart_id; - my $chart_has_changed = $::form->{"previous_AR_amount_chart_id_$i"} && ($amount_chart_id != $::form->{"previous_AR_amount_chart_id_$i"}); + my $amount_chart_id = $form->{"AR_amount_chart_id_$i"} // $default_ar_amount_chart_id; foreach my $item ( GL->get_active_taxes_for_chart($amount_chart_id, $transdate) ) { my $key = $item->id . "--" . $item->rate; @@ -420,7 +419,7 @@ sub form_header { $taxchart_labels{$key} = $item->taxdescription . " " . $item->rate * 100 . ' %'; } - $taxchart_to_use = $default_taxchart // $first_taxchart if $chart_has_changed || !$taxchart_to_use; + $taxchart_to_use //= $default_taxchart // $first_taxchart; my $selected_taxchart = $taxchart_to_use->id . '--' . $taxchart_to_use->rate; $transaction->{selectAR_amount} = diff --git a/bin/mozilla/gl.pl b/bin/mozilla/gl.pl index 0838a367d..b625c868a 100644 --- a/bin/mozilla/gl.pl +++ b/bin/mozilla/gl.pl @@ -816,10 +816,9 @@ sub display_rows { my %taxchart_labels = (); my @taxchart_values = (); - my $accno_id = $::form->{"accno_id_$i"}; - my $chart = $charts_by_id{$accno_id} // $default_chart; - $accno_id = $chart->{id}; - my $chart_has_changed = $::form->{"previous_accno_id_$i"} && ($accno_id != $::form->{"previous_accno_id_$i"}); + my $accno_id = $::form->{"accno_id_$i"}; + my $chart = $charts_by_id{$accno_id} // $default_chart; + $accno_id = $chart->{id}; my ($first_taxchart, $default_taxchart, $taxchart_to_use); foreach my $item ( GL->get_active_taxes_for_chart($accno_id, $transdate) ) { @@ -832,7 +831,7 @@ sub display_rows { $taxchart_labels{$key} = $item->taxdescription . " " . $item->rate * 100 . ' %'; } - $taxchart_to_use = $default_taxchart // $first_taxchart if $chart_has_changed || !$taxchart_to_use; + $taxchart_to_use //= $default_taxchart // $first_taxchart; my $selected_taxchart = $taxchart_to_use->id . '--' . $taxchart_to_use->rate; my $accno = qq|| . -- 2.20.1