SSRS valeurs de paramètre par défaut dans l'abonnement
J'ai un rapport qui a deux paramètres de date laquelle l'utilisateur. Je veux créer un abonnement qui fonctionne le vendredi qui tire pour la semaine précédente, du dimanche au samedi période. Ainsi, par exemple, pour ce vendredi, l'abonnement serait tirer pour le 29 janvier - 4 Février. J'ai essayé =Now(), =Today(), @ExecutionTime
et puis en soustrayant le nombre de jours, mais tout ce que je reçois sont des erreurs. Est-ce possible de le faire?
J'ai vu ce lien, mais je me demande si il ya une meilleure façon.
http://www.sqlservercentral.com/articles/Development/datadrivensubscriptions/2432/
SSRS 2008
OriginalL'auteur Gabe | 2012-02-07
Vous devez vous connecter pour publier un commentaire.
Oui j'ai fait cela, voir ce post https://stackoverflow.com/a/5539615/168703
Vous pouvez créer un ensemble de données qui reçoit les plages de dates et à utiliser dans votre rapport. Votre abonnement peut utiliser cette plage de dates et de modifier de sa propre dynamique sans modifications manuelles chaque jour/semaine/mois/année/etc.
Reposté ici, c'est votre solution, la plus flexible:
Je vais aussi partager un ensemble commun de fonctions de date que j'utilise. Il suffit de créer ce qu'une fonction à valeur de table:
Voici le scalaire de fonctions à valeur de ces:
Ces ont été vraiment très utile pour moi parce que j'ai utilisé ce dans reporting services pour les paramètres de date. Vous pouvez simplement créer un jeu de données qui font référence à ce tableau la fonction, puis utilisez-les dans les paramètres de type datetime dans RS.
Vous pouvez exécuter cette ensemble de la fonction table de la sorte:
SELECT * from [MyDB].[dbo].[udfCommonDates] (GetDate())
Le résultat est comme
Pour Reporting Services De Gens
Maintenant je l'ai mentionné plus tôt que je les utiliser pour reporting services.
Maintenant, le RS gens pourraient penser mais comment cela m'aide car j'ai besoin d'un ensemble de données et un ensemble de données ne peut être basé sur une Procédure Stockée ou un tableau. Aucun problème pour créer la procédure stockée suivante:
Vous avez maintenant une procédure stockée pour une utilisation comme un ensemble de données...Maintenant dans la déclaration de services ajouter un nouveau jeu de données:
Maintenant, allez dans les paramètres de rapport de la section du rapport:
Choisissez maintenant que dataset dsFunctions (ou ce que vous appelé ça) et puis de choisir un des champs de la valeur du scalaire des fonctions telles que:
Maintenant, lorsque vous exécutez le rapport, il utilise les scalaires:
Aussi maintenant dans votre "Abonnement", vous verrez un "Utiliser par Défaut" dans la case à côté de l'
paramètre pour la date. Si vous cochez cette case, il utilisera automatiquement la valeur par défaut
valeur fournie par cette fonction personnalisée. Il est très très souple et d'une très belle solution de reporting services. Voici une impression d'écran de ce qui suit:
OriginalL'auteur JonH
Sur le rapport de configuration de paramètre (sur le temps de développement, et non pas sur la création de l'abonnement), ajouter une valeur par défaut pour le paramètre. Si vous le faites, vous aurez une case à cocher appelée "utiliser la valeur par défaut" lors de la création de l'abonnement
OriginalL'auteur Diego
Mon préféré truc pour gérer cette situation est de créer un paramètre Entier appelé StartWeek. L'invite "de La semaine:" valeurs Disponibles comme:
Valeur par défaut -1.
Puis dans votre requête:
OriginalL'auteur Jamie F
BeginDate
EndDate
Donc pour le prochain vendredi 2/10. Ce serait vous donner une plage de dates de 1/29 - 2/4.
vous définissez comme vos valeurs par défaut dans votre rapport. À partir de la page d'abonnement vous suffit de sélectionner "par Défaut". Pour définir des valeurs par défaut pour un paramètre, allez au paramètre propriétés (clic droit -> propriétés du paramètre), puis aller à la section valeurs par défaut. Ajouter une valeur et donner l'expression ci-dessus.
OriginalL'auteur Ben English