DATE_AND_TIME 유효 여부 확인
IS_VALID_DT는 년, 월, 일, 시, 분, 초 및 밀리초의 INT 값 조합이 유효한 날짜 및 시간 값인지 확인합니다. 날짜와 시간 값이 유효하면 부울 출력 플래그가 설정됩니다.
입력
첫 번째 입력: 년
두 번째 입력: 월
세 번째 입력: 일
4번째 입력: 시
5번째 입력: 분
6번째 입력: 초
7번째 입력: 밀리초
출력
결과 날짜와 시간 값이 유효하면 TRUE로 설정
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
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;
VALID: 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_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_F,IS_VALID_DT_INT!,Instance,17,0,26,9,);
B(B_VAROUT,,VALID,26,1,28,3,);
L(1,0,1,9);
END_NETWORK_BODY
END_NET_WORK
END_BODY
VALID := IS_VALID_DT_INT(YEAR := YEAR_value,
MONTH := MONTH_value,
DAY := DAY_value,
HOUR := HOUR_value,
MINUTE := MINUTE_value,
SECOND := SECOND_value,
MILLISECOND := MILLISECOND_value);