kscheuing
I'm new here

Dynamisches Content-Select über define Funktion

Jump to solution

Guten Tag,

kurze Frage: Ist es möglich, eine Variable, welche ich über eine define Funktion innerhalb des <CMS_HEADER> ermittle, für ein Content-Select im selben Header zu Verwenden. Ziel der Aktion ist ein Content-Select abhängig von einem bestimmten Content, also quasi "dynamisch". Die define funktion gibt den richtigen Wert zurück, der Content-Select funktioniert allerdings trotzdem nicht.

Konkret:

<CMS_HEADER>

    <CMS_FUNCTION name="define" resultname="author_ID">

         <CMS_CDATA_PARAM name="source">

        <![CDATA[

            $CMS_IF(!#global.page.body("content").getChildren().formData.get(#global.language,"tt_author").get().isEmpty)$

                $CMS_VALUE(#global.page.body("content").getChildren().formData.get(<hier Feld>).get())$

            $CMS_ELSE$

                $CMS_VALUE(#global.pageParams.data.get(0).getValue(<hier Feld>).getValue(<hier Feld>))$

            $CMS_END_IF$

        ]]>

          </CMS_CDATA_PARAM>

    </CMS_FUNCTION>

   

    <CMS_FUNCTION name="contentSelect" resultname="fr_autor">

        <CMS_PARAM name="schema" value="schema" />

        <CMS_VALUE_PARAM name="autId" value="author_ID" />

        <QUERY entityType="author">

           <FILTERPARAM parameter="autId" datatype="java.lang.String" value="autId" />

           <EQ attribute="fs_id" datatype="java.lang.String" value="autId"/>

        </QUERY>

    </CMS_FUNCTION>

   

</CMS_HEADER>

Bin ich auf dem Holzweg oder hab ich einfach etwas übersehen ?

Vielen Dank für Hinweise!

Kai

10 Replies

Der Grund ist, dass Long.parseLong("  4  ") (mir Leerzeichen) einen Fehler liefert (den müsste man auch im Log sehen). Aber gut, wenn es jetzt funkioniert Smiley Wink

Peter