Contents
Index 🔎︎

# Tiedot

Tiedot-välilehdellä määritellään ne lomakkeen ominaisuudet, jotka viittaavat lomakkeeseen kytkettyyn tietokantaan.

Välilehdellä määritetään tietolähde, johon lomake perustuu ja se, onko tieto muokattavissa. Lajittelu- ja suodatustoimintojen lisäksi käytettävissä on alilomakkeen luomiseen tarvittavat ominaisuudet.

Toiminnon aloitustavat:

Open context menu of a selected form element - choose Form - Data tab.

Open Form Controls toolbar or Form Design toolbar, click Form icon - Data tab.

## Analysoi SQL-komento

Ominaisuus määrää, analysoiko LibreOffice SQL-lauseen vai ei. Kun asetus on Kyllä, voidaan napsauttaa Sisältö-luetteloruudun viereistä ... -painiketta. Näin avataan ikkuna, jossa tietokantakysely voidaan laatia graafisesti. Kun ikkuna suljetaan, luodun kyselyn SQL-lause lisätään Sisältö-luetteloruutuun.

## Kierto

Ominaisuus määrittää, miten siirtyminen tehdään Sarkain-näppäimellä. Sarkain-näppäintä käyttäen voi siirtyä eteenpäin lomakkeessa. Jos samalla painaa Vaihto-näppäintä, siirtyminen tapahtuu päinvastaiseen suuntaan. Kun saavutetaan viimeinen (tai ensimmäinen) kenttä ja painetaan Sarkain-näppäintä vielä kerran, siitä voi olla useita erilaisia seurauksia. Näppäintoimintoa ohjataan seuraavilla asetuksilla:

Asetus | Selite
Oletus | Asetus määrää kierron, joka seuraa tiekannan linkkiä: jos lomakkeessa on tietokantalinkki, Sarkain käynnistää, oletuksena, muuton seuraavaan tai edelliseen tietueeseen viimeisesti kentästä poistumisen seurauksena (katso Kaikki tietueet). Jos tietokantalinkkiä ei ole seuraava/edellinen lomake esitetään (katso Nykyinen sivu).
Kaikki tietueet | Tämä asetus soveltuu vain tietokantalomakkeille ja sitä käytetään siirtymiseen kaikkien tietueiden kautta. Jos Sarkainta käytetään lomakkeen viimeisestä kentästä poistumiseen, kohdistettu tietue vaihtuu.
Aktiivinen tietue | Tämä asetus soveltuu vain tietokantalomakkeille ja sitä käytetään siirtymiseen kohdistetussa tietueessa. Jos Sarkainta käytetään lomakkeen viimeisestä kentästä poistumiseen, kohdistettu tietue vaihtuu.
Nykyinen sivu | Poistuttaessa lomakkeen viimeisestä kentästä, kohdistin hyppää seuraavan lomakkeen ensimmäiseen kenttään. Tämä on normaalia HTML-lomakkeissa; siksi tämä vaihtoehto sopii erityisesti HTML-lomakkeille.

## Lajittele

Määritellään lomakkeen tietojen lajitteluehdot. Lajitteluehdot noudattavat SQL:n sääntöjä ilman ORDER BY -lauseen käyttöä. Esimerkiksi jos halutaan lajitella tietokannan kaikki tietueet nousevaan järjestykseen yhden kentän mukaan ja laskevaan toisen, kirjoitetaan Etunimi ASC, Nimi DESC (edellyttäen, että Etunimi ja Nimi ovat tietokannan kenttien nimiä).

Vastaavia Lomakkeen navigointi -palkin kuvakkeita voi hyödyntää käyttötilassa: Nouseva lajittelu, Laskeva lajittelu ja Lajittelu.

## Linkitä alisteiset kentät

Kun luodaan alilomake, määritetään muuttuja, joka voi tallentaa mahdolliset päälomakkeen kentän arvot. Jos alilomake perustuu kyselyyn, määritettävän muuttujan pitää olla sama, joka on määritetty kyselyssä. Jos lomake luodaan käyttäen Tietolähde-kenttään kirjoitettua SQL-lausetta, annetaan sama muuttuja kuin lauseessakin. Muuttujan nimi on vapaasti valittavissa. Jos on tarve syöttää useita arvoja, painetaan Vaihto+Enter.

