2016-09-08 4 views
0

Die Tabelle enthält ein Feld, das eine beliebige Kombination der vier Buchstaben "DICS" enthalten kann. Zum Beispiel eines von diesen: "I", "DC", "DIS", "CS" oder "DICS".Enthält das Feld "ssrs" einen der ausgewählten Parameter

Ich legte "WHERE DISCscores IN (@DISCScores)" in das Dataset und legen Sie die Parametereigenschaften, um jeden der vier Buchstaben zu enthalten, aber der Bericht wird nur Datensätze auflisten, in denen das Feld DISCscores nur einen der Buchstaben enthält. Wenn alle ausgewählt sind, werden nur die Datensätze angezeigt, die einzelne Buchstaben enthalten, aber ich brauche sie, um alle Datensätze zu enthalten, in denen DISCScores ALLE ausgewählten Leter enthält.

Zum Beispiel wenn nur "S" in den Parametern ausgewählt ist, dann möchte ich alle Datensätze mit "S", "DIS", "CS", "IS", "DS" oder "DICS" anstelle von nur die mit "S." Wenn "I" und "S" in der Parameter-Eingabeaufforderung aktiviert sind, möchte ich Datensätze, bei denen DISCScores "IS", "DIS", "ICS" oder "DICS."

Ich erwarte, einen Ausdruck in den Parametereigenschaften zu verwenden, aber ich würde nicht wissen, wie man diesen Ausdruck fertigt.

Danke!

+0

Siehe http://stackoverflow.com/questions/512105/passing-multiple-values-for-a-single-parameter-in-reporting-services – StevenWhite

Antwort

0

Es sei denn, ich bin nicht Ihre Frage richtig zu verstehen, es sieht aus wie Sie

wollen
WHERE DISCScores LIKE '%' + @DISCScores + '%' 

Dies würde nur für den Fall, arbeiten die Parameter @DISCScores allerdings einen einzelnen Buchstaben enthält.

+0

Ich habe das versucht. Wenn mehr als ein Buchstabe ausgewählt ist, erhalte ich einen Fehler. Wenn nur ein Buchstabe ausgewählt ist, dann bekomme ich, was Sie erwarten würden ... alle Datensätze, die diesen Buchstaben enthalten. Ich muss in der Lage sein, eine beliebige Kombination von D, I, S oder C auszuwählen und einen Datensatz mit den ausgewählten Buchstaben zu haben. –

+0

Oh, Entschuldigung. Ich sehe, Sie sagten, dass es nur funktionieren würde, wenn der Parameter einen einzelnen Buchstaben enthält. Recht. Aber ich muss mehr als einen Buchstaben im Parameter auswählen. –

+0

In einem ASP.Net GridView verwendete ich eine CheckBoxList für die DISC-Briefauswahl. –

1

Ich habe die obige Anforderung erfüllt, indem ich einen Parameter für jeden der vier Buchstaben erstellt habe und für jeden von ihnen [field] LIKE '%' + @parameter + '%' verwendet habe.