X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FIC.pm;h=a2703b64f656fc8e93e6326afbb6eba81f41eae1;hb=bcb41cda2a33c1b7e8cd3386ae53b04ac7198f15;hp=64e598c24e9c271f207e94b463ed6862921e7308;hpb=4dbb09950c9f5596646537c12d991c99086fe7c1;p=kivitendo-erp.git diff --git a/SL/IC.pm b/SL/IC.pm index 64e598c24..a2703b64f 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -33,6 +33,8 @@ #====================================================================== package IC; +use Data::Dumper; +use SL::DBUtils; sub get_part { $main::lxdebug->enter_sub(); @@ -52,19 +54,19 @@ sub get_part { LEFT JOIN chart c2 ON (p.income_accno_id = c2.id) LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id) LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id) - WHERE p.id = $form->{id}|; + WHERE p.id = ? |; + my @vars = ($form->{id}); my $sth = $dbh->prepare($query); - $sth->execute || $form->dberror($query); + $sth->execute(@vars) || $form->dberror("$query (" . join(', ', @vars) . ")"); my $ref = $sth->fetchrow_hashref(NAME_lc); # copy to $form variables - map { $form->{$_} = $ref->{$_} } ( keys %{ $ref } ); + map { $form->{$_} = $ref->{$_} } (keys %{$ref}); $sth->finish; - my %oid = ('Pg' => 'a.oid', - 'Oracle' => 'a.rowid' - ); + my %oid = ('Pg' => 'a.oid', + 'Oracle' => 'a.rowid'); # part or service item $form->{item} = ($form->{inventory_accno}) ? 'part' : 'service'; @@ -78,17 +80,17 @@ sub get_part { FROM parts p JOIN assembly a ON (a.parts_id = p.id) LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id) - WHERE a.id = $form->{id} - ORDER BY $oid{$myconfig->{dbdriver}}|; - + WHERE a.id = ? + ORDER BY ?|; + @vars = ($form->{id}, $oid{$myconfig->{dbdriver}}); $sth = $dbh->prepare($query); - $sth->execute || $form->dberror($query); - + $sth->execute(@vars) || $form->dberror("$query (" . join(', ', @vars) . ")"); + $form->{assembly_rows} = 0; while (my $ref = $sth->fetchrow_hashref(NAME_lc)) { $form->{assembly_rows}++; - foreach my $key ( keys %{ $ref } ) { - $form->{"${key}_$form->{assembly_rows}"} = $ref->{$key}; + foreach my $key (keys %{$ref}) { + $form->{"${key}_$form->{assembly_rows}"} = $ref->{$key}; } } $sth->finish; @@ -96,25 +98,97 @@ sub get_part { } # setup accno hash for