X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/11e2bd119537d478ec49c3b4d6b264b0f52d32e0..b2f44e3d98cbbd622b1497c23602eb79e71a3c64:/SL/IC.pm?ds=sidebyside diff --git a/SL/IC.pm b/SL/IC.pm index 5548d19df..880502b9d 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -38,6 +38,7 @@ use Data::Dumper; use List::MoreUtils qw(all); use YAML; +use SL::CVar; use SL::DBUtils; sub get_part { @@ -565,6 +566,11 @@ sub save { } } + CVar->save_custom_variables('dbh' => $dbh, + 'module' => 'IC', + 'trans_id' => $form->{id}, + 'variables' => $form); + # commit my $rc = $dbh->commit; $dbh->disconnect; @@ -957,6 +963,15 @@ sub all_parts { my $where_clause = join ' AND ', map { "($_)" } @where_tokens; my $group_clause = ' GROUP BY ' . join ', ', map { ($table_prefix{$_} || "p.") . $_ } @group_tokens if scalar @group_tokens; + my ($cvar_where, @cvar_values) = CVar->build_filter_query('module' => 'IC', + 'trans_id_field' => 'p.id', + 'filter' => $form); + + if ($cvar_where) { + $where_clause .= qq| AND ($cvar_where)|; + push @bind_vars, @cvar_values; + } + my $query = qq|SELECT DISTINCT $select_clause FROM parts p $join_clause WHERE $where_clause $group_clause $order_clause $limit_clause|; $form->{parts} = selectall_hashref_query($form, $dbh, $query, @bind_vars);