if ($form->{partsgroup}) {
$where .= qq| AND partsgroup ILIKE ?|;
- push(@values, '%' . $form->{partsgroup} . '%');
+ push(@values, like($form->{partsgroup}));
}
if ($form->{status} eq 'orphaned') {
$where .=
qq| AND id NOT IN | .
qq| (SELECT DISTINCT partsgroup_id FROM parts | .
+ qq| WHERE NOT partsgroup_id ISNULL | .
+ qq| UNION | .
+ qq| SELECT DISTINCT partsgroup_id FROM custom_variable_config_partsgroups | .
qq| WHERE NOT partsgroup_id ISNULL) |;
}
$dbh->disconnect;
+ # also not orphaned if partsgroup is selected for a cvar filter
+ if ($form->{orphaned}) {
+ my $cvar_count = scalar( @{ SL::DB::PartsGroup->new(id => $form->{id})->custom_variable_configs } );
+ $form->{orphaned} = !$cvar_count;
+ }
+
$main::lxdebug->leave_sub();
}
if ($form->{pricegroup}) {
$where .= qq| AND pricegroup ILIKE ?|;
- push(@values, '%' . $form->{pricegroup} . '%');
+ push(@values, like($form->{pricegroup}));
}
if ($form->{status} eq 'orphaned') {