50
1 1. UPORABA KLJUČEV IN INDEKSOV V TABELAH.................................2 1.1. UPORABA PRIMARNIH KLJUČEV.............................................2 1.1.1. Postopek določanja primarnega ključa................................................................................... 2 1.1.2. Kombinirani ključi...................................................................................................................... 3 1.2. POMOŽNI (SEKUNDARNI) INDEKSI...........................................3 1.2.1. Postopek določanja pomožnih indeksov................................................................................. 4 2. REFERENČNA INTEGRITETA................................................6 2.1. POGOJI ZA VZPOSTAVITEV REFERENČNE INTEGRITETE.............................6 2.2. POSTOPEK DOLOČANJA REFERENČNE INTEGRITETE................................6 3. NAPREDNEJŠE DELO Z POIZVEDBAMI........................................9 3.1. UPORABA EXPRESSION BUILDER............................................9 3.1.1. Ustvarjanje računskih polj........................................................................................................ 9 3.1.2. Uporaba sklicnih polj za pogoje............................................................................................... 9 3.2. VEČDIMENZIONALNE POIZVEDBE............................................10 3.3. UPORABA TOTALS FUNKCIJE..............................................11 3.4. NAVZKRIŽNA POIZVEDBA.................................................13 4. NAPREDNEJŠA UPORABA ZASLONSKIH MASK..................................16 4.1. PODFORME.......................................................... 16 4.2. ORGANIZACIJA PROSTORA NA FORMAH Z VEČ PODFORMAMI (STRANI).................17 4.3. VSTAVLJANJE MAKRO GUMBOV (COMMAND BUTTON WIZARD)........................17 4.4. VSTAVLJANJE IZRAZOV.................................................20 4.4.1. Združevanje polj...................................................................................................................... 20 4.4.2. Uporaba DLookUp funkcije (pogojno avtomatično vnašanje)............................................. 20 4.5. OBLIKOVANJE GRAFOV..................................................21 4.6. Izdelava grafa.......................................................................................................................... 21 4.7. POGLED VRTILNE TABELE IN VRTILNEGA GRAFIKONA.............................23 5. MAKRI- AVTOMATIZACIJA PROCESOV.......................................27 5.1. VRSTE MAKROJEV..................................................... 29 6. ZAŠČITA BAZE.........................................................32 6.1. KREIRANJE UPORABNIKOV IN UPORABNIŠKIH SKUPIN.............................32 6.2. DOLOČANJE PRAVIC IN ZAŠČIT...........................................33 7. POIMENOVANJA OBJEKTOV ZNOTRAJ ZBIRKE PODATKOV........................35 8. PRILOGE..............................................................38 8.1. OPERATORJI IN IZRAZI................................................38 8.2. SQL..............................................................38 8.3. OSNOVNI ZNAKI VNOSNE MASKE...........................................39

Access Nadaljevalni

Embed Size (px)

Citation preview

1

1. UPORABA KLJUČEV IN INDEKSOV V TABELAH.............................................................................2

1.1. UPORABA PRIMARNIH KLJUČEV.............................................................................................................21.1.1. Postopek določanja primarnega ključa............................................................................................21.1.2. Kombinirani ključi............................................................................................................................3

1.2. POMOŽNI (SEKUNDARNI) INDEKSI..........................................................................................................31.2.1. Postopek določanja pomožnih indeksov............................................................................................4

2. REFERENČNA INTEGRITETA................................................................................................................6

2.1. POGOJI ZA VZPOSTAVITEV REFERENČNE INTEGRITETE...........................................................................62.2. POSTOPEK DOLOČANJA REFERENČNE INTEGRITETE...............................................................................6

3. NAPREDNEJŠE DELO Z POIZVEDBAMI..............................................................................................9

3.1. UPORABA EXPRESSION BUILDER...........................................................................................................93.1.1. Ustvarjanje računskih polj................................................................................................................93.1.2. Uporaba sklicnih polj za pogoje.......................................................................................................9

3.2. VEČDIMENZIONALNE POIZVEDBE.........................................................................................................103.3. UPORABA TOTALS FUNKCIJE................................................................................................................113.4. NAVZKRIŽNA POIZVEDBA.....................................................................................................................13

4. NAPREDNEJŠA UPORABA ZASLONSKIH MASK.............................................................................16

4.1. PODFORME............................................................................................................................................164.2. ORGANIZACIJA PROSTORA NA FORMAH Z VEČ PODFORMAMI (STRANI)...............................................174.3. VSTAVLJANJE MAKRO GUMBOV (COMMAND BUTTON WIZARD).........................................................174.4. VSTAVLJANJE IZRAZOV........................................................................................................................20

4.4.1. Združevanje polj..............................................................................................................................204.4.2. Uporaba DLookUp funkcije (pogojno avtomatično vnašanje).......................................................20

4.5. OBLIKOVANJE GRAFOV.........................................................................................................................21 4.6. Izdelava grafa..................................................................................................................................21

4.7. POGLED VRTILNE TABELE IN VRTILNEGA GRAFIKONA.........................................................................23

5. MAKRI- AVTOMATIZACIJA PROCESOV..........................................................................................27

5.1. VRSTE MAKROJEV................................................................................................................................29

6. ZAŠČITA BAZE.........................................................................................................................................32

6.1. KREIRANJE UPORABNIKOV IN UPORABNIŠKIH SKUPIN.........................................................................326.2. DOLOČANJE PRAVIC IN ZAŠČIT.............................................................................................................33

7. POIMENOVANJA OBJEKTOV ZNOTRAJ ZBIRKE PODATKOV..................................................35

8. PRILOGE.....................................................................................................................................................38

8.1. OPERATORJI IN IZRAZI..........................................................................................................................388.2. SQL......................................................................................................................................................388.3. OSNOVNI ZNAKI VNOSNE MASKE.........................................................................................................39

2

1. Uporaba ključev in indeksov v tabelahPodvajanje zapisov z enako šifro v tabeli nam lahko pogosto povzroča probleme, saj si ne moremo privoščiti podvojitev podatkov ali zamenjavo. Access nam omogoča postavitev ključev, ki rešujejo take probleme. Če določimo polju (ponavadi številčnemu) funkcijo ključa, Access sam poskrbi, da ne moremo vnesti dveh enakih podatkov.

