From: Moritz Bunkus Date: Tue, 4 Jan 2011 16:05:21 +0000 (+0100) Subject: Entscheidung, welche acc_trans-Einträge aktualisiert werden müssen, anhand acc_trans_... X-Git-Tag: release-2.6.2beta1~1 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/commitdiff_plain/4f2c6343fa35d3413dce6689455a3746a4ccdea6?ds=inline Entscheidung, welche acc_trans-Einträge aktualisiert werden müssen, anhand acc_trans_id treffen Werden mehrere Einträge mit derselben acc_trans_id gefunden, so darf der erste Eintrag nicht aktualisiert werden, aber die restlichen schon. --- diff --git a/sql/Pg-upgrade2/acc_trans_id_uniqueness.pl b/sql/Pg-upgrade2/acc_trans_id_uniqueness.pl index 9c0c4595a..1b8e5cadb 100644 --- a/sql/Pg-upgrade2/acc_trans_id_uniqueness.pl +++ b/sql/Pg-upgrade2/acc_trans_id_uniqueness.pl @@ -47,10 +47,10 @@ SQL do_query($query, 0); - my %entries_by_trans_id; + my %skipped_acc_trans_ids; foreach my $entry (@entries) { - if (!$entries_by_trans_id{ $entry->{trans_id} }) { - $entries_by_trans_id{ $entry->{trans_id} } = []; + if (!$skipped_acc_trans_ids{ $entry->{acc_trans_id} }) { + $skipped_acc_trans_ids{ $entry->{acc_trans_id} } = 1; } else { my $mtime = $entry->{mtime} ? "= '$entry->{mtime}'" : 'IS NULL'; $query = <