Question

Je suis en train de remplir une expression (valeur par défaut d'un paramètre) avec un temps explicite. Comment puis-je supprimer le temps de la fonction « maintenant »?

Était-ce utile?

La solution 12

trouvé la solution de ici

obtient la dernière seconde de la veille:

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

retourne la dernière seconde de la semaine précédente:

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

Autres conseils

Quelque chose comme ceci:

=FormatDateTime(Now, DateFormat.ShortDate) 

Où « Maintenant » peut être remplacé par le nom du champ date / heure que vous essayez de convertir.)
Par exemple,

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

Depuis SSRS utilise VB, vous pouvez effectuer les opérations suivantes:

=Today() 'returns date only

Si vous deviez utiliser:

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

Bien que vous coder en dur le format de date à un lieu.

Si vous devez afficher le champ en-tête du rapport, puis essayez ceci ... RightClick sur la zone de texte> Propriétés> Catégorie> Date> select * Format (Notez que ce maintiendra les paramètres régionaux).

Étant donné que cette question a été vu à plusieurs reprises, je suis le poster ... Espérons que ça aide.

enter image description ici

Il suffit d'utiliser DateValue(Now) si vous voulez que le résultat soit de type de données DateTime.

Si le format de données attendu est MM-dd-yyyy essayez ci-dessous ,

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

De même, vous pouvez essayer celui-ci,

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

Sortie: 02-04-2016

Note: Now() date et horodatage

Today() Date ne fait pas partie de temps.

vous pouvez également définir un format de date au lieu de MM-dd-yyyy dans mon exemple.

Dans la propriété de format d'un champ de zone de texte, vous pouvez utiliser des chaînes de format:

par exemple. D / M / Y, D, etc.

Une chose qui pourrait aider les autres est que vous pouvez placer: =CDate(Now).ToString("dd/MM/yyyy") dans la chaîne de format propriété de SSRS qui peut être obtenu par un clic droit sur la colonne. C'est la plus propre façon de le faire. Ensuite, votre expression ne sera pas trop grand et difficile visuellement « analyser »:)

    FormatDateTime(Parameter.StartDate.Value)

Je suis arrivé en retard dans le jeu mais j'ai essayé toutes les solutions ci-dessus! n'a pas pu obtenir de laisser tomber les zéros dans le paramètre et me donner une valeur par défaut (elle a ignoré la mise en forme ou est apparu en blanc). J'utilisais SSRS 2005 donc a été aux prises avec ses problèmes maladroits / buggy.

Ma solution était d'ajouter une colonne à la coutume [DimDate] tableau dans ma base de données que je tirais les dates de. J'ai ajouté une colonne qui était une représentation de chaîne dans le format souhaité de la colonne [date]. J'ai ensuite créé 2 nouveaux jeux de données SSRS qui ont tiré dans les requêtes suivantes pour 2 valeurs par défaut pour mon « To » et « De » défaut de date -

'de'

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

'à'

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

Ma solution pour un paramètre Date / Heure:

=CDate(Today())

L'astuce consiste à reconvertir en un DateTime comme recommande Perhentian.

Il suffit de concaténer une chaîne à la fin de la valeur:

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

et cela devrait fonctionner!

Cela devrait être fait dans l'ensemble de données. Vous pouvez le faire

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

Dans la mise en page de SSRS, il suffit de ce =Fields!DateColumnName.Value

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top