Ladereihenfolge der 99_xx.pm Dateien ?

Begonnen von bugster_de, 21 August 2013, 23:23:16

Vorheriges Thema - Nächstes Thema

bugster_de

Hi,

ich schon wieder mit einer Frage, auf die ich im Forum bisher noch keine Antwort gefunden habe:
wie ist denn die Reihenfolge in der FHEM die 99_xx.pm Dateien lädt?

Hintergrund: ich habe mittlerweile einiges an Perl Skripten, die ich seit geraumer Zeit auf verschiedene Dateien aufgeteilt habe, um die Lesbarkeit zu erhöhen.
99_myUtils.pm, 99_FritzBoxUtils.pm, 99_RolladenCtril.pm (Reihenfolge der Erzeugung der Dateien)

Die Ladereihenfolge ist nun 99_Fritz....pm --> 99_Roll...pm --> 99_myUtils.pm

Und das geht schief, da ich in der 99_myUtils.pm Variablen deklariert habe, die ich in der 99_RolladenCtrl.pm brauche. Wenn diese aber vor der 99_myUtils.pm geladen wird, dann geht das schief.

Interessanterweise ist die Ladereihenfolge wohl nicht vom Namen oder dem letzten Speicherdatum abhängig.
Was muss ich also tun um sicherzustellen, dass eine Datei vor der anderen geladen wird?

justme1968

wenn du eine bestimmte reihenfolge auf jedenfall brauchst ist es das beste wenn du dich nicht auf irgendwelche zufälle verlässt sondern z.b. in 99_RolladenCtrl.pm mit 'use 99_myUtils' bekannt machst das du das andere file brauchst. dann kümmert perl sich von alleine ums laden.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

bugster_de

Hi,

Danke für die schnelle Antwort.

Der Verquickung der Dateien mittels use wollte ich zwar vermeiden, aber dann mache ich das mal so. Werde mir dann eine Datei anlegen, in der nur die globalen Variablen drin sind (z.B. 99_myglobals.pm) udn diese dann mit use einbinden.

viele Grüße

betateilchen

Zitat von: bugster_de schrieb am Mi, 21 August 2013 23:23Die Ladereihenfolge ist nun 99_Fritz....pm --> 99_Roll...pm --> 99_myUtils.pm
...
Interessanterweise ist die Ladereihenfolge wohl nicht vom Namen oder dem letzten Speicherdatum abhängig.

Für mich sieht das aber sehr wohl nach einer alphabetischen Reihenfolge aus:

99_F
99_R
99_m

(Kleinbuchstaben kommen im Zeichensatz immer nach den Großbuchstaben)

Probier doch mal 99_00myUtils, 99_01FritzkotzUtils, 99_02RollladenUtils dann weißt Du es genau.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

bugster_de

tja, da war das wieder mit den Bäumen, dem Wald und was man alles so vor lauter, lauter nicht sieht :-)

Klar, das probiere ich gleich aus !!!

Puschel74

Hallo,

Achtung OT!

Zitat99_01FritzkotzUtils

Da mag wohl einer keine FritzBox :-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

PeMue

ZitatDa mag wohl einer keine FritzBox :-)
Das sind halt die eingefleischten "Linuxer" ...
Ich nehme, was da ist und sowieso schon läuft.

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

bugster_de

So, ich habe jetzt mal die 99_myUtils in 99_AA_myUtils umbenannt und siehe da es geht !

ZitatDa mag wohl einer keine FritzBox :-)

ZitatDas sind halt die eingefleischten "Linuxer" ...

und was läuft auf der Fritzbox? OS9 wird es ja eher nicht sein, oder?

Puschel74

Hallo,

Zitatund was läuft auf der Fritzbox?

Kein vollwertiges Linux ;-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

betateilchen

Zitat von: Puschel74 schrieb am Fr, 23 August 2013 17:37Kein vollwertiges Linux ;-)

Wie alles bei der Fritzkotz: Von allem ein bißchen, aber nix richtig... halbherzig von vorne bis hinten.

Das Letzte was von AVM wirklich technisch super war, waren die ISDN-Karten Anfang bis Mitte der 90er Jahre. Ich denke noch heute mit Wehmut an meine B1 zurück.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

bugster_de

Hi,

naja, das Thema kann man auch endlos diskutieren :-) Meine 7390 steht nun seit zwei Jahren da und macht einfach was sie soll und im Vergleich zu anderen Routren macht sie das immer ein bisschen besser wie alle anderen. Und wer mehr Linux braucht braucht halt dann was anderes.