#VAR."input time" := #TIME;
//Initialisierung
#IW.Tage := 0;
#IW.Stunden := 0;
#IW.Minuten := 0;
#IW.Sekunden := 0;
#VAR.Tage := '00';
#VAR.Stunden := '00';
#VAR.Minuten := '00';
#VAR.Sekunden := '00';
//Berechne die Tage, 1 Tag = 86400s = 86400000ms.
//Subtrahiere solange einen Tag, bis der Wert < 86400000ms.
//Inkrementiere jeweils die Anzahl der Tage um 1.
WHILE #VAR."input time" > 86400000 DO
#VAR."input time" := #VAR."input time" - 86400000;
#IW.Tage := #IW.Tage + 1;
END_WHILE;
//Berechne die Stunden, 1 Stunde = 3600s = 36000000ms.
//Subtrahiere solange eine Stunde, bis der Wert < 36000000ms.
//Inkrementiere jeweils die Anzahl der Stunden um 1.
WHILE #VAR."input time" > 3600000 DO
#VAR."input time" := #VAR."input time" - 3600000;
#IW.Stunden := #IW.Stunden + 1;
END_WHILE;
//Berechne die Minuten, 1 Minute = 60s = 600000ms.
//Subtrahiere solange eine Minute, bis der Wert < 600000ms.
//Inkrementiere jeweils die Anzahl der Minuten um 1.
WHILE #VAR."input time" > 60000 DO
#VAR."input time" := #VAR."input time" - 60000;
#IW.Minuten := #IW.Minuten + 1;
END_WHILE;
//Berechne die Sekunden, 1 Sekunde = 1000ms.
//Subtrahiere solange eine Sekunde, bis der Wert < 1000ms.
//Inkrementiere jeweils die Anzahl der Sekunden um 1.
WHILE #VAR."input time" > 0 DO
#VAR."input time" := #VAR."input time" - 1000;
#IW.Sekunden := #IW.Sekunden + 1;
END_WHILE;
//Speichere Millisekunden
#tempSec := #VAR."input time";
// Int zu String konvertieren
// Tage
VAL_STRG(IN:=#IW.Tage,
SIZE:=2,
PREC:=0,
FORMAT:=16#0000,
P:=1,
OUT=>#VAR.Tage);
// Stunden
VAL_STRG(IN := #IW.Stunden,
SIZE := 2,
PREC := 0,
FORMAT := 16#0000,
P := 1,
OUT => #VAR.Stunden);
// Minuten
VAL_STRG(IN := #IW.Minuten,
SIZE := 2,
PREC := 0,
FORMAT := 16#0000,
P := 1,
OUT => #VAR.Minuten);
// Sekunden
VAL_STRG(IN := #IW.Sekunden,
SIZE := 2,
PREC := 0,
FORMAT := 16#0000,
P := 1,
OUT => #VAR.Sekunden);
// Wenn Variablen kleiner 10 sind wird die erste Ziffer mit '0' vorbelegt
// Wenn die Variable kleiner oder gleich 0 ist wird die Variable mit '00' vorbelegt
IF #IW.Tage < 10 THEN
#VAR.Tage[1] := '0';
END_IF;
IF #IW.Tage <= 0 THEN
#VAR.Tage := '00';
END_IF;
IF #IW.Stunden < 10 THEN
#VAR.Stunden[1] := '0';
END_IF;
IF #IW.Stunden <= 0 THEN
#VAR.Stunden := '00';
END_IF;
IF #IW.Minuten < 10 THEN
#VAR.Minuten[1] := '0';
END_IF;
IF #IW.Minuten <= 0 THEN
#VAR.Minuten := '00';
END_IF;
IF #IW.Sekunden < 10 THEN
#VAR.Sekunden[1] := '0';
END_IF;
IF #IW.Sekunden <= 0 THEN
#VAR.Sekunden := '00';
END_IF;
// Zeichenkette Zusammensetzen
//
// Format DD:HH:MM:SS
#VAR."DD:HH:MM:SS"[1] := #VAR.Tage[1];
#VAR."DD:HH:MM:SS"[2] := #VAR.Tage[2];
#VAR."DD:HH:MM:SS"[3] := #para.Trennzeichen[1];
#VAR."DD:HH:MM:SS"[4] := #VAR.Stunden[1];
#VAR."DD:HH:MM:SS"[5] := #VAR.Stunden[2];
#VAR."DD:HH:MM:SS"[6] := #para.Trennzeichen[1];
#VAR."DD:HH:MM:SS"[7] := #VAR.Minuten[1];
#VAR."DD:HH:MM:SS"[8] := #VAR.Minuten[2];
#VAR."DD:HH:MM:SS"[9] := #para.Trennzeichen[1];
#VAR."DD:HH:MM:SS"[10] := #VAR.Sekunden[1];
#VAR."DD:HH:MM:SS"[11] := #VAR.Sekunden[2];
// Format DD:HH:MM
#VAR."DD:HH:MM"[1] := #VAR.Tage[1];
#VAR."DD:HH:MM"[2] := #VAR.Tage[2];
#VAR."DD:HH:MM"[3] := #para.Trennzeichen[1];
#VAR."DD:HH:MM"[4] := #VAR.Stunden[1];
#VAR."DD:HH:MM"[5] := #VAR.Stunden[2];
#VAR."DD:HH:MM"[6] := #para.Trennzeichen[1];
#VAR."DD:HH:MM"[7] := #VAR.Minuten[1];
#VAR."DD:HH:MM"[8] := #VAR.Minuten[2];
// Format HH:MM:SS
#VAR."HH:MM:SS"[1] := #VAR.Stunden[1];
#VAR."HH:MM:SS"[2] := #VAR.Stunden[2];
#VAR."HH:MM:SS"[3] := #para.Trennzeichen[1];
#VAR."HH:MM:SS"[4] := #VAR.Minuten[1];
#VAR."HH:MM:SS"[5] := #VAR.Minuten[2];
#VAR."HH:MM:SS"[6] := #para.Trennzeichen[1];
#VAR."HH:MM:SS"[7] := #VAR.Sekunden[1];
#VAR."HH:MM:SS"[8] := #VAR.Sekunden[2];
// Format HH:MM
#VAR."HH:MM"[1] := #VAR.Stunden[1];
#VAR."HH:MM"[2] := #VAR.Stunden[2];
#VAR."HH:MM"[3] := #para.Trennzeichen[1];
#VAR."HH:MM"[4] := #VAR.Minuten[1];
#VAR."HH:MM"[5] := #VAR.Minuten[2];
// Format MM:SS
#VAR."MM:SS"[1] := #VAR.Minuten[1];
#VAR."MM:SS"[2] := #VAR.Minuten[2];
#VAR."MM:SS"[3] := #para.Trennzeichen[1];
#VAR."MM:SS"[4] := #VAR.Sekunden[1];
#VAR."MM:SS"[5] := #VAR.Sekunden[2];
// Ausgänge zuweisen
//
#"DD:HH:MM:SS" := #VAR."DD:HH:MM:SS";
#"DD:HH:MM" := #VAR."DD:HH:MM";
#"HH:MM:SS" := #VAR."HH:MM:SS";
#"HH:MM" := #VAR."HH:MM";
#"MM:SS" := #VAR."MM:SS";