ssrs – comparer les ensembles d’enregistrements par groupe



Salut à tous,

J’ai un problème pour comparer les données dans le groupe par des ensembles de données.

Ma requête back end:

select 1 As ID, ‘New’ As Typecode, 111 comme Availvals
syndicat
sélectionnez 1 As ID, ‘New’ As Typecode, 112 comme Availvals
syndicat
sélectionnez 1 As ID, ‘Old’ As Typecode, 111 comme Availvals
syndicat
sélectionnez 1 As ID, ‘Old’ As Typecode, 113 comme Availvals

Affichage du rapport:

1 Nouveau 111
112
Vieux 111
113

ID est le groupe parent et Child Group est le code de type.Je veux juste comparer les valeurs disponibles pour le nouveau groupe et le vieux groupe.Si les deux ensembles d’enregistrements sont identiques, je veux colorier l’ID en vert sinon le même rouge.Si un groupe est vide jaune (dans certains cas, seules les nouvelles données sont disponibles).

Une solution rapide pour ce problème dans RSSS 2012?

Merci

Virer

pour cela, vous pouvez faire quelque chose comme ça, je suppose

  Avec Diff
 COMME
 (
 SELECT *, 1 en tant que chat
 DE
 (
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Nouveau'
 SAUF
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Ancien'
 ) m
 UNION TOUS
 SELECT *, 2 AS Cat
 DE
 (
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Ancien'
 SAUF
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Nouveau'
 ) n
 )

 SELECT t. *,
 CAS LORSQUE CATCENT EST NULL ALORS 'Same'
 QUAND CatCnt = 1 ET t.Cnt = d.CENT PUIS 'Un groupe manquant'
 ELSE «Différence» 
 FIN
 AS ComparisonStat
 DE (
 SELECT *,
 COUNT (Cat) OVER (PARTITION PAR ID, code de type) AS Cnt
 DE TABLE) t
 JOINT GAUCHE 
 (
 SELECT ID, COUNT (Chat DISTINCT) AS CatCnt, COUNT (chat) AS Cnt
 DE Diff 
 GROUP BY ID) d
 ON t.ID = d.ID 

puis définissez la couleur dans votre rapport en fonction de ComparisonStat

Veuillez marquer ceci comme réponse s’il a résolu votre problème
S’il vous plaît voter ceci comme utile si cela aide à résoudre votre problème
Visakh
—————————-



Il est beaucoup plus facile de faire cela dans la requête derrière la comparaison de deux listes basées sur la valeur de regroupement. pourquoi voulez-vous le faire dans SSRS?

Veuillez marquer ceci comme réponse s’il a résolu votre problème
S’il vous plaît voter ceci comme utile si cela aide à résoudre votre problème
Visakh
—————————-



Dans la requête back end, nous pouvons utiliser sauf ..Mon exigence est d’afficher toutes les données dans le rapport et de comparer le même.Pour ex: Toute requête d’échantillon pour obtenir l’indicateur de DB pour résoudre mon problème?

en dessous ex M1 – match de mismatch M2

M1 2012 Vieux 1

2

Nouveau 1

3

M2 2012 Vieux 1

Nouveau 1

pour cela, vous pouvez faire quelque chose comme ça, je suppose

  Avec Diff
 COMME
 (
 SELECT *, 1 en tant que chat
 DE
 (
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Nouveau'
 SAUF
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Ancien'
 ) m
 UNION TOUS
 SELECT *, 2 AS Cat
 DE
 (
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Ancien'
 SAUF
 SELECT ID, Availvals
 FROM Table 
 WHERE Typecode = 'Nouveau'
 ) n
 )

 SELECT t. *,
 CAS LORSQUE CATCENT EST NULL ALORS 'Same'
 QUAND CatCnt = 1 ET t.Cnt = d.CENT PUIS 'Un groupe manquant'
 ELSE «Différence» 
 FIN
 AS ComparisonStat
 DE (
 SELECT *,
 COUNT (Cat) OVER (PARTITION PAR ID, code de type) AS Cnt
 DE TABLE) t
 JOINT GAUCHE 
 (
 SELECT ID, COUNT (Chat DISTINCT) AS CatCnt, COUNT (chat) AS Cnt
 DE Diff 
 GROUP BY ID) d
 ON t.ID = d.ID 

puis définissez la couleur dans votre rapport en fonction de ComparisonStat

Veuillez marquer ceci comme réponse s’il a résolu votre problème
S’il vous plaît voter ceci comme utile si cela aide à résoudre votre problème
Visakh
—————————-