X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/71041661bf4a8e0ad75a20d9252dc501b3611657..98b64fe1e380c232428d63cea0eb5f44b1d1a2c3:/SL/IC.pm diff --git a/SL/IC.pm b/SL/IC.pm index d70c214d2..942831bfa 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -78,10 +78,10 @@ sub get_part { $form->{lastmtime} = $form->{mtime}; $form->{onhand} *= 1; + die "part needs a part_type" unless $form->{part_type}; # TODO from part_type enum conversion # part or service item - $form->{item} = ($form->{inventory_accno}) ? 'part' : 'service'; - if ($form->{assembly}) { - $form->{item} = 'assembly'; + $form->{item} = $form->{part_type}; + if ($form->{item} eq 'assembly') { # retrieve assembly items $query = @@ -256,7 +256,6 @@ sub _save { my $makemodel = ($form->{make_1} || $form->{model_1} || ($form->{makemodel_rows} > 1)) ? 1 : 0; - $form->{assembly} = ($form->{item} eq 'assembly') ? 1 : 0; my ($query, $sth); @@ -300,7 +299,7 @@ sub _save { $form->{partnumber} ||= $trans_number->create_unique; ($form->{id}) = selectrow_query($form, $dbh, qq|SELECT nextval('id')|); - do_query($form, $dbh, qq|INSERT INTO parts (id, partnumber, unit) VALUES (?, ?, ?)|, $form->{id}, $form->{partnumber}, $form->{unit}); + do_query($form, $dbh, qq|INSERT INTO parts (id, partnumber, unit, part_type) VALUES (?, ?, ?, ?)|, $form->{id}, $form->{partnumber}, $form->{unit}, $form->{item}); $form->{orphaned} = 1; } @@ -336,7 +335,6 @@ sub _save { partnumber = ?, description = ?, makemodel = ?, - assembly = ?, listprice = ?, sellprice = ?, lastcost = ?, @@ -362,6 +360,7 @@ sub _save { has_sernumber = ?, not_discountable = ?, microfiche = ?, + part_type = ?, partsgroup_id = ?, price_factor_id = ? $priceupdate @@ -369,7 +368,6 @@ sub _save { @values = ($form->{partnumber}, $form->{description}, $makemodel ? 't' : 'f', - $form->{assembly} ? 't' : 'f', $form->{listprice}, $form->{sellprice}, $form->{lastcost}, @@ -393,6 +391,7 @@ sub _save { $form->{has_sernumber} ? 't' : 'f', $form->{not_discountable} ? 't' : 'f', $form->{microfiche}, + $form->{item}, conv_i($partsgroup_id), conv_i($form->{price_factor_id}), conv_i($form->{id}) @@ -576,7 +575,7 @@ sub retrieve_assemblies { FROM parts p2, assembly a WHERE (p2.id = a.parts_id) AND (a.id = p.id)) AS inventory FROM parts p - WHERE NOT p.obsolete AND p.assembly $where|; + WHERE NOT p.obsolete AND p.part_type = 'assembly' $where|; $form->{assembly_items} = selectall_hashref_query($form, $dbh, $query, @values); @@ -893,10 +892,9 @@ sub all_parts { } for ($form->{searchitems}) { - push @where_tokens, 'p.inventory_accno_id > 0' if /part/; - push @where_tokens, 'p.inventory_accno_id IS NULL' if /service/; - push @where_tokens, 'NOT p.assembly' if /service/; - push @where_tokens, ' p.assembly' if /assembly/; + 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}) {