Je crée un rapport dans Visual Studio 2008 avec beaucoup de paramètres à valeurs multiples et cela fonctionne très bien, mais j'aimerais avoir l'option "(Tout sélectionner)" comme valeur par défaut lorsque le rapport est ouvert.
Y a-t-il une sorte d'expression ou de code SQL que je peux utiliser pour y arriver? Ou dois-je choisir "(Tout sélectionner)" à chaque fois, dans chaque paramètre, chaque fois que je veux exécuter le rapport?
Essayez de définir la "valeur par défaut" des paramètres pour utiliser la même requête que les "valeurs disponibles". En effet, il fournit chaque "valeur disponible" comme "valeur par défaut" et l'option "Sélectionner tout" est automatiquement cochée.
L'utilisation d'un jeu de données avec des valeurs par défaut est un moyen, mais vous devez utiliser la requête pour les valeurs disponibles et pour les valeurs par défaut.Si les valeurs sont codées en dur dans l'onglet Valeurs disponibles, vous devez définir les valeurs par défaut en tant qu'expressions. Les photos devraient tout expliquer
Créer un paramètre (s'il n'est pas créé automatiquement)
Définir des valeurs - exemple erroné
Définir des valeurs - exemple de manière correcte
Définir les valeurs par défaut - vous devez définir toutes les valeurs par défaut reflétant les valeurs disponibles pour faire "Tout sélectionner" par défaut, si vous ne définissez pas toutes seules celles définies seront sélectionnées par défaut.
Le résultat
Une image pour le type de données: Int
Ne fonctionne pas si vous avez des valeurs nulles.
Vous pouvez contourner cela en modifiant votre instruction select pour placer quelque chose dans null:
phonenumber = CASE
WHEN (isnull(phonenumber, '')='') THEN '(blank)'
ELSE phonenumber
END
La réponse acceptée est correcte , mais incomplète. Pour Select All
pour être l'option par défaut, le jeu de données Valeurs disponibles doit contenir au moins 2 colonnes: valeur et étiquette. Ils peuvent renvoyer les mêmes données, mais leurs noms doivent être différents. L'ensemble de données des valeurs par défaut utilise ensuite la colonne de valeur, puis Select All
sera la valeur par défaut. Si l'ensemble de données ne renvoie qu'une seule colonne, seule la valeur du dernier enregistrement sera sélectionnée dans la liste déroulante du paramètre.
Ajout à la réponse de E_8.
Cela ne fonctionne pas si vous avez des chaînes vides.
Vous pouvez contourner cela en modifiant votre instruction select en SQL ou en modifiant votre requête dans l'ensemble de données SSRS.
Select distinct phonenumber
from YourTable
where phonenumber <> ''
Order by Phonenumber
Ça marche mieux
CREATE TABLE [dbo].[T_Status](
[Status] [nvarchar](20) NULL
) ON [PRIMARY]
GO
INSERT [dbo].[T_Status] ([Status]) VALUES (N'Active')
GO
INSERT [dbo].[T_Status] ([Status]) VALUES (N'notActive')
GO
INSERT [dbo].[T_Status] ([Status]) VALUES (N'Active')
GO
DECLARE @GetStatus nvarchar(20) = null
--DECLARE @GetStatus nvarchar(20) = 'Active'
SELECT [Status]
FROM [T_Status]
WHERE [Status] = CASE WHEN (isnull(@GetStatus, '')='') THEN [Status]
ELSE @GetStatus END