Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 1e2a4a38

Von Moritz Bunkus vor etwa 18 Jahren hinzugefügt

  • ID 1e2a4a3836d317a33166b34f514ca6863e4824c1
  • Vorgänger d5e79beb
  • Nachfolger dad628a3

Anscheinend gab es irgendwo im Upgrade-Pfad Unstimmigkeiten, sodass nicht alle Datenbanken bei project einen Primärschlüssel auf id haben, auch wenn dieser in lx-office.sql eingetragen ist. Also project mit einem Primärschlüssel versehen, sofern keiner existiert, bevor mit Fremdschlüsseln darauf verwiesen wird.

Unterschiede anzeigen:

sql/Pg-upgrade2/globalprojectnumber_ap_ar_oe.pl
# @tag: globalprojectnumber_ap_ar_oe
# @description: Neue Spalte für eine globale Projektnummer in Einkaufs- und Verkaufsbelegen
# @depends: release_2_4_1
die("This script cannot be run from the command line.") unless ($main::form);
sub do_query {
my ($query, $may_fail) = @_;
if (!$dbh->do($query)) {
mydberror($query) unless ($may_fail);
$dbh->rollback();
$dbh->begin_work();
}
}
sub do_update {
my @queries =
("ALTER TABLE ap ADD COLUMN globalproject_id integer;",
"ALTER TABLE ap ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);",
"ALTER TABLE ar ADD COLUMN globalproject_id integer;",
"ALTER TABLE ar ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);",
"ALTER TABLE oe ADD COLUMN globalproject_id integer;",
"ALTER TABLE oe ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);");
do_query("ALTER TABLE project ADD PRIMARY KEY (id);", 1);
map({ do_query($_, 0); } @queries);
return 1;
}
return do_update();
sql/Pg-upgrade2/globalprojectnumber_ap_ar_oe.sql
-- @tag: globalprojectnumber_ap_ar_oe
-- @description: Neue Spalte für eine globale Projektnummer in Einkaufs- und Verkaufsbelegen
-- @depends: release_2_4_1
ALTER TABLE ap ADD COLUMN globalproject_id integer;
ALTER TABLE ap ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);
ALTER TABLE ar ADD COLUMN globalproject_id integer;
ALTER TABLE ar ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);
ALTER TABLE oe ADD COLUMN globalproject_id integer;
ALTER TABLE oe ADD FOREIGN KEY (globalproject_id) REFERENCES project (id);

Auch abrufbar als: Unified diff