PANTHEON™ Help

 Toc
 PANTHEON Ajutor - Bun venit
[Collapse]PANTHEON
 [Collapse]Ghiduri pentru PANTHEON
  [Collapse]Ghid pentru PANTHEON
   [Collapse]Setări
    [Expand]Subiecte
    [Expand]Articole
    [Expand]POS
    [Expand]Fabricare
    [Expand]Personal
     Calendar
    [Expand]Financiare
    [Expand]Vamă
    [Collapse]Program
     [Expand]Tipuri de Documente
     [Collapse]Rapoarte în PANTHEON
       Setări în Panoul de Administrare
      [Expand]Registrul Raporturilor
       Previzualizare imprimare
      [Expand]Designer de rapoarte
      [Collapse]Crearea Raportelor
        Raportați obiectele
        "Bună, lume!" Exemplu de raport
        Lucru de bază cu obiecte
        Obiectul "Text"
        Afișarea expresiilor cu ajutorul obiectului "Text"
        Bande
        "Lista Subiectelor" Raport: Aliasuri și Variabile
        "Imagine" Obiect
        Întinderea Obiectelor, Împărțiri de Pagină și Mutarea Obiectelor
        Afișarea datelor sub formă de tabel
        Tipărirea Etichetelor
        Trupe de copii
        Raport cu Două Niveluri de Date (Master-Detail)
        Antete și Subsoluri ale unei Benzi de Date
        Raport Multi-Pagină
      [Expand]Grupuri și Agregate
      [Expand]Formatare și Evidențiere
       Rapoarte Încapsulate (Subrapoarte)
      [Expand]Specificațiilor printurilor în PANTHEON
      [Expand]Script
       Considerații privind designul raportului
      Texte Document
      Metode de livrare
     [Expand]Cărți de fidelitate
     [Expand]Panoul de Administrare
     [Expand]Componente Dashboard
      Rapoarte de tabloul de bord
      Analiză ad-hoc
     [Expand]ARES
      SQL editor
    [Expand]Documentație
    [Expand]Schimbă utilizatorul
   [Expand]Comenzi
   [Expand]Produse
   [Expand]Fabricare
   [Expand]POS
   [Expand]Serviciu
   [Expand]Financiare
   [Expand]Personal
   [Expand]Analitică
   [Expand]Desktop
   [Expand]Ajutor
   [Expand]Mesaje și Avertizări
   [Expand]Programe suplimentare
   [Expand]Produse vechi
  [Expand]Ghid pentru PANTHEON Retail
  [Expand]Ghid pentru PANTHEON Vet
  [Expand]Ghid pentru PANTHEON Fermă
 [Collapse]Manuale de utilizare pentru PANTHEON
  [Expand]Manual de utilizare pentru PANTHEON
  [Expand]Manual de utilizare pentru PANTHEON Retail
  [Expand]Manual de utilizare pentru PANTHEON Vet
  [Expand]Manual de utilizare pentru PANTHEON Farming
[Collapse]PANTHEON Web
 [Collapse]Ghiduri pentru PANTHEON Web
  [Expand]Ghid pentru PANTHEON Web Light
  [Expand]Ghid pentru Terminalul Web PANTHEON
  [Expand]Ghid pentru PANTHEON Web Legal
  [Expand]Arhivă produse vechi
 [Collapse]Manuale de utilizare pentru PANTHEON Web
  [Expand]Începerea PANTHEON Web
  [Expand]Manual de utilizare pentru PANTHEON Web Light
  [Expand]Manual de utilizare pentru terminalul web PANTHEON
  [Expand]Manual de utilizare pentru PANTHEON Web Legal
  [Expand]Arhivă produse vechi
[Collapse]PANTHEON Granule
 [Collapse]Ghiduri pentru granule PANTHEON
  [Expand]Granul Personal
  [Expand]Comenzi de Călătorie Granule
  [Expand]Documente și Sarcini Granul
  [Expand]Tabloul de bord Granule
  [Expand]Comenzi B2B Granule
  [Expand]Granul de Serviciu pe Teren
  [Expand]Granul Inventar Active Fixe
  [Expand]Inventar de Magazin Granule
 [Collapse]Manuale de utilizare pentru granulele PANTHEON
  [Expand]Începerea
  [Expand]Granul Personal
  [Expand]Comenzi de Călătorie Granule
  [Expand]Documente și Sarcini Granul
  [Expand]Comenzi B2B Granule
  [Expand]Tabloul de bord Granule
  [Expand]Serviciul de teren Granule
  [Expand]Granul Inventar Active Fixe
  [Expand]Inventar de Magazin Granule
  [Expand]Arhivă
