# retrieve assembly items
$query =
qq|SELECT p.id, p.partnumber, p.description,
- p.classification_id,
p.sellprice, p.lastcost, p.weight, a.qty, a.bom, p.unit,
pg.partsgroup, p.price_factor_id, pfac.factor AS price_factor
FROM parts p
foreach my $key (keys %{$ref}) {
$form->{"${key}_$form->{assembly_rows}"} = $ref->{$key};
}
- $form->{"type_and_classific_$form->{assembly_rows}"} = $::request->presenter->type_abbreviation($ref->{part_type}).
- $::request->presenter->classification_abbreviation($ref->{classification_id});
}
$sth->finish;
partnumber = ?,
description = ?,
makemodel = ?,
- classification_id = ?,
listprice = ?,
sellprice = ?,
lastcost = ?,
@values = ($form->{partnumber},
$form->{description},
$makemodel ? 't' : 'f',
- $form->{classification_id},
$form->{listprice},
$form->{sellprice},
$form->{lastcost},
my $query =
qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
- p.classification_id,
p.weight, p.onhand, p.unit, pg.partsgroup, p.lastcost,
p.price_factor_id, pfac.factor AS price_factor, p.notes as longdescription
FROM parts p
# my @other_flags = qw(onhand); # ToDO: implement these
# my @inactive_flags = qw(l_subtotal short l_linetotal);
- my @select_tokens = qw(id factor part_type classification_id);
+ my @select_tokens = qw(id factor);
my @where_tokens = qw(1=1);
my @group_tokens = ();
my @bind_vars = ();
insertdate => 'itime::DATE',
);
- if ($form->{l_assembly} && $form->{l_lastcost}) {
+ if (($form->{searchitems} eq 'assembly') && $form->{l_lastcost}) {
@simple_l_switches = grep { $_ ne 'lastcost' } @simple_l_switches;
}
push @select_tokens, $_;
}
- # Oder Bedingungen fuer Ware Dienstleistung Erzeugnis:
- if ($form->{l_part} || $form->{l_assembly} || $form->{l_service} || $form->{l_assortment}) {
- my @or_tokens = ();
- push @or_tokens, "p.part_type = 'service'" if $form->{l_service};
- push @or_tokens, "p.part_type = 'assembly'" if $form->{l_assembly};
- push @or_tokens, "p.part_type = 'part'" if $form->{l_part};
- push @or_tokens, "p.part_type = 'assortment'" if $form->{l_assortment};
- push @where_tokens, join ' OR ', map { "($_)" } @or_tokens;
- }
- else {
- # gar keine Teile
- push @where_tokens, q|'F' = 'T'|;
- }
-
- if ( $form->{classification_id} > 0 ) {
- push @where_tokens, "p.classification_id = ?";
- push @bind_vars, $form->{classification_id};
+ for ($form->{searchitems}) {
+ push @where_tokens, "p.part_type = 'part'" if /part/;
+ push @where_tokens, "p.part_type = 'service'" if /service/;
+ push @where_tokens, "p.part_type = 'assembly'" if /assembly/;
}
for ($form->{itemstatus}) {
push @select_tokens, @qsooqr_flags, 'quotation', 'cv', 'ioi.id', 'ioi.ioi' if $bsooqr;
push @select_tokens, @deliverydate_flags if $bsooqr && $form->{l_deliverydate};
- push @select_tokens, $q_assembly_lastcost if $form->{l_assembly} && $form->{l_lastcost};
+ push @select_tokens, $q_assembly_lastcost if ($form->{searchitems} eq 'assembly') && $form->{l_lastcost};
push @bsooqr_tokens, q|module = 'ir' AND NOT ioi.assemblyitem| if $form->{bought};
push @bsooqr_tokens, q|module = 'is' AND NOT ioi.assemblyitem| if $form->{sold};
push @bsooqr_tokens, q|module = 'oe' AND NOT quotation AND cv = 'customer'| if $form->{ordered};
# post processing for assembly parts lists (bom)
# for each part get the assembly parts and add them into the partlist.
my @assemblies;
- if ($form->{l_assembly} && $form->{bom}) {
+ if ($form->{searchitems} eq 'assembly' && $form->{bom}) {
$query =
qq|SELECT p.id, p.partnumber, p.description, a.qty AS onhand,
p.unit, p.notes, p.itime::DATE as insertdate,
$form->{parts} = \@assemblies;
}
- if ($form->{l_pricegroups} && SL::DB::Manager::Price->get_all_count() > 0 ) {
+ if ($form->{l_pricegroups} ) {
my $query = <<SQL;
SELECT parts_id, price, pricegroup_id
FROM prices
}
$sth->finish;
}
- }
+ };
+
$main::lxdebug->leave_sub();
}
my $query =
- qq|SELECT id, partnumber, description, unit, sellprice,
- classification_id
+ qq|SELECT id, partnumber, description, unit, sellprice
FROM parts
WHERE $where ORDER BY $order|;
}
$j++;
- $form->{"type_and_classific_$j"} = $::request->presenter->type_abbreviation($ref->{part_type}).
- $::request->presenter->classification_abbreviation($ref->{classification_id});
$form->{"id_$j"} = $ref->{id};
$form->{"partnumber_$j"} = $ref->{partnumber};
$form->{"description_$j"} = $ref->{description};
for my $i (1..$rowcount) {
my $id = $form->{"${prefix}${i}"};
next unless $id;
- my $prt = $parts_by_id{$id};
- my $type_abbr = $::request->presenter->type_abbreviation($prt->part_type);
- push @{ $template_arrays{part_type} }, $type_abbr;
- push @{ $template_arrays{type_and_classific}}, $type_abbr.$::request->presenter->classification_abbreviation($prt->classification_id);
+
+ push @{ $template_arrays{part_type} }, $parts_by_id{$id}->type;
}
- $main::lxdebug->leave_sub();
return %template_arrays;
+ $main::lxdebug->leave_sub();
}
sub normalize_text_blocks {
$main::lxdebug->leave_sub();
}
+
1;