CVars: beim Einlesen für Sub-Modules Gültigkeit richtig bestimmen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 20 May 2016 11:21:39 +0000 (13:21 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 23 May 2016 09:08:37 +0000 (11:08 +0200)
commit988028c38ea624e169b15ed3d0aeec1c5ef86ac9
tree052d37d5ab672d5b4ae3b831b33b30fdf8d2b4c8
parent504fcaf11d8cbf10f353fb22990f559b36f5478c
CVars: beim Einlesen für Sub-Modules Gültigkeit richtig bestimmen

Werden für CVars für Belege eingelesen (z.B. Aufträge), wo also
»sub_module« gesetzt ist (hier: »orderitems«), so steht in der
CVar-Spalte »trans_id« die Datenbank-ID des referenzierten
Sub-Items (hier: »orderitems.id«) drin und nicht die ID des Items, auf
das sich die Konfiguration selber bezieht.

Die Gültigkeit einer CVar wird hingegen nicht am Beleg selber sondern
eine Ebene darüber, am Warenstammdatum, festgemacht. Das bedeutet, dass
in der Spalte »custom_variables_validity.trans_id« die Artikel-ID
enthalten ist.

Übergeben bekommt die Funktion zum Einlesen der CVars aber die ID des
Orderitems.

Also muss das Datenbankquery unterschiedliche Tabellen und Spalten
abfragen, je nachdem, ob »sub_module« gesetzt ist oder nicht.
SL/CVar.pm