X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=sql%2FPg-upgrade2%2Fumstellung_eur.pl;h=cf93d76c67e95220f89c9d60adc8b0a4debf65ea;hb=381f15f561199cb035f1bb9d7721362a0fc4c0b7;hp=5a400c926fc8d531f0a34efd2d6fcaf80ebd1358;hpb=53e76581596fc6d2caffd950feff42117d1abf96;p=kivitendo-erp.git
diff --git a/sql/Pg-upgrade2/umstellung_eur.pl b/sql/Pg-upgrade2/umstellung_eur.pl
index 5a400c926..cf93d76c6 100644
--- a/sql/Pg-upgrade2/umstellung_eur.pl
+++ b/sql/Pg-upgrade2/umstellung_eur.pl
@@ -1,33 +1,18 @@
# @tag: umstellung_eur
# @description: Variable eur umstellen: bitte in doc/dokumentation.pdf das entsprechende Kapitel zur Konfiguration von EUR lesen
# @depends: release_2_6_3
-# @charset: utf-8
-
-# this script relies on $eur still being set in lx_office.conf, and the
-# variable available in $::lx_office_conf{system}->{eur}
+package SL::DBUpgrade2::umstellung_eur;
+use strict;
use utf8;
-#use strict;
-use Data::Dumper;
-die("This script cannot be run from the command line.") unless ($main::form);
-
-sub mydberror {
- my ($msg) = @_;
- die($dbup_locale->text("Database update error:") .
- "
$msg
" . $DBI::errstr);
-}
-sub do_query {
- my ($query, $may_fail) = @_;
+use parent qw(SL::DBUpgrade2::Base);
- if (!$dbh->do($query)) {
- mydberror($query) unless ($may_fail);
- $dbh->rollback();
- $dbh->begin_work();
- }
-}
+# this script relies on $eur still being set in kivitendo.conf, and the
+# variable available in $::lx_office_conf{system}->{eur}
-sub do_update {
+sub run {
+ my ($self) = @_;
# check if accounting_method has already been set (new database), if so return
# only set variables according to eur for update of existing database
@@ -35,7 +20,7 @@ sub do_update {
foreach my $column (qw(accounting_method inventory_system profit_determination)) {
# this query will fail if columns already exist (new database)
- do_query(qq|ALTER TABLE defaults ADD COLUMN ${column} TEXT|, 1);
+ $self->db_query(qq|ALTER TABLE defaults ADD COLUMN ${column} TEXT|, may_fail => 1);
}
my $accounting_method;
@@ -43,7 +28,7 @@ sub do_update {
my $profit_determination;
# check current configuration and set default variables accordingly, so that
- # Lx-Office behaviour isn't changed by this update
+ # kivitendo behaviour isn't changed by this update
if ($::lx_office_conf{system}->{eur} == 0 ) {
$accounting_method = 'accrual';
@@ -65,10 +50,9 @@ sub do_update {
my $update_eur = "UPDATE defaults set accounting_method = '$accounting_method' where accounting_method is null;" .
"UPDATE defaults set inventory_system = '$inventory_system' where inventory_system is null; " .
"UPDATE defaults set profit_determination = '$profit_determination' where profit_determination is null;";
- do_query($update_eur);
+ $self->db_query($update_eur);
return 1;
}
-return do_update();
-
+1;