Demo 3
Lisää lomakkeita ja raportteja + ER-kaavioiden suunnittelua

  1. Kopioi edellisissä demoissa tekemäsi tietokanta d:\omat\-hakemistoon. Jos sinulla ei ole omaa tekelettäsi mukanasi niin voit kopioida mallitietokannan osoitteesta <URL: http://www.jyu.fi/tt-appro/2000/tietokannat/demot/demo2/demo2.mdb>
  2. Aukaise tietokantasi Microsoft Accessilla.
  3. Tee kopio edelliskerralla tekemästäsi Tentit-raportista. Kopio on helpointa tehdä leikepöydän avulla. Anna kopiolle nimeksi Tentit_sarakkeittain.
  4. Muokkaa Tentit_sarakkeittain raporttia. Raportti olisi järkevämmän näköinen jos kaikki saman kurssin tenttisuoritukset näkyisivät vierekkäin samalla rivillä. Määrittele sivulle 5 saraketta File|Page Setup-valinnan Columns-välilehdeltä. Määritä yhden sarakkeen leveydeksi 4 cm.

    Page Setupista muuta sarakkeiden (columns) määrää

  5. Määritellään jokaisen raportin osion käyttäytyminen sarakkeiden suhteen. Muuta Sotu Header-osion New Row Or Col-asetukseen arvo Before & After.

    Nimi aina rivin alkuun eli rivinvaihto aina ennen ja jälkeen sotuosiota

  6. Määrittele New Row Or Col-asetus muille osioille seuraavasti:
    Kurssitunnus Header
    Before Section
    Detail
    None
    Kurssitunnus Footer
    After Section

    Kurssitunnus laitetaan siis aina rivin alkuun ja heti sen perään luetellaan sarakkeittain kurssin suoritukset (Detail) ja lopulta rivin viimeiseksi yhteenveto (Kurssitunnus Footer), jonka jälkeen siirrytään seuraavalle riville.

  7. Poista kokonaan käytöstä Sotu Footer-osio. Poistaminen onnistuu helpoiten View|Sorting and Grouping-valinnan kautta. Valitse Sotu-kenttä ja määrittele sen Group Footer pois päältä

    Poista sotu-ryhmittelyyn liittyvä alaotsikko

  8. Siirrä jokaisen ryhmittelyosan sisältämät kentät aivan vasempaan laitaan.

    siirrä kaikki elementit vasempaan laitaan

  9. Kokeile miltä raportti näyttää toiminnassa View|Print Review.
  10. Muotoile raporttia järkevämmän näköiseksi. Pienennä kenttien kokoja tarvittaessa, poistele turhia ja järjestele allekkain. Pyri hieman seuraavankaltaiseen lopputulokseen:

    Sarakkeita sisältävän raportin lopputulos

  11. Siirrytään parantelemaan tehtyjä lomakkeita. Valitse muokattavaksi Tentit-lomake.
  12. Tätä lomaketta käytetään vain Oppilaan_tentit-alilomakkeena, joten esimerkiksi Sotu-kenttä jää turhaksi. Poista se kokonaan lomakkeelta.
  13. Lisätään lomakkeen alatunnisteosaan (Form Footer) yhteenvetoja tenteistä. Suurenna Form Footer-osaa ja lisää sinne kolme (3) uutta Text Box-objektia. Muuta ensimmäisen syöttökentän Control Source-ominaisuutta Properties-ikkunan Data-välilehdeltä. Kirjoita kenttään =Avg([arvosana]). Tämän muutoksen pitäisi laskea keskiarvo kaikista lomakkeella näytettävistä tenteistä.

    Keskiarvon laskeminen arvosanoista

  14. Määrittele vastaavaan tapaan parhaan (=Max([arvosana])) ja huonoimman (=Min([arvosana])) tenttituloksen etsiminen kahteen muuhun äsken tekemääsi kenttään. Muotoile lomake siistiksi.

    Keskiarvo, paras tulos ja huonoin tulos

  15. Poista lomakkeelta navigointinappulat ja talleta lomake.
  16. Siirry muokkaamaan Oppilaan_tentit-lomaketta.
  17. Poista lomakkeelta kaikki muut kentät paitsi Sotu-, Sukunimi- ja Etunimi-kentät. Muuta Sukunimi- ja Etunimi-kenttien asetuksia siten, ettei niiden sisältöä voi muuttaa. Laita Properties-ikkunan Data-välilehden Locked-kohtaan valinta Yes.

    estetään tietojen muuttaminen

  18. Piilota Sotu-kenttä näkyvistä. Määritä Sotu-kentän Visible-ominaisuuden arvoksi No.
  19. Lisää lomakkeelle nappulat, joilla voi siirtyä edelliseen ja seuraavaan tietueeseen. Poista vakiona tulevat navigointinappulat.

    Oppilaiden tenttitulokset

  20. Lomakkeella pitäisi nyt pystyä selaamaan ja muuttamaan opiskelijoiden tenttituloksia mutta ei opiskelijoiden omia tietoja. Lisää lomakkeelle nappula, jolla saat auki Oppilaat-lomakkeen, jos oppilaiden tiedot kaipaavat päivittämistä.

    Luodaan nappula, jolla avataan uusi lomake näkyviin

  21. Valitse aukaistavaksi lomakkeeksi Oppilaat-lomake.

    Valitaan aukaistavaksi Oppilaat-lomake

  22. Halutaan lomakkeen aukeavan suoraan sen oppilaan kohdalta, jonka tietoja oltiin katselemassa. Valitaan vaihtoehto Open the form and find specified data to display.

    Halutaan lomakkeen näyttävän tietyn oppilaan tiedot

  23. Valitaan lomakkeita yhdistäväksi kentäksi Sotu-kenttä. Miksi muut kentät eivät kelpaa?

    Lomakkeiden tiedot yhdistetään sotu-kentän avulla

  24. Keksi nappulaan sen toimintaa hyvin kuvaava teksti.

    Nappulan tekstiksi esimerkiksi oppilaan tiedot

  25. Keksi nappulaalle kuvaava nimi. Esimerkiksi opptiedot.
  26. Talleta lomake ja kokeile sen toimintaa.
  27. Kompaktoi tietokanta (Tools|Database utilities|Compact Database). Sulje Access ja kopioi tietokantasi talteen seuraavien demojen varalle.
  28. Suunnittele ja piirrä paperille seuraavien tehtävänantojen mukaiset ER-kaaviot. Hyväksytä kaaviosi demo-ohjaajalla. Ota kaaviosi mukaan seuraavan viikon demoihin.
  29. Sinulla on yritys, jonka henkilöstöstä kullakin on tietty tehtävänimike. Esimerkiksi projektipäällikkö, ohjelmoija, toimitusjohtaja. Yrityksen henkilöt joutuvat tekemään projekteja. Jokaisella projektilla on aina projektin määrääjä, tekijä tai tekijät ja yksi tai useampi valvoja. Projekteihin liittyy myös tarkempi projektin nimi, aloituspäivämäärä ja päättymispäivämäärä. Projektin tekijöitä halutaan edelleen luokitella tarkemmin sen mukaan mikä heidän tarkka tehtävänsä kussakin projektissa on (ohjelmointi, suunnittelu, testaus jne). Suunnittele ja piirrä yrityksen käyttöön tuleva tietokanta ER-mallinnuksella. Tietokantaan halutaan tallentaa myös kaikkien yrityksen henkilöiden nimet, puhelinnumerot ja sähköpostiosoitteet.
  30. Olet järjestämässä jalkapalloturnausta. Tarvitset käyttöösi tietokannan, johon pystyt tallentamaan tiedot turnauksessa pelaavista joukkueista. Jokaisesta joukkueesta tiedetään joukkueen kotimaa, nimi ja pelaajat. Pelaajista tiedetään pelinumero, nimi ja ikä. Tietokantaan pitää tallentaa jokaisen ottelun tapahtumapäivä ja kellonaika, mitkä joukkueet ovat pelanneet vastakkain ja pelissä tapahtuneet asiat. Jokaisesta pelistä halutaan rekisteröidä maalit, rikkeet, rangaistuslaukaukset, kulmapotkut, sivuheitot ja mahdollisesti muitakin asioita. Jokaisesta tapahtumasta halutaan talteen aika ja tekijä.

http://appro.mit.jyu.fi/2000/yhteistoiminta/tietokannat/demot/demo3/index.html
© Tommi Lahtonen ()<URL: http://www.iki.fi/hazor/>
4.10.2000 13:54:58