Prednosti ključev:

preprečujejo podvajanje enakih vrednosti ključev zapisi so urejeni po vrednostih polja, ki je ključ hitro iskanje po polju, ki je ključ (primarni indeks) omogoča povezovanje tabel v formah, poročilih, poizvedbah, itd...

1.1. Uporaba primarnih ključev

Accessove tabele najbolje delujejo, če jim določimo primarni ključ. Kot ključ se najpogosteje definirajo razna številčna polja; šifre, matične številke, zaporedne številke (Autonumber) in podobno. Kot ključ lahko definiramo tudi navadna tekstovna polja (Priimek), vendar se potem kot ključ ne uporablja samo eno polje (sestavljen ključ).

Pravila pri določanju ključev:

tabela ima lahko samo en ključ, ki je lahko sestavljen iz enega ali več polj ključi morajo biti prva polja v tabeli (v strukturi tabele)

1.1.1. Postopek določanja primarnega ključa

Ključe postavljamo v oblikovanju tabele (Design) ali pa kasneje z popravljanjem strukture tabele.

V rubriki Field Name se postavimo v polje, kjer želimo imeti ključ. Nato v orodni vrstici

izberemo gumb Set Primary Key. Pri tem polju se nato pojavi ključ.

Ko definiramo polje kot ključ, se tudi ostale lastnosti polja temu primerno prilagodijo (npr. polje Indexed se nastavi v vrednost Yes(No Duplicates)). Polja, ki so določena za primarne ključe, ne dovoljujejo podvojenih vrednosti. Najboljši podatkovni tipi polj za ključe so seveda številčni (AutoNumber, Number), vendar Access dovoljuje tudi tekstovne ali kaka druge tipe.

3

1.1.2. Kombinirani ključi

V veliko primerih pridemo do situacije, ko eno samo polje kot ključ ni zadosti. To se zgodi v primerih ko: na neko tabelo določamo več referenčnih integritet (ne vedno) na druge tabele kadar nobeno polje v tabeli nima unikatnega zapisaPostopek za določanje kombiniranih ključev je zelo podoben postopku za določanje navadnih ključev.Najprej označimo polja, ki jih želimo določiti kot ključ (morajo se držati skupaj) in nato izberemo ukaz Set Primary Key v orodni vrstici.

1.2. Pomožni (sekundarni) indeksi

Poleg primarnega indeksa poznamo še sekundarne indekse, ki nam omogočajo hitro iskanje po poljubnih poljih in ne samo po prvem. Seveda pa ne preprečujejo podvajanja zapisov.Pomožni indeks lahko postavimo na katerokoli polje, poleg tega pa je lahko sestavljen iz več polj.

Prednosti pomožnih indeksov:

omogočajo hitro iskanje po poljih omogočajo gledanje podatkov v drugačnem vrstnem redu (v tabelah, ki imajo

ključe) omogočajo postavljanje filtrov pri gledanju in popravljanju podatkov omogočajo povezovanje tabel v formah in poročilih.

4

1.2.1. Postopek določanja pomožnih indeksov

Pomožni (sekundarni) indeks postavimo tako kot ključe v oblikovanju oziroma popravljanju strukture tabele (Design). V rubriki Field Name se postavimo v polje, po katerem bo tabela indeksirana. Nato v rubriki Field Properties izberemo zadnjo možnost Indexed. Access nam v tej rubriki ponuja tri možnosti:

No- brez indeksa Yes (No duplicates)- indeksirano brez podvajanja Yes (Duplicates OK)- možnost podvajanja podatkov

Ko zaključimo z določanjem indeksa z gumbom Save shranimo novo strukturo tabele.

5

Beležka:

2. Referenčna integritetaObičajno pri oblikovanju baze podatkov razdelimo podatke v več tabel, ki so lahko med seboj odvisne. To naredimo zaradi podvajanja podatkov in boljše preglednosti.

6

Kadar vnašamo podatke (šifre) v neko tabelo, ki je soodvisna z drugo tabelo, moramo imeti kontrolo ali ta šifra v drugi tabeli zares obstaja.Kontrolo pri vnosu šifer lahko določimo tudi s pomočjo referenčne integritete (Referential Integrity). Referenčna integriteta pomeni skrb za konsistentnost in zanesljivost podatkov. Ima pa še eno bolj pomembno funkcijo in sicer skrbi, da se ob spremembi šifer v eni tabeli popravijo tudi enake šifre v drugi tabeli.Accessu lahko prepustimo, da kar sam poskrbi za vse morebitne spremembe podatkov v tabeli. Definirati moramo referenčno integriteto. Integriteto vedno definiramo med dvema (odvisnima) tabelama, ki se morata nahajati v isti podatkovni bazi. Ena tabela je glavna (MASTER), druga pa je odvisna (CHILD).Referenčno integriteto lahko določimo samo poljema, ki imata enak tip in velikost, tabeli pa se morata nahajati v isti podatkovni bazi.

2.1. Pogoji za vzpostavitev referenčne integritete

Glavni pogoj za določanje referenčne integritete je seveda enotnost polj, ki jih povezujemo. Dve polji ki jih med seboj povezujemo, morata npr. biti številčni, kar pa seveda ne pomeni, da morata biti obe tipa Number. Med seboj lahko povežemo polje v prvi tabeli, ki je tipa AutoNumber (glavna tabela) z poljem v drugi tabeli (odvisna tabela), ki je tipa Number.Vendar pozor! Če združujemo dve takšni polji moramo paziti, da ima polje tipa Number v lastnosti Field Size nastavljeno vrednost Long Integer.Pomembno je seveda tudi to, da pri določanju referenčne integritete uporabljamo polja, ki so primarni ključi oziroma pomožni indeksi.

2.2. Postopek določanja referenčne integritete

V Access-u določamo referenčno integriteto v posebnem gradniku, do katerega pridemo prek ukaza Edit/Relationship.

