Pregunta

Estoy tratando de llenar una expresión (valor predeterminado de un parámetro) con un tiempo explícito. ¿Cómo se quita el tiempo de la función del "ahora"?

¿Fue útil?

Solución 12

encontrado la solución de aquí

Esto consigue el último segundo del día anterior:

DateAdd("s",-1,DateAdd("d",1,Today())

Esto devuelve el último segundo de la semana anterior:

=dateadd("d", -Weekday(Now), (DateAdd("s",-1,DateAdd("d",1,Today()))))

Otros consejos

Algo como esto:

=FormatDateTime(Now, DateFormat.ShortDate) 

Donde "Ahora" puede ser reemplazado por el nombre del campo de fecha / hora que usted está tratando de convertir.)
Por ejemplo,

=FormatDateTime(Fields!StartDate.Value, DateFormat.ShortDate)

Desde SSRS utiliza VB, puede hacer lo siguiente:

=Today() 'returns date only

Si se va a utilizar:

=Now() 'returns date and current timestamp
=CDate(Now).ToString("dd/MM/yyyy")

A pesar de que son difíciles codificando el formato de fecha en un entorno local.

Si usted tiene que mostrar el campo en el encabezado del informe y luego probar este ... RightClick el cuadro de texto> Propiedades> Categoría> Fecha> Formato seleccione * (Nota esto mantendrá la configuración regional).

Dado que esta cuestión ha sido visto muchas veces, he publicado ... Espero que ayuda.

enter Descripción imagen aquí

Sólo tiene que utilizar DateValue(Now) si desea que el resultado sea de tipo de datos DateTime.

Si el formato de datos que espera es MM-dd-yyyy a continuación, tratar a continuación ,

=CDate(Now).ToString("MM-dd-yyyy")

Del mismo modo se puede probar esto,

=Format(Today(),"MM-dd-yyyy") 

Salida: 02-04-2016

Nota:
Now() le mostrará fecha actual y sello de tiempo

Today() le mostrará Fecha no sólo a tiempo parcial.

También se puede establecer cualquier formato de fecha en lugar de MM-dd-yyyy en mi ejemplo.

En la propiedad formato del cuadro de texto cualquier campo puede utilizar las cadenas de formato:

por ejemplo. D / M / Y, D, etc.

Una cosa que podría ayudar a los demás es que se puede colocar: =CDate(Now).ToString("dd/MM/yyyy") en el formato de cadena propiedad de SSRS que se puede obtener haciendo clic derecho de la columna. Esa es la forma más limpia de hacerlo. Luego, su expresión no será demasiado grande y difícil de forma visual "de análisis":)

    FormatDateTime(Parameter.StartDate.Value)

estoy llegando al final del partido pero intentado todas las soluciones anteriores! no podía conseguir que caiga la década de cero en el parámetro y dame un defecto (se ignora el formato o en blanco aparecido). Yo estaba usando SSRS 2005 por lo que estaba luchando con sus problemas con errores / torpe.

Mi solución fue añadir una columna a la [DimDate] tabla personalizada en mi base de datos que estaba tirando de las fechas. He añadido una columna que era una representación de cadena en el formato deseado de la columna [fecha]. Entonces creé 2 nuevos conjuntos de datos de SSRS que sacó en las siguientes consultas para 2 valores por defecto para mi 'A' y 'de' defecto de fecha -

'de'

    SELECT  Datestring
    FROM    dbo.dimDate
    WHERE   [date] = ( SELECT   MAX(date)
                       FROM     dbo.dimdate
                       WHERE    date < DATEADD(month, -3, GETDATE()
                     )

'a'

    SELECT  Datestring
    FROM    dbo.dimDate
    WHERE   [date] = ( SELECT   MAX(date)
                       FROM     dbo.dimdate
                       WHERE    date <= GETDATE()
                     )

Mi solución para un parámetro Fecha / Hora:

=CDate(Today())

El truco es convertir de nuevo a una fecha y hora como recomienda Perhentian.

Sólo concatenar una cadena al final del valor:

Fields!<your field>.Value & " " 'test' 

y esto debería funcionar!

Esto debe hacerse en el conjunto de datos. Usted puede hacer esto

Select CAST(CAST(YourDateTime as date) AS Varchar(11)) as DateColumnName

En SSRS diseño, acaba de hacer esta =Fields!DateColumnName.Value

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top