web-dev-qa-db-fra.com

Il manque une valeur au paramètre ssrs 2008

J'ai un paramètre de type de données entier qui est caché. Lorsque je lance le rapport, le rapport me donne une erreur 

Il manque une valeur au paramètre X

Cependant, si je rends le paramètre visible, cela fonctionne. J'ai essayé de fournir la valeur par défaut de 0, mais cela ne suffit pas, car mon sous-rapport (Drill-Dowm) dépend de ce paramètre. S'il vous plaît aider. Merci!

16
Adarsh

Assurez-vous que vous n'avez pas spécifié de valeurs disponibles pour le paramètre. Les valeurs disponibles doivent être "Aucune" pour les paramètres internes et cachés.

14
dmbreth

Tout d'abord,

Vérifiez les paramètres disponibles de ce paramètre - Valeurs en indiquant les propriétés des paramètres. 

Aucune valeur ne doit être spécifiée. Nous devrions donc le définir comme Aucun

Le second travail est,

Ajoutez simplement un espace vide dans Spécifiez les valeurs - dans Valeurs par défaut dans les propriétés des paramètres de rapport.

Cela fonctionnera sûrement. J'espère que cela vous fera gagner du temps. 

5
pedram

Je devais faire une déclaration "si existe" pour que cela disparaisse. Cela a fonctionné pour moi car cela me permet de toujours renvoyer une valeur même si cette valeur n'est pas nécessaire à ma requête. 

    if exists (my select query)
    my select query
    else 
    select '2' 
    // '2' would never be used, but it made ssrs stop giving me
    // the stupid error and execute the rest of the query
4
Rainhider

Si vous spécifiez les valeurs disponibles à partir d'une requête, les valeurs par défaut doivent figurer dans la liste des valeurs disponibles. Valeur par défaut dans (Disponible) = true.

3
Vitaliy

Le problème se produit également si vous avez un paramètre qui dépend d'un autre sans "valeur par défaut" dans la requête de jeu de données et n'admet pas la valeur null. 

Par exemple:

Paramètre 1 a une valeur par défaut: NameEmployee à partir du jeu de données "EmployeeSearch"

Mais l'ensemble de données "EmployeeSearch" possède un filtre ou un paramètre dans la requête nommé @Month qui indique le numéro du mois. Donc, si la valeur de @Month est null, SSRS dira "Il manque une valeur au paramètre".

2
Adrian

Il suffit d’ajouter une valeur par défaut pour contourner cette erreur (même si cette valeur par défaut ne sera jamais utilisée).

-Under "Propriétés du paramètre de rapport" pour ce paramètre spécifique, allez à la page Valeurs par défaut. 

-Toggle "Spécifier les valeurs"

-Ajouter une valeur (j'ai ajouté: "just_a_filler_to_get_around_hidden_value_error" alors quand j'y repense plus tard, je me souviens pourquoi j'ai fait une chose pareille)

-cliquez sur OK

1
MobileMon

En supposant que vous ayez le même problème que moi, en essayant d'exécuter le rapport sur une page Web à l'aide d'un composant ReportViewer, j'ai réussi à résoudre ce problème en ajoutant un paramètre null avant le rendu du rapport:

Code C #:

var parameters = new List<ReportParameter>();
parameters.Add(new ReportParameter("ParameterName", (string)null));
ReportViewer1.ServerReport.SetParameters(parameters);

J'espère que ça va aider

1
Johann

J'ai eu un problème similaire où la valeur par défaut définie par SSRS est (Null); toutefois, je n'avais pas besoin du paramètre pour mon rapport; J'ai trouvé utile de tester la liste pour la filtrer, je l'ai donc conservée. J'aurais pu la supprimer dans SSRS dans la configuration de l'ensemble de données. mais je l'ai changé en =System.DBNull.Value (je suppose que cela pourrait être n'importe quelle expression) et cela a fonctionné pour moi, donc je peux toujours transmettre une valeur si besoin est et définir également les valeurs disponibles (il fallait s'assurer qu'une valeur NULL était ajoutée mon ensemble de données) si je décide ensuite de révéler plus tard.

0
Glen

Je veux ajouter à la réponse correcte de dmbreth.

Il me manquait le concept selon lequel la valeur du paramètre devait encore être liée à quelque chose. À l'origine, je liais la sortie d'un jeu de données en utilisant la partie Valeurs disponibles des propriétés du paramètre, mais selon la réponse de dmbreth, cela ne pourrait pas être le cas. Enfin, j'ai déplacé mes paramètres de dépendance de sortie de la section Available Values ​​vers la section Default Values ​​et cela a fonctionné.

Donc, en résumé, dans le dialogue des propriétés du paramètre:

Page Général - Autoriser plusieurs valeurs cochées (cette option est spécifique à mon application), visibilité du paramètre définie sur interne

Page Valeurs disponibles - Aucune

Page Valeurs par défaut - Obtenir les valeurs de la requête, [ensemble de données approprié, valeur ici]

Advanced Page - Aucune signification ici

Espérons que cela soit suffisamment clair pour profiter à quelqu'un d'autre avec le même problème ...

0
Clinton Edwards