Na zaslonu se nam odpre novo okno v katerem določamo tabele in povezave med njimi.

Tabele v oknu Relationship določamo z ukazom Relationships/Add Table. Pokaže se nam novo pogovorno okno v katerem izberemo tabele, ki jih želimo med seboj povezati.

Povezavo naredimo tako, da primemo polje v glavni tabeli in ga nesemo na ustrezno polje, ki se nahaja v odvisni tabeli. Računalnik nam naredi povezavo, hkrati pa nam odpre pogovorno okno v katerem določimo tip povezave med tabelami (Enforce Referential Integrity).

7

Tipi povezav:

One To One - povezava ena proti ena - pomeni, da ima vsak zapis v glavni tabeli največ enega pripadajočega v odvisni tabeli.

One To Many - povezava ena proti več - pomeni, da ima en zapis v glavni tabeli lahko več pripadajočih zapisov v odvisni tabeli.

Dodatne možnosti pri referenčni integriteti:

Cascade Update Related Fields - možnost, kjer nam Access samodejno popravi vse podatke, ki se nahajajo v odvisnih tabelah.

Cascade Delete Related Records - možnost, kjer nam Access samodejno pobriše podatke, ki se nahajajo v odvisnih tabelah.

Ko zaključimo z definiranjem referenčne integritete nas Access vpraša še za shranjevanje povezav (Relationships). Po shranitvi povezav sedaj Access samodejno kontrolira vnose naših podatkov in če se vnos ne drži pravila, ki smo ga določili v oknu Relationships nas računalnik na to tudi opozori.Beležka:

8

9

3. Naprednejše delo z poizvedbamiV poizvedbah pogosto nastavljamo več kot samo gole pogoje, pogosto se moramo zateči tudi k izrazom iz drugih gradnikov oziroma uporabljati izraze in funkcije za pridobitev pravih podatkov.

3.1. Uporaba Expression Builder

Expression Builder je orodje, ki ga sicer ne uporabljamo samo v poizvedbah, temveč tudi v ostalih gradnikih Accessove baze podatkov.Z pomočjo tega orodja sestavljamo formule, z katerimi določamo pogoje oziroma parametre iskanja podatkov ali pa določamo izgled iskanih podatkov.Expression Builder torej uporabljamo na dva načina:

3.1.1. Ustvarjanje računskih polj

Recimo da želimo v tabeli, kjer hranimo podatke o zaposlenih pridobiti nov podatek o tem, kolikšne so plače naših delavcev. Imamo že polje TOČKE. Postavimo se v vrstico Field v prvi prazen stolpec v poizvedbi in nato izberemo ukaz Expression Builder v orodni vrstici. Pojavi se pogovorno okno za sestavljanje formul, kjer bomo sestavili funkcijo, ki bo pomnožila polje TOČKE z neko vrednostjo točk. V levem delu pogovornega okna

dvakrat kliknemo na gradniku, kjer bomo našli primerno polje (v našem primeru bo to tabela) in nato izberemo še ime gradnika. V srednjem delu okna se nato pojavi seznam vseh možnih polj, poiščemo polje, ki ga iščemo in nato dvakrat kliknemo na njegovem imenu ali pa uporabimo ukaz Paste. Nato dodajamo še matematične

operatorje in ustrezna dodatna polja.Formula bi izgledala približno takole:[DELAVCI]![TOCKE] *205 Če je potrebno določimo še kak parameter za poizvedbo in nato poženemo z ukazom Run.

3.1.2. Uporaba sklicnih polj za pogoje

Pri ustvarjanju aplikacij za končnega uporabnika, dostikrat pridemo do situacije, ko nočemo da bi uporabnik delal z strukturami tabel, poizvedb in ostalih gradnikov.Recimo da za neko poročilo ali zaslonsko masko uporabljamo kot podlago neko poizvedbo. Podatke razvrščamo in omejujemo z različnimi pogoji, ki pa jih ne bi vnašali v poizvedbo,

10

temveč v formo, ki bo nato ta zapis vnesla v poizvedbo, ki jo uporabljamo. V ta namen uporabljamo sklicna polja. Sklicno polje je definicija pogoja iz nekega drugega mesta, kar nam omogoča manj premikanja med različnimi objekti in pospeši delo.

Če želimo določiti tak pogoj v poizvedbi, se postavimo v načrtovalnem pogledu poizvedbe v ustrezno polje v vrstici Criteria in nato izberemo ukaz Build

V oknu Expression Builder, ki se nato pojavi, v spodnjem levem predelu poiščemo ustrezno zaslonsko masko

Nato izberemo v srednjem delu ime polja, ki ga želimo določiti kot pogoj in potrdimo z ukazom Paste

Ko smo na tak način določili pogoj, smo se rešili nepotrebnega premikanja med različnimi objekti in spreminjanja strukture poizvedb.

3.2. Večdimenzionalne poizvedbe

Ena največjih prednosti poizvedb je sposobnost iskanja podatkov po več tabelah naenkrat. Na primer v obstoječih dveh tabelah KUPCI in NAROČILA bi radi pognali poizvedbo o kupcu in njegovih naročilih. Za kaj takega seveda potrebujemo obe tabeli. Odpremo novo poizvedbo V oknu Show Table izberemo tabeli, ki jih želimo uporabitiČe smo obe tabeli že povezali med seboj v oknu Relationships, se povezava vzpostavi avtomatično. Če povezave še ni, jo lahko naredimo sami, vendar samo za to poizvedbo.

11

Iz tabele KUPCI izberemo polje Sifra kupca in ga prenesemo na polje Sifra kupca v tabeli NAROČILA. Povezava se nato vzpostavi.

Iz obeh tabel nato prenesemo polja, ki nas zanimajo in po katerih želimo nastavljati kriterije.

Poženemo poizvedbo

3.3. Uporaba Totals funkcije

Kadar uporabljamo poizvedbe pogostokrat zastavljamo vprašanja; kolikšno je skupno število delavcev po krajih, kakšno je skupno število naročil ta mesec in njihova skupna vsota,…Z pomočjo funkcije Totals lahko izvajamo izračune po poljubnih skupinah podatkov.Izbiramo lahko med naslednjimi funkcijami:

