Como formatar data e hora no relatório ssrs?

133

no relatório SSRS eu preciso mostrar todays date and current time

Eu tentei isso, =FormatDateTime(Now,"MM/dd/yyyy hh:mm tt")mas isso não está funcionando para mim, dando um erro.

Alguém por favor me ajude expression?

Eu quero exibição de saída como 4/12/2013 12:05 PM

Neo
fonte

Respostas:

238
=Format(Now(), "MM/dd/yyyy hh:mm tt")

Resultado:

04/12/2013 05:09 PM
Ian Preston
fonte
8
As Format()seqüências possíveis são descritas neste artigo: Strings de formato de data e hora ; Eu pensei em mencionar isso, pois era o que estava procurando quando cheguei aqui!
Matt Gibson
18

Se a data e a hora estiverem em sua própria célula (também conhecida como caixa de texto), você deverá aplicar o formato em toda a caixa de texto. Isso criará exportações mais limpas para outros formatos; em particular, o valor será exportado como um valor de data e hora para o Excel em vez de uma sequência.

Use o painel ou a caixa de diálogo de propriedades para definir o formato da caixa de texto como "MM / dd / aaaa hh: mm tt"

Eu usaria apenas a resposta de Ian se o datetime estiver sendo concatenado com outra string.

Jamie F
fonte
4
Pequeno complemento para pessoas que podem encontrar esta resposta: Você define o formato para ="MM/dd/yyyy hh:mm tt". Se você esquecer =, todas as células terão apenas "MM/dd/yyyy hh:mm tt"como texto.
User1261104
5

Estou usando o seguinte no SSRS 2005

=Format(Globals!ExecutionTime,"MM-dd-yyyy" & " ") 
& CStr(Hour(Globals!ExecutionTime))  & ":"
& CStr(Minute(Globals!ExecutionTime))

Ou

=Format(Globals!ExecutionTime,"MM-dd-yyyy" & " ") 
& Right("00" & CStr(Hour(Globals!ExecutionTime)), 2)
& ":"
& Right("00" & CStr(Minute(Globals!ExecutionTime)), 2)

Baseado no comentário:

=Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy hh:mm.ss") 

OU

=Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy HH:mm.ss")
LCJ
fonte
4
Ambos podem parecer mais simples: =Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy hh:mm.ss") ou =Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy HH:mm.ss")
homem desesperado
4

Espero que isto ajude:

SELECT convert(varchar, getdate(), 100) -- mon dd yyyy hh:mmAM

SELECT convert(varchar, getdate(), 101) -- mm/dd/yyyy – 10/02/2008                  

SELECT convert(varchar, getdate(), 102) -- yyyy.mm.dd – 2008.10.02           

SELECT convert(varchar, getdate(), 103) -- dd/mm/yyyy

SELECT convert(varchar, getdate(), 104) -- dd.mm.yyyy

SELECT convert(varchar, getdate(), 105) -- dd-mm-yyyy

SELECT convert(varchar, getdate(), 106) -- dd mon yyyy

SELECT convert(varchar, getdate(), 107) -- mon dd, yyyy

SELECT convert(varchar, getdate(), 108) -- hh:mm:ss

SELECT convert(varchar, getdate(), 109) -- mon dd yyyy hh:mm:ss:mmmAM (or PM)

SELECT convert(varchar, getdate(), 110) -- mm-dd-yyyy

SELECT convert(varchar, getdate(), 111) -- yyyy/mm/dd

SELECT convert(varchar, getdate(), 112) -- yyyymmdd

SELECT convert(varchar, getdate(), 113) -- dd mon yyyy hh:mm:ss:mmm

SELECT convert(varchar, getdate(), 114) -- hh:mm:ss:mmm(24h)

SELECT convert(varchar, getdate(), 120) -- yyyy-mm-dd hh:mm:ss(24h)

SELECT convert(varchar, getdate(), 121) -- yyyy-mm-dd hh:mm:ss.mmm

SELECT convert(varchar, getdate(), 126) -- yyyy-mm-ddThh:mm:ss.mmm
Shubham Bhangale
fonte
4

No SSRS 2016, existe uma opção no cabeçalho de propriedades "Localização" chamado " Calendar", se você clicar nele, ele fornece duas opções:

  • Gregoriano (dd / mm / aaaa)
  • GregorianUSEnglish (MM / dd / aaaa)

Isso funciona de maneira brilhante ao referenciar dados de uma tabela também

Como alternativa, se isso não funcionar, especifique um desses formatos em "Número" e na célula " Format":

dd/MM/yyyy ou MM/dd/yyyy

captura de tela

Crezzer7
fonte
1

Se você clicar no ponto vazio do relatório, longe de qualquer tabela, e procurar propriedades, um dos campos Diversos será chamado Idioma, que permitirá escolher o idioma que você deseja definir e, depois disso, poderá brincar com isso.

=FormatDateTime(now,x)

Que xpode ser 1, 2, 3, 4, 5

Tariq Khalaf
fonte
1

Se você deseja separar data e hora, use as expressões abaixo: Expressão de Data e Hora

Expressão1 para a data atual: = formatdatetime (hoje) a data de retorno é = 15/11/2016

Expressão2 para o horário atual: = CDate (Now) .ToString ("hh: mm tt") seu tempo de retorno é = 15:44

Este relatório impresso na Expression1 na Expression2

A saída será: Saída de ambas as expressões

Este relatório foi impresso em 15/11/2016 às 15:44

Laxman Gite
fonte
1
=Replace(Format(CDate(Now()),"MM.dd.yyyy"), ".", "/")
Ronney
fonte
1

A seguir, é como eu faço isso usando o Visual Studio 2017 para um RDL direcionado para o SSRS 2017:

Clique com o botão direito do mouse no campo da caixa de texto na superfície de design e escolha Propriedades do espaço reservado . Escolha o painel Número e clique em Data na caixa de listagem Categoria e selecione a formatação que você está procurando na caixa de listagem Tipo .

Del Lee
fonte
1

Primeiro, vá ao seu painel de controle, selecione Data, hora e Formato numérico. Agora selecione Inglês (Reino Unido) na lista suspensa.

Verifique se o campo de data de duração é igual a 'dd / mm / aaaa'. Pressione Aplicar. Agora vá para o SSRS e clique com o botão direito do mouse no relatório no espaço vazio e selecione Propriedades.

Se você estiver usando o visual studio, defina a propriedade Language igual a = User! Language.

Se você estiver usando o Construtor de Relatórios, a propriedade Idioma será exibida na seção Localização.

Gul Saeed Khattak
fonte
-1

Estou usando isso

= Formato (agora (), "dd / MM / aaaa hh: mm tt")

Milton Alvarado
fonte
7
Esta é essencialmente uma duplicata da resposta aceita há muito tempo . Em vez de publicar novamente, com reputação suficiente, você pode votar novamente na outra resposta para indicar sua utilidade.
OhBeWise 23/07
-5

oi amigo por favor tente esta expressão seu relatório

="Page " + Globals!PageNumber.ToString() + " of " + Globals!OverallTotalPages.ToString() + vbcrlf + "Generated: " + Globals!ExecutionTime.ToString()
venkataramana
fonte