Hallo Thorsten Marx, Hallo Community
Zunächst einmal vielen Dank für die Antwort.
Jedoch hilft sie uns noch nicht weiter.
Das eigentliche Problem ist, wie oben beschrieben, dass das Feld-Objekt im Falle des ContentCreators (fsbutton, nicht FS_BUTTON) gar nicht übergeben wird.
Uns ist mittlerweile die Ursache bekannt. Bei der Nutzung des fsbuttons (HTML-Ausgabekanal-Definition, nicht die FS_BUTTON-Formular-Definition)
werden nur Strings, aber keine Objekte übergeben.
Die Lösung könnte die Übergabe entsprechender Identifier sein.
Hierzu ein paar Erläuterungen und abschleießend 2 Fragen:
Ziel:
Ziel ist es, nach dem Fallen lassen eines Reports auf den Button, ein im Report enthaltenes Bild in FS zu speichern und anschließend einer FS_REFERENCE zuzuweisen.
Hierfür soll der Redakteuer die Möglichkeit haben, den fsbutton (html) zu verwenden, anstelle des FS_BUTTONS (GOM).
So muss er nicht erst in die Bearbeitung des Absatzes bzw. der Seite wechseln.
Dies soll auch bei Datensätzen und bei verschachtelten Inhalten (Beispiel: fs_catalog) funktionieren.
Lösungsansatz (Der Referenzname der FS_REFERENCE lautet "st_picture", der des Buttons lautet "st_button"):
<span $CMS_VALUE(
fsbutton(
editorName:"st_button",
parameter:{
"targetField" : editorId(editorName:"st_picture")
},
callback:"refreshPage"
)
)$></span>
Anstelle der Übergabe eines Objektes (nicht möglich), wird also der Rückgabe-Wert von editorId(editorName:"st_picture") übergeben.
Wir würden die darin enthaltenen base64-Codes heraus parsen, die daraus resultierenden JSON-Werte ermitteln und so in der ausgeführten Executable das gesuchte FS_REFERENCE-Formular-Feld finden.
Das ist aber nur dann eine gute Idee, wenn die Zeichenfolge bzw. deren Aufbau und Struktur inkl. des Aufbaus des JSON sich nicht bei einem FirstSpirit-Software-Update ändert.
Zu den Fragen:
- Ist der String, den editorId(editorName:"st_picture") zurückliefert bzw. sein(e) Struktur/Aufbau update-sicher oder könnte die sich jederzeit durch ein Update von FirstSpirit ändern?
- Hat jemand andere Vorschläge, wie man oben beschriebenes Ziel erreichen kann?
Vielen Dank für jede Hilfe
Viele Grüße
Mark