# Algõpe

Käesolev algõppekursus püüab lühidalt ja kokkuvõtlikult tutvustada Kugari põhiomadusi.

Me näitame, kuidas luua aruande mall &kudesigner;iga, andmefail ning lõpuks genereerime terve aruande.

Näidismallide ja -andmefailide lähtekoodi võib uurida &kugar;ile kaasa pandud failides `sample1.ktf` ja `sample1.kdf`.

## Aruande malli loomine &kudesigner;i abil

Käivita Kugar Disainer, andes käsu `kudesigner`.

Pärast käivitamist vali käsk Fail|Uus ning määra paberi suuruseks Letter ja suunaks Rõhtpaigutus. Vasakule ja paremale äärele anna väärtuseks 48, ülemisele ja alumisele 40. Kõik mõõtmed &kudesigner;is (lehekülje ääred, asukohad &etc;) on millimeetrites. Dialoog Uus aruanne

Nüüd luuakse uus aruanne ning kõik elemendiriba ja sektsiooniriba nupud muutuvad aktiivseks (samuti analoogsed menüüelemendid menüüdes Elemendid ja Sektsioonid). Tühja aruande aken

Nüüd on aeg lisada aruandele mõned sektsioonid ja määrata kindlaks nende suurus. Me lisame aruande päise ja jaluse, lehekülje päise ja jaluse ning ühe detailisektsiooni. Aruande päised ja jalused on näha aruande esimesel ja viimasel leheküljel vastavalt enne ja pärast kõiki aruande andmeid. Aruande jalused on näiteks hea koht arvutuslike väljade jaks. Lehekülje päised ja jalused on iga lehekülje üla- ja alaosas. Meie aruandes on üks detailisektsioon tasemel 0. See tähendab, et kõigil andmeridadel on ühesugune struktuur (&ie; väljad). Kui andmestruktuur on keerukam või organiseeritud allumispõhimõttel, tuleks luua rohkem detailitasandeid. Vaata failidest `sample3.ktf` ja `sample3.kdf`, kuidas seda teha. Lisainfot leiab mallielemente kirjeldavast osast.

Sektsioone saab lisada menüüst Sektsioonid või sektsiooniriba nuppudega. Lisame nüüd aruande päise ja jaluse, lehekülje päise ja jaluse ning detaili. Detaili lisades seame selle tasemeks 0, nagu näidatud alltoodud pildil. Detaili taseme määramine

Meie aruanne peaks nüüd välja nägema selline. Sektsioonidega aruanne

Kõigil sektsioonidel on eelnevalt määratud kõrgus 50 mm. Muudame seda. Selleks klõpsa &HPN;ga aruande päise sektsioonil või klõpsa redigeerimisribal nupul Muuda omadusi ning vali siis sektsioon. Nüüd ilmub omaduste aken. Sektsiooni kõrguse muutmine

Määrame aruande päise kõrguseks 70. Teeme seda ka kõigi ülejäänud nelja sektsiooniga, määrates lehekülje päise kõrguseks 45 ning detaili kõrguseks 30. Lehekülje ja aruande jalused peaksid mõlemad olema 32 mm kõrgused.

Nüüd on meil sobilikus suuruses sektsioonidega aruande mall, mis ainult ootab, et teda täitma hakataks. Erinevas suuruses sektsioonidega aruanne

Aruandele saab nüüd lisada elemente. Neid on olemas viis erinevat tüüpi. Pealdis on ristkülikuline piirkond, mille piiride vahele võib sisestada suvalisi tekstiandmeid. Pealdise teksti ja tausta värvi, samuti fonte on võimalik muuta. Muuta võib ka piirde tüüpi ja värvi. Välja võib lisada detailisektsiooni. Väljad tähistavad andmevälju, nende andmed hangitakse aruande loomisel andmefailist. Summad, keskmised &etc; väärtused saab aruandes esitada arvutatud väljal. Eriomadustega väljad kujutavad endast eelnevalt määratud tekstiga pealdisi, kus tekstiks on näiteks käesolev kuupäev või leheküljenumber. Aruande üldist välimust saab viimistleda joontega.

Elemendi lisamiseks aruandele klõpsa vastavalt elemendil elemendiribal ja uue klõpsuga aseta see vajalikku sektsiooni. Valitud element asetatakse sektsiooni nii, et tema ülemine vasak nurk asuks määratud asukohas. Muud omadused vastavad vaikeväärtustele ning neid saab muuta dialoogis Aruandeelemendi valikud (see sarnaneb sektsiooni kõrguse muutmisega).

