Nota sobre «Marcas de Tiempo»
Las marcas de tiempo se refieren a valores que se pueden comparar entre sí, hacer cálculos de intervalo de tiempo, etc. Pero su valor no corresponde fácilmente a segundos, días o cualquier otro valor significativo. Para obtener un valor significativo de estas «marcas de tiempo», debe utilizar las operaciones de conversión de cadenas (AtoTs y TsToA).
Para obtener los valores de tiempo actuales, puede utilizar el siguiente código:
Long Year, Month, Day, Hour, Minute, Second
string Date, TimeDate := GetDateStr //Formatted as «DD.MM.YYYY»
Time := TimeStr(GetTime) //Formatted as «hh:mm:ss»Year := StrToL(Substr(Date, 0,2))
Month := StrToL(Substr(Date, 3,2))
Day := StrToL(Substr(Date, 6,4))
Hour := StrToL(Substr(Time, 0,2))
Minute := StrToL(Substr(Time, 3,2))
Second := StrToL(Substr(Time, 6,2))
AToT
| Declaración | doble AToTs(cadena s) |
| Función | Devuelve la marca de tiempo de la hora especificada. |
| Ejemplo | doble ts ts := AToTs(’12:00:00, 01.01.2000′) |
GetDateStr
| Declaración | cadena GetDateStr |
| Función | La función devuelve una cadena con la fecha actual del sistema en el formato “TT.MM.AAAA”. |
| Ejemplo | cadena d d := getdatestr |
GetNow
| Declaración | doble GetNow |
| Función | Devuelve la marca de tiempo de la hora actual. |
| Ejemplo | doble ts ts := GetNow |
Gettime
| Declaración | largo GetTime |
| Función | La función devuelve los segundos desde la medianoche para la hora actual. |
| Ejemplo | largo s s := Gettime |
LocalTimeToUTC
| Declaración | doble LocalTimeToUTC(doble dftLocalTime) |
| Función | Convierte la marca de tiempo especificada dftLocalTime de hora local a hora UTC. |
| Ejemplo | doble dftUtcTime dftUtcTime := LocalTimeToUTC(GetNow) |
Settime
¡ADVERTENCIA! Esta función no funciona a menos que la HMI se esté ejecutando con privilegios elevados de Windows. NO recomendamos ejecutar la HMI con privilegios elevados
| Declaración | SetTime (día largo, mes largo, año largo, hora larga, minuto largo, segundo largo) |
| Función | Establece la hora actual. |
| Ejemplo | Settime(31, 12, 2000, 23, 59, 00) |
TimeStr
| Declaración | cadena TimeStr (segundos largos) |
| Función | La función calcula la hora a partir del valor segundos (segundos desde la medianoche) y devuelve una cadena en formato de hora (hh:mm:ss). |
| Ejemplo | cadena t t := timestr(36000) |
TsToA
| Declaración | cadena TsToA(doble ts) |
| Función | Devuelve la hora como una cadena de la marca de tiempo especificada. |
| Ejemplo | cadena s s := TsToA(GetNow) |
UTCToLocalTime
| Declaración | doble UTCToLocalTimeToUTC(doble dftUtcTime) |
| Función | Convierte la marca de tiempo especificada dftUtcTime de hora UTC a hora local. |
| Ejemplo | doble dftLocalTime dftLocalTime := UTCToLocalTime(GetNow) |
WeekDay
| Declaración | largo WeekDay(cadena fecha) |
| Función | La función se calcula a partir de la cadena fecha (TT.MM.AAAA) y devuelve un valor entre 0 (domingo) y 6 (sábado) |
| Ejemplo | largo w w := WeekDay(31.01.1996) |
WeekOfYear
| Declaración | semana larga del año (doble dftTimeStamp, formato n largo) |
| Función | La función calcula la semana del calendario correspondiente a partir de la marca de tiempo dftTimeStamp. Si se especifica el formato 0, el cálculo se realiza según la norma DIN 1366. Si se especifica el formato 1, el cálculo se basa en el esquema del Reino Unido/EE. UU. |
| Ejemplo | largo nSemana nSemana := WeekOfYear(ObtenerAhora, 0) |

