Hallo,
ich möchte mir in myUtils eine eigene Sub-Routine anlegen und darin auf die $we Variable zugreifen. Ist das möglich? Wenn ja, wie?
Hallo,
du musst die Variable als Parameter beim Aufruf der Routine mit übergeben.
Das sollte alles sein.
Gruß
Ok, das geht natürlich, finde ich aber nicht so elegant... gibt es noch eine andere Möglichkeit?
Zitat von: Marcus schrieb am Mo, 29 April 2013 16:00Ok, das geht natürlich, finde ich aber nicht so elegant... gibt es noch eine andere Möglichkeit?
TIMTOWTDI
Zuerst dachte ich: einfach importieren. Aber es gibt keine globale Variable dieses Namens und im ganzen FHEM-Verzichnis gibt es diese Variable nicht. Die Antwort lieferte ein Blick in
fhem.pl: Dort gibt es die Funktion 'AnalyzePerlCommand', die ermittelt und setzt die Variablen und ruft dann via eval deine Routine auf. Damit kann das, was zu evaluieren ist, die Variablen benutzen, deine Funktion aber nicht.
Eine Lösung: Selbst noch einmal machen - Nebeneffekt: es wird bei jedem Aufruf zweimal bestimmt, zweite Lösung: die Entwickler fragen, ob nicht einige Variablen global zur Verfügung gestellt werden können, drittens: den Rat von crissiloop befolgen (scheint mir am einfachsten :-)
<F>
Ja, ich hatte auch auf die Quellen "gegrept" und keine Zuweisung an $we gefunden. Ok, ich habs jetzt erstmal an die Methode übergeben. Gefällt mir nicht so, ist aber auch nicht tragisch.
Danke für die Hilfe.