X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/df52f0a4ee134e780337a7822fdf64ab43d619cf..e1b0bda5b93e17bc5c06a6fecde41f537cb20c99:/SL/IC.pm diff --git a/SL/IC.pm b/SL/IC.pm index 16ebef0b8..868fb7417 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -526,6 +526,22 @@ sub all_parts { push @bind_vars, @cvar_values; } + # simple search for assemblies by items used in assemblies + if ($form->{bom} eq '2' && $form->{l_assembly}) { + # nuke where clause and bind vars + $where_clause = ' 1=1 AND p.id in (SELECT id from assembly where parts_id IN ' . + ' (select id from parts where 1=1 AND '; + @bind_vars = (); + # use only like filter for items used in assemblies + foreach (@like_filters) { + next unless $form->{$_}; + $form->{"l_$_"} = '1'; # show the column + $where_clause .= " $_ ILIKE ? "; + push @bind_vars, like($form->{$_}); + } + $where_clause .='))'; + } + my $query = <<" SQL"; SELECT DISTINCT $select_clause FROM parts p @@ -790,7 +806,7 @@ sub retrieve_accounts { SQL my $query_tax = <{"taxaccounts_$index"} = $ref->{"accno"}; $form->{"taxaccounts"} .= "$ref->{accno} "if $form->{"taxaccounts"} !~ /$ref->{accno}/; - $form->{"$ref->{accno}_${_}"} = $ref->{$_} for qw(rate description taxnumber); + $form->{"$ref->{accno}_${_}"} = $ref->{$_} for qw(rate description taxnumber tax_id); } $sth_tax->finish;