连接INT值以形成日期和时间
CONCAT_DT_INT连接年、月、日、时、分、秒和毫秒的INT值。结果存储在数据类型DATE_AND_TIME的输出变量中。如果输入值为无效日期或时间值,将设置布尔输出ERROR。
输入
第1个输入:年
第2个输入:月
第3个输入:日
第4个输入:时
第5个输入:分
第6个输入:秒
第7个输入:毫秒
输出
结果
如果输入值为无效日期或时间值,将设置布尔输出ERROR。
所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。
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);