FastReport: Kapitel unterdrücken wenn alle Positionen ausgegeben sind

Aus GEVITAS
Wechseln zu: Navigation, Suche

1 Aufgabe

In der Auftragsverwaltung gibt es Aufträge, die den verschiedenen Teilmengen entsprechen, die gefertigt und ausgeliefert werden.

Die Positionen, die vollständig ausgeliefert wurden, werden unterdrückt. Allerdings kommen die Kapitel-Überschriften noch, obwohl alle folgenden Positionen des Kapitels vollständig ausgegeben sind.

FastReport Auftrag KapitelAusgabeMenge Bsp 01.png


Aufgabe ist es also, die Kapitel zu unterdrücken, wenn alle Positionen des jeweiligen Kapitels ausgegeben sind.

Dazu kann man das Feld

KapitelAusgabeMenge

verwenden.


2 Lösung

Das GEVITAS-Druckprogramm "GevitasFormPrint", mit dem die FastReport-Formulare erzeugt werden, stellt ein paar besondere Felder zur Verfügung. Diese ermöglichen Konstruktionen, die man mit Code im Report nicht ermöglichen könnte.

Im Feld

Positionen.KapitelAusgabeMenge

steht in jeder Zeile der Positionen (also auch in der Kapitel-Position!) die Summe der Menge, die für dieses Kapitel noch auszugeben ist.

Also kann man die Kapitel-Position mit diesem Code (OnBeforePrint im Gruppen-Kopf, wo das Kapitel gedruckt wird) unterdrücken:


procedure GroupHeader1OnBeforePrint(Sender: TfrxComponent);
begin
  // Dieser Code wird ausgeführt, BEVOR das Positionen-Gruppenkopf-Band (die Kapitel-Überschrift) ausgegeben wird.

  // Wenn es keine Position im Kapitel gibt, die noch auszugeben ist: Unterdrücken!
  GroupHeader1.Visible         := True;        // Default, Standard: Erst mal sichtbar!
  if <Positionen."KapitelAusgabeMenge">   <=   0 then
  begin
    GroupHeader1.Visible         := False;     // Unsichtbar!
    exit;
  end;
  ...
end;


Fertig sieht das dann so aus:


FastReport Auftrag KapitelAusgabeMenge Bsp 02.png

Es kommen nur noch die Kapitel-Überschriften, die noch nicht vollständig ausgegeben wurden!


Hinweis
Diese Funktion ist erst ab Version 2.5.17.809 möglich!

3 Links

FastReport Seitenformat FastReport Daten, Tabellen und Felder FastReport Tabellen der Reports Beispiele:
FastReport Bands FastReport Objekte und Elemente eines Reports FastReport: Abhängige Formatierung von Feldern Ladeliste/Packliste mit FastReport
Standard-Formular-Texte Steuerung des Report mit Auftragskennzeichen Summen im Report bilden Leasing-Liste
FastReport Farb-Konstanten Namensgebung der Datenbank-Tabellen und -Felder Tipps und Tricks Inventar-Liste
REFLEX Standard-Reports Etikettendruck Allgemeines Mehrsprachige Formulare mit FastReport Geräte-Liste
GEVITAS Label-Print Installation GEVITAS-Carnet Videos zu FastReport Erstellen eines Prüfprotokolls für TPS