johni
I'm new here

Variabler Variablenname in Context

Jump to solution

Ich versuche im globalen Context (in den Projekteinstellungen) verschiedene Variablen zu setzen.

Der name der Variablen soll dynamisch zusammengesetzt werden:

$CMS_SET(#global.context("root")["generation_setting_" + myVar.key],myVar.value)$

Leider wird der gwewünschte name komplett als String interpretiert und der resultierende Name ist: "generation_setting_" + myVar.key

Wie kann ich das Problem lösen?

Labels (1)
1 Solution

Accepted Solutions
hoebbel
Crownpeak employee
Crownpeak employee

Re: Variabler Variablenname in Context

Jump to solution

Hallo Herr Zinnau,

was ist denn myVar.key für ein Objekttyp? {Tipp: einfach mal mit $CMS_VALUE(myVar.key.class)$ ausgeben Smiley Wink }

ich habe es gerade mal mit einem sehr einfachen Beispiel in der aktuellen Version 4.2.461 getestet, da funktioniert es einwandfrei:

$CMS_FOR(col,[0..20])$

$CMS_SET(void,#global.getContext().setVariableValue("Varnumber" + col,col*col))$

$CMS_END_FOR$

$CMS_FOR(col,[0..20])$

$CMS_VALUE(#global.getContext().getVariableValue("Varnumber" + col))$<br>

$CMS_END_FOR$

Viele Grüsse aus Dortmund,

  Holger Höbbel

View solution in original post

4 Replies
feddersen
Community Manager
Community Manager

Re: Variabler Variablenname in Context

Jump to solution

Variable variables sollte ihnen weiterhelfen.

hoebbel
Crownpeak employee
Crownpeak employee

Re: Variabler Variablenname in Context

Jump to solution

Hallo Herr Zinnau,

was ist denn myVar.key für ein Objekttyp? {Tipp: einfach mal mit $CMS_VALUE(myVar.key.class)$ ausgeben Smiley Wink }

ich habe es gerade mal mit einem sehr einfachen Beispiel in der aktuellen Version 4.2.461 getestet, da funktioniert es einwandfrei:

$CMS_FOR(col,[0..20])$

$CMS_SET(void,#global.getContext().setVariableValue("Varnumber" + col,col*col))$

$CMS_END_FOR$

$CMS_FOR(col,[0..20])$

$CMS_VALUE(#global.getContext().getVariableValue("Varnumber" + col))$<br>

$CMS_END_FOR$

Viele Grüsse aus Dortmund,

  Holger Höbbel

johni
I'm new here

Re: Variabler Variablenname in Context

Jump to solution

Hallo Herr Höbbel,

danke, setVariableValue war des Rätsels Lösung.

Grüße,

Johannes Zinnau

0 Kudos
Peter_Jodeleit
Crownpeak employee
Crownpeak employee

Re: Variabler Variablenname in Context

Jump to solution

$CMS_SET(#global.context["varnumber" + col], col*col)$ sollte es auch tun.

Peter
0 Kudos