dheim
I'm new here

getStoreElement in BaseContext

Jump to solution

Hallo zusammen,

wir suchen gerade nach einem direkteren Weg zum Aufruf eines Skriptes als über das Kontextmenü und hatten uns überlegt einen FS_Button, der auf Seiten nur in der Preview angezeigt wird dafür zu verwenden. Das Problem ist, dass dieses Skript nur im BaseContext und nahezu keine Methoden einem an die Hand gegeben werden. Gibt es eine Möglichkeit hier an das aktuelle StoreElement zu gelangen oder ist das unmöglich?

Danke und Grüße

Dominik Heim

0 Kudos
1 Solution

Accepted Solutions
MichaelaReydt
Community Manager

Hallo,

es ist möglich an das aktuelle StoreElement zu gelangen.

Laut der Dokumentation des FS_Buttons im ODFS stehen verschiedene Variablen zur Verfügung, auf die im Skript-Kontext direkt zugegriffen werden kann (Siehe Absatz "onClick").

Eine von diesen Variablen ist element

Zitat:

element:
Zugriff auf Informationen des Baum-Knotens, in dem sich die Eingabekomponente befindet, z. B. Absatz, Seite oder Datensatz. Mithilfe des Systemobjekts #field kann hier auf die Informationen einzelner Eingabekomponenten zugegriffen werden (siehe dazu auch Tags PARAMS / PARAM).
Die Variable element ist nicht verfügbar, wenn das Formular, in dem der FS_BUTTON eingebunden wurde, über ein Skript innerhalb eines Arbeitsablaufs geöffnet wurde.
Auf die zurückgelieferten Werte können Methoden des Interface de.espirit.firstspirit.access.store.IDProvider ausgeführt werden, befindet sich die Eingabekomponente in einer Tabellenvorlage, speziell die Methoden des Interface de.espirit.firstspirit.access.store.contentstore.Dataset.

Wenn das Skript direkt aufgerufen wird, sollte das aktuelle Element somit bereits verfügbar sein, ohne dass es zunächst ermittelt werden muss.

Viele Grüße

Michalea

View solution in original post

0 Kudos
2 Replies
MichaelaReydt
Community Manager

Hallo,

es ist möglich an das aktuelle StoreElement zu gelangen.

Laut der Dokumentation des FS_Buttons im ODFS stehen verschiedene Variablen zur Verfügung, auf die im Skript-Kontext direkt zugegriffen werden kann (Siehe Absatz "onClick").

Eine von diesen Variablen ist element

Zitat:

element:
Zugriff auf Informationen des Baum-Knotens, in dem sich die Eingabekomponente befindet, z. B. Absatz, Seite oder Datensatz. Mithilfe des Systemobjekts #field kann hier auf die Informationen einzelner Eingabekomponenten zugegriffen werden (siehe dazu auch Tags PARAMS / PARAM).
Die Variable element ist nicht verfügbar, wenn das Formular, in dem der FS_BUTTON eingebunden wurde, über ein Skript innerhalb eines Arbeitsablaufs geöffnet wurde.
Auf die zurückgelieferten Werte können Methoden des Interface de.espirit.firstspirit.access.store.IDProvider ausgeführt werden, befindet sich die Eingabekomponente in einer Tabellenvorlage, speziell die Methoden des Interface de.espirit.firstspirit.access.store.contentstore.Dataset.

Wenn das Skript direkt aufgerufen wird, sollte das aktuelle Element somit bereits verfügbar sein, ohne dass es zunächst ermittelt werden muss.

Viele Grüße

Michalea

0 Kudos
thmarx
I'm new here

Hallo Dominik,

der BaseContext implementiert auch den SpecialistsBroker. Du kannst dir damit dann den entsprechenden Specialist holen, z.B.

SpecialistsBroker.requireSpecialist(StoreElementAgent.TYPE) oder SpecialistsBroker.requireSpecialist(StoreAgent.TYPE)

Damit kommst du dann auch an die Elemente dran.

[EDIT]: Ups, hab gerade gesehen, dass du ja an das aktuelle Element dran kommen willst.

Viele Grüße

Thorsten

0 Kudos