Jos, esimerkiksi määritetään tietokannan Customer_ID-kenttä pääkentäksi Linkitä pääkentät -ominaisuudelle, silloin voidaan Linkitä alisteiset kentät-ominaisuudessa määrittää sen muuttujan nimi, johon tietokannan Customer_ID-kenttä tallennetaan. Jos nyt määritetään SQL-lause Tietolähde-ruudussa muuttujaa käyttäen, vastaavat arvot esitetään alilomakkeessa.

## Linkitä pääkentät

Jos luodaan alilomake, päälomakkeeseen lisätään tietokenttä, joka synkronoi pää- ja alilomakkeen. Useiden arvojen syöttämiseksi painetaan Vaihto+Enter jokaisen rivin jälkeen.

Alilomake perustuu SQL-kyselyyn, tarkemmin Parametrikyselyyn. Jos kentän nimi syötetään Linkitä pääkentät ruutuun, tämän päälomakkeen kentän sisältämä aineisto luetaan muuttujaan, joka pitää syöttää Linkitä alisteiset kentät. Sopivalla SQL-lauseella tätä muuttujaa verrataan niihin taulukon tietoihin, joihin alilomake viittaa. Vaihtoehtoisesti voidaan sarakkeen nimi syöttää Linkitä pääkentät -ruutuun.

Katsotaan seuraavaa esimerkkiä:

Se tietokannan taulu, mihin lomake perustuu, on esimerkiksi asiakastietokanta ("Customer"), jossa jokaiselle asiakkaalle on annettu yksilöllinen numero tietokannan "Cust_ID"-nimiseen kenttään. Asiakkaan tilaukset säilytetään toisessa tietokannan taulussa. Nyt esiintyy tarve nähdä kukin asiakkaan tilauksista sen jälkeen kun ne on syötetty lomakkeelle. Tätä varten pitää luoda alilomake. Linkitä pääkentät -kenttään syötetään asiakastietokannan tietokenttä, joka tarkasti määrittää asiakkaan, se on Cust_ID. Kenttään Linkitä alisteiset kentät syötetään sen muuttujan nimi, johon tieto kentästä Cust_ID sijoitetaan, esimerkiksi x.

Alilomakkeen pitää esittää asiaankuuluvaa tietoa tilaustaulusta ("Orders") jokaisesta asiakasnumerosta (Customer_ID -> x). Tämä on mahdollista vain, jos jokainen tilaus on yhdistetty yksilöitävästi yhteeen tilaustaulun asiakkaaseen. Vaihtoehtoisesti voidaan käyttää toista kenttää, jota nimitetään Customer_ID:ksi; sekaannuksen estämiseksi päälomakkeen samannimisen kentän kanssa, tämä kenttä nimetäänkin Customer_Numberiksi.

Verrataan nyt Customer_Numberia "Orders"-taulusta Customer_ID:hen "Customers"-taulussa, mikä voidaan tehdä, esimerkiksi käyttämällä muuttujaa x seuraavassa SQL-lauseessa:

SELECT * FROM Orders WHERE Customer_Number =: x (jos halutaan alilomakkeen esittävän kaikki tilaustaulun tiedot)

tai:

SELECT Item FROM Orders WHERE Customer_Number =: x (jos halutaan tilaustaulun alilomakkeen esittävän vain "Item"-kentän tiedot)

SQL-lause voidaan syöttää joko Tietolähde-kenttää tai voidaan luoda asiaankuuluva parametrikysely, jota voidaan käyttää alilomakkeen luomiseen.

## Lisää vain tietoja

Ominaisuus määrää, salliiko lomake vain uuden aineiston lisäämisen (Kyllä) vai myös muut ominaisuudet (Ei).

Jos Lisää vain tietoja on asetettu "Kyllä"-tilaan, tietojen muuttaminen tai poistaminen eivät ole sallittuja.

## Salli lisäykset

Ominaisuus määrää, sallitaanko aineiston lisäykset vai ei.

## Salli muutokset

Ominaisuus määrää, sallitaanko tietojen muutokset vai ei.

## Salli poistot

Ominaisuus määrää, voiko aineistoa poistaa vai ei.

## Siirtymistyökalurivi

Ominaisuus määrää, onko lomakkeen alapalkin siirtymistoiminnot käytettävissä vai ei.

"Päälomake"-asetusta käytetään alilomakkeille. Jos valitaan tämä vaihtoehto alilomakkeille, voidaan siirtyä käyttäen päälomakkeen tietueita, jos kohdistin on sijoitettu alilomakkeeseen. Alilomake liitetään päälomakkeeseen suhteella 1:1, joten siirtyminen suoritetaan aina päälomakkeessa.

