Hallo zusammen,
bekomme von meiner 99_myUtils Routine folgende Fehler:
Scalar value @a[1] better written as $a[1] at ./FHEM/99_myUtils.pm line 70.
Scalar value @a[1] better written as $a[1] at ./FHEM/99_myUtils.pm line 70.
Scalar value @a[0] better written as $a[0] at ./FHEM/99_myUtils.pm line 71.
Meine 99_myUtils
sub
Good_Morning($)
{
my ($t) = @_; # Temperatur wird übergeben
my @a = split(/\./,$t); # @a[0] = Integer @a[1] = Mantisse
@a[1] = @a[1]+100;
if (@a[0] < 0) { @a[0] = abs(@a[0]);
@a[0] = @a[0]+100;
fhem("set FL.EG.gong.mp3 playTone 24,25,@a[0],29,@a[1],28 ");
}
else { @a[0] = @a[0]+100; # Nummer des MP3 entspricht jetzt dem Integer
fhem("set FL.EG.gong.mp3 playTone 24,@a[0],29,@a[1],28 ");
}
#log 5, "Integer: @a[0] Mantisse: @a[1]" ;
}
Wenn ich nun @a nach $a ändere funktionierts halt nicht mehr...
Wie kriege ich dann die Fehlermeldung weg ?
Was mache ich denn falsch ...
Gruß Klaus
ganz genau machen was da steht. nicht @a nach $a ändern sondern @a[0] in $a[0] und @a[1] in $a[1].
gruss
andre
Hallo Andre,
danke erstmal, genau das habe ich ja bereits gemacht, doch dann bekomme ich nach dem reload diese Meldungen:
Global symbol "@a" requires explicit package name at ./FHEM/99_myUtils.pm line 70
Ich check nur nicht wie er auf "@a" kommt, der String ist definitiv nicht in der myUtils ...
Kann das evtl mit dem Split zusammen hängen ?
gruß Klaus
Man Man....
ganz genau machen was da steht. nicht @a nach $a ändern sondern @a[0] in $a[0] und @a[1] in $a[1].
Klar, jetzt tuts ..