Kui soovite, et Accessi päring küsiks igal käivitamisel sisendit, siis saate luua parameeterpäringu.
Saate luua ka vormi, et koguda parameetriväärtusi, mida kasutatakse päringutes, vormides ja aruannetes tagastatavate kirjete piiramiseks. Selles artiklis selgitatakse, kuidas vormide abil täiustada parameetrite kasutamist päringutes, vormides ja aruannetes.
Selle artikli teemad
Ülevaade
Päringu tagastatava kirjekomplekti piiramiseks saate kasutada parameetripäringu kriteeriume. Võib juhtuda, et parameetripäringu esitatavad dialoogiboksid ei vasta teie vajadustele. Sel juhul saate luua vormi, mis vastab paremini teie parameetrikogumiga seotud vajadustele. Selles artiklis selgitatakse, kuidas luua vorm päringute ja aruannete parameetrite kogumiseks. Artiklis eeldatakse, et olete tuttav päringute loomise ja päringutes parameetrite määramisega. Enne edasi lugemist peaksite teadma vähemalt seda, kuidas luua valikupäringut.
Selles artiklis tuuakse näiteid parameetrite kasutamisest päringutes. Kriteeriumite koostamise kohta üksikasjalikke juhiseid ei anta.
-
Valikupäringu loomise kohta lisateabe saamiseks lugege teemat Lihtsa valikupäringu loomine.
-
Päringute kohta leiate lisateavet teemast Sissejuhatus päringutesse.
-
Päringutes parameetrite määramise kohta lisateabe saamiseks lugege teemat Päringu käivitamisel parameetrite abil sisendi küsimine.
-
Päringutes kriteeriumide täpsustamise kohta leiate lisateavet teemast Päringukriteeriumide näited.
Parameetrite kasutamine päringutes
Päringus parameetri kasutamine on sama lihtne kui kriteeriume kasutava päringu loomine. Saate kujundada päringu küsima ühte teabeühikut (nt tootekoodi) või mitut teabeühikut (nt kahte kuupäeva). Iga parameetri kohta kuvab parameetripäring eraldi dialoogiboksi, kus palutakse sisestada parameetri väärtus.
Parameetri lisamine päringusse
-
Looge valikupäring ja seejärel avage see kujundusvaates.
-
Kui teate, millisele väljale soovite parameetrit rakendada, sisestage selle välja reale Kriteeriumid parameetriväljal kuvatav tekst ja pange see nurksulgudesse. Näide.
[Alguskuupäev]
Päringu käivitamisel kuvatakse dialoogiboksis nurksulgudeta viip.
Samuti saate parameetriviipades kasutada avaldisi. Näide.
Between [Alguskuupäev] And [Lõppkupäev]
Märkus.: Iga parameetriviip kuvatakse eraldi dialoogiboksis. Teise näite puhul kuvatakse kaks dialoogiboksi: üks alguskuupäeva ja teine lõppkuupäeva jaoks.
-
Korrake 2. toimingut iga välja puhul, millele soovite lisada parameetreid.
Eelmainitud toimingute abil saate lisada parameetreid valimis-, rist-, lisamis-, tabeli- ja värskenduspäringutele.
Samuti võite lisada parameetri ühispäringule järgmiste toimingute abil.
-
Avage ühispäring SQL-i vaates.
-
Lisage WHERE-klausel, mis sisaldab kõiki välju, mille jaoks soovite kuvada parameetriviipa.
Kui WHERE-klausel on juba olemas, kontrollige, kas väljad, mille jaoks soovite kuvada parameetriviipa, on juba klauslis. Kui välju pole, lisage need.
-
WHERE-klauslis kriteeriumi kasutamise asemel kasutage parameetriviipa.
Parameetri andmetüüpide määramine
Saate määrata ka seda, mis tüüpi andmeid peab parameeter aktsepteerima. Saate määrata kõigi parameetrite andmetüübi, kuid eriti oluline on määrata andmetüüp arv-, valuuta- ja kuupäeva-/kellaajaandmetele. Kui määrate andmetüübi, mida parameeter peab aktsepteerima, kuvatakse kasutajatele valet tüüpi andmete sisestamisel (nt teksti sisestamisel valuuta asemel) sisukam tõrketeade.
Märkus.: Kui parameeter on konfigureeritud aktsepteerima tekstandmeid, tõlgendatakse mis tahes sisendit tekstina ja tõrketeadet ei kuvata.
Päringu parameetrite andmetüübi määramiseks tehke järgmist.
-
Klõpsake kujundusvaates avatud päringu menüü Kujundus jaotises Kuva/peida nuppu Parameetrid.
-
Tippige dialoogiboksi Päringu parameetrid veergu Parameeter iga sellise parameetri viip, mille andmetüüpi soovite määrata. Veenduge, et iga parameeter vastab päringu kujundusruudustiku real Kriteeriumid kasutatavale viibale.
-
Valige veerust Andmetüüp iga parameetri andmetüüp.
Parameetrite kogumiseks vormi loomine
Kuigi parameetripäringutel on andmete kogumiseks sisemine dialoogiboks, võimaldavad need vaid põhifunktsioone. Vormi abil parameetrite kogumise korral saate kasutada järgmisi funktsioone.
-
Andmetüübikohased juhtelemendid (nt kalendri juhtelemendid kuupäevade jaoks)
-
Kogutud parameetrite püsivus, et saaksite kasutada parameetreid mitmes päringus
-
Liitboksi või loendiboksi kasutamine parameetrite kogumiseks, et saaksite valida saadaolevate andmeväärtuste seast sobiva väärtuse
-
Juhtelementide kasutamine muude funktsioonidega (nt päringu avamine või värskendamine)
Järgmises videos näidatakse, kuidas luua päringu jaoks parameetrite kogumiseks lihtne vorm tavaliselt kasutatavate dialoogibokside asemel.
Aruande jaoks parameetrite kogumiseks vormi loomine
Sellele stsenaariumile lähenemiseks on mitu võimalust, kuid näitame vaid ühte tehnikat, mis kasutab peamiselt makrosid. Aruande parameetreid koguva vormi loomiseks järgige neid juhiseid.
1. toiming: sisestamist aktsepteeriva vormi loomine
-
Klõpsake menüü Loo jaotises Vormid nuppu Vormi kujundus.
-
Kujundusvaates vajutage atribuudilehe kuvamiseks klahvi F4 ja määrake vormi atribuudid, nagu järgmises tabelis näidatud.
Atribuut
Säte
Pealdis
Sisestage nimi, mida soovite vormi tiitliribal kuvada.
Vaikevaade
Üksik vorm
Luba vormivaade
Jah
Luba andmelehevaade
Ei
Luba PivotTable-liigendtabeli vaade
Ei
Luba PivotChart-liigenddiagrammi vaade
Ei
Kerimisribad
Ei kumbki
Kirjevalijad
Ei
Navigeerimisnupud
Ei
Äärise laad
Dialoog
-
Iga vormi kogutava parameetri puhul klõpsake menüü Kujundus jaotise Juhtelemendid nuppu Tekstiväli.
-
Määrake tekstivälja atribuudid, nagu järgmises tabelis näidatud.
Atribuut
Säte
Nimi
Sisestage parameetrit kirjeldav nimi, näiteks Alguskuupäev.
Vorming
Valige parameetrivälja andmetüüpi kajastav vorming. Näiteks võite valida kuupäevaväljale vormingu Üldkuupäev.
-
Salvestage vorm ja pange sellele nimi (nt frmCriteria).
2. toiming: koodimooduli loomine kontrollimaks, kas parameetrivorm on juba laaditud
-
Klõpsake menüü Loo jaotises Makrod & kood nuppu Moodul.
Uus moodul avatakse Visual Basic Editoris.
-
Tippige või kleepige Visual Basic Editori järgmine kood.
Function IsLoaded(ByVal strFormName As String) As Boolean Dim oAccessObject As AccessObject Set oAccessObject = CurrentProject.AllForms(strFormName) If oAccessObject.IsLoaded Then If oAccessObject.CurrentView <> acCurViewDesign Then IsLoaded = True End If End If End Function
-
Salvestage moodul kordumatu nimega ja seejärel sulgege Visual Basic Editor.
3. toiming: vormi ja aruannet juhtiva makro loomine
Accessi makrode alammakro funktsiooni abil saab määrata kõik ühe makro käitamiseks vajalikud toimingud. Selles näites luuakse protseduuri ülesannete jaoks neli alammakrot: Ava dialoog, Sule dialoog, OK ja Loobu. Alltoodud kuvatõmmise näitel looge uus järgmisi alammakrosid ja toiminguid sisaldav makro. Pange tähele, et selles näites kasutatava parameetrivormi nimi on frmCriteria. Viige makro vastavusse eelnevalt loodud vormi nimega. Samuti klõpsake kõigi makrotoimingute kuvamiseks kindlasti menüü Kujundus nuppu Kuva kõik toimingud.
Salvestage ja sulgege makro. Pange makrole nimi, näiteks Kuupäevavahemiku makro.
4. toiming: vormile käsunuppude „OK“ ja „Loobu“ lisamine
-
Avage kujundusvaates eelnevalt loodud parameetrivorm.
-
Veenduge, et menüü Kujundus jaotise Juhtelemendid käsk Kasuta juhtelemendiviisardeid ei oleks valitud.
-
Klõpsake menüü Kujundus jaotises Juhtelemendid nuppu Nupp.
-
Käsunupu OK loomiseks viige kursor vormi tekstiväljade alla ning klõpsake ja lohistage.
-
Kui atribuudilehte pole näha, vajutage selle kuvamiseks klahvi F4.
-
Määrake nupu OK atribuudid vastavalt järgmises tabelis toodule.
Atribuut
Säte
Nimi
OK
Pealdis
OK
Vaikesäte
Jah
Klõpsamisel
Sisestage makro nimi, näiteks Kuupäevavahemiku makro.OK.
-
Looge käsunupp Loobu ja määrake selle atribuudid, nagu järgmises tabelis näidatud.
Atribuut
Säte
Nimi
Loobu
Pealdis
Loobu
Klõpsamisel
Sisestage makro nimi, näiteks Kuupäevavahemiku makro.Loobu.
-
Salvestage ja sulgege vorm.
5. toiming: vormiandmete kasutamine päringukriteeriumidena
-
Avage kujundusvaates eelnevalt loodud päring.
-
Sisestage andmete kriteeriumid. Kasutage objekti Forms , vormi nime ja juhtelement nime.
-
Näiteks Accessi andmebaasi (.accdb või .mdb) frmCriteria-nimelise vormi puhul saate juhtelementidele Alguskuupäev ja Lõppkuupäev viitamiseks kasutada järgmist avaldist.
Between [Forms]![frmCriteria]![Alguskuupäev] And [Forms]![frmCriteria]![Lõppkuupäev]
-
6. toiming: aruandesündmustele makrotoimingute lisamine
-
Avage aruanne, mida soovite kasutada kujundusvaates.
-
Kui atribuudilehte pole näha, vajutage selle kuvamiseks klahvi F4.
-
Veenduge, et aruande parameeter Kirje allikas kasutaks eelnevalt määratud parameetripäringut.
-
Määrake kaks täiendavat aruandeatribuuti, nagu järgmises tabelis näidatud.
Atribuut
Säte
Avamisel
Sisestage makro nimi, näiteks Kuupäevavahemiku makro.Ava dialoog.
Sulgemisel
Sisestage makro nimi, näiteks Kuupäevavahemiku makro.Sule dialoog.
Aruande avamise sündmuse korral käitab Access makroobjekti „Kuupäevavahemik“ alammakro „Ava dialoog“ toimingud. Aruande sulgemise korral käitab Access makroobjekti „Kuupäevavahemik“ alammakro „Sule dialoog“ toimingud.
-
Salvestage ja sulgege aruanne.
7. toiming: proovige järele!
Kui olete loonud kõik Accessi objektid, on aeg neid järele proovida. Avage oma aruanne vaates Aruandevaade või Prindieelvaade ja pange tähele, et enne, kui Access kuvab aruande, avaneb teie parameetrivorm dialoogirežiimis. Sisestage varem loodud tekstiväljadele soovitud kriteeriumid ja seejärel klõpsake vormil käsunuppu OK. Access peidab seejärel vormi (Nähtav = Ei) ja avab aruande kriteeriumidele vastavate andmetega. See toimib, sest parameetripäring, millel aruanne põhineb, saab lugeda peidetud vormi juhtelementide väärtuseid. Kui sulgete aruande, sulgeb Access ka parameetrivormi.