SEPA: single-dbh
[kivitendo-erp.git] / SL / Form.pm
index b5af003..64d09d1 100644 (file)
@@ -1436,7 +1436,7 @@ sub get_standard_dbh {
     undef $standard_dbh;
   }
 
-  $standard_dbh ||= $self->dbconnect_noauto($myconfig);
+  $standard_dbh ||= SL::DB->create(undef, 'KIVITENDO')->dbh;
 
   $main::lxdebug->leave_sub(2);
 
@@ -2591,16 +2591,21 @@ sub all_vc {
 }
 
 sub new_lastmtime {
-  my ($self, $table, $option) = @_;
+  $main::lxdebug->enter_sub();
+
+  my ($self, $table, $provided_dbh) = @_;
 
+  my $dbh = $provided_dbh ? $provided_dbh : $self->get_standard_dbh;
   return                                       unless $self->{id};
   croak ("wrong call, no valid table defined") unless $table =~ /^(oe|ar|ap|delivery_orders|parts)$/;
 
   my $query       = "SELECT mtime, itime FROM " . $table . " WHERE id = ?";
-  my $ref         = selectfirst_hashref_query($self, $self->get_standard_dbh, $query, $self->{id});
+  my $ref         = selectfirst_hashref_query($self, $dbh, $query, $self->{id});
   $ref->{mtime} ||= $ref->{itime};
   $self->{lastmtime} = $ref->{mtime};
   $main::lxdebug->message(LXDebug->DEBUG2(),"new lastmtime=".$self->{lastmtime});
+
+  $main::lxdebug->leave_sub();
 }
 
 sub mtime_ischanged {