projects
/
kivitendo-erp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dbconnect_noauto entfernt
[kivitendo-erp.git]
/
SL
/
IC.pm
diff --git
a/SL/IC.pm
b/SL/IC.pm
index
81b3cce
..
d70c214
100644
(file)
--- a/
SL/IC.pm
+++ b/
SL/IC.pm
@@
-43,6
+43,7
@@
use SL::DBUtils;
use SL::HTML::Restrict;
use SL::TransNumber;
use SL::Util qw(trim);
use SL::HTML::Restrict;
use SL::TransNumber;
use SL::Util qw(trim);
+use SL::DB;
use strict;
use strict;
@@
-224,12
+225,20
@@
sub retrieve_buchungsgruppen {
}
sub save {
}
sub save {
+ my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
$main::lxdebug->enter_sub();
+ my $rc = SL::DB->client->with_transaction(\&_save, $self, $myconfig, $form);
+
+ $main::lxdebug->leave_sub();
+ return $rc;
+}
+
+sub _save {
my ($self, $myconfig, $form) = @_;
my @values;
my ($self, $myconfig, $form) = @_;
my @values;
- # connect to database, turn off AutoCommit
- my $dbh =
$form->get_standard_
dbh;
+
+ my $dbh =
SL::DB->client->
dbh;
my $restricter = SL::HTML::Restrict->create;
# save the part
my $restricter = SL::HTML::Restrict->create;
# save the part
@@
-327,7
+336,6
@@
sub save {
partnumber = ?,
description = ?,
makemodel = ?,
partnumber = ?,
description = ?,
makemodel = ?,
- alternate = 'f',
assembly = ?,
listprice = ?,
sellprice = ?,
assembly = ?,
listprice = ?,
sellprice = ?,
@@
-536,12
+544,7
@@
sub save {
SQL
do_query($form, $dbh, $query, ($form->{id}) x 2);
SQL
do_query($form, $dbh, $query, ($form->{id}) x 2);
- # commit
- my $rc = $dbh->commit;
-
- $main::lxdebug->leave_sub();
-
- return $rc;
+ return 1;
}
sub retrieve_assemblies {
}
sub retrieve_assemblies {
@@
-581,26
+584,27
@@
sub retrieve_assemblies {
}
sub delete {
}
sub delete {
+ my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
$main::lxdebug->enter_sub();
+ my $rc = SL::DB->client->with_transaction(\&_delete, $self, $myconfig, $form);
+
+ $main::lxdebug->leave_sub();
+ return $rc;
+}
+
+sub _delete {
my ($self, $myconfig, $form) = @_;
my @values = (conv_i($form->{id}));
my ($self, $myconfig, $form) = @_;
my @values = (conv_i($form->{id}));
- # connect to database, turn off AutoCommit
- my $dbh = $form->get_standard_dbh;
my %columns = ( "assembly" => "id", "parts" => "id" );
for my $table (qw(prices makemodel inventory assembly translation parts)) {
my $column = defined($columns{$table}) ? $columns{$table} : "parts_id";
my %columns = ( "assembly" => "id", "parts" => "id" );
for my $table (qw(prices makemodel inventory assembly translation parts)) {
my $column = defined($columns{$table}) ? $columns{$table} : "parts_id";
- do_query($form,
$
dbh, qq|DELETE FROM $table WHERE $column = ?|, @values);
+ do_query($form,
SL::DB->client->
dbh, qq|DELETE FROM $table WHERE $column = ?|, @values);
}
}
- # commit
- my $rc = $dbh->commit;
-
- $main::lxdebug->leave_sub();
-
- return $rc;
+ return 1;
}
sub assembly_item {
}
sub assembly_item {
@@
-638,9
+642,6
@@
sub assembly_item {
$where .= qq| ORDER BY p.description|;
}
$where .= qq| ORDER BY p.description|;
}
- # connect to database
- my $dbh = $form->get_standard_dbh;
-
my $query =
qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
p.weight, p.onhand, p.unit, pg.partsgroup, p.lastcost,
my $query =
qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
p.weight, p.onhand, p.unit, pg.partsgroup, p.lastcost,
@@
-649,7
+650,7
@@
sub assembly_item {
LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
LEFT JOIN price_factors pfac ON pfac.id = p.price_factor_id
WHERE $where|;
LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
LEFT JOIN price_factors pfac ON pfac.id = p.price_factor_id
WHERE $where|;
- $form->{item_list} = selectall_hashref_query($form,
$
dbh, $query, @values);
+ $form->{item_list} = selectall_hashref_query($form,
SL::DB->client->
dbh, $query, @values);
$main::lxdebug->leave_sub();
}
$main::lxdebug->leave_sub();
}
@@
-1225,15
+1226,23
@@
sub get_num_matches_for_priceupdate {
}
sub update_prices {
}
sub update_prices {
+ my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
$main::lxdebug->enter_sub();
+ my $num_updated = SL::DB->client->with_transaction(\&_update_prices, $self, $myconfig, $form);
+
+ $main::lxdebug->leave_sub();
+ return $num_updated;
+}
+
+sub _update_prices {
my ($self, $myconfig, $form) = @_;
my ($where, @where_values) = $self->_create_filter_for_priceupdate();
my $num_updated = 0;
# connect to database
my ($self, $myconfig, $form) = @_;
my ($where, @where_values) = $self->_create_filter_for_priceupdate();
my $num_updated = 0;
# connect to database
- my $dbh =
$form->get_standard_
dbh;
+ my $dbh =
SL::DB->client->
dbh;
for my $column (qw(sellprice listprice)) {
next if ($form->{$column} eq "");
for my $column (qw(sellprice listprice)) {
next if ($form->{$column} eq "");
@@
-1293,10
+1302,6
@@
sub update_prices {
$sth_add->finish();
$sth_multiply->finish();
$sth_add->finish();
$sth_multiply->finish();
- my $rc= $dbh->commit;
-
- $main::lxdebug->leave_sub();
-
return $num_updated;
}
return $num_updated;
}