[Expand]Site utilizator

Load Time: 406,2485 ms
"
  1006259 | 218620 | 476763 | AI translated
Label

Raport cu două niveluri de date (Master-Detail)

Raport cu două niveluri de date (Master-Detail)

Până acum, rapoartele noastre de exemplu au folosit doar un singur band de date (“Date de nivel întâi” sau ”MasterData”) pentru a controla ieșirea datelor. Acest lucru a fost adecvat pentru ieșirea datelor dintr-o bază de date. Pantheon permite, de asemenea, proiectarea rapoartelor având până la șase niveluri de date, toate pe o singură pagină de design. În plus, un număr nelimitat de niveluri de date în rapoarte poate fi realizat prin utilizarea obiectului “Subreport” - acest obiect va fi acoperit mai târziu. Cele mai multe rapoarte în general au nevoie doar de unul, două sau trei niveluri de date, numere mai mari de niveluri de date sunt rare.

Să vedem cum să proiectăm un raport cu două niveluri de date. Raportul va ieși date din tabelele: “tHE_SetSubj” și “tHE_Order”. Primul tabel este o listă de subiecte și al doilea este o listă de comenzi plasate de acești subiecți (clienți).

Al doilea tabel conține lista tuturor comenzilor plasate de toți clienții. Pentru a vizualiza comenzile din tHE_Order tabel care sunt plasate de un client în tabelul Clienți, cele două tabele sunt legate pe câmpul “acSubject” din clienți și câmpul "acConsignee" din tabelul comenzilor.

Să proiectăm raportul. Creați un raport nou și plasați două componente “TfrxDlDBTable” pe formular. Setați proprietățile componentelor așa cum este arătat aici:

Tabel1:

NumeTabel = 'tHE_SetSubj'

NumeUtilizator = 'Subiecte'

Tabel2:

NumeTabel = 'tHE_Order'

NumeUtilizator = 'Comenzi'

Acum adăugați un band “MasterData” și un band “DetailData” pe pagină:

Rețineți că band-ul “MasterData” trebuie plasat deasupra band-ului “DetailData”! Trageți-l acolo dacă este necesar. Dacă Master este plasat sub Detail, Pantheon va genera un mesaj de eroare când previzualizați raportul.

Dacă ați previzualizat raportul acum, ați vedea că lista comenzilor rămâne aceeași pentru fiecare client și conține toate înregistrările din tabelul “Comenzi”. În codul raportului adăugați două linii așa cum puteți vedea și în imagine

Acum am stabilit o relație 'Master-Detail' și o legătură între câmpuri în două surse.

Când se creează previzualizarea, FastReport face următoarele. După ce o înregistrare este ieșită din tabelul master (Client), setează filtrul pe tabelul detaliu (Comenzi). Numai acele înregistrări care îndeplinesc condiția 'Orders.acConsignee = Subjects.acSubject' vor rămâne în tabel. Aceasta înseamnă că pentru fiecare client, doar comenzile care aparțin clientului curent vor fi afișate în band-ul detaliu. Acesta este un concept important de înțeles. Chiar dacă band-urile de date pot fi de tip master sau detaliu, ele controlează doar poziționarea datelor pe pagina de ieșire (comanda și numărul de ori afișate). Datele afișate de obiectele din band-uri depind de câmpurile la care sunt legate obiectele și de legătura externă a celor două tabele.

Aceasta este ieșirea finală:

Rapoartele care pot conține până la 6 niveluri de date pot fi construite într-un mod similar.

În multe cazuri, relația Master-Detail este configurată în codul programului.

Să vedem un exemplu de raport '3C0 - Raport de Management al Călătoriilor' care se află în meniul programului 'Personal | Managementul Călătoriilor | Rapoarte'.

În raport, tabelul master este tabelul 'principal' al comenzilor de călătorie, tabelul detaliu este tabelul cu pozițiile comenzii de călătorie. În acest caz, avem de asemenea un nivel suplimentar (tabel subdetaliu) anume costurile pe poziția comenzii de călătorie.

În acest raport avem de asemenea două band-uri cu proprietatea "RowCount" setată la valoarea 1 și subrapoarte pe care le vom întâlni mai târziu.

 

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