X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FAM.pm;h=ed896e1ad9951c909fbe95f4712d85201f3c00b5;hb=abe89aaca4356b4860f4623410e70f50b3c4d631;hp=5764c6a3e329c118be330c49d7acc620d17d4934;hpb=5ea712a250510e49b93e8cc82b7426229bb890b6;p=kivitendo-erp.git diff --git a/SL/AM.pm b/SL/AM.pm index 5764c6a3e..ed896e1ad 100644 --- a/SL/AM.pm +++ b/SL/AM.pm @@ -45,6 +45,7 @@ use SL::DBUtils; use SL::DB::AuthUser; use SL::DB::Default; use SL::DB::Employee; +use SL::GenericTranslations; use strict; @@ -1119,16 +1120,14 @@ sub closebooks { my ($query, @values); - if ($form->{revtrans}) { - $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '1'|; + # is currently NEVER trueish (no more hidden revtrans in $form) + # if ($form->{revtrans}) { + # $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '1'|; + # -> therefore you can only set this to false (which is already the default) + # and this flag is currently only checked in gl.pl. TOOD Can probably be removed - } elsif ($form->{closedto}) { $query = qq|UPDATE defaults SET closedto = ?, max_future_booking_interval = ?, revtrans = '0'|; - @values = (conv_date($form->{closedto}), conv_date($form->{max_future_booking_interval})); - - } else { - $query = qq|UPDATE defaults SET closedto = NULL, revtrans = '0'|; - } + @values = (conv_date($form->{closedto}), conv_i($form->{max_future_booking_interval})); # set close in defaults do_query($form, $dbh, $query, @values); @@ -1642,7 +1641,7 @@ sub save_tax { $chart_categories .= 'E' if $form->{expense}; $chart_categories .= 'C' if $form->{costs}; - my @values = ($form->{taxkey}, $form->{taxdescription}, $form->{rate}, $form->{chart_id}, $form->{chart_id}, $chart_categories); + my @values = ($form->{taxkey}, $form->{taxdescription}, $form->{rate}, conv_i($form->{chart_id}), conv_i($form->{chart_id}), $chart_categories); if ($form->{id} ne "") { $query = qq|UPDATE tax SET taxkey = ?, @@ -1652,22 +1651,32 @@ sub save_tax { taxnumber = (SELECT accno FROM chart WHERE id= ? ), chart_categories = ? WHERE id = ?|; - push(@values, $form->{id}); } else { #ok + ($form->{id}) = selectfirst_array_query($form, $dbh, qq|SELECT nextval('id')|); $query = qq|INSERT INTO tax ( taxkey, taxdescription, rate, chart_id, taxnumber, - chart_categories + chart_categories, + id ) - VALUES (?, ?, ?, ?, (SELECT accno FROM chart WHERE id = ?), ? )|; + VALUES (?, ?, ?, ?, (SELECT accno FROM chart WHERE id = ?), ?, ?)|; } + push(@values, $form->{id}); do_query($form, $dbh, $query, @values); + foreach my $language_id (keys %{ $form->{translations} }) { + GenericTranslations->save('dbh' => $dbh, + 'translation_type' => 'SL::DB::Tax/taxdescription', + 'translation_id' => $form->{id}, + 'language_id' => $language_id, + 'translation' => $form->{translations}->{$language_id}); + } + $dbh->commit(); $main::lxdebug->leave_sub(); @@ -1900,15 +1909,14 @@ sub get_warehouse { map { $form->{$_} = $ref->{$_} } keys %{ $ref }; - $query = qq|SELECT b.*, EXISTS - (SELECT i.warehouse_id, p.warehouse_id - FROM inventory i, parts p - WHERE i.bin_id = b.id - OR p.bin_id = b.id - LIMIT 1) - AS in_use - FROM bin b - WHERE b.warehouse_id = ?|; + $query = <{BINS} = selectall_hashref_query($form, $dbh, $query, conv_i($form->{id}));