0

J'utilise SQL Server Reporting Services 2008 pour créer un rapport. Une table de ce rapport affiche des données hiérarchiques à l'aide d'un champ ID et ParentID dans les données. Chaque ligne de données a un champ ID et un champ ParentID, où ParentID pointe vers l'ID de la ligne qui est son parent.Comment déterminer le nombre d'enfants visibles dans un rapport hiérarchique?

L'affichage hiérarchique n'est pas un problème, mais maintenant je veux compter le nombre de sous-éléments d'une ligne donnée. Par exemple:

 
row A   (5) 
    sub A   (0) 
    sub B   (2) 
    sub-sub A (0) 
    sub-sub B (0) 
    sub C   (0) 

Je peux calculer ce nombre en utilisant l'expression suivante:

=Count(Fields!IDField.Value, "RowDetails", Recursive) - 1 

Cependant, parfois, je veux cacher certaines lignes, par exemple Je veux cacher sub-sub A. Comment puis-je modifier l'expression ci-dessus de façon à ce qu'elle affiche un nombre de (1) pour sub B dans ce cas?

Répondre

0

Il semble assez difficile (voire impossible) de le faire dans le rapport. Au lieu de cela, nous avons déplacé le calcul de la hiérarchie et le nombre d'enfants vers une procédure stockée. Le SP effectue tous les calculs nécessaires, le rapport affiche simplement ce qu'il reçoit du SP et applique uniquement un formatage simple (si nécessaire) basé sur les valeurs calculées.

Questions connexes