Funções Now, Today e IsToday no Power Apps

Devolve a data e hora atuais e testa se é um valor de data/hora corresponde ao dia de hoje.

Descrição

A função Now devolve a data e hora atuais como um valor de data/hora.

A função Today devolve a data atual como um valor de data/hora. A hora é definida como meia-noite. Today tem o mesmo valor ao longo do dia, desde a meia-noite de hoje até à meia-noite de amanhã.

A função IsToday testa se um valor data/hora está entre a meia-noite de hoje e a meia-noite de amanhã. Esta função devolve um valor booleano (true ou false).

Todas estas funções funcionam com a hora local do utilizador atual.

Consulte Trabalhar com datas e horas, para obter mais informações.

Funções Voláteis

Now e Today são funções voláteis. Sempre que uma destas funções é avaliada, devolve um valor diferente.

Quando for utilizada numa fórmula de fluxos de dados, uma função volátil só irá devolver um valor diferente se a fórmula em que aparece for reavaliada. Se nada mais for alterado na fórmula, esta terá o mesmo valor durante a execução da sua aplicação.

Por exemplo, um controlo Etiqueta com Etiqueta1.Text = Now() não será alterado enquanto a sua aplicação estiver ativa. Só resultará num novo valor se fechar e voltar a abrir a aplicação.

A função será reavaliada se fizer parte de uma fórmula em que algo foi alterado. Por exemplo, se alterarmos o nosso exemplo para incluir um controlo de deslize com Label1.Text = DateAdd( Now(), Slider1.Value, Minutes ), a hora atual será obtida sempre que o valor do Controlo de Deslize for alterado e a propriedade de texto da etiqueta for reavaliada.

Quando são utilizadas numa fórmula de comportamento, as funções voláteis são reavaliadas sempre que a fórmula de comportamento é avaliada. Veja um exemplo abaixo.

Sintaxe

Now()

Today()

IsToday( DateTime )

  • DateTime – Necessário. O valor data/hora a testar.

Exemplos

Para os exemplos nesta secção, a hora atual é 03:59 de 12 de fevereiro de 2015 e o idioma é en-us.

Fórmula Descrição Resultado
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) Obtém a data e hora atuais e apresenta-as como uma cadeia. "02/12/2015 03:59:00"
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) Obtém apenas a data atual, deixando a hora definida como meia-noite, e apresenta-a como uma cadeia. "02/12/2015 00:00:00"
IsToday( Now() ) Testa se a data e hora atuais estão entre a meia-noite de hoje e a meia-noite de amanhã. true
IsToday( Today() ) Testa se a data atual está entre a meia-noite de hoje e a meia-noite de amanhã. true
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Obtém a data e hora atuais, acrescenta 12 dias ao resultado, e apresenta-as como uma cadeia. "02/24/2015 03:59:00"
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Obtém a data atual, acrescenta 12 dias ao resultado, e apresenta-a como uma cadeia. "02/24/2015 00:00:00"
IsToday( DateAdd( Now(), 12 ) ) Testa se a data e hora atuais, mais 12 dias, estão entre a meia-noite de hoje e a meia-noite de amanhã. false
IsToday( DateAdd( Today(), 12 ) ) Testa se a data atual, mais 12 dias, está entre a meia-noite de hoje e a meia-noite de amanhã. false

Apresentar um relógio que é atualizado em tempo real

  1. Adicione um controlo Timer, defina a respetiva propriedade Duration como 1000 e a propriedade Repeat para true.

    O temporizador será executado por um segundo, recomeçará automaticamente e continuará esse padrão.

  2. Defina a propriedade OnTimerEnd do controlo para esta fórmula:

    Set( CurrentTime, Now() )

    Sempre que o temporizador recomeçar (após cada segundo), esta fórmula definirá a variável global CurrentTime para o valor atual da função Now.

    Um ecrã com um controlo Temporizador com a fórmula OnTimerEnd = Set(CurrentTime; Now())

  3. Adicione um controlo Label e defina a respetiva propriedade Text para esta fórmula:

    Text( CurrentTime, LongTime24 )

    Utilize a função Text para formatar a data e a hora como quiser ou defina esta propriedade para CurrentTime para mostrar as horas e os minutos, mas não os segundos.

    Um ecrã com um controlo Etiqueta com a propriedade Text definida para Text( CurrentTime; LongTime24)

  4. Pré-visualize a aplicação ao premir F5 e, em seguida, inicie o temporizador ao clicar ou tocar no mesmo.

    A etiqueta mostra o tempo atual continuamente, incluindo os segundos.

    Quatro ecrãs a mostrar quatro valores de tempo (13:50:22, 13:50:45, 13:51:03 e 13:51:25)

  5. Defina a propriedade AutoStart do temporizador para true e a propriedade Visible do mesmo para false.

    O temporizador é invisível e começa automaticamente.

  6. Defina a propriedade OnStart do ecrã para que a variável CurrentTime tenha um valor válido, como neste exemplo:

    Set(CurrentTime, Now())

    A etiqueta aparece assim que a aplicação é iniciada (antes de o temporizador ser executado durante um segundo).

Nota

Pode indicar-nos as suas preferências no que se refere ao idioma da documentação? Responda a um breve inquérito. (tenha em atenção que o inquérito está em inglês)

O inquérito irá demorar cerca de sete minutos. Não são recolhidos dados pessoais (declaração de privacidade).