Frage

Ich habe einen Bericht, dass Gruppen von zwei Codes, wir werden sie Parent und Child nennen.

Am Anfang jeder Seite, im Seitenkopf, mag ich den Parent Namen gedruckt werden soll.

Es gibt eine Reihe von Spalten im Bericht, und wenn die Gruppe bricht, ich mag die neuen Kindernamen anzuzeigen, sowie die Spaltenüberschriften wieder. Der Bericht sollte etwa wie folgt aussehen:

Parent Name
    Child Name
    Col1 Col2 Col3 Col4 Col5 Col6
    XXXX XXXX XXXX XXXX XXXX XXXX
    XXXX XXXX XXXX XXXX XXXX XXXX

    Child Total:             XXXX

    Child Name
    Col1 Col2 Col3 Col4 Col5 Col6
    XXXX XXXX XXXX XXXX XXXX XXXX

Wenn ein Kind Gruppe auf die neue Seite umschlingt, aber ich mag wieder zeigt die Kindernamen und Spaltenüberschriften, bevor die Daten wieder angezeigt wird.

Um dies zu erreichen, habe ich eine Kopfzeile erstellt, die folgende Objekte enthält:

Parent Name
    Child Name
    Col1 Col2 Col3 Col4 Col5 Col6

In der Kopfzeile ist eine Variable RowReset, die die folgende Formel enthält:

WhilePrintingRecords;
Shared numberVar nRowCount := 0

Dann wird in jeder Detailzeile, sowie die Gruppe 1 und Gruppe Footer Footer 2 Abschnitte, Ich habe folgende RowIncrement Formel:

WhilePrintingRecords;
Shared numberVar nRowCount := nRowCount + 1;

Schließlich wird in jedem Gruppenkopf 2 Abschnitt habe ich die folgende bedingte Unterdrückungsformel:

WhilePrintingRecords;
Shared numberVar nRowCount;
IF (PageNumber <> 1) AND (nRowCount = 0 OR nRowCount = 0.00) THEN
    True
ELSE
    False

Was diese Versuche zu tun ist, unterdrücken den Kindergruppenkopf, wenn wir auf eine völlig neue Seite sind, und keine Detaildatensätze gedruckt wurden noch folgende geschieht zu verhindern:

Parent Name                          ---+
    Child Name                          +-- Page header
    Col1 Col2 Col3 Col4 Col5 Col6    ---+

    Child Name                       ---+-- Group header 2
    Col1 Col2 Col3 Col4 Col5 Col6    ---+

Aus irgendeinem Grund kann ich nicht herausfinden, über 40 Seiten in dem Bericht, habe ich genau das, obwohl; a Page Kopfsatz, durch einen Kopf 2 Rekord-Gruppe gefolgt. Wenn ich eine Formel erstellen, die die bedingte Unterdrückungs-Formel enthält, zeigt es TRUE, aber der Gruppenkopf immer noch nicht unterdrücken.

Wenn ich den Code brechen, so dass es nur eine der conditionals prüft (entweder PageNumber <> 1 oder nRowCount = 0) dann richtig dem Gruppenkopf 2 unterdrückt.

Ich habe sogar versucht, diese Dinge zu brechen:

WhilePrintingRecords;
Shared numberVar nRowCount;
booleanVar bSuppress:= False;

IF PageNumber <> 1 THEN bSuppress:= True;
IF (bSuppress) THEN (IF nRowCount = 0 THEN True ELSE False);

Es zeigt auch True, wenn auf dem Bildschirm angezeigt, aber nicht den Gruppenkopf zu unterdrücken.

Was auf der Erde mache ich falsch hier? Gibt es einen besseren Ansatz könnte ich nehmen?

War es hilfreich?

Lösung

Ich schlage vor, setzen die ‚Mutter name‘ Feld im Gruppenkopf der eigenen Gruppe, anstatt im Seitenkopf. Dann wird in beiden Eltern- und Kind-Gruppen, wählen Sie den „Repeat Gruppenkopf auf jeder Seite‘ Kontrollkästchen im Dialogfeld Gruppenoptionen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top