izraz opis Group By poišče različne vrednosti in jih

prikaže samo enkrat Sum seštevanje Avg povprečje Count preštevanje Max poišče največjo vrednost Min poišče najmanjšo vrednost StDev standardna deviacija (odstopanje)

zapisov Var Variacije zapisov First prva vrednost v tabeli Last zadnja vrednost v tabeli Expression izraz, ki ga določimo z pomočjo

Expression Builder Where izraz kjer je = pogoj

Če želimo ustvariti kalkulacije nad zapisi v tabeli, odpremo novo poizvedbo Izberemo tabelo v kateri želimo preračunavati zapise

12

Izberemo ukaz Totals v orodni vrstici V vrstici Totals, ki se nato prikaže, izbiramo funkcije, ki jih želimo uporabiti

Funkcijo Group By uporabljamo samo če želimo izvajati izračune nad skupinami podatkov (npr. povprečje točk po izobrazbah). Kadar uporabljamo to funkcijo po večkrat v isti poizvedbi moramo paziti na vrstni red.Z to možnostjo lahko kombiniramo tudi različne tipe poizvedb, kriterije, računska polja,…

13

3.4. Navzkrižna poizvedba

Navzkrižne poizvedbe uporabljamo za zajemanje povzetka ene ali več tabel v preglednici. Navzkrižna tabela lahko prikaže zajetno količino podatkov v zelo pregledni obliki, tako da lahko zelo enostavno delamo primerjave med podatki. Navzkrižne poizvedbe lahko koristno uporabljamo tudi za podlago poročil.

Recimo, da želimo analizirati povprečje točk naših zaposlenih po izobrazbah in po krajih: Poženemo novo poizvedbo in izberemo tabelo DELAVCI Izberemo tip poizvedbe Crosstab Querry Dodamo polja Izobrazba, Tocke in Kraj V novi vrstici Totals lahko vidimo izbrane možnosti Group By. Možnost pustimo

nespremenjene pri polju Izobrazba in Kraj, medtem ko pri Tocke nastavimo vrednost Avg (povprečje).

V drugi novi vrstici Crosstab nastavimo naslednje vrednosti: Row Heading (ime vrstic) Column Heading (ime stolpcev) Value (vrednost, ki jo želimo preračunavati -Tocke)

Pri nastavljanju takih vrednosti moramo upoštevati da ne smemo izpustiti nobenega člena. Vrednosti Row in Column Headings lahko ponovimo, medtem ko je vrednost Value lahko samo eno polje. Poženemo poizvedbo

Pri vrednosti Value smo lahko opazili še ostale možnosti, med katerimi lahko izbiramo:

14

izraz opis uporabnost Group

Bypoišče različne vrednosti in jih prikaže samo enkrat

samo Row in Column Headnigs

Sum seštevanje vsi Avg povprečje vsi Count preštevanje vsi Max poišče največjo vrednost vsi Min poišče najmanjšo vrednost vsi StDev standardna deviacija

(odstopanje) zapisovvsi

Var Variacije zapisov vsi First prva vrednost v tabeli vsi Last zadnja vrednost v tabeli vsi Expre

ssionizraz, ki ga določimo z pomočjo Expression Builder

samo Row in Column Headnigs

Where izraz kjer je = pogoj samo Row in Column Headnigs

15

Beležka:

16

4. Naprednejša uporaba zaslonskih mask

4.1. Podforme

Uporaba podforme nam omogoča pogled na več tabel naenkrat v eni zaslonski maski. Predpogoj so seveda povezana ali identična polja v tabelah, ki jih želimo združevati. Podforma je v resnici zaslonska maska v zaslonski maski.Recimo da želimo prikazati v eni zaslonski maski tabeli KUPCI in NAROČILA. Seveda bomo želeli prikazati kupca in samo njegova naročila: Najprej naredimo glavno formo KUPCI in po možnosti tudi podformo NAROČILA V načrtovalnem pogledu izberemo

ukaz Subform/Subreport Z miško nato povlečemo območje,

kjer želimo imeti podformo Prikaže se okno Subform/Subreport Wizard, kjer nas čarovnik vpraša kaj bomo

postavili kot podformo; tabelo oziroma poizvedbo ali že obstoječo formo. Če izberemo možnost Table/Querry, bomo morali v naslednjem koraku izbirati polja, ki jih želimo pregledovati.

Po izbiri forme oziroma tabele ali poizvedbe, moramo v naslednjem koraku izbrati način povezave. Ponuja nam možnost Choose from a list (izbira med že pripravljenimi možnosti) in Define my own.

Izberemo Define my own. Pogled se spremeni na dva stolpca:Form/report fields (polja glavne forme)Subform/subreport fields (polja podformr)

17

V obeh izberemo polja, ki jih želimo povezati med seboj (Sifra kupca Sifra kupca) V naslednjem koraku vpišem ime za našo podformo in zaključimo postopek.

4.2. Organizacija prostora na formah z več podformami (strani)

Kadar vstavljamo v neko zaslonsko masko več različnih objektov in podform, nam pogosto prične primanjkovati prostora.rešitev bi lahko bila kreiranje nove forme, kar pa bile povzročilo več težav.Pomanjkanje prostora lahko rešimo z dodajanjem novih strani (Page Break). V načrtovalnem pogledu iz orodne vrstice izberemo ukaz Page Break in nato kliknemo

na dnu maske. Pojavi se manjša

črtica, ki označuje prelom strani. S tem smo zaslonsko masko razdelili na dva dela; prva in druga stran.med obema stranema s premikamo z tipkama Page Down in Page Up ali pa dodamo makro gumbe za premikanje.

4.3. Vstavljanje makro gumbov (Command Button Wizard)

Za lažje delo na zaslonskih maskah lahko uporabljamo makro gumbe, ki jih nato lahko uporabljamo kjerkoli v naši bazi podatkov. S pomočjo čarovnika lahko naredimo kar nekaj najpogostejših ukazov.Recimo da bi radi naredili gumb, ki nam bo omogočal skok iz trenutne maske v drugo: V načrtovalnem pogledu zaslonske maske izberemo ukaz Command Button

