Scriptfehler nach Update?

Hallo zusammen!
Hab mich nun getraut auf die 4.0 RC 3 updaten :slight_smile:
Find das es super geworden ist!!! Toll!

Passt soweit alles (Level Jet, Thermo Jet, Homematic, Z-Wave)

Nun hab ich aber ein paar Script Fehler, weis aber nicht genau wo der Fehler begraben liegt??
Bzw. im Meldungsfenster werden die Gelb hinterlegt!


<?

$zahl1 = GetValueFloat (23889 /*[PV Anlage\PV Ertrag - Nutzung\Leistung]*/);
$zahl2 = GetValueFloat (11828 /*[Hardware IPS\EKM-868 (Counter) Strom Überschuss Einspeisung ins Netz\Current]*/);


$subtraktion = $zahl1 - $zahl2;

echo $subtraktion;
SetValue (45025 /*[PV Anlage\Eigennutzung PV\Leistung PV Strom]*/ , $subtraktion);
?>

<?
$jahr=date("Y");
$timestamp = mktime(0,0,0,1,1,$jahr);
$werte=AC_GetAggregatedValues(44061 /*[Archiv]*/,47011,1,$timestamp, time(),0);
SetValue(46695 /*[Wärme - Kälteenergie Verbrauch Akuell\Wärmeenergie\Tagesverbrauch]*/ , $werte[0] ['Avg']);


?>

Das ist normal, wenn du echo, print_r oder sonstige Ausgaben im Script hast.

Zum zweiten Teil müsstest du mal den Fehler posten.

Danke!!!

Ich lese auch die Harddisk aus.
Da bekomm ich eine Fehlermeldung!
Ich weis das sich hierbei etwas zur 3.4 geändert hat, aber wo ich da Ansetzen muss weis ich leider nicht ?

<?php
    $parentID = IPS_GetObject($IPS_SELF);
    $parentID = $parentID['ParentID'];

    $HDDInfo = Sys_GetHardDiskInfo();
    for ($i = 0; $i < count($HDDInfo) - 1; $i++)
    {
         SetValueString(CreateVariableByName($parentID, $HDDInfo['HDD'.$i]['LABEL'].' ('.strtoupper(substr($HDDInfo['HDD'.$i]['LETTER'], 0, -1)).')', 3, '~String'), number_format($HDDInfo['HDD'.$i]['FREE'] / pow(1024, 3), 2, ',', '.').' GiB / '.number_format($HDDInfo['HDD'.$i]['TOTAL'] / pow(1024, 3), 2, ',', '.').' GiB');
    }

    IPS_SetScriptTimer($IPS_SELF, 5*60);

    function CreateVariableByName ($id, $name, $type, $profile = "")
    {
        global $IPS_SELF;
        $vid = @IPS_GetVariableIDByName($name, $id);
        if ($vid === false)
        {
            $vid = IPS_CreateVariable($type);
            IPS_SetParent($vid, $id);
            IPS_SetName($vid, $name);
            IPS_SetInfo($vid, "this variable was created by script #$IPS_SELF");
            if ($profile !== "") { IPS_SetVariableCustomProfile($vid, $profile); }
        }
        return $vid;
    }
?>

:confused:

Welche?

$IPS_SELF gibt es seit mehreren Jahren nur noch als „Compatibility“, korrekt ist $_IPS[‚SELF‘].

Beim Ausführen des Scriptes:

Notice: Undefined index: HDD0 in C:\IP-Symcon\scripts\44975.ips.php on line 8

Bist du sicher, dass das die einzige Meldung ist?

Auf welchem OS läuft den IPS?

Doku lesen hilft.
In der Migrationsanleitung steht auch dass es kleinere Anpassungen gab.
Sys_GetHardDiskInfo — IP-Symcon :: Automatisierungssoftware

Einfach das HDD weg lassen.
Michael

Hallo
In der Version 4 hat sich etwas geaendert.
Siehe hier
https://www.symcon.de/service/dokumentation/modulreferenz/system-informationen/sys-getharddiskinfo/
Lass „HDD“ weg.

Vielen Dank!
Es hat funktioniert wenn man „HDD“ weglässt.