2012-09-19 8 views
11

Ich habe einen ziemlich einfachen Unterbericht, den ich unterdrücken möchte, wenn keine Datensätze dafür ausgewählt sind. Das Problem ist, dass ich einen Kopf- und Fußzeilenbereich dieses Unterberichts mit statischen Elementen darin habe (Textfelder, Zeilen, etc.). Ich habe den Abschnitt, der den Unterbericht, den Unterbericht selbst und die Abschnitte innerhalb des Unterberichts enthält, so eingestellt, dass sie alle unterdrückt werden, wenn keine Datensätze vorhanden sind. Der Unterbericht taucht trotzdem auf. Der Datenbereich ohne Daten wird zwar unterdrückt, aber die Kopf- und Fußzeilen scheinen den Unterbericht sichtbar zu halten.Unterbericht ohne Daten und eine Kopfzeile unterdrücken

Irgendwelche Ideen? Oh, ich führe Crystal-Reports 2011. Danke!

Antwort

16

Ich bin gerade selbst in CR2008 hineingerannt. Hier sind die Schritte, die ich tat, um diese Arbeit zu machen:

  1. Gehen Sie in Ihren subreport (damit meine ich es offen in seinen eigenen Designer-Fenstern) -> geht in ‚Report Options‘ unter dem Menü ‚Datei‘ - > Wählen Sie "Drucken unterdrücken, wenn keine Datensätze vorhanden sind"
  2. Gehen Sie nun zurück in Ihren Hauptbericht. Klicken Sie mit der rechten Maustaste auf den Unterbericht -> gehen Sie auf 'Unterbericht formatieren' -> klicken Sie auf die Registerkarte 'Unterbericht' -> markieren Sie das Kontrollkästchen 'Unterbericht unterdrücken'.
  3. Wenn der Unterbericht das einzige im Hauptberichtbereich ist, gehen Sie in den Abschnitt im 'Abschnittseditor', indem Sie mit der rechten Maustaste darauf klicken -> Aktivieren Sie das Kontrollkästchen 'Unterstrich unterdrücken'.

EDIT: Wenn Ihr subreport Datensätze zurückgibt, aber es ist nur, dass keine sind dann angezeigt versuchen, freigegebene Variablen. Um dies zu tun, müssen Sie die Logik berücksichtigen, mit der Sie die Datensätze im Unterbericht an erster Stelle anzeigen. Dies ist wahrscheinlich die Logik, die in der Detailabschnitt-Unterdrückungsformel gefunden wird, hängt jedoch stark vom Format Ihres jeweiligen Unterberichts ab.

Jetzt initialisieren Sie eine gemeinsam genutzte Zahlvar im Berichtsheader Ihres Unterberichts und inkrementieren Sie sie dann jedes Mal, wenn eine Zeile mit der oben genannten Logik angezeigt wird.

In Ihrem Hauptbericht können Sie möglicherweise den Wert dieser Variablen überprüfen, um den Abschnitt des Unterberichts bedingt zu unterdrücken. Ich sage "kann", weil CR die Variablen des Unterberichts vor auf die Unterdrückungsformel nicht bewerten kann, aber geben Sie es einen Wirbel. Sie sollten das Schlüsselwort whileprintingrecords; in Ihrer Abschnittsunterdrückungsformel verwenden, um die Auswertung zu verzögern. Viel Glück!

+0

Drat! Keine Seife. Ich hatte wirklich hoffnungsvolle Gedanken, da ich über das Dialogfeld "Berichtsoptionen" im Menü "Datei" nicht wusste und dieses Kontrollkästchen nicht aktiviert war. Ich habe es überprüft und erhalte immer noch den Unterbericht. –

+0

@DanBerlyoung Zeigt der Unterbericht tatsächlich etwas an oder ist es nur eine leere Box?Wenn Sie immer noch die Kopf-/Fußzeilen erhalten, ist es möglich, dass der Unterbericht tatsächlich Datensätze erhält, diese aber nicht angezeigt werden? Die Abfrage des Unterberichts muss 0 Zeilen zurückgeben, damit dieses Kontrollkästchen tatsächlich funktioniert. – Ryan

+0

Aye! Da ist das Reiben. Der Unterbericht enthält Datensätze, die in einem anderen Unterbericht gedruckt werden, aber dieser enthält bei Verwendung desselben Datasets nur Felder, die keinen Wert enthalten. Es unterdrückt also den Detailbereich, da keine Felder zum Drucken vorhanden sind, aber der Unterbericht tatsächlich Datensätze enthält. Gibt es überhaupt das Gefühl, dass das Wetter oder gar keine Zeilen tatsächlich gedruckt werden, und dann den Unterbericht basierend auf diesem Wert ausblenden? –

0

Haben Sie versucht, Formel zu unterdrücken?

Rechtsklick Format Feld> Überprüfen Suppress> klicken Sie auf Bearbeiten Formel [x-2] Taste

0

schwer, alles in der Post zu folgen, aber wenn Daten ineinander laufen, dann fügen Sie ein Abschnitt und legen Sie Ihren Unterbericht in den Abschnitt und stellen Sie sicher, dass wachsen kann, ist abgehakt.

Wenn Sie statische Daten haben, die Sie anzeigen möchten, möchten Sie möglicherweise zwei Unterberichte erstellen, einen mit den statischen Daten und einen mit den dynamischen Daten und unterdrücken, falls leer.

Verwandte Themen