Nachdem ich aus dem Forum jetzt schon soviel herausziehen konnte will ich auch mal was einstellen.
Ein wenig Stolz: Mein 1. aufwänigeres Script
<?
// Externe Variablen
$Eingabewert = $IPS_VALUE;
$Ausgabestring = 47004 /*[...\Rolladen Schaltuhr\Montag - Freitag schließen]*/;
$CPUvariable=13262 /*[...\Rolladen Schaltuhr\Montag - Freitag schließen\Steuerung DB100.dbd8]*/;
// Berechnungen
$UhrSoll=preg_replace("/\D/","",$Eingabewert)/100; // Zahlen aus String aufbereiten
$UhrSollStd= floor($UhrSoll); // Stunden aufbereiten
$UhrSollMin=round(($UhrSoll-$UhrSollStd)*100,2); // Minuten aufbereiten
// Ausgeben
if ($UhrSollStd<=23 and $UhrSollMin<=59)
{
SetValueString($Ausgabestring,"um ".$UhrSollStd." Uhr ".str_pad($UhrSollMin, 2, "0", STR_PAD_LEFT)); // Ausgabe WebFront
S7_WriteInteger($CPUvariable,$UhrSollStd*3600000+$UhrSollMin*60000); // Ausgabe S7
}
?>
Vorgegeben wird über eine Stringvariable (~string) via Webfront.
Das Ganze ist sicherlich nicht nur für S7 Nutzer verwendbar, auch aus dem letzten Eingabeschrott wird noch eine Uhrzeit ausgelesen (DAU tauglich?)
Kritik, Verbesserungsvorschläge, Kommentare und Tester willkommen.