Freigeben über


Steuern der Berichts- und Etikettenausgabe

Sie können steuern, wohin Berichts- und Etikettenausgaben gesendet werden, indem Sie eines der folgenden Schlüsselwörter zusammen mit einem der Befehle REPORT oder LABEL verwenden:

  • PRINT
  • PREVIEW
  • FILE

Wenn Sie keines dieser Schlüsselwörter angeben, wird der Bericht auf dem Bildschirm oder im aktiven Fenster ausgegeben.

Auswählen von Datensätzen zum Drucken

Wenn Sie einen Bericht drucken, können Sie die Anzahl der im Bericht angezeigten Datensätze begrenzen, indem Sie Auswahlkriterien angeben. Dabei haben Sie folgende Möglichkeiten:

  • Wählen Sie einen Datensatzbereich, indem Sie eine Menge oder einen Bereich angeben.
  • Schreiben Sie einen FOR-Ausdruck, der die Datensätze auswählt, die eine bestimmte Bedingung erfüllen.
  • Schreiben Sie einen WHILE-Ausdruck, der so lange Datensätze auswählt, bis ein Datensatz gefunden wird, der eine bestimmte Bedingung nicht erfüllt.

Sie können beliebige Kombinationen dieser Optionen verwenden. Der WHILE-Ausdruck setzt die anderen Kriterien außer Kraft.

Drucken einer Menge oder eines Bereichs von Datensätzen

Eine Möglichkeit, die Zahl der Datensätze zu begrenzen, besteht darin, eine Menge oder einen Bereich von Datensätzen anzugeben. Mit Hilfe der Option Bereich können Sie einen einzelnen Datensatz oder eine Gruppe von Datensätzen, die sequenziell in der Datei gespeichert sind, auswählen.

Anmerkung   Der aktive Index und der Datensatzzeiger beeinflussen das Ergebnis der Bereichsoptionen Nächster und Rest. So unterscheidet sich beispielsweise der nächste Datensatz in einer Tabelle, die anhand des Nachnamens indiziert ist, von dem nächsten Datensatz in einer Tabelle, die nach Status indiziert ist. Dies betrifft jedoch nicht die Option Datensatz Nr., weil sich die Nummer eines Datensatzes nicht ändert, wenn die Tabelle indiziert wird.

So wählen Sie eine begrenzte Zahl von Datensätzen aus

  1. Wählen Sie aus dem Menü Datei den Befehl Drucken.
  2. Wählen Sie im Dialogfeld Drucken die Schaltfläche Optionen.
  3. Wählen Sie im Dialogfeld Druckoptionen die Schaltfläche Optionen.
  4. Wählen Sie im Dialogfeld Druckoptionen für Berichte und Etiketten die Option Bereich.
  5. Wählen Sie die entsprechende Bereichsoption aus.
Bereich Bereichsoption
Jeder Datensatz der Quelldatei ALL
Ein mit dem ersten Datensatz beginnender Bereich von Datensätzen NEXT
Ein durch seine Nummer spezifizierter Datensatz DATENSATZ NR.:
Der aktuelle Datensatz sowie alle bis zum Ende der Datei folgenden Datensätze REST

Visual FoxPro druckt den Bericht mit den Daten aus den Datensätzen, die im ausgewählten Bereich liegen.

Drucken von Datensätzen, die eine Bedingung erfüllen

Wenn sich die auszuwählenden Datensätze in der Tabelle nicht hintereinander befinden, können Sie einen logischen Ausdruck erstellen, der Auswahlkriterien angibt, die ein Datensatz erfüllen muss, um gedruckt zu werden. Sie können beispielsweise auswählen, dass alle Datensätze gedruckt werden sollen, die in einem Feld einen bestimmten Wert haben.

So geben Sie Kriterien für die Auswahl von Datensätzen ein

  1. Wählen Sie aus dem Menü Datei den Befehl Drucken.

  2. Wählen Sie im Dialogfeld Drucken die Schaltfläche Optionen.

  3. Wählen Sie im Dialogfeld Druckoptionen die Schaltfläche Optionen.

  4. Wählen Sie im Dialogfeld Druckoptionen für Berichte und Etiketten die Option Bereich.

  5. Geben Sie im Feld For einen FOR-Ausdruck ein.

    - Oder -

    Vergewissern Sie sich, dass die vom Bericht verwendeten Quellen geöffnet sind, und klicken Sie dann auf die Schaltfläche mit den drei Punkten neben For, um den Ausdruck-Generator zu verwenden.

    Anmerkung   Sie müssen den Befehl FOR nicht eingeben, weil dieser implizit ist. Sie können beispielsweise country = "Kanada" eingeben, um nur Daten zu Kanada anzuzeigen.

    Visual FoxPro wertet alle Datensätze aus und druckt den Bericht mit den Datensätzen, die die Bedingung im Ausdruck erfüllen.

Steuern der Auswahl von Datensätzen zum Drucken

Beim Drucken können Sie eine Bedingung angeben, die erfüllt sein muss, damit das Auswerten und Auswählen von Datensätzen fortgesetzt wird. Diese Bedingung geben Sie als WHILE-Ausdruck ein. Solange sich der WHILE-Ausdruck als wahr erweist, wird die Datenquelle von Visual FoxPro verarbeitet. Wenn ein Datensatz gefunden wird, der die Bedingung nicht erfüllt, beendet Visual FoxPro die Auswertung und druckt die ausgewählten Datensätze. Mit Hilfe dieser Option wählen Sie Datensätze auf der Grundlage von Daten außerhalb der in den Feldern enthaltenen Werte aus.

Tipp   Wenn Sie einen WHILE-Ausdruck in einer nichtindizierten Datei verwenden, endet der Auswahlprozess möglicherweise, bevor alle geeigneten Datensätze ausgewertet wurden. Stellen Sie daher vor dem Drucken des Berichts sicher, dass in der Quelltabelle der entsprechende Index für den zu verwendenden WHILE-Ausdruck aktiv ist.

So geben Sie Kriterien für die Beendigung der Datensatzauswahl ein

  1. Wählen Sie aus dem Menü Datei den Befehl Drucken.

  2. Wählen Sie im Dialogfeld Drucken die Schaltfläche Optionen.

  3. Wählen Sie im Dialogfeld Druckoptionen die Schaltfläche Optionen.

  4. Wählen Sie im Dialogfeld Druckoptionen für Berichte und Etiketten die Option Bereich.

  5. Geben Sie im Feld While einen WHILE-Ausdruck ein.

    - Oder -

    Wählen Sie die Schaltfläche mit den drei Punkten neben While, um den Ausdruck-Generator zu verwenden.

    Anmerkung   Sie müssen den WHILE-Befehl nicht in die Anweisung aufnehmen. Geben Sie beispielsweise sales > 1000 ein, um nur Verkäufe über 1000 DM anzuzeigen.

    Visual FoxPro druckt den Bericht mit den Datensätzen, die ausgewertet werden, solange der Ausdruck wahr ist.

Drucken von Berichten und Etiketten

Wenn Sie den Bericht an den Drucker senden möchten, können Sie dies entweder direkt tun oder zunächst das Dialogfeld Druckereinrichtung anzeigen.

So senden Sie einen Bericht an den Drucker

  1. Wählen Sie aus dem Menü Datei den Befehl Drucken.

  2. Wählen Sie OK.

    Anmerkung   Wenn die Datenumgebung noch nicht festgelegt ist, wird das Dialogfeld Öffnen mit einer Liste von Tabellen angezeigt, aus denen Sie auswählen können.

    Visual FoxPro sendet den Bericht an den Drucker.

    - Oder -

  • Verwenden Sie die TO PRINTER-Klausel des Befehls REPORT oder LABEL.

Mit dem folgenden Code wird der Bericht MyReport an den Standarddrucker gesendet, und die Ausgabe auf dem Bildschirm wird unterdrückt:

REPORT FORM MYREPORT.FRX TO PRINTER NOCONSOLE

So zeigen Sie das Dialogfeld "Druckereinrichtung" an, bevor der Bericht an den Drucker gesendet wird

  • Verwenden Sie die TO PRINTER PROMPT-Klausel des Befehls REPORT oder LABEL.

Der folgende Code zeigt beispielsweise das Dialogfeld Druckereinrichtung an und sendet dann den Bericht MyReport zum Standarddrucker; dabei wird die Ausgabe des Berichts im aktiven Fenster unterdrückt.

