X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=sql%2FPg-upgrade2%2Fwarehouse.pl;h=6eebb2f7bdba6a52251909a7cb30f99564ec444b;hb=a9d9ca02abd3a0ff1e43f23888142266174bec55;hp=6efbe145aba4522a82fdced7e58ba46997f05f69;hpb=b7bb932078495375dc4ca1cd1b838f52c99d7df1;p=kivitendo-erp.git diff --git a/sql/Pg-upgrade2/warehouse.pl b/sql/Pg-upgrade2/warehouse.pl index 6efbe145a..6eebb2f7b 100644 --- a/sql/Pg-upgrade2/warehouse.pl +++ b/sql/Pg-upgrade2/warehouse.pl @@ -1,87 +1,25 @@ # @tag: warehouse # @description: Diverse neue Tabellen und Spalten zur Mehrlagerfähigkeit inkl. Migration # @depends: release_2_4_3 +package SL::DBUpgrade2::warehouse; +use strict; +use utf8; -die("This script cannot be run from the command line.") unless ($main::form); +use parent qw(SL::DBUpgrade2::Base); -sub mydberror { - my ($msg) = @_; - die($dbup_locale->text("Database update error:") . - "
$msg
" . $DBI::errstr); -} - -sub do_query { - my ($query, $may_fail) = @_; - - if (!$dbh->do($query)) { - mydberror($query) unless ($may_fail); - $dbh->rollback(); - $dbh->begin_work(); - } -} - -$do_sql_migration = 0; +use SL::DBUtils; sub print_question { - print $main::form->parse_html_template("dbupgrade/warehouse_form"); + print $::form->parse_html_template("dbupgrade/warehouse_form"); } -sub do_update { - if (!$main::form->{do_migrate} - && (selectfirst_array_query($main::form, $dbh, $check_sql))[0]) { # check if update is needed - print_question(); - return 2; - } else { - if ($main::form->{do_migrate} eq 'Y') { - # if yes, both warehouse and bin must be given - if (!$main::form->{import_warehouse} || !$main::form->{bin_default}) { - print_question(); - return 2; - } - # flag for extra code - $do_sql_migration = 1; - } - } - my $warehouse = $main::form->{import_warehouse} ne '' ? $main::form->{import_warehouse} : "Transfer"; - my $bin = $main::form->{bin_default} ne '' ? $main::form->{bin_default} : "1"; - +sub run { + my ($self) = @_; - my $migration_code = < 0;|; + my $sqlcode = <{do_migrate} + && (selectfirst_array_query($::form, $self->dbh, $check_sql))[0]) { # check if update is needed + print_question(); + return 2; + } else { + if (defined $::form->{do_migrate} && $::form->{do_migrate} eq 'Y') { + # if yes, both warehouse and bin must be given + if (!$::form->{import_warehouse} || !$::form->{bin_default}) { + print_question(); + return 2; + } + # flag for extra code + $do_sql_migration = 1; + } + } + my $warehouse = defined $::form->{import_warehouse} && $::form->{import_warehouse} ne '' ? $::form->{import_warehouse} : "Transfer"; + my $bin = defined $::form->{bin_default} && $::form->{bin_default} ne '' ? $::form->{bin_default} : "1"; + $warehouse = $self->dbh->quote($warehouse); + $bin = $self->dbh->quote($bin); -$check_sql = < 0; + my $migration_code = <db_query($query); + + return 1; +} + +1;