Pruefung auf Dienstleistung ist vom Meister Bunkus gesegnet
[kivitendo-erp.git] / SL / Common.pm
index fe2196d..cb38159 100644 (file)
@@ -57,19 +57,21 @@ sub retrieve_parts {
     $filter .= qq| AND ($_ ILIKE ?)|;
     push @filter_values, '%' . $form->{$_} . '%';
   }
+$main::lxdebug->dump(0, "assemblies in common", $form->{assemblies});
+$main::lxdebug->dump(0, "no assemblies in common", $form->{no_assemblies});
 
   if ($form->{no_assemblies}) {
-    $filter .= qq| AND (NOT COALESCE(assembly, 'f'))|;
+    $filter .= qq| AND (NOT COALESCE(assembly, FALSE))|;
   }
   if ($form->{assemblies}) {
-    $filter .= qq| AND assembly='t'|;          # alles was assembly ist rausgeben erweiterung für bin/mozilla/wh.pl -> transfer_assembly_update_part 
+    $filter .= qq| AND assembly=TRUE|;         # alles was assembly ist rausgeben erweiterung für bin/mozilla/wh.pl -> transfer_assembly_update_part 
 # eigentlich möchte ich diesen filter abbilden: 
 # select distinct partnumber  from parts inner join assembly on (parts.id = assembly.id) where assembly='t';
 # und so common ist die anweisung gar nicht. wie wäre es mit auslagern in WH.pm? -> get_all_working_assemblies? jb 21.2.2009
   }
 
   if ($form->{no_services}) {
-    $filter .= qq| AND (COALESCE(inventory_accno_id, 0) > 0)|;
+    $filter .= qq| AND (inventory_accno_id is not NULL or assembly=TRUE)|; # @mb hier nochmal optimieren ... nach kurzer ruecksprache alles i.o. 
   }
 
   substr($filter, 1, 3) = "WHERE" if ($filter);
@@ -83,6 +85,12 @@ sub retrieve_parts {
     qq|ORDER BY $order_by $order_dir|;
   my $sth = $dbh->prepare($query);
   $sth->execute(@filter_values) || $form->dberror($query . " (" . join(", ", @filter_values) . ")");
+
+$main::lxdebug->dump(0, "query", $query);
+
+$main::lxdebug->dump(0, "values", @filter_values);
+
+
   my $parts = [];
   while (my $ref = $sth->fetchrow_hashref()) {
     push(@{$parts}, $ref);