CONCAT_DATE
Recebe valores de dia, mês e ano e monta o valor DATE equivalente. É uma função pura
(sem estado; retorna o resultado diretamente).
Biblioteca: IEC_STD · Namespace: IEC · Tipo: função
Função
CONCAT_DATE
+-------------+
ANY_INT ----|YEAR |---- DATE
| |
ANY_INT ----|MONTH |
| |
ANY_INT ----|DAY |
+-------------+
Esta função aceita como parâmetros qualquer tipo do grupo ANY_INT
(ver Grupos de tipos de dados para a lista completa de tipos suportados) e retorna o
valor DATE correspondente à combinação de ano, mês e dia informada.
Nota
Esta função retorna o valor 2000-00-00 se os tipos dos parâmetros de entrada forem SINT ou USINT, pois os mesmos não suportam a faixa de valores possíveis a serem especificados.
Parâmetros
Nome |
Direção |
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|
YEAR |
IN |
ANY_INT |
2000 .. |
Ano. |
MONTH |
IN |
ANY_INT |
1 .. 12 |
Mês. |
DAY |
IN |
ANY_INT |
1 .. 31 |
Dia. |
Retorno / Saídas
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|
DATE |
— |
Data equivalente aos valores de ano, mês e dia especificados. |
Observações
O firmware do equipamento pode não suportar todos os tipos de dados definidos no padrão IEC 61131-3. Consulte Recursos dependentes de implementação da norma IEC61131-3 para restrições de implementação específicas de cada firmware.
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
cur_day : UINT; (* Dia *)
cur_mon : UINT; (* Mês *)
cur_year : UINT; (* Ano *)
cur_date : DATE; (* Data equivalente *)
END_VAR
(* ... *)
(* Exemplo 1 de chamada da função na POU *)
cur_year := 2023;
cur_mon := 11;
cur_day := 30;
cur_date := CONCAT_DATE(YEAR := cur_year, MONTH := cur_mon, DAY := cur_day);
(* retorna cur_date = DATE#2023-11-30 *)
(* ... *)
(* Exemplo 2 de chamada da função na POU *)
cur_year := 2021;
cur_mon := 10;
cur_day := 22;
cur_date := CONCAT_DATE(cur_year, cur_mon, cur_day);
(* retorna cur_date = DATE#2021-10-22 *)
(* ... *)