18

Z miško postavimo objekt na mrežo in pojavi se okno Command Button Wizard

Okno lahko vidimo razdeljeno na dva dela:Categories (kategorije ukazov)Actions (ukazi)

Izberemo kategorijo Form Operations in ukaz Open Form Nato izberemo formo, ki jo želimo odpirati

V naslednjem koraku nas Access vpraša, kako želimo odpirati formo; ali jo želimo odpirati z vsemi podatki, ali pa želimo odpreti masko z samo določenimi podatki, ki so povezani z zapisi iz prvotne forme (velja samo če sta tabeli povezani, ali če obe formi vsebujeta identična polja). Izberemo ponujeno možnost odpiranja vseh zapisov.

19

V naslednjem koraku izberemo sliko ali tekst za gumb

Nato še izberemo ime za objekt in dokončamo

S pomočjo gumbov lahko naredimo obrazec, ki ga uporabljamo samo za navigacijo po bazi podatkov. Ta se nam lahko odpre ob zagonu baze podatkov in nam poleg morebitnega pozdravnega sporočila ponudi možnosti, kaj želimo narediti.

20

Da se nam obrazec odpre ob zagonu baze podatkov nastavimo v meniju Orodja/Zagon (Tools/Startup). Odpre se nam okno v katerem lahko izberemo kateri obrazec želimo prikazati ob zagonu baze.

Z istim oknom lahko nadziramo tudi nekatere druge značilnosti kako bo baza prikazana ter določimo bazi določimo ikono.

4.4. Vstavljanje izrazov

Izraze uporabljamo v formi, kadar nimamo nobenega primernega podatkovnega polja, ki bi prikazal podatek, ki ga želimo imeti. Recimo da želimo videti znesek plače posameznega delavca: Na mrežo vstavimo novo polje z ukazom Text Box na orodni vrstici Nato vpišemo vanj formulo: =[TOCKE]*205, in potrdimo vnos.Pri vnašanju izrazov v nova polja si lahko pomagamo tudi orodjem Expression Builder.

4.4.1. Združevanje polj

Združevanje polj uporabljamo takrat, kadar želimo videti vrednosti dveh polj združeni v enem samem polju.Recimo da želimo videti polji IME in PRIIMEK v enem polju: Vstavimo novo polje Vanj zapišemo: =[IME] & '' '' & [PRIIMEK]Izraz nato združi podatke za vsak zapis posebej.

4.4.2. Uporaba DLookUp funkcije (pogojno avtomatično vnašanje)

Recimo, da želimo vnašati podatke v neko masko iz druge tabele. Pri tem seveda uporabimo šifrant (Combo Box), vendar nam ta objekt vnese samo eno vrednost. Kar bi radi dosegli, je da bi se vnesli še ostali podatki iz iste vrstice druge tabele.Pri tem moramo seveda uporabiti funkcijo DLookUp. Funkcijo moramo pripraviti tako, da se na podlagi nekega šifranta v ostala polja avtomatično vnesejo še ostali podatki, kar pomeni da bomo funkcijo vnesli v polje, kjer želimo da se podatek tudi prikaže.Funkcija je sestavljena takole:

21

DLookUp(expression ; domain ; criteria)

Se pravi če želimo da bomo na tak način vnesli ime artikla v formi postavke na podlagi šifre artikla iz tabele BLAGO moramo izraz napisati takole:DLookup ("[BLAGO]![NAZIV ARTIKLA]"; "[BLAGO]";"[BLAGO]![SIFRA ARTIKLA]= [sifra artikla]")

4.5. Oblikovanje grafov

Prikaz podatkov v obliki grafov nam velikokrat omogoča preglednejši pogled na podatke. Grafi so predvsem primerni za prikaz raznih trendov ter primerjav med podatki.Access vsebuje tudi orodje za oblikovanje grafov, ki omogoča prikaz veliko tipov grafov, le te pa lahko vključujemo tako v forme, kot tudi v poročila.Tabele običajno vsebujejo veliko število zapisov, ki jih je težko predstaviti z grafi. Zato velikokrat oblikujemo grafe za Answer tabelo, ki že vsebuje sumarne podatke, ki jih želimo predstaviti grafično. Grafe lahko izdelamo samostojno, ali pa jih dodamo v obstoječe forme ali poročila kot poseben objekt.

4.6. Izdelava grafa

V oknu Database izberemo kartonček Forms in ukaz New Pojavi se okno New Database, kjer izberemo možnost Chart Wizard in ustrezno tabelo

oziroma poizvedbo Izberemo polja, katerih vrednosti bodo prikazana v grafu.

Določimo tip grafa.

Podatek, ki naj se vnese

Tabela, kjer najdemo podatek

Pogoj, pod katerim se podatek vnese

22

Izberemo kaj bo rezultat (vsota, povprečje oziroma štetje posameznih elementov).

Določimo še naslov za graf in zaključimo z delom.

Na zaslon se nam izriše graf kot forma. Graf lahko tu še naprej oblikujemo. Na grafu dvakrat kliknemo in računalnik nas prestavi v način, kjer lahko graf dodatno

23

oblikujemo. Pravila so enaka kot pri oblikovanju drugih objektov v formah. Naknadno lahko spreminjamo tudi vrsto grafa, x in y os ter vrsto operacij.

4.7. Pogled vrtilne tabele in vrtilnega grafikona

Vrtilna tabela in vrtilni grafikon sta orodji, ki nam omogočata hiter pregled podatkov na bolj strukruriran, grafičen način. Za ispis – tisk nista tako primerni, saj smo pri oblikovanju omejeni. Oba načina pogleda sta na voljo pri tabelah, poizvedbah in pri obrazcih. Pri tabelah in poizvedbah moramo, ko jih imamo že odprte vsakič znova izbrati pogled vrtilne tabele ali vrtilnega grafikona, medtem ko se obrazci ki smo jih naredili kot vrtilne tabele ali grafikone sami odprejo v takem pogledu.

