X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/98b64fe1e380c232428d63cea0eb5f44b1d1a2c3..6e0fe1dc46a643b80c36b21c4cb62c2f09227f45:/SL/IC.pm diff --git a/SL/IC.pm b/SL/IC.pm index 942831bfa..2cf7996fb 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -44,6 +44,7 @@ use SL::HTML::Restrict; use SL::TransNumber; use SL::Util qw(trim); use SL::DB; +use Carp; use strict; @@ -78,10 +79,8 @@ 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->{part_type}; - if ($form->{item} eq 'assembly') { + if ($form->{part_type} eq 'assembly') { # retrieve assembly items $query = @@ -262,7 +261,7 @@ sub _save { my $priceupdate = ', priceupdate = current_date'; if ($form->{id}) { - my $trans_number = SL::TransNumber->new(type => $form->{item}, dbh => $dbh, number => $form->{partnumber}, id => $form->{id}); + my $trans_number = SL::TransNumber->new(type => $form->{part_type}, dbh => $dbh, number => $form->{partnumber}, id => $form->{id}); if (!$trans_number->is_unique) { $::lxdebug->leave_sub; return 3; @@ -275,7 +274,7 @@ sub _save { # delete makemodel records do_query($form, $dbh, qq|DELETE FROM makemodel WHERE parts_id = ?|, conv_i($form->{id})); - if ($form->{item} eq 'assembly') { + if ($form->{part_type} eq 'assembly') { # delete assembly records do_query($form, $dbh, qq|DELETE FROM assembly WHERE id = ?|, conv_i($form->{id})); } @@ -289,7 +288,7 @@ sub _save { $priceupdate = '' if (all { $previous_values->{$_} == $form->{$_} } qw(sellprice lastcost listprice)); } else { - my $trans_number = SL::TransNumber->new(type => $form->{item}, dbh => $dbh, number => $form->{partnumber}, save => 1); + my $trans_number = SL::TransNumber->new(type => $form->{part_type}, dbh => $dbh, number => $form->{partnumber}, save => 1); if ($form->{partnumber} && !$trans_number->is_unique) { $::lxdebug->leave_sub; @@ -299,7 +298,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, part_type) VALUES (?, ?, ?, ?)|, $form->{id}, $form->{partnumber}, $form->{unit}, $form->{item}); + do_query($form, $dbh, qq|INSERT INTO parts (id, partnumber, unit, part_type) VALUES (?, ?, ?, ?)|, $form->{id}, $form->{partnumber}, $form->{unit}, $form->{part_type}); $form->{orphaned} = 1; } @@ -310,7 +309,7 @@ sub _save { } my ($subq_inventory, $subq_expense, $subq_income); - if ($form->{"item"} eq "part") { + if ($form->{part_type} eq "part") { $subq_inventory = qq|(SELECT bg.inventory_accno_id FROM buchungsgruppen bg @@ -319,7 +318,7 @@ sub _save { $subq_inventory = "NULL"; } - if ($form->{"item"} ne "assembly") { + if ($form->{part_type} ne "assembly") { $subq_expense = qq|(SELECT tc.expense_accno_id FROM taxzone_charts tc @@ -391,7 +390,7 @@ sub _save { $form->{has_sernumber} ? 't' : 'f', $form->{not_discountable} ? 't' : 'f', $form->{microfiche}, - $form->{item}, + $form->{part_type}, conv_i($partsgroup_id), conv_i($form->{price_factor_id}), conv_i($form->{id}) @@ -458,7 +457,7 @@ sub _save { } # add assembly records - if ($form->{item} eq 'assembly') { + if ($form->{part_type} eq 'assembly') { # check additional assembly row my $i = $form->{assembly_rows}; # if last row is not empty add them @@ -1564,7 +1563,7 @@ sub retrieve_accounts { my %accno_by_part = map { $_->{id} => $_ } selectall_hashref_query($form, $dbh, < $part_id) = each %args) { my $ref = $accno_by_part{$part_id} or next; - $ref->{"inventory_accno_id"} = undef unless $ref->{"is_part"}; + $ref->{"inventory_accno_id"} = undef unless $ref->{"part_type"} eq 'part'; my %accounts; for my $type (qw(inventory income expense)) {