Constante : Date et Heure
Spécification de date 32 bits : DATE
Utilisez le DATE
mot-clé (D
) pour spécifier une date.
Syntaxe
<date keyword>#<year>-<month>-<day> <date keyword> : DATE | date | D | d <year> : 1970-2106 <month> : 1-12 <day> : 1-31
DATE
les littéraux sont traités en interne comme type de données DWORD
, ce qui correspond à une limite supérieure de DATE#2106-2-7
.
PROGRAM PRG_Date VAR dateStart : DATE := DATE#2018-8-8; dateEnd : DATE := D#2018-8-31; dateCompare: DATE := date#1996-05-06; xIsDuringTheTime: BOOL; dateEarliest : DATE := d#1970-1-1; // = 0 dateLatest : DATE := DATE#2106-2-7; // = 4294967295 END_VAR IF dateStart < dateCompare THEN IF dateCompare < dateEnd THEN xIsDuringTheTime := TRUE; END_IF; END_IF
Spécification de date 64 bits : LDATE
Utilisez le LDATE
mot-clé (LD
) pour spécifier une date.
Syntaxe
<date keyword>#<year>-<month>-<day> <date keyword> : LDATE | ldate | LD | ld <year> : 1677-2262 <month> : 1-12 <day> : 1-31
LDATE
les littéraux sont traités en interne comme type de données LWORD
, ce qui correspond à une limite supérieure de DATE#2554-7-21
.
PROGRAM PRG_Ldate VAR ldateStart : LDATE := LDATE#2018-8-8; ldateEnd : LDATE := ldate#2018-8-31; ldateCompare: LDATE := LD#1996-05-06; xIsDuringTheTime: BOOL; ldateEarliest : LDATE := ld#1677-9-22; // = 0 ldateLatest : LDATE := LDATE#2262-4-11; // = 16#7FFFB21D1DB10000 lwValue: LWORD; END_VAR IF ldateStart < ldateCompare THEN IF ldateCompare < ldateEnd THEN xIsDuringTheTime := TRUE; END_IF; END_IF lwValue := LDATE_TO_LWORD(ldateCompare);
Spécification de date et d'heure 32 bits : DATE_AND_TIME
Utilisez le DATE_AND_TIME
mot-clé (DT
) pour spécifier une date et une heure.
Syntaxe
<date and time keyword>#<date and time value> <date and time keyword> : DATE_AND_TIME | date_and_time | DT | dt <date and time value> : <year>-<month>-<day>-<hour>:<minute>:<second> <year> : 1970-2106 <month> : 1-12 <day> : 1-31 <hour> : 0-24 <minute> : 0-59 <second> : 0-59
DATE_AND_TIME
les littéraux sont traités en interne comme type de données DWORD
. L'heure est traitée en secondes et peut donc prendre des valeurs du 1er janvier 1970 00:00 au 7 février 2106 06:28:15.
PROGRAM PLC_PRG VAR dtDate : DATE_AND_TIME := DATE_AND_TIME#1996-05-06-15:36:30; dtDate1: DATE_AND_TIME := DT#1972-03-29-00:00:00; dtDate2: DATE_AND_TIME := DT#2018-08-08-13:33:20.5; dtEarliest : DATE_AND_TIME := DATE_AND_TIME#1970-1-1-00:00:00; // 0 dtLatest : DATE_AND_TIME := DATE_AND_TIME#2106-2-7-6:28:15; // 4294967295 END_VAR
Spécifications de date et d'heure 64 bits : LDATE_AND_TIME
Utilisez le LDATE_AND_TIME
mot-clé (LDT
) pour spécifier une date et une heure.
Syntaxe
<date and time keyword>#<long date and time value> <date and time keyword> : LDATE_AND_TIME | ldate_and_time | LDT | ldt <date and time value> : <year>-<month>-<day>-<hour>:<minute>:<second> <year> : 1677-2262 <month> : 1-12 <day> : 1-31 <hour> : 0-24 <minute> : 0-59 <second> : 0-59
LDATE_AND_TIME#2262-4-10-23:59:59.99999999
LDATE_AND_TIME
les littéraux sont traités en interne comme des types de données LWORD
. Le temps est traité en nanosecondes et peut donc avoir des valeurs allant du 21 septembre 1677 00:12:43.145 224192 au 11 avril 2262 23:47:16.854 775807
PROGRAM PLC_PRG VAR ldtDate : LDATE_AND_TIME := LDATE_AND_TIME#1996-05-06-15:36:30; ldtDate1: LDATE_AND_TIME := LDT#1972-03-29-00:00:00; ldtDate2: LDATE_AND_TIME := LDT#2018-08-08-13:33:20.5; dtEarliest : LDT := LDT#1677-9-21-0:12:43.145224192; // 0 dtLatest : LDT := LDT#2262-4-11-23:47:16.854775807; // = 16#7FFFFFFFFFFFFFFF END_VAR
Spécification de l'heure 32 bits : TIME_OF_DAY
Utilisez le TIME_OF_DAY
mot-clé (TOD
) pour spécifier une heure.
Syntaxe
<time keyword>#<time value> <time keyword> : TIME_OF_DAY | time_of_day | TOD | tod <time value> : <hour>:<minute>:<second> <hour> : 0-23 <minute> : 0-59 <second> : 0.000-59.999
Vous pouvez également spécifier des fractions de seconde. TIME_OF_DAY
les littéraux sont traités en interne comme DWORD
et la valeur est résolue en millisecondes.
PROGRAM POU VAR todClockTime : TIME_OF_DAY := TIME_OF_DAY#15:36:30.123; todEarliest : TIME_OF_DAY := TIME_OF_DAY#0:0:0.000; todLatest : TOD := TOD#23:59:59.999; END_VAR
Spécification de l'heure 64 bits : LTIME_OF_DAY
Utilisez le LTIME_OF_DAY
mot-clé (LTOD
) pour spécifier une heure.
Syntaxe
<time keyword>#<time value> <time keyword> : LTIME_OF_DAY | ltime_of_day | LTOD | ltod <time value> : <hour>:<minute>:<second> <hour> : 0-23 <minute> : 0-59 <second> : 0.000-59.999999999
Vous pouvez également spécifier des fractions de seconde. LTIME_OF_DAY
les littéraux sont traités en interne comme LWORD
et la valeur est résolue en nanosecondes.
PROGRAM POU VAR ltodClockTime : LTIME_OF_DAY := TIME_OF_DAY#15:36:30.123456789; todEarliest : TIME_OF_DAY := TIME_OF_DAY#0:0:0; todLatest : TOD := TOD#23:59:59.999999999; END_VAR
Pour plus d'informations, consultez : Type de données : DATE