Função @SETDATA
Revisão de 16h47min de 1 de setembro de 2026 por Endrio.korb (discussão | contribs)
A função @SETDATA permite informar uma data fixa para o comando SQL, no formato DD/MM/YYYY, que será convertida automaticamente para a sintaxe de data nativa de cada banco de dados utilizado.
Sintaxe
@SETDATA('DD/MM/YYYY')
| Nome | Banco | Descrição |
|---|---|---|
| @SETDATA | PostgreSQL | Convertido para TO_DATE('DD/MM/YYYY', 'DD/MM/YYYY') |
| @SETDATA | Oracle | Convertido para TO_DATE('DD/MM/YYYY', 'DD/MM/YYYY') |
| @SETDATA | FireBird | Convertido para CAST('YYYY-MM-DD' AS DATE) |
| @SETDATA | SQLServer | Convertido para CONVERT(DATE, 'DD/MM/YYYY', 103) |
Exemplo
Diferente de @MODOEDICAO, @MODOINSERCAO e @CADASTRO (usados nas condições de editabilidade/visibilidade de campos e botões), @SETDATA é usado diretamente dentro do texto de um comando SQL — em cadastros, consultas e relatórios — sempre que for necessário comparar uma data fixa sem se preocupar com a sintaxe de data de cada banco.
Por exemplo, para filtrar pedidos emitidos a partir de 01/01/2026:
SELECT * FROM PEDIDOS WHERE DATAEMISSAO >= @SETDATA('01/01/2026')