none
SSRS: Summe aus einer Lookup Spalte ermitteln ohne neue Dataset-Erstellung möglich? RRS feed

  • Frage

  • Hallo zusammen,

    ich habe ein Tablix mit einem Bezugsdataset zu IST-Zahlen. Dieses Tablix hat einen Filter für die Selektion bestimmter Positionszeilen (100-150). Die Planzahlen ziehe ich für die Postionszeilen per Lookup aus einem anderen Dataset. Das klappt. So wollte ich div. Tablix untereinanderer aufbauen, damit ich Teilsummen bilden und DB-Rechnung aufbauen kann

    Das Problem ist die Summen der Tablix. Die Summe der Planzahlen kann ich über sum(Field.Value, "Dataset Plan") zwar ziehen, aber ich möchte dies ja nur für einen bestimmten Bereich, also mit Einschränkung des Tablix (100-150) tun. Diese Einschränkung kann ich jedoch bei der Summenermittlung nur als first(Zuordnungsfeld) realisieren, so dass ich hier eine iif-Einschränkung (iif (Zuordnung between 100 and 150, sum(Field........) nicht zum Ziel führen kann.

    Wie kann man das Problem lösen, ohne dabei für alle Bereiche ein eigenes Dataset erstellen zu müssen?

    Vielen Dank für Tipps.

    Gruß Chris

    Mittwoch, 29. März 2017 15:31

Antworten

  • Ich neige ja eher dazu mir das Leben zu erleichtern und die Datenbeschaffung über Stored Procedures (mit Parametern) zu regeln. Dort habe ich in der Regel mehr Freiheiten als im VS (zumindest sind diese einfacher zu implementieren) und wenn ich dabei auch noch die Anzahl der zu übertragenden Datensätze reduzieren kann, habe ich außerdem etwas Performance gewonnen.

    Einen schönen Tag noch, Christoph -- Data Platform MVP - http://www.insidesql.org/blogs/cmu

    Freitag, 31. März 2017 06:42

Alle Antworten

  • Hallo Chris,

    Das Problem ist die Summen der Tablix. Die Summe der Planzahlen kann ich über sum(Field.Value, "Dataset Plan") zwar ziehen, aber ich möchte dies ja nur für einen bestimmten Bereich, also mit Einschränkung des Tablix (100-150) tun. Diese Einschränkung kann ich jedoch bei der Summenermittlung nur als first(Zuordnungsfeld) realisieren, so dass ich hier eine iif-Einschränkung (iif (Zuordnung between 100 and 150, sum(Field........) nicht zum Ziel führen kann.

    Wenn Du nur Werte aus einem Bereich summieren möchtest, würdest Du die iif-Funktion innerhalb der sum-Funktion aufrufen?

    =Sum(iif(Fields!DeinFeld.Value>150, 0, iif(Fields!DeinFeld.Value<100, 0, Fields!DeinFeld.Value)))

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Donnerstag, 30. März 2017 14:30
    Administrator
  • Ich neige ja eher dazu mir das Leben zu erleichtern und die Datenbeschaffung über Stored Procedures (mit Parametern) zu regeln. Dort habe ich in der Regel mehr Freiheiten als im VS (zumindest sind diese einfacher zu implementieren) und wenn ich dabei auch noch die Anzahl der zu übertragenden Datensätze reduzieren kann, habe ich außerdem etwas Performance gewonnen.

    Einen schönen Tag noch, Christoph -- Data Platform MVP - http://www.insidesql.org/blogs/cmu

    Freitag, 31. März 2017 06:42