2016-04-08 5 views
0

Ich verwende ActiveReports in meiner Anwendung. Es ist ein kontinuierlicher Bericht, der mehr als 100 Seiten enthält. Der Bericht hat auch SubReports. Es enthält sowohl Text als auch wenige Bilder.Active Reports Bild aufgeteilt

Jetzt, wenn der Bericht generiert wird, wird das Bild im Hauptbericht in zwei geteilt und angezeigt. Zum Beispiel, wenn die Seite 5 ein Bild hat, teilt sie sich und die erste Hälfte wird auf der 5. Seite gezeigt und die zweite Hälfte wird auf der 6. Seite gezeigt.

Nach ein paar Suchen fand ich Einfügen page break hilft. Aber wie finde ich die report endet ihre Seite und es hat image und so sollte ich eine page break einfügen? Oder gibt es eine bessere Lösung?

Image Break

Antwort

0

stellen Sie den Abschnitt Keeptogether-Eigenschaft auf true und Activereports wird der Abschnitt stellen Sie sicher, zusammen bleibt und nicht über mehrere Seiten aufgeteilt. hoffe das hilft.

+0

Der Abschnitt hat viele Felder, die die Eigenschaft zu wahren Überspringungen machen, wenn der ganze Abschnitt nicht passt. Ich brauche nur das Bildfeld um zu prüfen, ob es passt. – iamCR

+0

Jeder andere Weg zu erreichen? – iamCR

0

Nach paar Recherchen fand ich die Antwort von here

die Q & A Typ Konsolidieren,

2 Möglichkeiten, dies zu erreichen,

Es gibt keine KeepTogether Eigenschaft für eine Kontrolle. Die einzige Möglichkeit zum Angeben, sie zusammen zu halten, besteht darin, das Steuerelement in einem Abschnitt zu haben, in dem die Eigenschaft keep together des Abschnitts auf true festgelegt ist. In diesem Fall würde diese Lösung nicht funktionieren.

1. Einer der Ansatz wäre, eine PageBreak Kontrolle direkt über der Kontrolle zu haben, und Sie müssten dynamisch berechnen, wo Sie auf der Seite sind. Sie können dann die Methode verwenden, um zu sehen, welche Höhe das Steuerelement zum Rendern seines Texts benötigt, und die Eigenschaft enable des PageBreak-Objekts auf true setzen, wenn es nicht auf die Seite passt. Bei diesem Ansatz müssten Sie auch Ihre Margenhöhen berücksichtigen.

Wenn es SubReports gibt, folgen leider nicht immer die SubReportsKeepTogether Regeln. Unterberichte sollten eigentlich vermieden werden, es sei denn, dies ist absolut notwendig, da Sie einen zusätzlichen Bericht & ausführen, der zusätzlichen Aufwand verursacht.

2. In diesem Fall würde ich tatsächlich einen anderen groupheader-Abschnitt verwenden, der datafield -Eigenschaft ist auf etwas festgelegt, das für jede Datenzeile wiederholt wird. Verschieben Sie dann die vorhandenen Steuerelemente im Detailabschnitt auf das innere GroupHeader. Die Steuerelemente zeigen weiterhin eine Datenzeile an. Dann kann das Steuerelement in seinem eigenen Abschnitt mit dem KeepTogether-Eigenschaftssatz des Abschnitts isoliert werden.

Ich habe die zweite Methode verwendet, um meine Arbeit zu erreichen.