2009-08-15 4 views

Antwort

5

Ja, es ist möglich. Wenn Sie auf die Gruppe klicken und ihre Eigenschaften auf der Registerkarte Sichtbarkeit bearbeiten, können Sie die Sichtbarkeit mithilfe eines Ausdrucks nutzen. Zum Beispiel habe ich einen Bericht mit einer Detailgruppe und einer Wertartengruppe, und ich möchte nur Wertgruppen anzeigen, in denen Daten enthalten sind.

ich tun, indem die Sichtbarkeit Ausdruck für die Gruppe auf die folgende Einstellung:

= CountDistinct (! Felder ValueType.Value "matrix1_Detail") = 1 OR Max (Abs (code.GetValue (Felder Wert))) 0 = 0

Wenn der Ausdruck Code als wahr ausgewertet wird, ist die Spalte ausgeblendet.

+0

klingt genau richtig für mich. – DForck42

1

Ja, das ist möglich. Dies würde das Schreiben eines Ausdrucks für die Visibility-Eigenschaft für die Datenzelle beinhalten. Der Ausdruck sollte die InScope() - Funktion enthalten, um sicherzustellen, dass die rechte Spalte ausgeblendet wird. Der Ausdruck verweist auch auf ReportItems! Textboxofcolumn.value (sucht nach dem gewünschten Wert).

Go here for more on the InScope() function

Lassen Sie mich wissen, wenn Sie eine Hand mit dem Ausdruck benötigen.

+3

Wenn ich mich nicht irre, wird nur eine leere Spalte angezeigt, die die zu verbergende Spalte darstellt, anstatt die Spalte –

+0

@adolfgarlic zu entfernen, anstatt dies in der Textbox zu tun Spaltengruppe, die Sie ausblenden möchten. Ich hatte Erfolg mit Spaltengruppen auf oberster Ebene, aber ich habe Schwierigkeiten mit umschaltbaren Unterspaltengruppen ... – idclaar

0

Ich denke, Sie müssen die Zeilen aus dem Dataset in SQL entfernen oder sie in RS ausfiltern.

1

Wenn Sie nur die Zellen- oder Spaltensichtbarkeit festlegen (mit der Eigenschaft "hidden"), bleibt dort Leerraum. Wie bei der ersten Antwort heißt es: Wenn Sie eine Spaltengruppe erstellen und die Sichtbarkeit für die Gruppe festlegen, funktioniert sie.

Ich habe meinen Bericht in mehrere Spaltengruppen aufgeteilt, von denen jede in derselben Sache gruppiert ist. Legen Sie die Sichtbarkeitsgleichung für die mittlere Gruppe fest. Arbeitete wie ein Champion.

0

Ich brauchte etwas, um leere Spalten aus exportierten Excel-Blättern auszuschließen. Was für mich funktionierte, war die gesamte Spalte in der Matrix zu wählen, indem man mit der rechten Maustaste auf das oberste Kästchen im Designer klickte und "Ausblenden oder basierend auf einem Ausdruck anzeigen" auswählte und einen Ausdruck wie folgt verwendete:

IsNothing (Max (Felder! COLUMNNAME.Value, "DATASET"))

Die Spalte wird weder im Bericht angezeigt, noch werden beim Export Leerstellen angezeigt. Keine Notwendigkeit für Spaltengruppen oder InScope() -Funktion, aber ich verwende eine sehr einfache Matrix, die nur eine einzelne Zeilengruppe hat.