(gelöst in #3) ERROR Meldung beim erstellen einer 99_MyUtlis.pm

Begonnen von MacDad, 15 Oktober 2015, 18:08:14

Vorheriges Thema - Nächstes Thema

MacDad

Moin,

habe nach WIKI-Anleitung eine 99_MyUtils.pm angelegt und meine Heizungssteuerung hinzugefügt.
Beim Speicher - Save as - bekomme ich folgende Meldung:

ERROR:
Illegal declaration of subroutine main::SetTempList_EG at ./FHEM/99_MyUtils.pm line 26.


Ich finde den Fehler aber nicht  :'(

Könnte mir bitte jemand die Augen öffnen?

Vielen Dank,
Gruß Dirk

##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;

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

# Enter you functions below _this_ line.

######## Wohnzimmer Heizung Fenster Temperatur setzen ########
#Nach dem Speichern das Thermostat aktualisieren mit dem Kommandozeilenbefehl

{SetTempList_EG.woz.HZT.Fenster_Clima}
sub
SetTempList_EG.woz.HZT.Fenster_Clima()
{
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListMon prep 06:00 17.0 10:00 21.0 16:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListTue prep 06:00 17.0 10:00 21.0 16:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListWed prep 06:00 17.0 10:00 21.0 16:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListThu prep 06:00 17.0 10:00 21.0 16:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListFri prep 06:00 17.0 10:00 21.0 16:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListSat prep 07:00 17.0 21:30 21.0 24:00 17.0")};
{ fhem ("set EG.woz.HZT.Fenster_Clima tempListSun exec 07:00 17.0 21:30 21.0 24:00 17.0")};
}

1;


Im Loglife steht noch:
PERL WARNING: Subroutine MyUtils_Initialize redefined at ./FHEM/99_MyUtils.pm line 15.
RPI 2 mit FHEM 5.8
FB 7390 OS 6.83 | Synology DS 214+ DSM
VU+: 1 x Solo4k & 2 Solo2 VTi 11.xx.xx
SONOS: BRIDGE | 8x PLAY:1 | 1x PLAY:5 | 1x SUB Vers. 8.1.1
HMLAN: HM-Sec-SC-2 |-Sec-RHS |-CC-RT-DN |-LC-Bl1PBU-FM |-LC-Sw1PBU-FM |-LC-Sw1-FM |-ES-PMSw1-Pl |-WDS10-TH-O |-PBI-4-F

marvin78


MacDad

Moin marvin,

Danke für die schnelle Antwort,
aber wie bekomme ich jetzt das Ganze zum laufen?
Einfach den Namen hier ändern?

Gruß Dirk
RPI 2 mit FHEM 5.8
FB 7390 OS 6.83 | Synology DS 214+ DSM
VU+: 1 x Solo4k & 2 Solo2 VTi 11.xx.xx
SONOS: BRIDGE | 8x PLAY:1 | 1x PLAY:5 | 1x SUB Vers. 8.1.1
HMLAN: HM-Sec-SC-2 |-Sec-RHS |-CC-RT-DN |-LC-Bl1PBU-FM |-LC-Sw1PBU-FM |-LC-Sw1-FM |-ES-PMSw1-Pl |-WDS10-TH-O |-PBI-4-F

marvin78

Ein wenig mit den Dingen, die du machst auseinandersetzen würde vermutlich helfen. Einfach nur kopieren macht selten Sinn.

Die sub muss nicht den Namen des Devices enthalten. Also aus

sub
SetTempList_EG.woz.HZT.Fenster_Clima()


wird sowas wie

sub
SetTempList_IRGENDWAS()


Bitte eigne dir ein paar Grundlagen von Perl an.

MacDad

Danke marvin

so klappt es :)

Werde Deinen Rat bzgl. Grundlagen vertiefen. Jetzt kommt ja bald die dunkle Jahreszeit und damit auch verbunden mehr Zeit zum lesen und probieren.

Gruß Dirk
RPI 2 mit FHEM 5.8
FB 7390 OS 6.83 | Synology DS 214+ DSM
VU+: 1 x Solo4k & 2 Solo2 VTi 11.xx.xx
SONOS: BRIDGE | 8x PLAY:1 | 1x PLAY:5 | 1x SUB Vers. 8.1.1
HMLAN: HM-Sec-SC-2 |-Sec-RHS |-CC-RT-DN |-LC-Bl1PBU-FM |-LC-Sw1PBU-FM |-LC-Sw1-FM |-ES-PMSw1-Pl |-WDS10-TH-O |-PBI-4-F