Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Besoin d'aide pour le calcul à l'aide de deux ensembles de données à l'aide de l'expression SSRS

Vous devrez restreindre votre ensemble de données au mois souhaité, puis additionner les résultats.

LookupSet est utilisé pour récupérer des données d'un autre ensemble de données en fonction de critères.

Une fonction VBA, SumLookup est nécessaire pour ajouter les résultats de LookUp. Ce VB ira dans la section CODE du rapport (cela peut être vu sous 'Propriétés du rapport').

Function SumLookup(ByVal items As Object()) As Decimal

If items Is Nothing Then Return Nothing

Dim suma As Decimal = New Decimal()
Dim ct as Integer = New Integer()

suma = 0
ct = 0

For Each item As Object In items

  suma += Convert.ToDecimal(item)
  ct += 1

Next

If (ct = 0) Then return 0 else return suma 

End Function 

Vous utiliseriez alors la fonction dans votre expression comme :

=Code.SumLookup(LookupSet(Fields!MONTH.Value, Fields!MONTH.Value, Fields!Total.Value,"Dataset16"))

Si votre champ est une date, vous devrez alors convertir les deux en un champ MMyyyy avec FORMAT :

FORMAT(Fields!MONTH.Value, "MMyyyy")