PANTHEON™ manual

 Categories
 PANTHEON Hilfe - Willkommen
[Reduzieren]PANTHEON
 [Reduzieren]Leitfäden für PANTHEON
  [Reduzieren]Leitfaden für PANTHEON
   [Reduzieren] Einstellungen
    [Vergrößern]Fächer
    [Vergrößern]Artikel
    [Vergrößern]POS
    [Vergrößern]Herstellung
    [Vergrößern]Personal
     Kalender
    [Vergrößern]Finanzen
    [Vergrößern]Zoll
    [Reduzieren]Programm
     [Vergrößern]Dokumenttypen
     [Reduzieren]Berichte in PANTHEON
       Einstellungen im Administrationspanel
      [Vergrößern]Berichte registrieren
       Druckvorschau
      [Vergrößern]Bericht Designer
      [Reduzieren]Berichte erstellen
        Berichtsobjekte
        "Hallo, Welt!" Bericht Beispiel
        Grundlegende Arbeit mit Objekten
        Das "Text" Objekt
        Ausdrücke mit Hilfe des "Text"-Objekts anzeigen
        Bands
        "Betreffsliste" Bericht: Aliase und Variablen
        "Bild" Objekt
        Dehnen von Objekten, Seitenumbrüche und Verschieben von Objekten
        Daten in Form einer Tabelle anzeigen
        Etiketten drucken
        Kind Bands
        Bericht mit zwei Datenebenen (Master-Detail)
        Header und Fußzeilen eines Datenbands
        Mehrseitiger Bericht
      [Vergrößern]Gruppen und Aggregate
      [Vergrößern]Formatierung und Hervorhebung
       Verschachtelte Berichte (Unterberichte)
      [Vergrößern]Details zu Druckausgaben in PANTHEON
      [Vergrößern]Script
       Bericht Design Überlegungen
      Dokumenttexte
      Liefermöglichkeiten
     [Vergrößern]Kundenkarten
     [Vergrößern]Administrationspanel
     [Vergrößern]Dashboard-Komponenten
      Dashboard-Berichte
      Ad-hoc-Analyse
     [Vergrößern]ARES
      SQL-Editor
    [Vergrößern]Dokumentation
    [Vergrößern]Benutzer ändern
   [Vergrößern]Bestellungen
   [Vergrößern]Waren
   [Vergrößern]Herstellung
   [Vergrößern]POS
   [Vergrößern]Service
   [Vergrößern]Finanzen
   [Vergrößern]Personal
   [Vergrößern]Analytik
   [Vergrößern]Desktop
   [Vergrößern]Hilfe
   [Vergrößern]Nachrichten und Warnungen
   [Vergrößern]Zusätzliche Programme
   [Vergrößern]Alte Produkte
  [Vergrößern]Leitfaden für PANTHEON Einzelhandel
  [Vergrößern]Leitfaden für PANTHEON Vet
  [Vergrößern]Leitfaden für PANTHEON Farming
 [Vergrößern]Benutzerhandbücher für PANTHEON
[Vergrößern]PANTHEON Web
[Vergrößern]PANTHEON Granulate
[Vergrößern]Benutzerseite

Load Time: 703,1487 ms
print   |
Label

Bericht mit zwei Datenebenen (Master-Detail)

Bericht mit zwei Datenebenen (Master-Detail)

Bisher haben unsere Beispielberichte nur eine Datenband ("Erste Ebene Daten" oder "MasterData") verwendet, um die Datenausgabe zu steuern. Dies war ausreichend für die Ausgabe von Daten aus einer Datenbank. Pantheon ermöglicht es auch, Berichte zu entwerfen, die bis zu sechs Datenebenen enthalten, alle auf einer Entwurfsseite. Darüber hinaus kann eine unbegrenzte Anzahl von Datenebenen in Berichten durch die Verwendung des Objekts "Unterbericht" erreicht werden - dieses Objekt wird später behandelt. Die meisten Berichte benötigen im Allgemeinen nur eine, zwei oder drei Datenebenen, größere Zahlen von Datenebenen sind selten.