Vse možnosti, ki so na voljo so dostopne s posebne orodne vrstice, ki se prikaže ob izdelavi vrtilne tabele ali podobne, ki se prikaže ob izdelavi vrtilnega grafikona.

Vrtilna tabelaKo imamo odprto tabelo, poizvedbo ali obrazec v meniju Pogled izberemo pogled vrtilne tabele. To lahko storimo tudi na orodni vrstici, kot kaže slika.

Prikaže se nam prazna vrtilna tabela in okno s polji, ki jih lahko z miško prestavimo v vrtilno tabelo.

24

Polja, ki jih želimo za glave stolpcev spustimo na mesto za polja stolpcev, isto velja za polja vrstic. Polja ki so višje ali bolj levo definirajo pogkavitne skupine za razvrščanje in združevanje. Hierarhijo teh plj lahko spreminjamo tako, da jih prenašamo z miško. V zgornjem levem kotu imamo območje za polja filtrov.V sredino spustimo polja s podatki. Ta morajo biti podobno kot pri Excelu numerična, drugače jih Access lahko smo šteje.

Pri imenih polj imamo znak za spustni seznam na katerem lahko določimo katera polja želimo prikazati. Tako lahko izločimo postavke, ki nas ne zanimajo.

25

Narejeno vrtilno tabelo lahko izvozimo direktno v Excel.

Vrtilni grafikonNaredimo ga na podoben način kot vrtilno tabelo. Na meniju in na orodni vrstici se nahaja takoj za pogledom vrtilne tabele. Omogoča nam hiter pregled nad podatki: v zelo kratkem času lahko naredimo veliko število grafov.

Poseben ukaz nam omogoča, da zamenjamo osi odvisnosti: .

Legendo prikažemo z ukazom: .

26

Beležka:

5. Makri- avtomatizacija procesovMakro je zaporedje akcij, ki jih Access samodejno izvede. Akcije so npr. odpri določeno zaslonsko obliko, natisni poročilo ipd. Objekt v zaslonski maski lahko nato ob določenem

27

dogodku požene izdelan makro; z njimi avtomatiziramo delovanje aplikacije. Makro lahko kliče tudi druge makre in basicove funkcije iz modulov. Makri in basicove funkcije v modulih so gonilo aplikacije. Ko izdelujemo makro, nam računalnik odpre zanj načrtovalno okno, v katerem nizamo v stolpcih akcije in pogoje za njihovo izvedbo.

Za začetek si pripravimo preprost makro, ki bo zaprl zaslonsko masko NAROČILA. Makro bomo poklicali z gumbom, ki ga bomo vstavili v zaslonsko masko.

V oknu podatkovne baze izberimo (za zdaj še prazen) seznam gradnikov Macro in kliknimo gumb New. V oknu za načrtovanje izberemo v prvi rubriki stolpca Action akcijo Close. V spodnjem delu okna se odpreta dodatni rubriki k izbrani akciji: Object Type in Object Name. V prvi izberemo tip objekta Form in v seznamu druge (za sedaj edino možno) ime zaslonske maske NAROČILA. Načrtovalno okno zaprimo in dajmo makru ime Zapri NAROČILA. Makro računalnik shrani in njegovo ime uvrsti v seznam Makro gradnikov. Ker želimo izdelati zavarovano aplikacijo, pri kateri uporabniku ne bo mogoče po pomoti preoblikovati strukture tabele, odstraniti zapisov ali kaj podobnega, nas čaka še veliko dela.

Odprimo zaslonsko masko NAROČILA za načrtovanje. S paleto orodij bi lahko vstavili v želeno sekcijo oblike ukazni gumb in mu nastavili lastnost, naj ob pritisku pokliče naš izdelan makro. A isto stvar lahko naredimo enostavneje: kliknimo ime makra v seznamu okna podatkovne baze in miško povlecimo v sekcijo Footer zaslonske oblike, in želeni gumb je že vstavljen. Po želji ga še oblikujemo in mu spremenimo napis. Preklopimo v Form View, gumb preizkusimo ter spremembe shranimo.

Na gumb lahko vstavimo tudi bitmap sličice, npr. slike ikon. V načrtovalnem pogledu vpišemo v gumbovem oknu v rubriki lastnosti Picture ime datoteke s shranjeno sličico.

Na enak način si pripravimo še makro Datasheet View in gumb, ki bo preklopil zaslonsko masko v preglednični pogled. V rubriki makra nastavimo akcijo DoMenuItem, ki pomeni ukaz v meniju, in njene dodatke Menu Bar Form, Menu Name View in Command Datasheet.

V vsako načrtovalno okno makro gradnika lahko vpišemo tudi več makrov; taki skupini pravimo macro group. Namesto posameznih makrov si bomo raje pripravili za vsak objekt

28

(zaslonsko masko, poročilo,...) skupino vseh njegovih makrov v enem makro gradniku. Tako bo načrtovanje in vzdrževanje aplikacije znatno lažje.

Odstranimo torej oba narejena makra, tako da drugega za drugim označimo in pritisnemo tipko Delete. Namesto njiju ustvarimo nov makro PREGLED. S prvim gumbom na lestvici orodij prikažemo v makrovem oknu pred stolpcem Action še Macro Name. Vanj vpišemo ime prvega makra ZAPRI, v stolpcu Action pa kot prej akcijo Close. Zaradi preglednosti izpustimo še prazno vrstico in na enak način vpišemo še drugi makro z imenom DATASHEET. Pri klicu bomo morali dodati vpisanima imenoma makrov spredaj še ime gradnika in piko, torej pregled.ZAPRI in pregled.DATASHEET. Skupinski makro shranimo, odprimo za načrtovanje zopet zaslonsko masko NAROČILA in popravimo imeni makrov pri lastnostih On Push obeh gumbov.

Za aplikacijo bomo potrebovali še zaslonsko masko za vnašanje in popravljanje podatkov. Najhitreje jo bomo naredili, če bomo prekopirali masko PREGLED NAROČIL in jo priredili zahtevanim nalogam. Skočimo v okno Database, kliknemo po imenu pravkar izdelane zaslonske oblike v seznamu Form, naredimo kopijo in vpišemo novo ime UREJANJE PODATKOV O NAROČILIH. Pritisnemo še gumb Design in smo v načrtovalnem pogledu.

