Ugniježdene Izvještaje (Podizvještaji)
Ugniježdene Izvještaje (Podizvještaji)
Ponekad su potrebni vrlo složeni izvještaji koji sadrže blokove dodatnih podataka umetnutih na određenim mjestima u dizajnu. Iako se mnogi od ovih izvještaja mogu dizajnirati korištenjem rasporeda FastReport traka, ponekad to postane previše komplicirano. U tim okolnostima potrebno je koristiti objekt “Podizvještaj”
.
Kada se objekt “Podizvještaj” umetne u dizajn, FastReport automatski dodaje novu stranicu, koja je povezana s “Podizvještajem”. Takav ugniježdeni izvještaj nalikuje višestranom izvještaju u smislu strukture dizajna. Jedina razlika je u tome što se ugniježdeni izvještaj prikazuje na određenoj lokaciji na osnovnoj dizajnerskoj stranici, a ne nakon nje. Kada se ovaj izvještaj ispisuje, čim se naiđe na objekt “Podizvještaj”, motor izvještaja ispisuje povezanu stranicu podizvještaja u cijelosti. Nakon toga ispis se nastavlja s ostatkom osnovne dizajnerske stranice.
Dodatni objekti “Podizvještaj” mogu se umetnuti u dizajnersku stranicu podizvještaja, čime se povećava dubina ugniježdenja. Primjer ugniježdenog izvještaja može se pronaći u izvještaju '3C0 - Izvještaj o upravljanju putovanjima' koji se nalazi u izborniku programa 'Osoblje | Upravljanje putovanjima | Izvještaji'.
Vrijedi napomenuti da sposobnost FastReport-a da koristi podizvještaje omogućuje duboko ugniježdenje podataka. Zapamtite da je broj razina podataka u FastReport-u ograničen na samo šest kada se koriste trake podataka Detalji umjesto objekta "Podizvještaj".
Podizvještaji jedan pored drugog
Dva ili više objekata “Podizvještaj” mogu se postaviti jedan pored drugog na istoj traci podataka:

Ovaj dizajn omogućuje izvještaje gdje izlaz podataka svakog “Podizvještaja” ima različite duljine redaka/zapisa, ili različite visine ili stupnjeve rastezanja:

Kao što je prikazano, FastReport nastavlja ispisivati osnovnu dizajnersku stranicu tek nakon što je najduži "Podizvještaj" završen. Svojstvo 'Vertikalno poravnanje' također se može koristiti za prilagodbu poravnanja objekta “Tekst” unutar svakog podizvještaja.
Ograničenja u korištenju podizvještaja
Budući da su podizvještaji postavljeni na osnovnu dizajnersku stranicu, oni ne mogu sadržavati nijednu od sljedećih traka: “NaslovIzvještaja/NaslovPodizvještaja”, “NaslovStranice/NaslovPodizvještaja/PozadinaStranice” ili “NaslovStupca/NaslovPodizvještaja”. Ako se bilo koja od ovih traka postavi na stranicu ugniježdenog izvještaja, neće biti prepoznate. Iz istog razloga nema smisla mijenjati bilo koje opcije stranice ugniježdenog izvještaja, jer opcije osnovne stranice izvještaja nadjačavaju one bilo kojih ugniježdenih stranica.
Ne postavljajte objekte ispod objekta "Podizvještaj":

Ako se to učini, tada će objekti stvoreni u podizvještaju preklapati sve što je postavljeno ispod objekta podizvještaja na glavnoj dizajnerskoj stranici, a izlaz će izgledati ovako:

Za prikaz objekata ispod ili nakon ugniježdenog izvještaja, koristite dječju traku:

Ova metoda se također koristi kada se nekoliko podizvještaja mora postaviti jedno ispod drugog. Koristite dječju traku za svaki podizvještaj i povežite ih zajedno, postavljajući svojstvo djeteta Child1 na Child2, i tako dalje.
Opcija PrintOnParent
Objekt "Podizvještaj" ima svojstvo "PrintOnParent" koje može biti korisno. Ovo svojstvo je prema zadanim postavkama False.
Obično se podizvještaj ispisuje kao skup traka na osnovnoj stranici izvještaja. Kada je to tako, visina roditeljske trake koja sadrži objekt "Podizvještaj" nije kontrolirana trakom u podizvještaju, tj. ne može se rastegnuti. Ako je svojstvo "PrintOnParent" podizvještaja postavljeno na True, bilo u inspektoru objekata ili u kontekstnom izborniku, objekti u podizvještaju fizički se ispisuju na traci koja sadrži objekt "Podizvještaj". Ova traka može se rastegnuti i može imati rastegnute objekte postavljene na nju:
