1

Sehr neu zu SSRS so unvertraut mit der Syntax - Verwenden von Report Builder 2.0.SSRS: Berechne% von 'gezählten' berechneten Feldern

Ich habe eine sehr einfache Tabelle im Berichts-Generator erstellt, um die Gesamtzahl der den Patienten zur Verfügung gestellten Termin-Slots und die Gesamtzahl dieser belegten Slots anzuzeigen.

Ich mag eine zusätzliche Spalte hinzufügen, um das% des gebuchten Slots zeigen (dh verfügbare Slots/Gebucht Slots * 100%):

| Total Slots | Booked Slots | % Booked | 
+-------------+--------------+----------+ 
| 2000  |  1250  | 62.5% | 
+-------------+--------------+----------+ 

Sowohl der 'Total Slots' und 'gebucht Slots' Die Werte basieren auf demselben Feld ('Gebuchtes_Flag') des Datasets. Dieses Feld trägt einen "Y/N" -Wert.

der Spalte ‚Gesamt Slots‘ den zugrunde liegenden Ausdruck: =Count(Fields!Booked_Flag.Value)

Die Spalte ‚gebucht Slots‘ den zugrunde liegenden Ausdruck: =SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))

Bitte kann jemand beschreibt den am besten geeigneten Weg, um das ‚% gebucht zu berechnen ' Zahl?

Ich habe dies versucht: =SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))/SUM(Fields!Booked_Flag.Value) aber es gibt die folgenden Fehler - was ich Mittel bin Vermutung ich eine Berechnung auf einer anderen Berechnung nicht ausführen kann:

The expression used for the calculated field '=SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))/SUM(Fields!Booked_Flag.Value)' includes an aggregate function. Aggregate functions cannot be used in calculated field expressions. 

schätzt jede Führung.

+0

Verwenden Sie anstelle der Felder den tatsächlichen Textfeldwert. ReportItems! Textbox1.value – Snowlockk

+0

Könnten Sie die Daten ändern, um den Wert 0 oder 1 anstelle von 'Y'/'N' zurückzugeben? So könnte man einfach nur summieren. –

+0

Dank @Snowlockk - Ich habe es versucht, aber es wirft mir einen '# Fehler' in den Bericht - irgendwelche Vorschläge, warum dies sein könnte? – Jon295087

Antwort

2

Sie können direkt auf den Inhalt der Berichtszellen zugreifen und diese berechnen. In deinem Fall ist es einfach. Nehmen wir an, in dem Berichtsentwurf heißt die Zelle, die '2000' enthält, TextBox1 (überprüfen Sie die Eigenschaften, um den Namen zu erhalten) und die Zelle, die '1250' enthält, heißt TextBox2 dann wäre Ihr% -Spaltenausdruck so etwas wie

=ReportItems!TextBox2.Value/ReportItems!TextBox1.Value 

Die nur das Format der berechneten Spalte auf p1 (Prozent mit 1 Dezimalstelle) und Ihre getan.

+0

@Alan_Schofield - vielen Dank, aber Ich erhalte einen "# Fehler", der in der Tabellenzelle angezeigt wird, wenn ich den Bericht ausführe – Jon295087

+0

Hast du sichergestellt, dass die Textboxnamen korrekt sind? Ich habe es gerade getestet, für den Fall, dass ich etwas Dummes getan habe, aber es funktioniert gut. Wenn Sie weiterhin Probleme haben, veröffentlichen Sie ein Bild des Berichtsdesigns und den genauen Ausdruck, den Sie verwendet haben. –

+0

@Alan_Schofield hat es geknackt, danke. Ich habe fälschlicherweise die Namen der Zellen der Spaltenüberschrift im Ausdruck anstelle der Namen der Zellen verwendet, die den tatsächlichen Wert enthalten - habe sie geändert und Bingo. Vielen Dank für deine Hilfe. – Jon295087

Verwandte Themen