Da bomo lahko tokrat v zaslonski maski urejali in vnašali nove podatke, ji moramo nastaviti lastnost Default Editing na vrednost Allow Edits. Nič ne bo narobe, če zamenjamo še naslov (Caption) v UREJANJE PODATKOV O NAROČILIH, vendar bomo morali kljub temu označiti še objekt z napisom (Label) v zgornji glavi in ga enako popraviti. Ker bi radi zapise tudi odstranjevali, postavimo Record Selectors na Yes, da bo polje za označevanje vidno.

Ukazna gumba bi poganjala napačna makra. Popravimo v njunih rubrikah On Push imeni v urejanje.ZAPRI in urejanje.DATASHEET. Ko zapremo in shranim zaslonsko masko, nam manjkajo še makri zanjo: prekopiramo makro gradnik pregled, kopiji damo ime urejanje in pri obeh makrih v njej spremenimo ime zaslonske maske v UREJANJE PODATKOV O NAROČILIH.

Novo zaslonsko masko preizkusimo. Zapise lahko listamo naprej in nazaj, za zadnjim zapisom se pojavi nov, prazen zapis, ki ga lahko napolnimo s podatki in dodamo v tabelo.

Naučimo se, kakšna pravila veljajo pri vpisovanju in popravljanju podatkov. V začetku je značka za pisanje v prvem polju zapisa. Pravimo, da smo vstopili v objekt. Vpišemo ali popravimo podatek. Ob pritisku na tipko Enter ali tabulatorsko tipko, zapustimo objekt in vstopimo v drugega (velja za vse objekte v sekciji Detail). Vrstni red vstopanja je točno določen in ga lahko v načrtovalnem pogledu spremenimo z Edit/Tab Order. Vse vpisane spremembe opustimo s tipko Escape, dokler ne izstopimo iz zadnjega objekta in Access vsebine zapisa ne shrani v bazo podatkov (izvrši akcijo "Commit"). Vpisane podatke računalnik kontrolira in nas o morebitni napaki obvesti takoj, ko hočemo objekt zapustiti.

Ob vstopu (On Enter), izstopu (On Exit), pred shrambo zapisa v bazo (Before Update) ali po njej (After Update) lahko vsak objekt izvede poljuben makro ali pokliče funkcijo v basicu (dogodkovni sprožilec - event trigger). S takšnim makrom lahko izpišemo uporabniku navodilo, preverimo vsebino (Validation), glede na vpisano vsebino izvedemo neko akcijo (npr. v zdravniških podatki preskočimo polje NOSEČA, če je v polju SPOL moški) ipd.

29

5.1. Vrste makrojevNaslednja tabela vsebuje vse dosegljive makre v MS Accessu razporejene po funkcionalnih

skupinah:KATEGORIJA OPIS IME MAKRA

Podatki v formah in poročilih

Omejevanje podatkov

ApplyFilter

Premikanje po zapisih

FindNext, FindRecord, GoToControl, GoToPage, GoToRecord

Izvršilni makri Izvrši ukaz iz menija

DoMenuItem

Zažene makro, postopek ali poizvedbo

OpenQuery, RunCode, RunMacro, RunSQL

Zažene drugo aplikacijo

RunApp

Prekine izvršitev ukaza

CancelEvent, Quit, StopMacro, StopAllMacros

Uvažanje/izvažanje podatkov

Prenaša podatke med MS Accessom in drugimi podatkovnimi formati

TransferDatabase, TransferSpreadsheet, TransferText

Pošlje gradnike MS Accessa v druge aplikacije

OutputTo, SendObject

30

Upravljanje z objekti (gradniki)

Določi vrednost polja, kontrole ali lastnosti

SetValue

Osveži podatke ali zaslon

RepaintObject, Requery, ShowAllRecords

Izbere gradnik SelectobjectKopira ali preimenuje objekt (gradnik)

CopyObject, Rename, DeleteObject

Odpre ali zapre gradnik

Close, OpenForm, OpenModule, OpenQuery, OpenReport, OpenTable

Izpiše izbrani gradnik

OpenForm, OpenQuery, OpenReport, Print

Premakne ali spremeni velikost okna

Maximize, Minimize, MoveSize, Restore

Ostalo Prikaže informacijo (opozorilo) na zaslonu

Echo, Hourglass, MsgBox, SetWarnings

Prikaže ali skrije orodno vrstico

ShowToolbar

Pošlje natipkano v MS Access ali v drugo aplikacijo

SendKeys

Povzroči pisk BeepPrikaže pripravljen meni z ukazi v formi ali v poročilu

AddMenu

31

Beležka:

32

6. Zaščita bazeV tabelah hranimo tudi podatke, ki so tajni in jih ne sme videti vsak, še manj pa spreminjati. Na večjih računalnikih je dostop do podatkov rešen z operacijskim sistemom, prav tako so zaščite možne tudi v mreži. Na samostojnem računalniku pa operacijski sistem ne zagotavlja potrebne zaščite podatkov. Zato moramo tajne podatke zaščititi z Accessom. Access zaščiti podatke tako, da jih zakodira, tako da jih ni mogoče videti ne popravljati, če nimamo ustreznega gesla. Zaščita podatkov je včasih potrebna tudi kadar določeno tabelo uporablja več uporabnikov (predvsem v mrežah). Zato je pomembno, da vsakemu posamezniku točno določimo njegove pravice pri delu z tabelo in sicer z uporabo gesel. Access omogoča temeljito zaščito ne le tabel, ampak tudi form, poizvedb, poročil, itd... Enemu uporabniku dovolimo le gledanje podatkov, drugemu poleg tega spreminjanje podatkov, tretjemu dodajanje in brisanje zapisov, itd...

6.1. Kreiranje uporabnikov in uporabniških skupin

Izberemo ukaz v meniju Tools\Security\User and Group Accounts V oknu ki se nato pojavi izberemo kartonček Groups

Izberemo ukaz New in vnesemo ime (Name) in identifikacijo (Personal ID) nove skupine

