Dodavanje skupa podataka u izvještaj
Trake
Trake se koriste za postavljanje objekata koje sadrže na određenim mjestima na izlaznoj stranici. Kada postavljamo objekt u traku “PageHeader”, govorimo motoru izvještaja da se dati objekt mora prikazati na vrhu svake stranice u gotovom izvještaju. Slično tome, objekti u traci “PageFooter” prikazuju se na dnu svake stranice. Pokažimo to s primjerom. Stvorit ćemo izvještaj koji sadrži “Hello!” na vrhu stranice, trenutni datum desno od njega i broj stranice na dnu stranice s desne strane.
Otvorite dizajner i kliknite gumb “New report” na alatnoj traci. Vidjet ćete predložak izvještaja koji već sadrži tri trake: “ReportTitle”, “MasterData” i “PageFooter”. Uklonimo traku “MasterData” na trenutak (kliknite bilo gdje na slobodnom prostoru unutar trake ili na njenom zaglavlju i uklonite je s tipkom “Delete” ili "Delete" u kontekstnom izborniku). Sada dodajmo novu traku (“PageHeader”). Kliknite gumb “Add band” na alatnoj traci objekata i odaberite “PageHeader” iz padajućeg izbornika. Vidimo da je nova traka dodana na stranicu. U isto vrijeme postojeće trake se pomiču prema dolje. Dizajner automatski pozicionira trake na stranici - trake zaglavlja na vrhu, trake podataka u sredini i trake podnožja na dnu.
Sada dodajmo neke objekte. Dodajte objekt "System text" u traku "PageHeader" i u njegovom uređivaču odaberite "[DATE]" iz padajućeg izbornika sistemskih varijabli (trebali biste zapamtiti da se trenutni datum također može prikazati u objektu "Text" upisivanjem "[DATE]" u njegov uređivač). Zatim dodajte objekt “Text” koji sadrži “Hello!” u traku “ReportTitle”. Objekt "Text" koji prikazuje broj stranice već je automatski dodan u traku “PageFooter”.
Dodajte dodatne "Text" objekte s nazivima tipa trake kao što vidite na sljedećoj slici. Postavite za sve nove objekte crveni okvir i svojstvo "Align" na "baClient". Također povećajte veličinu fonta i promijenite tekst fonta kako biste bolje vidjeli pozicije traka. Dizajn izvještaja je na sljedećoj slici:
Kada pokrenete izvještaj, vidjet ćete da su objekti u gotovom izvještaju ispisani na pravim pozicijama na stranici.

Dakle, trake su odgovorne za pozicioniranje objekata na stranici. Ovisno o vrsti trake, možemo ispisivati objekte na vrhu ili dnu stranice i na prvoj ili posljednjoj stranici. Osnovne trake potrebne u većini izvještaja rade na sljedeći način:
Traka |
Pozicija na stranici |
PageHeader |
prikazana na samom vrhu svake stranice |
PageFooter |
prikazana na samom dnu svake stranice |
ReportTitle |
prikazana na vrhu prve stranice - to može biti prije ili nakon trake "PageHeader", ovisno o svojstvu "TitleBeforeHeader" stranice (pronađeno u inspektoru objekata nakon što kliknete na bilo koji slobodni prostor na stranici) |
ReportSummary |
prikazana u slobodnom prostoru na samom kraju izvještaja |
Izvještaj se sastoji od nekoliko traka koje omogućuju prikazivanje vrijednosti na različitim dijelovima izvještaja. Trake su različitih tipova i dijele se na one koje ne trebaju podatke iz tablica ili upita i trake koje trebaju podatke iz tablica i upita.
Prikazujemo glavni naslov na početku izvještaja na traci "ReportTitle", datum, broj stranice ili komentar na traci "PageHeader" ili na traci "PageFooter". Ako želite da se podaci prikazuju na kraju izvještaja, stavite ih u traku "ReportSummary".
Možemo koristiti trake određenog tipa u izvještaju ili ne. Možemo ih dodati putem alatne trake.
Najvažnija svojstva traka su:
AllowSplit |
Određuje može li se traka ispisivati na više stranica. Ako se traka ne može ispisivati na više od jedne stranice i viša je od visine stranice koja je dostupna za ispis, donji dio trake se ne pojavljuje. |
Stretched |
Određuje treba li visinu trake prilagoditi visini objekata u njoj. |
PrintOnFirstPage |
Određuje je li traka prikazana na prvoj stranici. Samo traka zaglavlja i traka podnožja imaju ovo svojstvo. |
PrintOnLastPage |
Određuje je li traka prikazana na posljednjoj stranici. Postavka dostupna samo za traku podnožja. |
ReprintOnNewPage |
Određuje je li traka prikazana na sljedećoj stranici. Postavka je dostupna samo za traku zaglavlja. |
StartNewPage |
Određuje je li traka prikazana na početku sljedeće stranice. Postavka je dostupna za trake sa skupom podataka osim grupne trake podnožja. |
Trake podataka
Sada ćemo naučiti kako ispisivati podatke iz tablica baze podataka ili iz upita. Što se smatra 'tablicom' ili 'upitom'? One se sastoje od podataka organiziranih u redove (zapise ili redove) koji sadrže jedan ili više stupaca (polja). Da biste ispisali ovu vrstu podataka, FastReport koristi poseban tip trake, razne trake koje se nazivaju "...Data". Da biste ispisali cijelu tablicu ili samo neke od njenih redova i polja, morate dodati jednu ili više ovih traka u izvještaj, povezati ih s tablicom i postaviti objekte polja unutar njih. Kada FastReport gradi izvještaj, trake će se ispisivati na izlaznoj stranici, jednom za svaki zapis u tablici. Ako na izlaznoj stranici ne ostane slobodnog prostora za traku, nova izlazna stranica će se stvoriti od strane motora izvještaja prije nastavka.
Trake koje trebaju podatke su:
Naziv |
Opis |
MasterData |
Podaci 1st nivo podataka ponavlja se za svaki zapis glavnih podataka. Mora imati definiran DataSet. |
GroupHeader |
Naslov grupe ispisuje se na početku grupe. Uvjet na kojem se podaci polja grupiraju mora biti definiran. |
GroupFooter |
Prikazana nakon grupe. |
DetailData |
Podaci 2nd nivo podataka ponavlja se za svaki detaljni zapis. |
SubdetailData |
Podaci 3rd nivo podataka ponavlja se jednom za svaki pod-detaljni zapis. |
Dodavanje skupa podataka u izvještaj
Kako bi Delphi komponenta (i podaci povezani s njom) bili dostupni izvještaju, svaki skup podataka korišten u izvještaju mora biti omogućen. To učinite putem stavke izbornika “Report>Data...” u dizajneru, odabirom potrebnih skupova podataka u otvorenom dijalogu.
