Aggregieren von gruppierten data mit sich wiederholenden data

Ich versuche herauszufinden, wie man die Anzahl der Stunden, die eine Person gearbeitet hat, die von jedem Fransencode wiederholt wird, die sie haben, zusammenfasst.

Die data sehen so aus

Company Code Employee Code Employee Name Hours Fringe Code Fringe Amount 030 12345 Joe Blow 8 VAC 10.00 030 12345 Joe Blow 8 DUE 5.00 030 12345 Joe Blow 8 INTDUE 2.00 030 54698 Alan Low 8 VAC 10.00 030 54698 Alan Low 8 DUE 5.00 030 54698 Alan Low 8 INTDUE 2.00 

Jetzt ist die Gesamtzahl der Stunden um 16 Uhr. Im Bericht habe ich die folgenden Felder Buchungskreis, Mitarbeitercode, Mitarbeiter Name, Stunden, so dass sie nur einmal erscheinen (nicht sicher, wie zu zeigen, dass) gruppiert.

Ich habe versucht, das folgende zu tun

 Sum(FIRST(Fields!Hours.Value, "Employee_Name") , "Company_Code") 

aber ich bekomme einen Fehler, der besagt, dass der Wert ein erstes Aggregat in einem äußeren Aggregat verwendet und dass sie nicht als verschachtelte Aggregate angegeben werden können.

Irgendwelche Ideen?

Ich bin mir nicht sicher, was du willst, also schätze ich ein mögliches Ergebnis-Szenario.

Ich habe die Bereitstellungstabelle wiedergegeben.

Bildbeschreibung hier eingeben

Mit diesen tablix-dataeinstellungen:

Bildbeschreibung hier eingeben

Fügen Sie diesen Code dem Bericht hinzu. Diese function markiert die Zeilen, die summiert werden müssen.

 Dim groups As System.Collections.Hashtable Function MyFunc(ByVal group As Object) As integer dim flag as integer If (groups Is Nothing) Then groups = New System.Collections.Hashtable End If If (Not groups.Contains(group)) Then flag = 1 groups.Add(group, nothing) else flag = 0 End If MyFunc = flag End Function 

Und dieser Ausdruck im Tablix-Textfeld willst du die Summe setzen.

 =sum(val(iif(Code.MyFunc(Fields!Employee_Code.Value) = 1, Fields!Hours.Value, 0))) 

Sie erhalten diese Vorschau

Bildbeschreibung hier eingeben

Lassen Sie mich wissen, ob dies hilfreich war.

Nun, ich hatte Probleme mit einigen der oben genannten Anregungen, aber ich habe herausgefunden, wie das Problem zu lösen.

Ich habe die folgende Gleichung verwendet:

= SUM (MAX (Felder! Regular_Hours.Value, "Employee_Code", "Company_Code")

So habe ich die MAX-function verwendet, um nur ein Vorkommen pro Mitarbeiter-Code zu bekommen und dann eine Summe von diesem ein Vorkommen über die Buchungskreis-Gruppierung.

Danke für deine Jungs helfen!