Jei norite, kad kiekvieną kartą paleidžiant „Access“ būtų pateikiama užklausa, galite sukurti parametrų užklausa.
Taip pat galite sukurti formą, skirtą rinkti parametrų reikšmes, kurios bus naudojamos apriboti užklausų, formų ar ataskaitų grąžinamus įrašus. Šiame straipsnyje aiškinama, kaip naudoti formas siekiant patobulinti užklausų, formų ir ataskaitų parametrus.
Šiame straipsnyje:
Apžvalga
Norėdami apriboti užklausų pateikiamų įrašų skaičių, galite naudoti „Access“ parametrų užklausos kriterijus. Gali būti, kad dialogo langai, kuriuos teikia parametro užklausa, neatitinka jūsų tikslų. Tokiais atvejais galima kurti formą, kuri geriau atitiks jūsų parametrų kaupimo poreikius. Šiame straipsnyje aiškinama, kaip sukurti formą, kuri kaupia užklausos ir ataskaitos parametrus. Straipsnyje laikomasi nuomonės, kad esate susipažinę su užklausų kūrimu ir užklausų parametrų nustatymu. Prieš tęsdami bent jau turėtumėte būti susipažinę su išrinkimo užklausų kūrimu.
Šiame straipsnyje pateikti parametrų naudojimo užklausose pavyzdžiai. Jame neteikiami išsamūs kriterijų nurodymo pavyzdžiai.
-
Daugiau informacijos apie tai, kaip pasirinkti užklausą, žr. straipsnyje Nesudėtingos išrinkimo užklausos kūrimas.
-
Daugiau bendros informacijos apie užklausas žr. straipsnyje Užklausų įvadas.
-
Daugiau informacijos apie užklausų parametrų nustatymą žr. straipsnyje Parametrų naudojimas norint prašyti įvesties vykdant užklausą.
-
Daugiau informacijos apie kriterijų nurodymą užklausose žr. straipsnyje Užklausos kriterijų pavyzdžiai.
Parametrų naudojimas užklausose
Parametrą naudoti užklausoje taip pat paprasta, kaip sukurti užklausą, kuri naudoja kriterijus. Galite sukurti užklausą, kad būtų rodomas raginimas įvesti vienos rūšies informaciją, pvz., skaičiaus dalį, arba daugiau negu vienos rūšies informaciją, pvz., dvi datas. Kiekvienam parametrui užklausa rodo atskirą dialogo langą, raginantį įvesti to parametro reikšmę.
Parametro įtraukimas į užklausą
-
Sukurkite išrinkimo užklausą, tada atidarykite ją naudodami maketo rodinys.
-
Lauko, kuriame norite taikyti parametrą, eilutėje Kriterijai įrašykite laužtiniais skliaustais apskliaustą tekstą, kurį norite rodyti parametro dialogo lange, pvz.,:
[Pradžios data]
Vykdant parametro užklausą, raginimas dialogo lange bus rodomas be laužtinių skliaustų.
Taip pat parametro raginime galima naudoti išraišką, pvz.:
Tarp [Pradžios data] ir [Pabaigos data]
Pastaba: Kiekviename parametro raginimui rodomas atskiras dialogo langas. Antrajame pavyzdyje rodomi du dialogo langai: vienas pradžios datai ir vienas pabaigos datai.
-
Pakartokite 2 veiksmą su kiekvienu lauku, į kurį norite įtraukti parametrus.
Kartodami ankstesnius veiksmus galite įtraukti parametrą į tolesnių tipų užklausas: pasirinkimo, kryžminę, papildymo, lentelės kūrimo ir atnaujinimo.
Taip pat galima įtraukti parametrą į sujungimo užklausą atliekant šiuos veiksmus:
-
Atidarykite sujungimo užklausą kaip SQL rodinį.
-
Įtraukite sąlygą WHERE, kurioje būtų visi laukai, kuriems norite pateikti parametro raginimą.
Jei sąlyga WHERE jau yra, įsitikinkite, kad sąlygoje jau yra laukų, į kuriuos norite naudoti parametro raginimą. Jei nėra – įtraukite juos.
-
Užuot naudoję kriterijų sąlygoje WHERE, naudokite raginimą įvesti parametrą.
Parametrų duomenų tipų nurodymas
Taip pat galite nurodyti, kokius duomenis turi priimti parametras. Galite nustatyti bet kokio parametro duomenų tipą, bet ypač svarbu nustatyti skaitinių, valiutos ar datos/laiko duomenų tipus. Kai nurodote duomenų tipą, kurį turi priimti parametras, vartotojai gali matyti naudingesnį klaidos pranešimą, jei jie įveda netinkamo tipo duomenis, pvz., ten, kur turėtų būti valiuta, įveda tekstą.
Pastaba: Jei parametras konfigūruotas priimti teksto duomenis, bet kokia įvestis suprantama kaip tekstas ir klaidos pranešimas nerodomas.
Norėdami nurodyti užklausos parametrų duomenų tipą, atlikite šiuos veiksmus:
-
Kai užklausa atidaryta rodinyje Dizainas, skirtuko Dizainas grupėje Rodymas/slėpimas spustelėkite Parametrai.
-
Dialogo lango Užklausos parametrai stulpelyje Parametras surinkite kiekvieno parametro, kurio duomenų tipą norite nurodyti, raginimą. Patikrinkite, ar kiekvienas parametras atitinka raginimą, kurį naudojate užklausos dizaino tinklelio eilutėje Kriterijai.
-
Stulpelyje Duomenų tipas pažymėkite kiekvieno parametro duomenų tipą.
Parametrus kaupiančios formos kūrimas
Nors parametrų užklausos apima įtaisytąjį dialogo langą, kuriame kaupiami parametrai, jos teikia tik pagrindines funkcijas. Naudojant formą parametrams kaupti gaunamos šios funkcijos:
-
Galimybė naudoti konkrečių duomenų tipo valdiklius, pvz., datoms skirtus kalendoriaus valdiklius.
-
Sukauptų parametrų nuoseklumas, kad juos būtų galima naudoti daugiau nei vienoje užklausoje.
-
Galimybė teikti pasirinktinio įvedimo lauką arba sąrašo lauką parametrų kaupimui, kad būtų galima išsirinkti iš galimų duomenų reikšmių sąrašo.
-
Galimybė teikti valdiklius kitoms funkcijoms, pvz., užklausos atidarymui ar atnaujinimui.
Tolesniame vaizdo įraše rodoma, kaip sukurti paprastą formą, skirtą rinkti užklausos parametrus, o ne naudoti dialogo langą, paprastai susijusį su parametrų užklausomis.
Ataskaitai parametrus kaupiančios formos kūrimas
Yra keli būdai jos kūrimo būdai, tačiau mes pateiksime tik vieną, kuriame naudojamos makrokomandos. Norėdami kurti formą, kaupiančią parametrus ataskaitai, atlikite šiuos veiksmus.
-
2 veiksmas: Sukurkite kodo modulį, kad būtų patikrinta, ar parametro formą jau įkelta
-
3 veiksmas. Sukurkite makrokomandą, valdančią formą ir ataskaitą
-
4 veiksmas. Įtraukite į formą komandų Gerai ir Atšaukti mygtukus
-
5 veiksmas. Naudokite formos duomenis kaip užklausos kriterijų
-
6 veiksmas. Įtraukite makrokomandų veiksmus į ataskaitos įvykius
1 veiksmas. Sukurkite formą, kuri priimtų įvestį
-
Skirtuko Kūrimas grupėje Formos spustelėkite Formos dizainas.
-
Dizaino rodinyje paspauskite F4, kad būtų rodomas ypatybių lapas, tada nurodykite formos ypatybes, kaip parodyta toliau pateiktoje lentelėje.
Ypatybė
Parametras
Antraštė
Įveskite pavadinimą, kurį norite matyti formos pavadinimo juostoje.
Numatytasis rodinys
Pavienė forma
Leisti formos rodinį
Taip
Leisti duomenų lapo peržiūrą
Ne
Leisti „PivotTable“ rodinį
Ne
Leisti „PivotChart“ rodinį
Ne
Slinkties juostos
Nėra
Įrašų parinkikliai
Ne
Naršymo mygtukai
Ne
Kraštinės stilius
Dialogo langas
-
Kiekvienam parametrui, kurį kaups forma, spustelėkite Teksto lauką grupės Valdikliai skirtuke Dizainas.
-
Nustatykite teksto laukų ypatybes, kaip parodyta toliau pateiktoje lentelėje.
Ypatybė
Parametras
Pavadinimas
Įveskite pavadinimą, apibūdinantį parametrą, pvz., PradžiosData.
Formatas
Pasirinkite formatą, kuris atspindi parametro lauko duomenų tipą. Pavyzdžiui, kaip datos lauką pasirinkite Bendra data.
-
Įrašykite formą ir suteikite jai pavadinimą, pvz., frmKriterijai.
2 veiksmas: Sukurkite kodo modulį, kad būtų patikrinta, ar parametro formą jau įkelta
-
Skirtuko Kūrimas grupėje Makrokomandos ir kodas spustelėkite Modulis.
Naujas modulis atidaromas „Visual Basic“ rengyklėje.
-
Įveskite arba įklijuokite šį kodą į „Visual Basic“ rengyklę:
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
-
Įrašykite modulį unikaliu pavadinimu, tada uždarykite „Visual Basic“ rengyklę.
3 veiksmas. Sukurkite makrokomandą, valdančią formą ir ataskaitą
Naudojant „Access“ papildomas makrokomandas galima apibrėžti visus reikalingus veiksmus, kuriuos būtina atlikti viena makrokomanda. Sukursime keturias papildomas makrokomandas – Atidaryti dialogo langą, Uždaryti dialogo langą, Gerai ir Atšaukti – skirtas kontroliuoti įvairias šios procedūros užduotis. Naudodami tolesnę ekrano nuotrauką kaip vadovą, sukurkite naują makrokomandą su šiomis papildomomis makrokomandomis ir veiksmais. Atkreipkite dėmesį, kad šiame pavyzdyje mūsų parametro forma vadinama frmCriteria. Jūsų makrokomandos pavadinimas turi atitikti anksčiau sukurtos formos pavadinimą. Taip pat būtina spustelėti Rodyti visus veiksmus skirtuke Dizainas, kad būtų galima peržiūrėti visus makrokomandų veiksmus.
Įrašykite ir uždarykite makrokomandą. Įveskite makrokomandos pavadinimą, pvz., Datų diapazono makrokomanda.
4 veiksmas. Įtraukite į formą komandų Gerai ir Atšaukti mygtukus
-
Iš naujo atidarykite parametro formą, kurią sukūrėte anksčiau rodinyje Dizainas.
-
Įsitikinkite, kad nepasirinkta parinktis Naudoti valdiklių vediklius grupės Valdikliai skirtuke Dizainas.
-
Skirtuko Dizainas grupėje Valdikliai spustelėkite Mygtukas.
-
Nustatykite žymiklį po teksto laukais formoje, tada vilkite, kad sukurtumėte mygtuko Gerai komandą.
-
Jei ypatybės lapas nerodomas, paspauskite F4, kad jis būtų parodytas.
-
Nustatykite mygtuko Gerai ypatybes, kaip parodyta toliau pateiktoje lentelėje.
Ypatybė
Parametras
Pavadinimas
Gerai
Antraštė
Gerai
Numatytosios
Taip
OnClick
Įveskite makrokomandos pavadinimą, pvz., Datų diapazono makrokomanda.Gerai.
-
Sukurkite komandos Atšaukti mygtuką ir nustatykite jo ypatybes, kaip parodyta toliau pateiktoje lentelėje.
Ypatybė
Parametras
Pavadinimas
Atšaukti
Antraštė
Atšaukti
OnClick
Įveskite makrokomandos pavadinimą, pvz., datų diapazono makrokomanda.Atšaukti.
-
Įrašykite ir uždarykite formą.
5 veiksmas. Naudokite formos duomenis kaip užklausos kriterijų
-
Dizaino rodinyje atidarykite anksčiau sukurtą užklausą.
-
Įveskite duomenų kriterijus. Naudokite objektą Formos, formos pavadinimą ir valdiklis pavadinimą:
-
Pvz., „Access“ duomenų bazėje (.accdb arba .mdb), formai frmCriteria, naudojate tolesnę išraišką, kad nurodytumėte užklausos valdiklius Pradžios data ir pabaigos data:
Tarp [Formos]![frmCriteria]![Pradžios data] ir [Formos]![frmCriteria]![Pabaigos data]
-
6 veiksmas. Įtraukite makrokomandų veiksmus į ataskaitos įvykius
-
Atidarykite ataskaitą, kurią norite naudoti kaip rodinyje Dizainas.
-
Jei ypatybės lapas nerodomas, paspauskite F4, kad jis būtų parodytas.
-
Įsitikinkite, kad ataskaitos ypatybė Įrašyti šaltinį naudoja anksčiau apibrėžtą parametro užklausą.
-
Nustatykite šias dvi papildomos ataskaitos ypatybes, kaip parodyta toliau pateiktoje lentelėje.
Ypatybė
Parametras
OnOpen
Įveskite makrokomandos pavadinimą, pvz., Datų diapazono makrokomanda.Atidaryti dialogo langą.
OnClose
Įveskite makrokomandos pavadinimą, pvz., Datų diapazono makrokomanda.Uždaryti dialogo langą.
Ataskaitos įvykyje Atidaryti, „Access“ paleis veiksmus, apibrėžtus objekto Datų diapazono makrokomanda papildomoje makrokomandoje Atidaryti dialogo langą. Uždarant ataskaitą „Access“ paleis veiksmus, apibrėžtus objekto Datų diapazono makrokomanda papildomoje makrokomandoje Uždaryti dialogo langą.
-
Įrašykite ir uždarykite ataskaitą.
7 veiksmas: Išbandykite
Dabar, kai sukūrėte visus „Access“ objektus, metas ją išbandyti. Atidarykite ataskaitą Ataskaitos rodinyje arba Spaudinio peržiūroje ir atkreipkite dėmesį, kad prieš „Access“ parodant ataskaitą, parametro forma atidaroma dialogo lango režimu. Įveskite reikiamus kriterijus į anksčiau sukurtus teksto laukus, tada spustelėkite formos komandos mygtuką Gerai. „Access“ paslepia formą (matoma = ne) ir atidaro ataskaitą tik su jūsų kriterijus atitinkančiais duomenimis. Tai veikia todėl, kad parametro užklausa, kuria pagrįsta ataskaita, gali nuskaityti reikšmes paslėptos formos valdikliuose. Kai uždarysite ataskaitą, „Access“ uždarys parametro formą.