X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/1b9a64fa292f375c82b4af788d0606354bc4e8ff..a9c191deed45bf13c5a6983ad0409fd7cb0e86d3:/bin/mozilla/am.pl diff --git a/bin/mozilla/am.pl b/bin/mozilla/am.pl index b3ec6045c..5a3b74223 100644 --- a/bin/mozilla/am.pl +++ b/bin/mozilla/am.pl @@ -47,7 +47,7 @@ use SL::DB::Printer; use SL::DB::Tax; use SL::DB::Language; use SL::DB::Default; -use SL::DBUtils qw(selectall_array_query); +use SL::DBUtils qw(selectall_array_query conv_dateq); use CGI; require "bin/mozilla/common.pl"; @@ -1251,14 +1251,22 @@ sub show_am_history { $restriction .= qq| AND employee_id = (SELECT id FROM employee WHERE name ILIKE | . $dbh->quote('%' . $form->{mitarbeiter} . '%') . qq|)|; } - my $query = qq|SELECT trans_id AS id FROM history_erp | . - ( $form->{'searchid'} ? qq| WHERE snumbers = '| . $searchNo{$form->{'what2search'}} . qq|_| . $form->{'searchid'} . qq|'| - : qq| WHERE snumbers ~ '^| . $searchNo{$form->{'what2search'}} . qq|'|); + my $snumbers_where = ''; + my $snumbers_value; + if ($form->{'searchid'}) { + $snumbers_where = ' WHERE snumbers = ?'; + $snumbers_value = $searchNo{$form->{'what2search'}} . '_' . $form->{'searchid'}; + } else { + $snumbers_where = ' WHERE snumbers ~ ?'; + $snumbers_value = '^' . $searchNo{$form->{'what2search'}}; + } + my $query = qq|SELECT trans_id AS id FROM history_erp $snumbers_where|; - my @ids = grep { $_ * 1 } selectall_array_query($form, $dbh, $query); + my @ids = grep { $_ * 1 } selectall_array_query($form, $dbh, $query, $snumbers_value); my $daten .= shift @ids; - $daten .= join '', map { " OR trans_id = $_" } @ids; - + if (scalar(@ids) > 0 ) { + $daten .= ' OR trans_id IN (' . join(',', @ids) . ')'; + } my ($sort, $sortby) = split(/\-\-/, $form->{order}); $sort =~ s/.*\.(.*)$/$1/;