Schauen wir uns an, wie man einen Bericht mit zwei Datenebenen entwirft. Der Bericht wird Daten aus den Tabellen ausgeben: "tHE_SetSubj" und "tHE_Order". Die erste Tabelle ist eine Liste von Fächern und die zweite ist eine Liste von Bestellungen, die von diesen Fächern (Kunden) aufgegeben wurden.

Die zweite Tabelle enthält die Liste aller Bestellungen, die von allen Kunden aufgegeben wurden. Um die Bestellungen aus der tHE_Order Tabelle zu sehen, die von einem Kunden in der Kunden-Tabelle aufgegeben wurden, sind die beiden Tabellen über das Feld "acSubject" von Kunden und das Feld "acConsignee" von der Bestelltabelle verknüpft.

Lasst uns den Bericht entwerfen. Erstellen Sie einen neuen Bericht und platzieren Sie zwei "TfrxDlDBTable"-Komponenten auf dem Formular. Setzen Sie die Komponenten-Eigenschaften wie hier gezeigt:

Tabelle1:

TabelleName = 'tHE_SetSubj'

Benutzername = 'Fächer'

Tabelle2:

TabelleName = 'tHE_Order'

Benutzername = 'Bestellungen'

Fügen Sie jetzt ein "MasterData" und ein "DetailData" Band zur Seite hinzu:

Beachten Sie, dass das "MasterData" Band über dem "DetailData" Band platziert werden muss! Ziehen Sie es bei Bedarf dorthin. Wenn das Master unter dem Detail platziert ist, wird Pantheon eine Fehlermeldung generieren, wenn Sie den Bericht in der Vorschau anzeigen.

Wenn Sie den Bericht jetzt in der Vorschau anzeigen, würden Sie sehen, dass die Liste der Bestellungen für jeden Kunden gleich bleibt und alle Datensätze aus der "Bestellungen" Tabelle enthält. Fügen Sie im Code des Berichts zwei Zeilen hinzu wie Sie auch auf dem Bild sehen können

Jetzt haben wir eine 'Master-Detail'-Beziehung und Verknüpfung zwischen Feldern in zwei Quellen festgelegt.

Beim Erstellen der Vorschau führt FastReport Folgendes aus. Nachdem ein Datensatz aus der Master-Tabelle (Kunde) ausgegeben wurde, setzt es den Filter auf der Detail-Tabelle (Bestellungen). Nur die Datensätze, die die Bedingung 'Orders.acConsignee = Subjects.acSubject' erfüllen, bleiben in der Tabelle. Das bedeutet, dass für jeden Kunden nur die Bestellungen angezeigt werden, die dem aktuellen Kunden gehören, im Detailband. Dies ist ein wichtiges Konzept, das man verstehen sollte. Auch wenn Datenbänder vom Master- oder Detailtyp sein können, steuern sie nur die Positionierung der Daten auf der Ausgabeseite (Reihenfolge und Anzahl der angezeigten Male). Die von den Objekten in den Bändern angezeigten Daten hängen davon ab, mit welchen Feldern die Objekte verknüpft sind und von der externen Verknüpfung der beiden Tabellen.

Dies ist die endgültige Ausgabe:

Berichte, die bis zu 6 Datenebenen enthalten, können auf ähnliche Weise erstellt werden.

In vielen Fällen wird die Master-Detail-Beziehung im Programmcode eingerichtet.

Schauen wir uns ein Beispiel des Berichts '3C0 - Reiseverwaltungsbericht' an, der im Programmmenu 'Personal | Reiseverwaltung | Berichte' zu finden ist.

Im Bericht ist die Master-Tabelle die 'Haupt'-Tabelle der Reisebestellungen, die Detailtabelle ist die Tabelle mit den Positionen der Reisebestellung. In diesem Fall haben wir auch eine weitere Ebene (Unterdetailtabelle), nämlich die Kosten auf der Position der Reisebestellung.

In diesem Bericht haben wir auch zwei Bänder mit der "RowCount"-Eigenschaft, die auf den Wert 1 gesetzt ist, und Unterberichte, die wir später kennenlernen werden.



Rate this topic
Was this topic usefull?
Comments
Comment will also bo visible in forum!