X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FAM.pm;h=c7a88d2df81c26044b7fe66f1e93624e65c16711;hb=25ad1535122a8cd3bab24b0b71bd9bf887c40641;hp=67c3c2060e2fa7f0922768b49158dbc5891b1af4;hpb=e293009f4e1d70e547a479e956fd1733c24b1441;p=kivitendo-erp.git diff --git a/SL/AM.pm b/SL/AM.pm index 67c3c2060..c7a88d2df 100644 --- a/SL/AM.pm +++ b/SL/AM.pm @@ -243,6 +243,25 @@ sub save_account { $form->{id} = ""; } + $query = ' + SELECT accno + FROM chart + WHERE accno = ?'; + + my @values = ($form->{accno}); + + if ( $form->{id} ) { + $query .= ' AND NOT id = ?'; + push(@values, $form->{id}); + } + + my ($accno) = selectrow_query($form, $dbh, $query, @values); + + if ($accno) { + $form->error($::locale->text('Account number not unique!')); + } + + if (!$form->{id} || $form->{id} eq "") { $query = qq|SELECT nextval('id')|; ($form->{"id"}) = selectrow_query($form, $dbh, $query); @@ -250,7 +269,7 @@ sub save_account { do_query($form, $dbh, $query, $form->{"id"}, $form->{"accno"}); } - my @values; + @values = (); if ($form->{id}) { @@ -1116,7 +1135,7 @@ sub save_preferences { $form->{businessnumber} = $businessnumber; - $myconfig = new User($form->{login}); + $myconfig = User->new(login => $form->{login}); foreach my $item (keys %$form) { $myconfig->{$item} = $form->{$item};