2017-01-04 3 views
0

Wie kann ich SSRS-Parameter mit @ übergeben? Wenn ich versuche, eine E-Mail aus der Parameterliste auszuwählen, erhalte ich:SSRS-Parameter mit @

An error has occurred during report processing. (rsProcessingAborted) 
Query execution failed for dataset 'DataSet1'. (rsErrorExecutingCommand) 
Parser: The syntax for '@xx' is incorrect. ([email protected]). 

Ich brauche es, um mein MDX-Dataset zu filtern.

Antwort

1

Die Werte in Cubes sind nicht einfach Text, sie sind Mitglieder einer Dimension mit Attributen. Um den Vergleich durchzuführen, muss er in die richtige Syntax konvertiert werden. Eine gute Möglichkeit, einen Parameter hinzuzufügen, besteht darin, den SSRS-Abfrage-Designer zu verwenden.

  1. Wechseln Sie zu Ihren Datensatzeigenschaften.
  2. Klicken Sie auf Abfrage-Designer.
  3. Ziehen Sie das Attribut in die obere rechte Ecke.
  4. Aktivieren Sie das Kontrollkästchen in der Spalte Parameter.
  5. Klicken Sie auf OK.

Dies erstellt einen versteckten Datensatz zusammen mit dem Parameter. Es formatiert auch die Dropdown-Liste für Sie.

Wenn Sie in der MDX suchen, die es erstellt, gibt es eine StrToSet-Funktion, die es verwendet, um die Zeichenfolge zu interpretieren.

Eine andere Option, die einfacher, aber weniger effizient ist, besteht darin, den Filter einfach auf Ihre Datenmenge in SSRS anzuwenden.

  1. Wechseln Sie zu den Eigenschaften des Datensatzes.
  2. Wechseln Sie zur Registerkarte Filter.
  3. Fügen Sie einen Filter, der die Email Spalte gleich Ihre Parameters!Email.Value
+0

Es funktioniert nur für einen Parameter gewährleistet. Selbst wenn ich den Operator zu "in" ändere, wird nur die erste E-Mail an den Filter gesendet. – Testtest11

+1

Wenn Sie Parameter über den Abfrage-Designer hinzufügen, akzeptieren sie standardmäßig mehrere Werte. Wenn Sie einen Filterausdruck hinzufügen, stellen Sie sicher, dass hinter "Parameters! Email.Value" kein "(0)" steht. – StevenWhite