Nato se prestavimo nazaj na kartonček Users in izberemo ukaz New ter vnesemo imena uporabnikov

33

Vsakega uporabnika določimo z ukazom Add v skupino, za katero bomo kasneje določali pravice

6.2. Določanje pravic in zaščit

Izberemo ukaz Tools\Security\User and Group Permissions V oknu, ki se pojavi izberemo opcijo Groups in nato v okvirčku Object Name označimo

vse objekte. V rubriki Permissions nato določamo pravice za skupino in s tem hkrati tudi za

uporabnika Z rubriko Object Type določamo pravice tudi za ostale objekte v bazi podatkov

Beležka:

34

7. Poimenovanja objektov znotraj zbirke podatkov

35

Pri poimenovanju objektov znotraj baze je Access do uporabnika zelo prijazen, saj nam dopušča presledke, znake kot so Č, Š, Ž in razmeroma dolga imena polj. Takih znakov in dolgih imen polj se skušajmo med izdelavo baze podatkov izogibati. Razlogi za to so:

- vse aplikacije za upravljanje baz podatkov tega ne podpirajo- na ta način si olajšamo pisanje SQL izjav- naredimo bazo podatkov bolj pregledno (vsi objekti v bazi so poimenovani na isti

način)- ob pisanju VBA kode ali modulov ne prihaja do konfliktov

Dobra praksaTo nikakor niso pravila, ki se jih morate držati, je pa priporočlivo, da se ob načrtovanju baze podatkov odločite za en standard.

PrimrerZnake kot so Č, Š, Ž, č, š, ž pišemo brez strehic kot C, S, Z, c, s, z.

Namesto presledkov pišemo prve črke besed z veliko, presledke pa izpuščamo. ToIzgledaPribliznoTakole. Alternativa takemu načinu pisanja je, da presledke nadomeščamo z podčrtajem _.

Izogibamo se imenom, kot so: Name, Tables, Reports, Fields... Te besede imajo v VBA (Visual Basic for Applications) že določen pomen.

Izogibamo se rezerviranih besed za uporabo v SQL izjavah (SELECT, WHERE, FROM, AND, TRUE, FALSE, NULL...). Predvsem njihovi samostojni uporabi. Celoten spisek je najdete v pomoči za Access.

Priporočljiva je uporaba »konvencij za poimenovanje«. Zelo razširjena je Reddick VBA (RVBA) Naming Convention (http://www.xoc.net/standards/rvbanc.asp).

Uporablja predpone in končnice, ki so povedne v tem smislu, da nam govorijo o tipu objekta. Osnovne za uporabo v Accessu so:

Predpona/Tag Tip objekta/Object Type

tbl Table

qry Query

frm Form

rpt Report

mcr Macro

bas Module

dap DataAccessPage

36

Če želite lahko uporabljate bolj določene predpone in končnice za določitev tipa in namena objekta. Pri oporabi končnic uporabljajte predpone iz prejšnje tabele. Ne uporabljajte predpon in končnic iz spodnje tabele hkrati.

Predpona/Tag Končnica/Suffix Tip objekta/Object Type

tlkp Lookup Table (lookup)

qsel (none) Query (select)

qapp Append Query (append)

qxtb XTab Query (crosstab)

qddl DDL Query (DDL)

qdel Delete Query (delete)

qflt Filter Query (filter)

qlkp Lookup Query (lookup)

qmak MakeTable Query (make table)

qspt PassThru Query (SQL pass-through)

qtot Totals Query (totals)

quni Union Query (union)

qupd Update Query (update)

fdlg Dlg Form (dialog)

fmnu Mnu Form (menu)

fmsg Msg Form (message)

fsfr SubForm Form (subform)

rsrp SubReport Form (subreport)

mmnu Mnu Macro (menu)

Primeri:tblValidNamesLookuptlkpValidNamesfmsgErrormmnuFileMnu

37

Beležka:

38

8. PRILOGE

8.1. Operatorji in izrazi

= Enako<> Ni enako< Manjše kot<= Manjše ali enako kot> Večje kot>= Večje ali enako kot

& ZdružitevLike Podobno kotNOT Like Ni podobno..

And InOr AliEqv EnakoNot Ne

Between...And RazponIn Seznam primerovIs Rezervirana beseda

8.2. SQL

Osnovni ukazi: SELECT FROM WHERE

Na koncu vsakega SQL stavka mora biti »;«

Začnemo vedno z ukazom SELECT s katerim določimo katere stolpce iz tabel bomo uporabili (če je ime stolpca sestavljeno iz dveh ali več besed si pomagamo z oglatimi oklepaji).

Primer:

SELECT [Delovna Skupina], priimek

Sledi ukaz FROM s katerim določimo v katerih tabelah se nahajo stolpci določeni v prejšnem koraku. (če je ime tabele sestavljeno iz dveh ali več besed si pomagamo z oglatimi oklepaji) Primer:

39

FROM [Sortiranje in delne vsote]

Z ukazom WHERE določimo kriterije (veljajo isti operaterji in izrazi kot pri kriterijih v grafičnem načinu) in morebitne povezave med tabelami. Pri povezavah si pomagamo z izrazom AND.

Primer:

Where [Delovna Skupina] like "Racunovodstvo";

Končan primer:

SELECT [Delovna Skupina], priimekFROM [Sortiranje in delne vsote]Where [Delovna Skupina] like "Racunovodstvo";

Še nekaj uporabnih ukazov: ORDER BY:

DESC ASC

GROUP BY SUM AS

8.3. Osnovni znaki vnosne maske

0 številka obvezen vnos

9 številka neobvezen vnos

# številka, +, -, presledek neobvezen vnos

L črka obvezen vnos

? črka neobvezen vnos

A številka ali črka obvezen vnos

a številka ali črka neobvezen vnos

& katerikoli znak obvezen vnos

C katerikoli znak neobvezen vnos

. , ; : - / ločila

> znaki, ki sledijo so velike črke

40

< znaki, ki sledijo so male črke

! polje se polni z desne proti levi

/ znak, ki sledi, se izpiše