Componentes · Campos

Datas, horas e períodos

Data do pedido, hora da entrega, vigência de um contrato: a pessoa digita ou escolhe no calendário, e o banco recebe a data no formato dele. Você escolhe o tipo e o formato de gravação; a máscara de digitação, o calendário e a conversão já vêm prontos.

<mad-date-field> Paleta → Campos → Data / Hora / Data e Hora / Período Máscara de exibição sempre em dd/mm/yyyy — só a do banco muda
01

Qual campo para qual data

Todos guardam um instante ou um intervalo. O que muda é o que a pessoa faz: digita uma data com máscara, escolhe uma hora, marca de um dia até outro, ou troca o mês do painel.

Sua situaçãoComponente certo
Só a data — vencimento, emissão, nascimentoData
Só a hora — horário de abertura, hora da entregaHora
Data e hora no mesmo campo — agendamento, registro de ocorrênciaData e Hora
De um dia até outro, em duas colunas — vigência, safra, fériasPeríodo
Trocar o mês e o ano de um painel de indicadoresPeríodo (mês/ano), dentro do bloco de filtros do Dashboard
Só mostrar a data numa lista, já formatadaListagem, no Formato de data da coluna
Filtrar uma lista por data ou intervaloFiltrar
Um intervalo com hora não existe: use dois campos Data e Hora, um para o início e outro para o fim.
1

Colocar na tela

  1. Abra o formulário no Studio e clique com o botão direito na Linha onde o campo vai ficar.
  2. Escolha Data, Hora, Data e Hora ou Período na categoria Campos.
  3. Em Nome, escolha a coluna da tabela. O Período pede duas: Nome (início) e Nome (fim).
Resultado: o campo aparece com a máscara de digitação e o botão do calendário; a coluna de data da tabela já nasce ligada.
2

Configurar a data

  1. Em Label, o texto acima do campo. Marque Obrigatório quando não pode ficar vazio.
  2. Em Valor padrão, abra a aba de data e hora e escolha Hoje (data) para o campo nascer preenchido num registro novo. Ao editar, vale a data gravada.
  3. Em Data mínima e Data máxima, limite o calendário — os dias fora da faixa ficam apagados.
  4. Na seção Formato, deixe Máscara de exibição em dd/mm/yyyy e mude só a Máscara do banco se a coluna guarda a data de outro jeito.
  5. Dica é uma frase curta abaixo do campo.
Resultado para quem usa o sistema: a pessoa digita os números e as barras entram sozinhas; ou abre o calendário, navega pelos meses e clica no dia. Hoje preenche a data de hoje e Limpar esvazia.
Destaque
Painel de um campo Data com Identificação, Validação, Comportamento e Formato abertos

Passe o mouse na lista — ou use ↑ ↓ depois de focar um item.

O que o painel escreve no código

        
Trocar a Máscara de exibição grava lixo. O app converte a digitação para o banco a partir de dd/mm/yyyy; com outra máscara de exibição a data vai para a coluna como foi digitada. Mude só a Máscara do banco.
3

Hora, e data com hora

  1. O campo Hora usa o relógio do próprio navegador: a aparência muda de um navegador para outro e não há máscara nem calendário.
  2. O campo Data e Hora usa o mesmo calendário da Data, com uma faixa Hora: e os botões Agora e Aplicar.
  3. Em Formato, as máscaras têm as variantes com segundos — dd/mm/yyyy hh:ii:ss — para quando o segundo importa.
  4. Direção do popup decide se o calendário abre alinhado à esquerda ou à direita do campo; útil na borda direita da tela.
Resultado para quem usa o sistema: na data e hora, a pessoa escolhe o dia, ajusta hora e minuto e clica em Aplicar; Agora preenche com o momento atual.
Destaque
Painel de um campo Hora com Identificação, Validação e Comportamento abertos
Destaque
Painel de um campo Data e Hora com Identificação e Formato abertos
4

Um período em duas colunas

  1. O Período grava em duas colunas: Nome (início) e Nome (fim). As duas precisam existir na tabela.
  2. Ligue Presets padrão para a pessoa ganhar os atalhos: Hoje, Ontem, Últimos 7 dias, Últimos 30 dias, Este mês, Mês passado, Este trimestre, Este ano.
  3. Limpável mostra o × que esvazia as duas datas.
  4. Em Intervalo máximo (dias), limite o tamanho do período — 90 para um relatório trimestral.
  5. Valor padrão (início) e (fim) preenchem o período num registro novo.
Resultado para quem usa o sistema: a pessoa clica no campo, vê dois meses lado a lado, marca o primeiro e o último dia — ou escolhe um atalho — e o campo mostra 01/03/2026 → 31/03/2026.
Destaque
Painel de um campo Período com Identificação, Comportamento e Formato abertos
O filtro de mês e ano dos painéis de indicadores é outro componente, Período (mês/ano): não grava nada, só troca o período de todos os blocos. Ele vive dentro do bloco de filtros do Dashboard.
5

Testar antes de entregar

Salve a tela e publique no Teste online. Confira nesta ordem:

O que fazerO que tem que acontecer
Digitar 15032026 no campo de dataO campo mostra 15/03/2026 e o calendário pula para março.
Salvar e reabrir o registroA data volta igual, no mesmo formato.
Digitar só 15/03 e clicar foraO campo esvazia: data incompleta não é aceita.
Escolher um dia fora de Data mínima e máximaO dia aparece apagado e não pode ser clicado.
No período, clicar num atalhoAs duas datas preenchem e o campo mostra o intervalo.
Salvar com um campo obrigatório vazioO aviso aponta o campo — no período, a ponta de início.
07

Problemas comuns

A data salva como texto e a lista mostra qualquer coisa

A Máscara de exibição foi trocada. Volte para dd/mm/yyyy e mude só a Máscara do banco.

Digitei a data pela metade e ela sumiu

É assim que o campo funciona: data incompleta é apagada ao sair do campo. Digite os oito números ou escolha no calendário.

O valor padrão de hoje não aparecia no campo

Em versões anteriores o valor padrão dos campos de data e hora era ignorado. Abra a tela, salve de novo e republique o projeto.

O Hoje do calendário e o Hoje do valor padrão são dias diferentes

Perto da meia-noite, o servidor e o navegador podem estar em dias diferentes. Se a data exata importa, deixe a pessoa escolher no calendário em vez de preencher sozinho.

O campo de hora aparece diferente em cada computador

É o relógio do próprio navegador. Não há como padronizar a aparência; o valor gravado é o mesmo.

O calendário continua em português com o sistema em outro idioma

Os nomes dos meses e os botões do calendário são fixos em português nesta versão.

08

Referência: painel × código

Para quem também mexe no Blade, este é o de-para entre o painel e os atributos gerados. As máscaras se escrevem com sublinhado, como o painel grava.

No painelNo códigoPadrão
Nomename—
Labellabel—
Obrigatóriorequired—
Valor padrãovalue—
Data mínima · Data máximamin · max—
Somente leiturareadonly—
Dicahint—
Máscara de exibiçãodisplay_maskdd/mm/yyyy
Máscara do bancodatabase_maskyyyy-mm-dd
Direção do popupopensleft
Largurawidth—
On Changemad:change—
Nome (início) · Nome (fim)name_start · name_end—
Valor padrão (início) · Valor padrão (fim)default_start · default_end—
Placeholder (do período)placeholderSelecione o período
Limpávelclearableligado
Presets padrãopresets—
Intervalo máximo (dias)max_spansem limite
Desabilitado (do período)disabled—
Tamanho · Variante · Alinhamento Popover (do filtro de mês/ano)size · variant · popover-align—