Pogledaj upute za PANTHEON™

 Categories
 Početna stranica
[Collapse]PANTHEON
 [Collapse]PANTHEON priručnici
  [Expand]Vodič kroz Datalab PANTHEON Farming
  [Expand]Vodič za mobilni POS
  [Collapse]Vodič po DataLab PANTHEON™-u
   [Expand]Pomoć
   [Collapse]Postavke
    [Expand]Dokumentacija
    [Expand]POS
    [Expand]Dokumentacija-staro
    [Expand]Redak s naredbama
    [Expand]Dokumentacija
    [Expand]Subjekti
    [Expand]Identi
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Kalendar - Vrste zapisa
    [Expand]Računovodstvo
    [Expand]Carina
    [Collapse]Program
     [Collapse]Ispisi u PANTHEONU
      [Collapse]Oblici ispisa
        Prijenos ispisa u druge baze
        Postavke u Administrativnoj Ploči
        Izvoz oblika ispisa
        Uvoz oblika ispisa
        Prečac za ispis
       [Expand]Izvještaji Registar
        Pregled ispisa
       [Expand]Izvještajni dizajner
        Dupliciranje ispisa i mijenjanje tipa ispisa
       [Collapse]Izrada Izvještaja
         Izvještaj objekata
         "Pozdrav, svijete!" Primjer izvještaja
         Osnovni rad s objektima
         "Text" Objekt
         Prikazivanje izraza uz pomoć "Text" objekta
         Bendovi
         "Popis Predmeta" Izvještaj: Alias-i i Varijable
         "Slika" Objekt
         Protezanje objekata, prekidi stranica i pomicanje objekata
         Prikazivanje podataka u obliku tablice
         Ispis oznaka
         Djeca Bendovi
         Izvještaj s dva nivoa podataka (Glavni - Detalji)
         Naslovi i Podnožja Podatkovne Trake
         Višestranični Izvještaj
       [Expand]Grupe i Agregati
       [Expand]Poruke pri oblikovanju ispisa
       [Expand]Oblikovanje ispisa
       [Expand]Formatiranje i Isticanje
        Ugniježdene izvještaje (podizvještaji)
       [Expand]Specifičnosti ispisa u PANTHEON-u
       [Expand]Scenarij
        Razmatranja o dizajnu izvještaja
       Radno okruženje
     [Expand]Kartice povjerenja
     [Expand]Knjiga pošte
     [Expand]Kartice vjernosti
     [Expand]Ad-hoc analize
     [Expand]Vrste dokumenata
      Tekstovi za dokumente
      Načini dostave
      Izvještaji nadzorne ploče
      Ad-hoc analiza
     [Expand]Izvještaji nadzorne ploče
     [Expand]ARES
      SQL urejevalnik
     [Expand]Administratorska konzola
     [Expand]Zamijeni korisnika Ctrl - U
     [Expand]Elementi nadzorne ploče
   [Expand]Narudžbe
   [Expand]Roba
   [Expand]Proizvodnja
   [Expand]Servis
   [Expand]POS
   [Expand]Novac
   [Expand]Kadrovi
   [Expand]Radna površina
   [Expand]Analize
   [Expand]Plansko-analitički alati ZEUS
   [Expand]Poruke programa
   [Expand]Dodatni programi
   [Expand]Sistemska okolina
   [Expand]Dodatni programi
   [Expand]Stari proizvodi
    Riječnik pojmova
  [Expand]Vodič po PANTHEON Vet
 [Expand]PANTHEON korisnički priručnici
[Expand]PANTHEON Web
[Expand]PANTHEON Granule

Load Time: 843,7626 ms
print   |
Label

Streachable objects

Stretching Objects

Razmotrimo slučaj kada imamo višelinijski tekst različitih duljina. "Text" objekt koji prikazuje informacije iz ovog polja ima fiksnu veličinu. Zato se čini da su neki redovi odrezani. Što se može učiniti u vezi s tim?

clip0155

Naravno, ili bi se veličina objekta mogla povećati ili bi se veličina fonta mogla smanjiti. Međutim, to može dovesti do rasipanja prostora na izlaznoj stranici jer neki ribe imaju duge opise, dok drugi imaju kratke. FastReport ima neka svojstva koja nam omogućuju da riješimo ovaj problem.

Ova svojstva omogućuju traci ili objektu da automatski prilagode svoju visinu kako bi stvorili potrebni prostor za određeni zapis (redak). Da bismo to postigli, samo trebamo omogućiti svojstvo “Stretch” i traci i “Text” objektu. Međutim, to nije sve, jer bi “Text” objekt s dužim tekstom trebao moći rastegnuti se sam, pa ćemo morati postaviti neka od njegovih drugih svojstava također.

“Text” objekt može automatski postaviti svoju visinu i širinu kako bi napravio prostor za svoj sadržaj. “AutoWidth” i “StretchMode” mogu se koristiti za to. “AutoWidth” omogućuje “Text” objektu da varira svoju širinu tako da svi redovi naprave prostor bez razdvajanja riječi. Ovaj način je koristan kada objekt ima jedan redak teksta i kada rast prema desno neće utjecati na druge objekte. Svojstvo “Stretch” omogućuje da visina objekta raste kako bi se prilagodio tekstu bez promjene širine objekta. "Stretch" ima nekoliko načina koji se mogu odabrati u inspektoru objekta:

smDontStretch – ne rastegnuti objekt (zadano)

smActualHeight – rastegnuti objekt tako da napravi prostor za cijeli tekst

smMaxHeight – rastegnuti objekt tako da njegova donja strana dosegne dno trake u kojoj se nalazi - na ovaj način ćemo se kasnije osvrnuti

Ovdje nas zanima svojstvo “Stretch” objekta “Text”. Omogućite ga koristeći kontekstni izbornik objekta ili postavljanjem "StretchMode" na smActualHeight. Također omogućite svojstvo “Stretch” trake. Pregledajte izvještaj i uvjerite se da je sve sada kako se očekuje.

Da bismo tekst prebacili u novi red, koristimo svojstvo "Word Wrap" koje mora biti omogućeno, što je već zadana vrijednost. Ovo svojstvo je značajno ako je omogućeno svojstvo "AutoWidth".  

Kao što možete vidjeti, kada se konstruira izvještaj, FastReport ispunjava objekte podacima i rasteže ih ako je “Stretch” omogućen. Zatim izračunava visinu trake tako da svaki objekt ima dovoljno prostora. Ako je svojstvo “Stretch” trake onemogućeno, ova prilagodba visine se ne izvršava i traka se prikazuje na visini postavljenoj u dizajnu. U ovom slučaju vidjeli bismo da se objekti s dužim tekstom i dalje rastegnu, ali traka ne, što dovodi do preklapanja teksta, budući da se sljedeća traka prikazuje odmah nakon prethodne.

Page Breaks

Kada se izvještaj kreira, FastReport motor ispunjava bijeli prostor stranice trakama. Nakon prikazivanja svake trake trenutna pozicija se pomiče prema dolje. Kada FastReport otkrije da nema dovoljno bijelog prostora za prikaz sljedeće trake (njena visina je veća od preostalog bijelog prostora na stranici), FastReport stvara novu stranicu i nastavlja s prikazom trake odatle. Ova se sekvenca nastavlja onoliko puta koliko ima zapisa u skupu podataka.

Naš izvještaj sadrži objekt s velikim tekstom, zbog čega je visina trake prilično velika. Nadalje, ako velika traka nema dovoljno mjesta na stranici, premješta se na sljedeću ostavljajući puno neiskorištenog prostora na dnu stranice, kao što je ovdje prikazano:

_img94

Kako bismo ograničili rasipanje papira, upotrijebimo značajku FastReport koja stvara odlomke iz sadržaja trake. Sve što trebamo učiniti je omogućiti svojstvo “AllowSplit” trake “Prvi nivo podataka”. Vidjet ćete da sada ima manje bijelog prostora na dnu stranica izvještaja:

_img95

Kako funkcionira ovo dijeljenje trake? Postoje neki objekti u FastReportu koji podržavaju ovu značajku. To su objekti “Text”, “Line” i “RichEdit”. Oni se mogu “podijeliti”, dok se drugi objekti ne mogu. Kada FastReport treba podijeliti traku, to čini na sljedeći način:

- prikazuje neodvojive objekte koji imaju prostora u bijelom prostoru

- djelomično prikazuje podijeljive objekte (“Text” objekti se prikazuju na način da svi redovi imaju prostora u objektu)

- stvara novu stranicu i nastavlja s prikazom objekata u traci

- ako neodvojivi objekt nema prostora u bijelom prostoru, premješta se na sljedeću stranicu; u isto vrijeme svi objekti smješteni ispod njega se premještaju prema potrebi

- proces se nastavlja dok se svi objekti trake potpuno ne prikažu.

Algoritam dijeljenja bit će jasniji gledajući ovaj primjer:

_img96

Treba napomenuti da algoritam dijeljenja nije savršen i konačni izlaz možda neće biti baš onakav kakav se očekuje. Ovu opciju trebate koristiti vrlo pažljivo u slučajevima kada su objekti na podijeljenoj traci grupirani na složen način, i/ili se njihove veličine fonta razlikuju. Evo primjera onoga što bi moglo biti generirano:

clip0020

Shifting Objects

Pogledajmo različite načine pomicanja. U tu svrhu koristimo svojstvo “ShiftMode”. Pogledajmo 'smWhenOverlapped'​ način pomicanja. U ovom načinu pomicanje objekta događa se kada se objekt iznad rastegne i preklopi objekt ispod. Evo dva scenarija:

1: tri gornja objekta imaju “Stretch” omogućeno, a tri donja objekta imaju “ShiftMode” postavljeno na 'smAlways'. Donji objekti se pomiču samo dovoljno da omoguće prostor za rastegnuti objekt iznad:

_img115

2: tri gornja objekta imaju “Stretch” omogućeno, a tri donja objekta imaju “ShiftMode” postavljeno na 'smWhenOverlapped'. Donji objekti se pomiču kako bi omogućili prostor za rastegnuti objekt i također kako bi održali dizajniranu separaciju između dva objekta:

_img116

To omogućuje stvaranje složenih izvještaja, posebno kada bi objekt mogao preklapati nekoliko drugih objekata iznad njega u isto vrijeme. U donjem primjeru svi gornji objekti sadrže rastezljiv tekst, a svi donji su u 'smWhenOverlapped' načinu. Donji objekti će uvijek biti prikazani blizu objekta iznad, bez obzira na duljinu teksta u objektima iznad:

_img117



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