REPORT FORM MYREPORT.FRX TO PRINTER PROMPT NOCONSOLE

Anzeigen von Berichten und Etiketten in der Seitenansicht

Wenn Sie einen Bericht in der Seitenansicht anzeigen möchten, können Sie ihn an das Seitenansichtsfenster des Berichts-Designers senden. Das Fenster Seitenansicht besitzt eine eigene Symbolleiste mit Schaltflächen, mit deren Hilfe Sie sich im Bericht von Seite zu Seite bewegen können.

Vorsicht   Wenn die Frage "Sollen die Änderungen an der Datei Datei gespeichert werden?" angezeigt wird, versuchen Sie nicht nur das Seitenansichtsfenster, sondern auch die Layoutdatei zu schließen. Sie können Abbrechen wählen, um zur Seitenansicht zurückzukehren, oder Speichern, um Ihre Änderungen zu speichern und die Datei zu schließen. Bei Auswahl von Nein werden die Änderungen am Layout nicht gespeichert.

So zeigen Sie einen Bericht in der Seitenansicht an

  1. Wählen Sie aus dem Menü Ansicht den Befehl Seitenansicht.

  2. Wählen Sie auf der Symbolleiste für Seitenansicht Vorherige Seite oder Nächste Seite, um zu einer anderen Seite zu wechseln.

  3. Wählen Sie Zoom aus, um die Größe der Berichtsdarstellung zu ändern.

  4. Zum Drucken des Berichts wählen Sie Drucken.

  5. Wählen Sie Seitenansicht schließen, um zum Entwurfsmodus zurückzukehren.

    - Oder -

  • Verwenden Sie das Schlüsselwort PREVIEW des Befehls REPORT.

Mit dem folgenden Code wird der Bericht z. B. in einem modalen Fenster angezeigt.

REPORT FORM MYREPORT.FRX PREVIEW

Standardmäßig ist das Seitenansichtsfenster modal, erlaubt jedoch den Zugriff auf die Seitenansicht-Symbolleiste. Soll die Seitenansicht nicht modal sein, fügen Sie das Schlüsselwort NOWAIT dem Befehl REPORT hinzu.

Mit dem folgenden Code wird der Bericht beispielsweise in einem nichtmodalen Fenster angezeigt.

REPORT FORM MYREPORT.FRX PREVIEW NOWAIT

Wenn Sie die Ergebnisse in einem bestimmten Fenster anzeigen möchten, können Sie mit Hilfe der WINDOW-Klausel ein mittels DEFINE WINDOW generiertes Fenster angeben.

REPORT FORM MYREPORT.FRX PREVIEW WINDOW MYWINDOW

Drucken von Berichten in eine Datei

Wenn Sie eine elektronisch gespeicherte Version des Berichts erstellen möchten, können Sie ihn in eine für Ihren Drucker formatierte Datei oder eine ASCII-Datei senden. Wenn Sie Berichte in Dateien senden, können Sie sie später im Batchmodus ausdrucken.

Wenn Sie eine ASCII-Datei erstellen möchten, können Sie eine Datei erstellen, die nur den Text sowie Gedankenstriche und Pluszeichen zur Darstellung von Linien und Formen enthält. Schrift- und Farbattribute werden dabei nicht berücksichtigt. Außerdem können Sie die Anzahl der Zeichen pro Zeile und die Anzahl der Zeilen pro Seite angeben.

So drucken Sie einen Bericht in eine ASCII-Datei

  • Verwenden Sie die Schlüsselwörter FILE und ASCII des Befehls REPORT.

Das folgende Beispiel definiert die Variablen für die ASCII-Seite und druckt anschließend den Bericht mit dem Namen Myreport.frx in eine ASCII-Datei mit dem Namen Myfile.txt.

Drucken in eine ASCII-Datei  
Code Kommentar
_asciirows = nLines
Anzahl der Zeilen je Seite definieren.
_asciicols = nChars
Anzahl der Zeichen je Zeile definieren.
REPORT FORM MYREPORT.FRX
  TO FILE MYFILE.TXT ASCII
Bericht ausführen.

Siehe auch

Einstellen der Druckoptionen für Gruppen | Speichern eines Berichts als HTML | Hinzufügen von Berichten und Etiketten | SELECT - SQL