2 votes

Paramètres des opérateurs mathématiques

Je voulais savoir si nous pouvions utiliser des opérateurs mathématiques dans les paramètres du rapport.

J'ai un paramètre appelé "EMP_Attendance".

Je souhaite disposer d'un paramètre pour afficher et exécuter le rapport avec des valeurs.

Paramètre :

EMP_Attendance

           = 100.00%
           <100.00% and >=90.00%
           <90.00% and >=80.00%
           <80.00% 

le rapport doit être exécuté en fonction de cette valeur

1voto

glh Points 3601

Ce n'est pas possible en soi, mais il existe une petite solution de contournement.

  1. Créez un paramètre visible avec les quatre options ci-dessus.
  2. Créer deux paramètres internes qui sont alimentés par deux requêtes fictives, l'une d'entre elles étant une requête en ligne et l'autre une requête en ligne. lower et un upper .
  3. Faire en sorte que les requêtes produisent les limites supérieures et inférieures appropriées en fonction de la sélection de l'utilisateur, par exemple si 100% est sélectionné. lower = 100 et upper = 101.
  4. Filtrez l'ensemble des données en fonction de ces deux limites.

0voto

StevenWhite Points 800

Tout d'abord, vous devez ajouter 4 valeurs disponibles à votre paramètre avec une étiquette "100%" etc. et des valeurs de 1,2,3,4.

Vous avez ensuite deux possibilités de filtrage.

  1. Vous pouvez ajouter quelque chose comme ceci à votre requête :

    SELECT case when EMP_Attendance = 100 then 1 
    when EMP_Attendance <100 and EMP_Attendance >=90.00% then 2
    when EMP_Attendance <90 and EMP_Attendance >=80 then 3
    else 4 end as AttendanceGroup
    WHERE AttendanceGroup = @AttendanceParameter
  2. L'autre option consiste à conserver la requête telle quelle afin qu'elle renvoie toutes les données dans le rapport. Cliquez avec le bouton droit de la souris sur le tableau et accédez à ses propriétés. Allez dans Filtres. Ajoutez des filtres ici pour comparer votre paramètre à la valeur EMP_Attendance.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X