Concaténer des valeurs INT pour former date et heure
CONCAT_DT_INT concatène des valeurs INT pour l’année, mois, jour, heure, minute, seconde et milliseconde. Le résultat est sauvegardé dans la variable de sortie du type de données DATE_AND_TIME. La sortie booléenne ERROR est activée si les valeurs d’entrée sont des valeurs de date et heure invalides.
Entrée
1e entrée : année
2e entrée : mois
3e entrée : jour
4e entrée : heure
5e entrée : minute
6e entrée : seconde
7e entrée : milliseconde
Sortie
Résultat
La sortie booléenne ERROR est activée si les valeurs d’entrée sont des valeurs de date et heure invalides.
Instruction inverse :SPLIT_DT_INT
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
DT_value: DATE_AND_TIME:=DT#2001-01-01-00:00:00;
YEAR_value: INT:=2011;
MONTH_value: INT:=12;
DAY_value: INT:=24;
HOUR_value: INT:=18;
MINUTE_value: INT:=29;
SECOND_value: INT:=59;
MILLISECOND_value: INT:=0;
ERROR: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 9 ;
NETWORK_BODY
B(B_F,CONCAT_DT_INT!,Instance,17,0,26,9,,?DYEAR?DMONTH?DDAY?DHOUR?DMINUTE?DSECOND?DMILLISECOND?C?CERROR);
B(B_VARIN,,YEAR_value,15,1,17,3,);
B(B_VARIN,,MONTH_value,15,2,17,4,);
B(B_VARIN,,DAY_value,15,3,17,5,);
B(B_VARIN,,HOUR_value,15,4,17,6,);
B(B_VARIN,,MINUTE_value,15,5,17,7,);
B(B_VARIN,,SECOND_value,15,6,17,8,);
B(B_VARIN,,MILLISECOND_value,15,7,17,9,);
B(B_VAROUT,,DT_value,26,1,28,3,);
B(B_VAROUT,,ERROR,26,2,28,4,);
L(1,0,1,9);
END_NETWORK_BODY
END_NET_WORK
END_BODY
DT_value := CONCAT_DT_INT(YEAR := YEAR_value,
MONTH := MONTH_value,
DAY := DAY_value,
HOUR := HOUR_value,
MINUTE := MINUTE_value,
SECOND := SECOND_value,
MILLISECOND := MILLISECOND_value,
ERROR => ERROR);