4D v14.3

Subtotal

Home

 
4D v14.3
Subtotal

Subtotal 


 

Subtotal ( Feldname {; Seitenumbruch} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
Feldname  Feld in Feld, über welches die Zwischensumme gebildet wird
Seitenumbruch  Lange Ganzzahl in Ebene, auf der ein Seitenumbruch erfolgen soll
Funktionsergebnis  Zahl in Zwischensumme von Feldname

Die Funktion Subtotal gibt die Zwischensumme des Feldes Feldname für die aktuelle oder die letzte Umbruchebene zurück. Sie kann nur beim Drucken mit dem Befehl PRINT SELECTION oder dem Menü Drucken in der Anwendungsumgebung verwendet werden.
Feldname muss ein Feld vom Typ Zahl, Ganzzahl oder Lange Ganzzahl sein. Die errechnete Zwischensumme wird mit Hilfe einer Variablen im Umbruchbereich des Formulars dargestellt.

Warnung: Im kompilierten Modus müssen Sie vor jedem Bericht mit Umbrüchen die Befehle BREAK LEVEL und ACCUMULATE ausführen, da diese die Berechnung im Umbruch aktivieren. Weitere Informationen dazu finden Sie in der nachfolgenden Beschreibung.

Mit dem optionalen Parameter Seitenumbruch rufen Sie Seitenumbrüche während dem Drucken hervor. Ist Seitenumbruch gleich Null (0), erzeugt Subtotal keinen Seitenumbruch. Ist Seitenumbruch gleich 1, erzeugt Subtotal einen Seitenumbruch für jede Umbruchebene 1. Ist Seitenumbruch gleich 2, erzeugt Subtotal einen Seitenumbruch für jede Umbruchebene 1 und 2, usw..

Tipp: Führen Sie Subtotal innerhalb eines Ausgabeformulars auf dem Bildschirm aus, erhalten Sie eine Fehlermeldung, ausgelöst durch eine Endlosschleife von Updates zwischen Formular und Fehlerdialog. Sie können diese Schleife verlassen, wenn Sie unter Windows die Kombination Alt+Umschalttaste, auf Macintosh die Kombination Wahl- + Umschalttaste drücken und im Fehlerdialog gleichzeitig auf die Schaltfläche Abbrechen klicken (evtl. mehrmals). Dies stoppt temporär die Aktualisierung für das Fenster des Formulars. Wählen Sie ein anderes Formular als Ausgabeformular, damit der Fehler nicht erneut auftritt. Gehen Sie zurück in die Designumgebung und isolieren Sie den Aufruf von Subtotal in einem Test Form event=On Printing Break, wenn Sie das Formular sowohl zum Anzeigen als auch zum Ausdrucken verwenden.

Folgendes Beispiel ist eine online Objektmethode innerhalb eines Umbruchbereichs eines Formulars. Die Variable vSalary liegt im Umbruchbereich (der Bereich unterhalb der Markierung B0). Ihr wurde die Zwischensumme des Datenfeldes "Salary" zugewiesen. Die Umbruchbearbeitung muss vor den Befehlen BREAK LEVEL und ACCUMULATE aktiviert werden:

 Case of
    :(Form event=On Printing Break)
       vSalary:=Subtotal([Employees]Salary)
 End case

Weitere Informationen zum Erstellen von Formularen mit Kopf- und Umbruchbereichen finden Sie im Abschnitt Umbrüche verwenden des Handbuchs 4D Designmodus.

Um Berichte mit Umbrüchen zu erstellen, können Sie Berechnungen im Umbruchbereich von Formularberichten mit BREAK LEVEL und ACCUMULATE hervorrufen.
Sie müssen beide Befehle vor Drucken eines Formularberichts ausführen. Die Funktion Subtotal wird zum Anzeigen von Werten in einem Formular benötigt. Sie müssen mindestens nach soviel Ebenen sortieren, wie Umbrüche benötigt werden.

Mit den Befehlen BREAK LEVEL und ACCUMULATE läuft das Drucken von Berichten folgendermaßen ab:

  1. Sie wählen die Datensätze aus, die gedruckt werden sollen.
  2. Sie sortieren die Datensätze mit dem Befehl ORDER BY. Die Anzahl der Umbruchebenen muss kleiner oder gleich der Anzahl der Sortierebenen sein.
  3. Sie führen die Befehle BREAK LEVEL und ACCUMULATE aus.
  4. Sie drucken den Bericht mit dem Befehl PRINT SELECTION.

Die Funktion Subtotal benötigen Sie, um Werte in einem Formular anzuzeigen.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Drucken
Nummer: 97

Nicht für Server verwendbar

 
GESCHICHTE 

Geändert: 4D v11 SQL

 
SIEHE AUCH 

ACCUMULATE
BREAK LEVEL
Level
PRINT SELECTION

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v12.4)
4D Programmiersprache ( 4D v11 SQL Release 6)
4D Programmiersprache ( 4D v14 R3)
4D Programmiersprache ( 4D v14 R2)
4D Programmiersprache ( 4D v13.5)
4D Programmiersprache ( 4D v14.3)
4D Programmiersprache ( 4D v14 R4)