sql >> Database >  >> RDS >> Sqlserver

Hulp nodig bij berekening met behulp van twee datasets met Expression SSRS

U moet uw dataset beperken tot de gewenste maand en vervolgens de resultaten optellen.

LookupSet wordt gebruikt om gegevens op te halen uit een andere dataset op basis van criteria.

Een VBA-functie, SumLookup is nodig om de resultaten van de LookUp toe te voegen. Deze VB zou in de CODE-sectie van het rapport gaan (dit is te zien onder 'Rapporteigenschappen').

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 

U zou dan de functie in uw uitdrukking gebruiken als:

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

Als uw veld een datum is, moet u beide converteren naar een MMyyy-veld met FORMAT:

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



  1. Hoe DateTime naar VarChar . te converteren

  2. Oracle - Welk TNS Names-bestand gebruik ik?

  3. Fout bij het uitvoeren van pgAdmin4

  4. 🆕 Eerste overzicht van SQL Server 2022 - Top 5 nieuwe functies (Bonus 5-functies)