Speicherung der MyUtils zeigt Fehler an

Begonnen von Invers, 29 Juli 2024, 06:35:24

Vorheriges Thema - Nächstes Thema

Invers

Wenn ich die MyUtils speichere, wird folgendes angezeigt:
ERROR:
[b]Undefined subroutine &main::myUtils_Initialize called at fhem.pl line 2784.[/b]

Das passiert auch, wenn die Datei leer ist (nur zum Test).

Beim Start von fhem wird auch offenbar die MyUtils doppelt eingelesen. Alle Subs redefined.

Ist da was bekannt und was kann man dagegen tun?
fhem ist auf dem neuesten Stand.

Danke im Voraus.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

JoWiemann

Hallo,

dann poste doch mal Deine myUtils. Aktuell funktionieren die Glaskugeln nicht.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Invers

Die Glaskugel wird nicht nötig sein. Ich schrieb doch, dass der Fehler auch bei Speicherung einer leeren MyUtils auftritt. Die kann man nicht posten? :-)
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

RalfRog

Vielleicht liegt es daran:
ZitatEine ,leere' Programmdatei muss grundsätzlich folgenden Grundstruktur besitzen:
package main;
 use strict;
 use warnings;

 sub
 myUtils_Initialize($$)
 {
   my ($hash) = @_;
 }
 1;

Aus: https://wiki.fhem.de/wiki/99_myUtils_anlegen

Gruß Ralf


FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

Invers

OK, wenn ich die Zeilen alleine speichere, wird kein Fehler gemeldet.


Dann kann ich die fehlerhafte Routine finden.
Vielen Dank, hat gut geholfen.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

JoWiemann

Hallo,

bin immer wieder erstaunt. Im FhemWeb unter dem Menüpunkt ,,Edit files" gibt es eine myUtilsTemplate.pm

Nun frage ich mich, warum Rudi sich da die Mühe gemacht hat.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Invers

Was hätte ich da wohl in meinem Fall lernen sollen?

Übrigens habe ich keine fehlerhafte Routine in der Datei gefunden. Ich habe in die (fast) leere Datei meine Subs nacheinander reinkopiert. Der Fehler ist seitdem weg.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

JoWiemann

Zitat von: Invers am 29 Juli 2024, 18:02:53Was hätte ich da wohl in meinem Fall lernen sollen?

Übrigens habe ich keine fehlerhafte Routine in der Datei gefunden. Ich habe in die (fast) leere Datei meine Subs nacheinander reinkopiert. Der Fehler ist seitdem weg.

Dass eine myUtils einem festgelegten Basisaufbau folgen muss? Im Weiteren wäre interessant zu wissen, wie Du die myUtils editiert hast. Nicht jedes Tool, gerade bei Windows, macht, was man erwartet. Oft ist es es ein für Perl falscher Zeilenumbruch oder ein falscher Zeichensatz. Ganz blöd sind nicht sichtbare Zeichen, wie sie gerne bei Windows Tools oder bei Copy/Paste vorkommen.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Invers

Der Basisaufbau war/ist doch ok und läuft ja schon seit Jahren perfekt.
Der Basisaufbau ist ja nur bei einem Neubeginn wichtig.

Ich editiere die Datei sonst ausschließlich mit dem Editor von fhem.
Diesmal habe ich aufgrund des Fehlers den Inhalt allerdings komplett in Neotepad++ kopiert und dann wieder zurück in die myUtils.

Und wie gesagt, danach funktionierte alles wieder ohne Änderungen.

Nicht sichtbare Zeichen hatte ich auch im Verdacht, aber eher wegen Speicherfehler auf SSD.

Aber egal, läuft ja nun.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2