Reporting Service entfernt Zeit von Datetime in Expression
-
22-09-2019 - |
Frage
Ich versuche, einen Ausdruck (Standardwert eines Parameters) mit einer expliziten Zeit zu füllen. Wie kann ich die Zeit von der die „jetzt“ -Funktion entfernen?
Lösung 12
Gefunden die Lösung von hier
Dies wird die letzte Sekunde des Vortages:
DateAdd("s",-1,DateAdd("d",1,Today())
Dies gibt die letzte Sekunde der Vorwoche:
=dateadd("d", -Weekday(Now), (DateAdd("s",-1,DateAdd("d",1,Today()))))
Andere Tipps
So etwas wie folgt aus:
=FormatDateTime(Now, DateFormat.ShortDate)
Wo „Now“ durch den Namen des Datums- / Uhrzeitfeld ersetzt werden, die Sie konvertieren versuchen.)
Zum Beispiel
=FormatDateTime(Fields!StartDate.Value, DateFormat.ShortDate)
Da SSRS VB verwendet, können Sie Folgendes tun:
=Today() 'returns date only
Wenn Sie verwenden sind:
=Now() 'returns date and current timestamp
=CDate(Now).ToString("dd/MM/yyyy")
Auch wenn Sie harte Kodierung das Datumsformat zu einem Gebietsschema werden.
Wenn Sie das Feld auf Berichtskopf angezeigt werden müssen dann versuchen, diese ... Rechtsklick auf Textbox> Eigenschaften> Kategorie> Datum> select * Format (Hinweis: Dies ist die regionalen Einstellungen beibehalten werden).
Da diese Frage viele Male gesehen hat, ich bin Entsendung es ... Hoffe, es hilft.
Just Verwendung DateValue(Now)
, wenn Sie das Ergebnis DateTime
Datentyp sein.
Wenn erwartetes Datenformat MM-dd-yyyy
dann unter versuchen
=CDate(Now).ToString("MM-dd-yyyy")
Ebenso können Sie versuchen diese,
=Format(Today(),"MM-dd-yyyy")
Ausgang: 02-04-2016
Hinweis:
Now()
zeigt Ihnen aktuelles Datum und Zeitstempel
Today()
zeigt Ihnen Datum nicht nur Zeit Teil.
Sie können auch ein beliebiges Datum Format eingestellt anstelle von MM-dd-yyyy
in meinem Beispiel.
Im Format Eigenschaft jedes Textfeld, das Sie Format-Strings verwenden können:
z. D / M / Y, D, usw.
Eine Sache, die helfen könnten andere ist, dass Sie platzieren können: =CDate(Now).ToString("dd/MM/yyyy")
im Format String Eigentum von SSRS, die mit einem rechten Mausklick die Säule erhalten werden kann. Das ist der sauberste Weg, es zu tun. Dann wird Ihr Ausdruck nicht zu groß und schwer visuell „Parse“:)
FormatDateTime(Parameter.StartDate.Value)
Ich komme spät im Spiel, aber ich versuchte, alle Lösungen oben! konnte es nicht die Nullen in den Parameter fallen bekommen und mir einen Standard geben (es die Formatierung oder erschienen leer ignoriert). Ich war mit SSRS 2005 so wurde mit seinen klobigen / Buggy Problemen zu kämpfen.
Meine Abhilfe war eine Spalte in die custom [DimDate] Tabelle in meiner Datenbank hinzufügen, dass ich zupfte stammt aus. Ich habe eine Spalte, die eine String-Darstellung in dem gewünschten Format der [Datum] Säule war. Ich habe dann 2 neue Datensätze in SSRS, dass für meine ‚To‘ für 2 Standardwerte in den folgenden Abfragen gezogen und ‚Von‘ Datum defaults -
'von'
SELECT Datestring
FROM dbo.dimDate
WHERE [date] = ( SELECT MAX(date)
FROM dbo.dimdate
WHERE date < DATEADD(month, -3, GETDATE()
)
'auf'
SELECT Datestring
FROM dbo.dimDate
WHERE [date] = ( SELECT MAX(date)
FROM dbo.dimdate
WHERE date <= GETDATE()
)
Meine Lösung für ein Datum / Zeit-Parameter:
=CDate(Today())
Der Trick ist, in ein Datetime zu konvertieren zurück als Perhentian empfehlen.
verketten nur einen String an das Ende des Wertes:
Fields!<your field>.Value & " " 'test'
und dies sollte funktionieren!
Dies sollte im Datensatz erfolgen. Sie könnten diese
tunSelect CAST(CAST(YourDateTime as date) AS Varchar(11)) as DateColumnName
In SSRS
Layout gerade diesen =Fields!DateColumnName.Value
tut