Afișarea datelor sub formă de tabel
Afișarea datelor sub formă de tabel
Uneori este necesar să afișăm datele sub formă de tabel încadrat. Un exemplu de acest tip de raport ar putea fi un listă de prețuri. Crearea acestui tip de raport necesită doar activarea cadrelor pentru obiectele situate în banda de date. Să demonstrăm mai multe variante de cadre cu un exemplu.
Creează un raport similar cu acesta:

Plasează obiectele „Text” unul lângă altul pe bandă și minimizează înălțimea benzii.
Primul și cel mai simplu tip de tabel are un cadru complet pentru celule. Pentru a realiza acest lucru, activează toate liniile de cadru (găsite în proprietatea Frame.Typ) pentru fiecare obiect:

Următorul tip de cadrare desenează doar linii orizontale sau doar linii verticale pentru celule, din nou prin proprietatea Frame.Typ:

În cele din urmă, pentru a desena doar un cadru extern pentru tabel, raportul necesită o modificare:

Puteți vedea că am adăugat două obiecte „Text”, unul în antetul paginii și unul în subsolul paginii. Liniile de cadru corespunzătoare pentru obiecte de-a lungul marginilor benzii de date au fost activate, rezultând ca raportul să arate astfel:

Toate aceste exemple conțineau benzi care aveau dimensiuni fixe. Cum este posibil să afișăm un tabel atunci când banda este întinsă? Să explicăm cum, printr-un exemplu. Adăugați un nou câmp (text pe mai multe linii din Bio.“Notes”) la raportul nostru. Așa cum ați învățat deja, proprietatea „Stretch” trebuie activată atât pentru acest obiect, cât și pentru banda în care se află obiectul, astfel încât înălțimea benzii să fie modificată, în funcție de dimensiunea textului din obiectul „Text”. Raportul generat arată astfel:

Asta este puțin diferit de ceea ce avem nevoie - arată mai bine dacă cadrele obiectelor vecine se întind și ele. FastReport poate rezolva această problemă cu ușurință. Setează proprietatea „StretchMode” la smMaxHeight în inspectorul de obiecte pentru toate obiectele care urmează să fie întinse și nucleul FastReport va calcula mai întâi înălțimea maximă a benzii și apoi va „întinde” obiectele cu întinderea activată până la marginea de jos a benzii. Deoarece cadrele obiectelor se întind împreună cu obiectul, aspectul raportului se schimbă:
