itDate

Aceita uma data do calendário. Os espaços são removidos da entrada antes da análise. Os formatos são testados pela ordem descrita abaixo.

Formatos aceites

Compacto (sem separadores)

Comprimento Formato Exemplo (configuração regional com o dia primeiro) Exemplo (configuração regional com o mês primeiro)
4 dígitos ddmm / mmdd 2503 → 25 de março 0325 → 25 de março
8 dígitos ddmmyyyy / mmddyyyy 25032026 → 25 de março de 2026 03252026 → 25 de março de 2026

O formato compacto de 4 dígitos pressupõe o ano atual.

ISO (baseado em separadores, ano primeiro)

Qualquer um dos formatos aaaa/mm/dd, aaaa-mm-dd ou aaaa.mm.dd. É reconhecido sempre que os primeiros quatro caracteres forem dígitos seguidos de /, - ou ..

2026-03-25    2026/03/25    2026.03.25

Recurso de fallback de localização

Quando nem o formato compacto nem o ISO correspondem, o TryStrToDate é testado com base no formato de localização do tempo de execução. Os separadores /, - e . são todos aceites e normalizados para o DateSeparator do tempo de execução antes da análise. Isto abrange formatos como dd/mm/aaaa, mm/dd/aaaa e formas de ano com dois dígitos, como 26/03/25.

A resolução do ano com dois dígitos segue SysUtils.TwoDigitYearCenturyWindow (valor predefinido 50). Um ano de dois dígitos é mapeado para o século que mantém o resultado dentro dessa janela do ano atual. As aplicações que requerem um comportamento determinístico devem definir TwoDigitYearCenturyWindow explicitamente no arranque.

Values[]

A data sensível à localização string produzida por DateToStr.

SQLValues[]

O literal de data SQL depende do dialeto. Consulte dialetos SQL para obter a tabela completa de formatos.

2026-03-25 →
  sqlElevateDB, sqlMySQL, 
  sqlPostgreSQL, sqlFirebird:     DATE '2026-03-25'
  sqlDBISAM, sqlMSSQLServer, 
  sqlSQLite: '2026-03-25'
  sqlOracle: TO_DATE('2026-03-25','YYYY-MM-DD')
  sqlAccess: #2026-03-25#
  sqlBDEParadox: "25.03.2026"

Intervalo

Entrada: 01/01/2026~31/12/2026
  →   otRange
  →   BETWEEN DATE '2026-01-01' AND DATE '2026-12-31'  (sqlElevateDB)

A data à esquerda não pode ser posterior à data à direita; caso contrário, é devolvido ERR_INVALID_RANGE.

(C) 2026 Easygate, Lda