Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 9b694f8e

Von Bernd Bleßmann vor 8 Monaten hinzugefügt

  • ID 9b694f8ee88a227e7dea8e231ac9e95ad8f32e2b
  • Vorgänger b4baa620

Berichte Angebote/Aufträge,Rechnungen,VK: Leerzeichen in SQL-Abfrage

Ab psql Version 15 oder 16 gibt es einen Fehler, wenn sowas abgfragt
wird: SELECT * FROM oe WHERE 1 = 1AND ...;
(ERROR: trailing junk after numeric literal at or near "1A")

Das passierte in älteren Versionen nicht, deshalb sind die
fehlenden Leerzeiche wohl nie aufgefallen.

Unterschiede anzeigen:

SL/AR.pm
}
if ($form->{"project_id"}) {
$where .=
qq|AND ((a.globalproject_id = ?) OR EXISTS | .
qq| AND ((a.globalproject_id = ?) OR EXISTS | .
qq| (SELECT * FROM invoice i | .
qq| WHERE i.project_id = ? AND i.trans_id = a.id) | .
qq| OR EXISTS | .
SL/OE.pm
if ($form->{"project_id"}) {
$query .=
qq|AND ((globalproject_id = ?) OR EXISTS | .
qq| AND ((globalproject_id = ?) OR EXISTS | .
qq| (SELECT * FROM orderitems oi | .
qq| WHERE oi.project_id = ? AND oi.trans_id = o.id))|;
push(@values, conv_i($form->{"project_id"}), conv_i($form->{"project_id"}));
SL/VK.pm
}
if ($form->{project_id}) {
$where .=
qq|AND ((ar.globalproject_id = ?) OR EXISTS | .
qq| AND ((ar.globalproject_id = ?) OR EXISTS | .
qq| (SELECT * FROM invoice i | .
qq| WHERE i.project_id = ? AND i.trans_id = ar.id))|;
push(@values, $form->{"project_id"}, $form->{"project_id"});
......
}
1;

Auch abrufbar als: Unified diff