Hinweis: Fehler bei der Verwendung von Artikel-Attributen in PDF-Belegen

Für den Fall, dass dies irgendjemandem viel Zeit spart.

Nachdem ich gestern fast den ganzen Tag vergeblich versucht habe ein Artikel-Attribut in der PDF-Rechnung zu verwenden, habe ich einen heimtückischen Fehler gefunden:

In allen herangezogenen Debug-Ausgaben ($position|print_r, $position|var_dump, {debug} und Frog-Profiler) werden die Werte von allen Artikel-Atributen korrekt ausgegeben. Der direkte Zugriff funktioniert jedoch nur bei attr1…attr9. Bei allen Attributen mit abweichenden Spaltennamen ergibt sich unabhängig von Länge und Struktur des Namens und unabhängig vom Datentyp der betreffenden Spalte:

$position.any_other_attr => ‘’, $position.any_other_attr|print_r => 1, $position.any_other_attr|var_dump => “NULL”

“heimtückisch” weil die Debug-Ausgaben alle Werte anzeigten, und weil das zur Gegenprüfung verwendete attr5 fehlerfrei funktionierte, mein neu erstelltes attr23 aber partout nicht ausgegeben wurde. Als Workaround konnte ich zum Glück noch attr7 freimachen und verwenden.

Das sollte aber auch so gehen. Du musst dann nur ggf. über positions.attribute.core->get(‚attr23‘) arbbeiten. Zugreifbar sollten die sein.

{$positions.attribute.core->get(‘any_attribute’)} ergibt: “Fatal error: Uncaught Error: Call to a member function get() on null…”

Dafür habe ich jetzt festgestellt, dass der Fehler doch auch mit dem Datentyp zusammenhängt. Die Beschränkung auf attr1…attr9 betrifft scheinbar nur Checkboxen, Textfelder lassen sich auch unter den anderen Attributnamen zugreifen, aber eben nicht über das Objekt sondern nur direkt {$position.attr21}.

Versuch mal {$positions.meta.any_attribute}