Lisame nüüd aruande ja lehekülje päisele pealdised, nagu näidatud allpool oleval pildil. Pane tähele, et pealdise Mutiny Bay Software piirde stiil ja piirde laius on väärtusega 0 ning pealdisel Software Inventory Report on need -1mm. Kõik värvid on antud kolme värvi (RGB ehk punane, roheline ja sinine) kombinatsioonina, väärtuste eraldajaks komad.

Lisame ka väljaelemendi detailisektsiooni. Oletame, et meil läheb vaja nelja välja (tiitel, versioon, platvorm ja eksemplaride arv). Seega tuleb asetada paika neli välja ning kõigi väljade omadused paika määrata. Pane tähele, et omadus Tekst on automaatselt [`field_name`]

Lehekülje jalus on just sobilik koht käesoleva kuupäeva ja leheküljenumbri esitamiseks, seega lisame siia kaks eriomadustega välja ning määrame nende omaduse Tüüp väärtuseks vastavalt 0 ja 1, kus Tüüp=0 tähistab kuupäeva ja Tüüp=1 leheküljenumbrit. Pane tähele, et eriomadustega välja omadus Tekst muutub seepeale automaatselt.

Viimasena lisame arvutusliku välja meie eksemplaride väljale. Et seal ikka arvutataks välja summa (ehk siis eksemplaride arv), määra omadusele Väli väärtuseks eksemplarid ning omadusele Arvutuse tüüp 1 ehk summa.

Lõpuks peaks meie aruande mall välja nägema selline: Valmis aruanne

## Aruande andmefaili loomine

Üldiselt saab andmefaile luua mitmel moel. Võib näiteks kasutada XSL teisendustabelit mingist &XML;-dokumendist (näiteks &kspread;i arvutustabel) sobiva &XML;-i genereerimiseks. Võib kasutada ka mingit oma rakendust andmete hankimiseks andmebaasist ja nende andmefaili seadmiseks. Siinses algõppekursuses lahendame asjad vajalikku faili käsitsi luues. Meie näidise lähtekoodi leiab failis `sample1.kdf`, selle võib ka lihtsalt kopeerida allpool toodud näitest.

    <?xml version=1.0 encoding=UTF-8?>

    <!DOCTYPE KugarData [
        <!ELEMENT KugarData (Row* )>
        <!ATTLIST KugarData
            Template CDATA #REQUIRED>

        <!ELEMENT Row EMPTY>
        <!ATTLIST Row
            level CDATA #REQUIRED
            title CDATA #REQUIRED
            version CDATA #REQUIRED
            platform CDATA #REQUIRED
            copies CDATA #REQUIRED>
    ]>

    <KugarData Template="sample1.ktf">
        <Row level="0" title="  BRU" version="15.0" platform="x86" copies="1"/>
        <Row level="0" title="  Caldera Open Linux" version="2.2" platform="x86" copies="3"/>
        <Row level="0" title="  K Desktop" version="1.1.1" platform="x86" copies="1"/>
        <Row level="0" title="  Netscape Communicator" version="4.6" platform="x86" copies="10"/>
        <Row level="0" title="  Redhat Linux" version="5.0" platform="x86" copies="11"/>
        <Row level="0" title="  Redhat Linux" version="5.1" platform="x86" copies="12"/>
        <Row level="0" title="  Redhat Linux" version="5.2" platform="x86" copies="14"/>
        <Row level="0" title="  Redhat Linux" version="6.0" platform="x86" copies="15"/>
        <Row level="0" title="  Star Office" version="5.0" platform="x86" copies="1"/>
        <Row level="0" title="  Star Office" version="5.1" platform="x86" copies="3"/>
        <Row level="0" title="  Microsoft Windows NT" version="3.1" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="3.51" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="4.0" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="5.0" platform="x86" copies="1"/>
        <Row level="0" title="  Sun Solaris" version="2.5" platform="Sparc" copies="1"/>
    </KugarData>

## Aruande genereerimine

Nüüd on meil olemas aruande mall (`sample1.ktf`) ja aruande andmed (`sample1.kdf`).

Aruande genereerimiseks anna käsureal korraldus: `kugar `-r `sample1.ktf`` `-d `sample1.kdf```

See peaks nüüd avama &kugar;i põhiakna, kus loodud aruanne on ilusasti näha. Genereeritud aruanne