## Sisältö

Ominaisuus määrää lomakkeella käytetyn sisällön. Sisältö voi olla olemassa oleva taulu tai kysely (luotu aiemmin tietokantaan), tai se voi olla määrätty SQL-lauseessa. Ennen sisällön valintaa pitää sen tyyppi määrätä täsmällisesti Sisältölaji-kentässä.

Jos valitaan joko "Taulukko" tai "Kysely" Sisältölaji-ominaisuudeksi, ruudussa luetellaan kaikki taulut ja kyselyt, jotka on laadittu valittuun tietokantaan.

## Sisältölaji

Ominaisuudella määrätään, onko tietolähteenä tietokannan taulu tai kysely, vai perustuuko lomake SQL-lauseeseen.

Jos valitaan "Taulukko" tai "Kysely", lomake viittaa tauluun tai kyselyyn, joka määritellään Sisältö-ominaisuudella. Mikäli on tarve luoda uusi kysely tai alilomake, silloin valitaan "SQL"-vaihtoehto. SQL-kyselyn tai alilomakkeen lause voidaan syöttää suoraan ohjausobjektin ominaisuuksien Tiedot-välilehden Luettelon sisältö -ruutuun.

## Suodatus

Kenttään syötetään lomakkeen tietojen suodattamiseen tarvittavat ehdot. Suodatusmääritykset noudattavat SQL:n sääntöjä ilman WHERE-lauseen käyttöä. Esimerkiksi jos halutaan esittää kaikki tietueet, joissa on etunimi "Matti" , tietokenttään kirjoitetaan: Etunimi = 'Matti'. Ehtoja voi myös yhdistellä: Etunimi = 'Matti' OR Etunimi = 'Paavo'. Kaikki tietueet, jotka täyttävät jommankumman ehdon, esitetään.

Suodatustoimintoon pääsee käyttötilassa Automaattinen suodatus ja Oletussuodatin-kuvakkeilla Lomakkeen navigointi -palkista.

## Tietolähde

Ominaisuus määrää, mihin tietolähteeseen lomake viittaa. Napsauttamalla ... -painiketta kutsutaan Avaa-valintaikkunaa, josta voidaan valita tietolähde.

## Mikä on alilomake?

Luotavat lomakkeet perustuvat joko tietokannan tauluun tai tietokantakyselyyn. Niiden avulla esitetään aineisto helposti luettavassa muodossa ja niitä voi käyttää aineiston syöttämiseen tai muokkaamiseen.

Jos vaaditaan lomakkeelta, joka viittaa yhden taulun tai kyselyn tietoihin, että se lisäksi voi esittää tietoja toisesta taulusta, pitää luoda alilomake. Esimerkiksi tämä alilomake voi olla tekstiruutu, jossa näkyy toisen tietokantataulun aineistoa.

Alilomake on päälomakkeen lisäkomponentti. Päälomaketta voidaan kutsua "isälomakkeeksi" tai "isännäksi". Alilomakkeelle tulee tarvetta, kun halutaan päästä käsiksi useampaan kuin yhteen tauluun yhdestä lomakkeesta. Jokainen lisätaulu tarvitsee oman alilomakkeensa.

Lomakkeen luomisen jälkeen, se voidaan muuntaa alilomakkeeksi. Tämä tehdään suunnittelutilassa avaamalla lomakeselain. Lomakeselaimessa vedetään lomake (josta on tuleva alilomake) toiseen lomakkeeseen (josta on tuleva isäntä).

Asiakirjan käyttäjä ei näe, onko joku lomake alilomake. Hän näkee vain asiakirjan, johon uusia tietoja syötetään tai jossa aiempaa aineistoa esitetään.

Päälomakkeella valitaan tietokentistä linkityksen isäntäkenttä. Alilomakkeessa linkityksen orjakentäksi voidaan asettaa kenttä, jonka sisältö vastaa isäntäkenttää eli Linkitä pääkentät -ominaisuutta.

Kun käyttäjä liikkuu aineistossa, lomake esittää aina nykyisen, kohdistetun tietueen. Jos käytössä on alilomakkeita, niiden sisältö tulee näkyviin vasta pienen, noin 200 ms viiveen jälkeen. Tämä viive tekee mahdolliseksi selata nopeasti päälomakkeen tietueita. Jos seuraavaan päälomakkeen tietueeseen siirrytään viiveajan sisällä, alilomakkeen aineistoa ei tarvitse noutaa ja esittää.