Mudanças entre as edições de "Função @SETDATA"
(Criou página com 'A função @CADASTRO retorna o nome do cadastro (Query.Cadastro) correspondente à tela/registro atual. Diferente do nome da tabela física, o cadastro identifica a tela espec...') |
|||
| Linha 1: | Linha 1: | ||
| − | A função @ | + | 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'''=== | ==='''Sintaxe'''=== | ||
| + | |||
| + | @SETDATA('DD/MM/YYYY') | ||
{| class="wikitable" style="width: 100%" | {| class="wikitable" style="width: 100%" | ||
| Linha 8: | Linha 10: | ||
!Descrição | !Descrição | ||
|- | |- | ||
| − | |@ | + | |@SETDATA |
|PostgreSQL | |PostgreSQL | ||
| − | | | + | |Convertido para TO_DATE('DD/MM/YYYY', 'DD/MM/YYYY') |
|- | |- | ||
|- | |- | ||
| − | |@ | + | |@SETDATA |
|Oracle | |Oracle | ||
| − | | | + | |Convertido para TO_DATE('DD/MM/YYYY', 'DD/MM/YYYY') |
|- | |- | ||
| − | |@ | + | |@SETDATA |
|FireBird | |FireBird | ||
| − | | | + | |Convertido para CAST('YYYY-MM-DD' AS DATE) |
|- | |- | ||
| − | |@ | + | |@SETDATA |
|SQLServer | |SQLServer | ||
| − | | | + | |Convertido para CONVERT(DATE, 'DD/MM/YYYY', 103) |
|- | |- | ||
|} | |} | ||
==='''Exemplo'''=== | ==='''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') |
Edição atual tal como às 16h47min de 1 de setembro de 2026
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')