2016-04-12 8 views
1

Ich habe eine Reihe von Berichten in SSRS eingerichtet. Jeder dieser Berichte ist gut gestaltet und funktioniert wie erwartet.SSRS "Verlieren" Parameter übergeben an Unterbericht

Es wurde eine Anfrage gestellt, eine Anzahl dieser Berichte in einen einzigen "Master" -Bericht einzubinden. Ich habe die Arbeitsberichte als Unterberichte eingerichtet und alle Parameter des ersten Unterberichts aus dem Bericht "Master" ausgefüllt. Ich habe diese Tatsache überprüft und überprüft.

Wenn ich versuche, den Bericht auszuführen, scheint die Verarbeitung übermäßig lang zu sein. Anstelle des ersten subreport SSRS macht Error: Subreport could not be shown.

ich die Protokolldatei überprüft und ich erhalte eine Fehlermeldung: processing!ReportServer_0-3!e58!04/11/2016-19:42:15::e ERROR: An error has occurred while processing a sub-report. Details: One or more parameters were not specified for the subreport ... Report.Stack trace: at Microsoft.ReportingServices.OnDemandReportRendering.SubReport.FinalizeErrorMessageAndThrow() at Microsoft.ReportingServices.OnDemandReportRendering.SubReport.RetrieveSubreport()

Ich habe auch den Report ExecutionLogStorage geprüft und ich kann sehen, dass alle meine Parameter sind Füllen in der Parameterspalte. Die Parameterzeichenfolge läuft ungefähr 5k Zeichen.

einige weitere Details: Das subreport enthält 7 Parameter:

  • Administrator - Einzelwert
  • ReportDate - Einzelwert
  • ClientStatus - Mehrfachauswahl
  • DeptStatus - Mehrfachauswahl
  • -Client - Mehrfachauswahl
  • AccessType - Einzelwert
  • DataOnly - Einzelwert

Diese Parameter werden im Bericht "Master" gespiegelt. Ich habe versucht, die Multiselect-Parameter mit beiden =Parameters!ClientStatus.Value und die =Split(join(Parameters!ClientStatus.Value,","),",")-Methode übergeben, aber ich bin ehrlich nicht sicher, welcher Parameter aus dem Unterbericht fehlt. Soweit ich das beurteilen kann, sind diese Informationen nirgendwo verzeichnet.

Wir haben diesen kombinierten "Master" -Bericht größtenteils aufgegeben, aber ich würde gerne auf dem Laufenden bleiben, da ich mich wundere, wenn sich das auf andere Berichte auf subtilere Weise auswirken könnte.

Wenn ich weitere Informationen zur Verfügung stellen kann, lassen Sie es mich bitte wissen.

+0

Stellen Sie sicher, dass die mehrwertigen Parameter aus dem Hauptbericht an den Unterbericht als [@ParameterName] übergeben werden, nicht als "= Parameters! ParameterName.Value". –

+0

@ErayBalkanli Warte, könntest du hier näher eingehen? Wenn ich den ClientStatus-Parameter von oben benutze, ist der letzte Ausdruck beim Editieren des Ausdrucks '= Parameters! ClientStatus.Value', aber wenn ich ihn im Parameter-Menü des Unterbericht-Eigenschaften-Fensters anschaue, wird der obige Ausdruck in' [@ClientStatus] 'übersetzt. Ich habe einen Multiselect-Parameter wie diesen zuvor eingerichtet und es hat gut funktioniert. – MattB

+0

Wenn Sie [@ParameterName] oder Join (Parameters! ParameterName.Value) verwenden, um einen Parameter vom Bericht an den Unterbericht zu übergeben, löst das Problem hier? Hast du es versucht? –

Antwort

0

Haben alle Parameter im Unterbericht einen Wert?
Wenn nicht, werden Parameter mit "Nullwert akzeptieren" überprüft?

+0

Sie sind so eingerichtet, dass sie einen Wert aus dem Hauptbericht erhalten. Ich habe jeden Parameter des Unterberichts eingerichtet, um einen Wert aus dem Hauptbericht zu übergeben. "accept null value" wäre hier keine Option - die Parameter MÜSSEN ausgefüllt werden.Kann ich irgendwie sehen, was tatsächlich an den Unterbericht weitergeleitet wird? – MattB

+0

Übrigens wäre dies besser als Kommentar zu der ursprünglichen Frage als eine Antwort geschrieben. – MattB

+0

"Nullwert akzeptieren" ist ein Parameter des Berichts, den Sie als Unterbericht verwenden. Wenn alle Parameter im Hauptbericht ausgefüllt sind, ist es das einzige, was ich sehe –

Verwandte Themen