skriptaaccess i - suk.gov.rs · pdf filetitle: skriptaaccess i.doc author: vlada created date:...

47
Baze podataka početni nivo Zoran Dubovac

Upload: hoangdien

Post on 31-Jan-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Baze podataka početni nivo

Zoran Dubovac

Page 2: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

1

SADRŽAJ

1. BAZE PODATAKA – OSNOVNI POJMOVI................................................... 2

1.1 ARHITEKTURA SISTEMA ZA UPRAVLJANJE BAZOM PODATAKA .......................................................................2 1.1.1 Interni fizički nivo .......................................................................................................................2 1.1.2 Konceptualni nivo.......................................................................................................................3 1.1.3 Eksterni (korisnički) nivo .............................................................................................................3

1.2 BEZBEDNOST PODATAKA..........................................................................................................................4 1.3 RELACIONE BAZE PODATAKA .....................................................................................................................5

1.3.1 Teoretske osnove relacione baze podataka.................................................................................5

2. MS ACCESS............................................................................................... 8

2.1 KREIRANJE BAZE U ACCESS-U ....................................................................................................................9 2.2 IZGLED I SADRŽAJ KORISNIČKOG INTERFEJSA ACCESS-A ...................................................................................10 2.3 OSNOVNI OBJEKTI I NJIHOVA ORGANIZACIJA ...............................................................................................12 2.4 SISTEM MENIJA ..................................................................................................................................13

3. RAD SA TABELAMA................................................................................. 15

3.1 PROJEKTOVANJE TABELA........................................................................................................................15 3.2 RAD SA TABLEMA.................................................................................................................................17 3.3 PRIMARNI KLJUČ..................................................................................................................................19

4. VEZE MEĐU TABELAMA.......................................................................... 19

PRIMER JEDNOSTAVNOG MOV – EVIDENCIJA ZARADA RADNIKA............................................................................20 4.1 FORMIRANJE VEZA U ACCESSU ................................................................................................................20 4.2 KREIRANJE VEZA POMOĆU LOOKUP ČAROBNJAKA ........................................................................................22

5. RAD SA UPITIMA .................................................................................... 25

5.1 QBE (QUERY BY EXAMPLE) PROZOR ........................................................................................................25

6. RAD SA OBRASCIMA............................................................................... 28

6.1 KREIRANJE I KORIŠĆENJE OBRAZACA ..........................................................................................................28 6.2 KREIRANJE OBRASCA POMOĆU ČAROBNJAKA (WIZARD).................................................................................29 6.3 IZMENE OBRASCA KROZ DESIGN VIEW .......................................................................................................32

7. IZVEŠTAJI ................................................................................................ 37

7.1 KREIRANJE IZVEŠTAJA............................................................................................................................37 7.1.1 Upotreba čarobnjaka ...............................................................................................................38

8. KREIRANJE APLIKACIJE ........................................................................... 43

Page 3: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

2

1. BAZE PODATAKA – OSNOVNI POJMOVI Baza podataka je kolekcija podataka organizovanih za brzi pristup i pretraživanje i zajedno sa sistemom za skladištenje, organizovanje i administraciju čini sistem za upravljanje bazom podataka SUBP (u literaturi se često koristi skraćenica DBMS – DataBase Management System). Obično se radi o kolekciji podataka koji se odnose na jednu temu, oblast ili namenu. Na primer, u bazi se mogu skladištiti podaci o ličnostima, o knjigama, finansijskom poslovanju, inventaru, objektima, pacijentima, meteorološkim pokazateljima, astronomskim pojavama i t.d., praktično se može naći primena u svim oblastima ljudskog delovanja. Osim ovih “vidljivih” i opštepoznatih primera, veliki broj softvera koji danas postoje (operativni sistemi, igrice, antivirusni programi, simulatori, midija plejeri i t.d.), u svojoj pozadini koriste neku “skrivenu” bazu podataka. DBMS (Database Management System) je specijalizirani softver koji služi za kreiranje i manipulaciju bazama podataka. Bitne osobine:

- Obezbjeđue skladištenje velike količine podataka sa malom redudansom. - Obezbjeđuje metodologiju za pristup, pretraživanje i modifikaciju podataka. - Omogućava logičku i fizičku nezavisnost programa od podataka. - Omogućava istovremeni pristup podacima od strane više korisnika.

Informacioni sistem (IS) – Uređeni skup metoda, procesa i operacija za prikupljanje, čuvanje, obradu, pretraživanje, prenošenje i distribuciju podataka u okviru jedne organizacije, uključujući pri tome i opremu (hardver) i ljudske resurse. Primer: Bankarski IS, informacioni sistem preduzeća, IS zdravstva, IS proizvodnje i t.d.

1.1 Arhitektura sistema za upravljanje bazom podataka

Arhitektura sistema za upravljanje bazom podataka se sastoji iz tri sloja:

1.1.1 Interni fizički nivo Definiše način fizičke organizacije podataka na spoljnim medijima za skladištenje podataka (diskovima, magnetnim trakama i t.d.). Kod baza podataka manjeg obima, najčešće su podaci centralizovani na jednom disku na računaru koji obično zovemo server (server u širem smislu, ne mora da predstavlja jedan računar, može biti i skup programa, više povezanih računara, koji pružaju neku vrstu usluga drugim programima i korisnicima). Nasuprot tome, baze podataka većeg obima su često distribuirane, podaci se mogu nalaziti ne samo na više diskova, nego i na fizički udaljenim računarima povezanih, na primer, internetom ili intranetom.

Page 4: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

3

1.1.2 Konceptualni nivo Definiše opštu logičku strukturu baze podataka kroz model podataka. Model podataka je jedna od ključnih stvari za funkcionisanje baze podataka, podloga za sve kasnije operacije nad podacima – skladištenje, brzo pronalaženje, organizovanje, obradu i t.d. Ako model podataka nije dobro uređen, to će se kasnije, u fazi korišćenja podataka pokazati problemi sa sistemom izveštavanja (nemogućnost dobijanja izveštaja na način kako bismo mi to želeli), nemogućnost dobijanja informacije u realnom vremenu, mogu se javiti problemi u višekorisničkom okruženju, problemi u održavanju, sigurnosti podataka i t.d. Mogli bi slobodno da kažemo da je model podataka za bazu podataka on što je plan i temelj pri gradnji kuće: Svaka greška u ovom delu uticaće kasnije na stabilnost i funkcionalnost objekta. Model podataka predstavlja elemente podataka korišćene u realnom sistemu i njihove veze. Postoje razni alati koji služe za modeliranje, kao što su ERWIN, BPWIN, ORACLE DESIGNER i t.d., kao i razni pristupi modeliranju. Kod nas je najviše prihvaćen pristup SSA – sistemska strukturna analiza kroz koji se polazi od programskog zadatka, identifikuju se tokovi informacija i procesi koji se dalje postepeno dekomponuju do najprostijih operacija. Zatim se pristupa izradi MOV (Model Objekti-Veze) za sve nivoe dekompozicije i pravi se rečnik podataka. Kao rezultat SSA dobijamo model podataka – pojednostavljeno rečeno, dobijamo spisak tabela, polja koja one sadrže, ključna obeležja, veze između tabela, dakle sve što nam je potrebno da bismo osmislili strukturu buduće baze podataka (dobijamo “plan za izgradnju kuće”). Za jednostavne projekte manjeg obima ka kojima je usmeren ovaj kurs, nije neophodno poznavanje metodologije SSA, pa ćemo se koncentristi samo na neke osnovne postulate modeliranja. Tu pre svega mislim na osnovna pravila za normalizaciju i formiranje veza između tabela. Poznavanje primene ovih pravila je dovoljno da biste, uz malo vežbe i analiziranja primera koji slede u trećem poglavlju o vezama između tabela, mogli sami da formirate jednostavne modele podataka.

1.1.3 Eksterni (korisnički) nivo Na ovom nivou se definiše logička struktura pogodna za specifične zahteve odnosno programe korisnika. Jedini nosioci podataka u bazi su tabele. Svi podaci koje korisnik unese u bazu, bilo da je tekst, slika, datum, smeštaju se u tabele. Međutim, po pravilu, korisnik nema direktan pristup tabeli, već podatke unosi preko korisničkog interfejsa u obliku formulara (obrazaca), u Access-u ove obrasce zovemo formama (Forms). Takođe, kasnije korišćenje unetih podataka, pretraživanje i izveštavanje ide posredstvom korisničkog interfejsa u vidu formi i/ili izveštaja (Reports). Pod korisničkim interfejsom, uprošćeno, podrazumevamo ono što korisnik vidi na ekranu kada radi sa aplikacijom: sistem menija, forme, izveštaji i t.d. Pod aplikacijom podrazumevamo skup programa (forme, izveštaji, upiti u bazu, razne vrste obrade podataka i t.d.), povezanih obično preko sistema menija u jedinstvenu celinu. Aplikacija enkapsulira (sakriva kao u kapsuli) u sebi kompletan programski kod – krajnjem korisniku nije potrebno da razume programsku logiku, ne mora da poznaje ni programiranje ni projektovanje, bitno je da može iz menija da izabere željenu opciju, da su nazivi polja na obrascima jasni, da postoji dodatna pomoć (help) i uputstvo za korišćenje, eventualno obuka za rad na složenijim aplikacijama i t.d.

Page 5: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

4

Generalno, postoje tri grupe korisnika i osoblja koje učestvuje u izradi projekta: - Izvršioci: projektanti baze podataka, administrator baze podataka, sistem analitičari,

aplikativni programeri, nekoliko lica angažovanih od strane naručioca ili krajnjeg korisnika.

- Podrška: projektanti i programeri DBMS-a, osoblje zaduženo za kontakt sa krajnjim korisnicima. Može biti softverska i hardverska podrška, često je teško kada se pojavi problem dijagnosticirati da li je problem softverske ili hardverske prirode.

- Krajnji korisnici: Stalni ili povremeni korisnici sa različitim nivoima dozvola za pristup podacima.

1.2 Bezbednost podataka

Izuzetno važno je kako zaštiti podatke skladištene u bazi od neautrizovanog pristupa kao i od gubitka usled raznih, kako zlonamernih, tako i slučajnih grešaka ili posledica nastalih usled nepredviđenih okolnosti na koje ne možemo da utičemo. 1. Opremu i medije na kojima su skladišteni podaci treba obezbediti fizički – fizičkim

obezbeđenjem od strane lica zaposlenih u službi obezbeđenja, zaključavanjem prostorija i t.d, u zavisnosti od stepena važnosti podataka.

2. Aplikacija treba da sadrži opciju za BACKUP – pravljenje rezervne kopije podataka i programa. Neophodno je omogućiti pravljenje kopija na isti medij na kome se nalazi i original (hard disk), ali i na spoljašnje medije, i to na više različitih nosača podataka (cd, dvd, usb flash memorija i t.d). Ovo je jako važno, za slučaj fizičkog oštećenja nosioca podataka – npr. kvar hard diska. Takođe, važno je čuvati više različitih kopija podataka. Dešava se da je rezervna kopija neupotrebljiva (npr. podaci narezani na cd-u koji je u međuvremenu postao nečitak), tada se pristupa vraćanju podataka sa pretposlednje kopije i t.d., sve je bolje od potpunog gubitka podataka. Najčešće, vrednost podataka višestruko prevazilazi vrednost opreme na kojoj se nalazi, a ponekad se njihova vrednost ne može ni proceniti.

3. Treba definisati uloge – prava koja određene grupe korisnika imaju. Na primer, administrator ima sva prava – unos, čitanje, izmena, brisanje podatataka, objekata baze, izvršavanje procedura i t.d, standardni korisnik može da pregleda podatke određenog domena, može da menja, briše podatke koje je on uneo, ali ne i podatke koje su uneli drugi korisnici, ne sme da briše i menja objekte baze (strukture tabela, upite i t.d), gost – slučajni korisnik – može samo da pregleda podatke određenog domena, sve ostale operacije nad podacima su mu zabranjene. Funkcionisanje ovog koncepta zaštite podrazumeva da se svaki korisnik mora autorizovati pre pristupa bazi. Autorizacija podrazumeva unos korisničkog imena i lozinke, nadalje DBMS sam prepoznaje kojoj grupi korisnik pripada i dodeljuje mu odgovarajuća prava. Uloge definiše administrator sitema. Administrator sprovodi sve promene u bezbednosnom sistemu baze - dodavanje novog korisnika, ukidanje prava nekom od postojećih korisnika, uvođenje novih grupa korisnika i t.d.

Page 6: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

5

1.3 Relacione baze podataka

Postoje različite vrste baza podataka, zavisno od toga na koji su način podaci interno organizovani. Tako razlikujemo hijerarhijske, mrežne, relacione, objektno-orjentisane, objektno-relacione, multimedijalne baze podataka i t.d. Na ovom kursu govorićemo samo o relacionim bazama. Relacione baze podataka su najviše u upotrebi a jedna od najrasprostranjenijih je MS Access. Podaci u relacionim bazama podataka su predstavljeni tabelama. Jednoj bazi podataka može pristupati više različitih programa pisanih u različitim programskim jezicima.

1.3.1 Teoretske osnove relacione baze podataka

Operacije nad tabelama su matematički definisane relacionom algebrom (presek, unija, razlika...). Da bi razumeli koncept relacionih baza podataka neophodno je barem osnovno poznavanje teorijske osnove na kojima se bazira relacioni sistem baza podataka.

1.3.1.1 Entitet

• Svaki entitet poseduje skup atributa koji je opisuju. U bazi koju ćemo uraditi kao primer, entitet nazvan Radnik opisuje radnike preduzeca. • Jedan red u tabli odgovara skupu atributa jednog konkretnog entiteta. Konkretan entitet Radnik u primeru bi mogao biti radnik preduzeća kojeg odredjuju sledeći atributi: 0203961700070, Miodrag, Milojkovic, Jurija Gagarina 123, 11070, Novi Beograd. • Pojedini atributi jednoznačno označavaju svaki konkretni entitet. Te atribute ili skupove atributa nazivamo primarnim ključem. Za entitet koji opisuje radnike preduzeća RadnikID je primarni ključ jer nam omogućuje da identifikujemo svakog radnika (ne postoje dva radnika koji imaju identičan RadnikID). • Atribut koji sačinjava primarni ključ mora imati vrednost (ne moze biti NULL). • Poredak atributa unutar entiteta je nebitan. • Poredak linija (redova) entiteta je nebitan. • Entiteti su medjusobno povezani. • Strani ključ entiteta je atribut čija vrednost mora postojati kao vrednost u primarnom ključu drugog entiteta.

1.3.1.2 Tabela: skup redova i kolona Entitet je otelotvoren kao tabela u bazi podataka. Atributi entiteta su otelotvoreni kao kolone jedne tabele. Jedinstveni skup atributa odredjenog entiteta, odnosno skup vrednosti kolona jedne tabele naziva se red (zapis, slog). Definicija: Kolona u tabeli baze podataka predstavlja atribut entiteta. Red (zapis, slog) je jedinstveni skup atributa entiteta, odnosno skup vrednosti kolona u tabeli baze podataka.

Page 7: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

6

1.3.1.3 Nebitnost poretka redova

Ključni princip teorije relacione baze podataka jeste da tabela ne poseduje implicitni poredak. Da bismo dobili redove iz baze podataka u željenom poretku neophodno je da taj poredak naznačimo prilikom konstruisanja zahteva (upita).

1.3.1.4 Nebitnost poretka kolona

Kao u slučaju redova tako ni kolone jedne tabele nemaju neki predodredjeni redosled. Kažemo da relaciona baza podataka pruža logičku nezavisnost podataka.

1.3.1.5 Integritet podataka

Prema teoriji relacionog sistema, svaki entitet sadrži skup atributa koji jednoznačno identifikuju svaki od njegovih redova. Ona takodje precizira kako nijedan red ne treba da bude dupliciran unutar tabele odakle proizilazi da svaka tabela treba da poseduje primarni ključ. Ovaj princip je nazvan integritet podataka. Primera radi, matični broj gradjanina je jedinstven za svakog zaposlenog.

1.3.1.6 Primarni ključ

Svaki entitet sadrži skup atributa koji omogućava da ga jednoznačno identifikujemo. Taj skup atributa nazivamo primarni ključ. Primarni ključ može da sačinjava jedan atribut – RadnikID u slučaju entiteta Radnik, ili više atributa - u slučaju entiteta Plate svaka stavka je identifikovana atributima RadnikID, Mesec, Deo. Izbor pojedinih primarnih ključeva nije uvek očigledan i zahteva poznavanje osnovnih pravila za povezivanje tabela. Definicija: Primarni ključ je skup atributa koji jednoznačno identifikuje red.

1.3.1.7 Obavezno postojanje vrednosti atributa unutar primarnog ključa Ključni princip teorije relacionih baza zahteva da nijedan atribut koji ulazi u sastav primarnog ključa ne može imati nultu vrednost (NULL). Primarni ključ mora da jednoznačno identifikuje svaki red entiteta. Ako primarni ključ ili njegov deo ne sadrži nikakvu vrednost on ništa ne moze da identifikuje. Jedan radnik, čiji primarni ključ ne poseduje vrednost, ne može ni na koji način biti identifikovan.

1.3.1.8 Referencijalni integritet Tabele su međusobno povezane posredstvom spoljnih ključeva. Jedan spoljni ključ se sastoji od jedne ili više kolona čije su vrednosti u potpunosti sadržane u primarnom ključu neke druge table.

Page 8: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

7

R A D N I C I

RadnikId Ime Prezime MestoId ... 13435 Petar Petrović 11000 ... 12112 Mile Mitić 21000 ... 14557 Vesna Pavlović 11000 ... 15678 Zoran Dubovac 11070 ...

Gornji primer prikazuje tabele Radnici i Mesta, povezane stranim ključem MestoId. Ova veza podrazumeva da sve vrednosti u koloni MestoId tabele Radnici moraju postojati u koloni MestoId tabele Mesta. Pokušaj unosa reda koji bi imao MestoId = 10070 u tabelu Radnici ne bi bio prihvaćen s obzirom da nijedan red tabele Mesta ne sadrži tu vrednost.

Referencijalni integritet je postignut onda kada svaka vrednost spoljnog ključa postoji među vrednostima primarnog ključa na koji nas upućuje spoljni ključ ili je jednaka nultoj vrednosti (NULL).

Od momenta kada smo definisali primarne i spoljne ključeve nad bazom podataka garantovanje integriteta podataka i referencijalnog integriteta je u nadležnosti upravljačkog sistema relacione baze podataka (RDBMS).

Definicija: Spoljni ključ sačinjavaju jedna ili više kolona čije vrednosti moraju postojati unutar vrednosti primarnog ključa neke druge (ciljne) tabele.

1.3.1.9 Pojam nulte vrednosti (NULL)

Jedna od osnovnih razlika između relacione baze podataka i starijih baza podataka jeste pojam nulte vrednosti koji je prisutan u relacionim bazama podataka. Ova specijalna vrednost u relacionim bazama podataka ukazuje na odsustvo bilo kakve vrednosti u polju znakovnog ili numeričkog tipa. U relacionoj bazi podataka nulta vrednost u koloni moze izrazavati različite koncepte:

• Koloni nije moguće dodeliti vrednost za dati red. • Koloni još uvek nije dodeljena vrednost.

Mesta MestoId Naziv 11000 Beograd 21000 Novi Sad

MestoId

Spoljni ključ Primarni

ključ

Page 9: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

8

2. MS ACCESS

Microsoft Access je relacioni sistem za upravljanje bazom podataka (RSUBP). S obzirom da je deo programskog paketa koji nazivamo Microsoft Office, MS Access je jedna od najrasprostranjenijih baza podataka, uzimajući u obzir broj računara u svetu na kojima je ovaj programski paket instaliran. Namenjen je za projektovanje, razvoj i korišćenje baza podataka. Svi standardi koji važe za MS Windows i ostale programe MS Office-a, važe i u Access-u (potpuno standardizovani korisnički interfejs, intuitivnost u korišćenju, unifikovane procedure i funkcije, npr. pretraživač funkcioniše na isti način u Word-u, Excel-u i Accesu, standardizovani help i t.d.) Koje još baze podataka postoje? Veliki sistemi koji imaju potrebu da vode evidencije koje sadrže od nekoliko stotina hiljada zapisa do više miliona ili stotine miliona zapisa najverovatnije će se odlučiti za neku “robusniju” bazu, kao što je ORACLE na primer, ili Miscrosft SQL Server. MS Access je pre svega predviđen za nešto manje količine podataka, npr. privatne evidencije kao što su adresari, vođenje kućnog budžeta, evidencije o knjigama, filmovima, poslovne knjige, informacioni sistemi malih i srednjih preduzeća i t.d. Kao zaokružena aplikacija, MS Access obezbeđuje potpuno upravljanje relacionom bazom podataka i integritet na nivou same mašine na kojoj se nalazi baza (što sprečava nepotpuno ažuriranje i brisanje). Na nivou tabela je moguće definisati pravila koja proveravaju ispravnost podataka i sprečavaju unos neispravnih, svako polje tabele može imati svoj format i podrazumevanu vrednost što znatno povećava produktivnost. Omogućen je uvoz i izvoz podataka iz drugih formata: dBase, FoxPro, Excel, SQL Server, Oracle, tekstualni formati, HTML formatu i t.d.

Page 10: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

9

2.1 Kreiranje baze u Access-u Pokretanjem MS Access-a (najčešća putanja: Start -> Program Files -> Microsoft Office -> Microsoft Office Access) na ekranu se pojavljuje prozor MS Access-a slično kao na slici: Izborom opcije File -> New... iz menija otvara se u desnom delu ekrana panel za zadavanje zadataka (Task Pane). Iz ovog panela se, dalje, bira jedna od ponuđenih opcija, najčešće Blank Database (prazna baza). Odmah po izboru ove opcije na ekranu se otvara dijalog prozor koji traži od vas da snimite bazu pod nekim imenom. Access nudi generički naziv koji možete promeniti. Izaberite lokaciju gde će baza biti snimljena i pritisnite komandno dugme Create. Posle toga, baza je generisana i na ekranu se pojavljuje prozor baze podataka.

Page 11: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

10

2.2 Izgled i sadržaj korisničkog interfejsa Access-a

Po pokretanju MS Access-a, na ekranu se pojavljuje prozor baze podataka u kome se izvodi većina operacija vezanih za rad sa objektima baze. Na levoj strani prozora nalazi se meni Objekti (Objects). Vertikalna linija menija sadrži sedam dugmadi pomoću kojih može da se izabere neki od objekata: Tabele, Stranice, Upiti, Obrasci, Izveštaji, Makroi, Moduli. Na desnoj strani prikazan je spisak imena objekata koji pripadaju tipu objekta izabranog na levoj strani. U gornjem delu prozora se nalazi paleta sa alatkama. Pošto se napravi novi objekat, njegovo ime se nalazi na listi u prozoru baze podataka. Unutar prozora se nalaze i dve do tri ikone sa natpisima koje služe kao prečice za kreiranje novog objekta. U naslovnoj traci Access-a (Title) ispisuje se ime aplikacije, dok se u naslovnoj traci prozora baze ispisuje naziv baze koja je trenutno otvorena. Linija menija sadrži standardne Access opcije, ali se može prilagoditi potrebama korisnika, čak se može potpuno isključiti i zameniti korisnički definisanim menijem. Isto je i sa trakama (paletama) sa alatima (toolbars), mogu se uključivati i isključivati, po potrebi, može se menjati sadržaj postojećih paleta ili generisati potpuno nove palete sa novim sadržajima.

Naslovna linija (title bar) Linija menija (menu bar)

Kontrolni meni dokumenta

Palete sa alatima (toolbars)

Meni baze

Meni Objects

Indikator statusa

Dugmad za promenu veličine i zatvaranje Access prozora

Dugmad za promenu veličine i zatvaranje prozora baze

Prozor baze

Naziv baze

Statusna linija sa indikatorima

Page 12: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

11

Access raspolaže moćnim sistemom čarobnjaka (wizards), koji korisniku mogu uštedeti vreme neophodno za obavljanje nekog posla a naročito su pogodni za početnike i korisnike koji se ne bave projektovanjem i programiranjem. Za njih će čarobnjak sistemom pitanja i odgovora u nekoliko koraka automatski napraviti čak i relativno složene objekte. U Access-u postoji stotinak čarobnjaka za projektovanje baze podataka, aplikacija, tabela, obrazaca, izveštaja, dijagrama, poštanskih nalepnica, kontrolnih objekata i njihovih svojstava. Obrasci (Forms) i izveštaji (Reports) se kreiraju po sistemu WYSIWYG (What You See Is What You Get - što vidiš to dobiješ). Kada se izvrši izmena na nekom od objekata odmah se može videti njen efekat (npr. pri promeni fonta u izveštaju se odmah može videti kako će to izgledati sa pravim podacima na štampi). U obrascima i izveštajima može se koristiti veliki broj različitih vrsta objekata koji omogućavaju postavljanje natpisa (label), unos podataka (text box), opcionu dugmad (option button), polja za čekiranje (check box), kombinovane liste za izbor / unos podataka (combo box), komandna dugmad (push button), crtanje, umetanje objekata, grafikona, podobrazaca i podizveštaja. Obrasci mogu imati više strana, a izveštaji više nivoa grupisanja i međuzbirova. Sve alatke za izradu grafikona koje su ugrađene u MS Word, Excel ili Power Point mogu da se pronađu i u Access-u. Može da se koristi veliki broj različitih tipova grafikona pri čemu se njihov izgled prilagođava svim potrebama, mogu biti povezani sa obrascima tako da se dobije grafički prikaz podataka koji se menja u zavisnosti od trenutnog zapisa. Uz Access 2003 isporučuje se Microsoft Database Engine poznat i kao SQL Server 7.0 varijanta za jednokorisnički rad. To omogućava da se prave klijent/server aplikacije koje se mogu prebaciti na SQL Server 7.0 Enterprise Edition. Access koristi Jet mašinu baze podataka i pomoću nje je moguće praviti SQL Server aplikacije za nekoliko radnih stanica uz ograničenje veličine baze najviše do 10mb podataka. U Acess su ugrađene funkcije za rad sa objektima baze podataka, matematičke, poslovne, finansijske funkcije, funkcije za konvertovanje tipova podataka, funkcije za rad sa datumima i vremenima, kao i funkcije za rad sa stringovima (nizovi karaktera). Funkcije se koriste u obrascima, izveštajima i upitima. Access sadrži bogat sistem za pomoć koji može da bude koristan i početnicima i iskusnim programerima. Pomoć (Help) se dobija pritiskom na taster F1, a sadržaj zavisi od konteksta-elementa sa kojima se trenutno radi. Na primer, ako je na ekranu u fokusu ćelija za unos formata polja tabele, pritiskom na F1 dobijamo pomoć vezanu za ovaj kontekst. Pored klasične pomoći na raspologanju je i Screen Tips koji kada pokazivač miša zadržimo 2-3 sekunde iznad nekog objekta, prikazuju na ekranu kratak opis namene tog objekta.

Page 13: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

12

2.3 Osnovni objekti i njihova organizacija

U Accessu, baza podataka je skladište kako za podatke koji se smeštaju u tabele i kao takvi čuvaju u bazi, tako i za veze (relationships) i programsku logiku (moduli, obrasci, makroi, data access pages, upiti). Access može da radi samo sa jednom bazom podataka u datom trenutku. Međutim, jedna baza podataka može sadržati veliki broj tabela, obrazaca, upita, izveštaja, stranica, makroa, i modula i svi oni mogu da budu smešteni u istu datoteku sa nastavkom .MDB (multiple database) ili .ADP ukoliko se kosisti SQL Server. Tabela je skladište za sirove podatke. Podaci se smeštaju u odgovarajuće tabele, a struktura tabele čini da se podaci organizuju u redove i kolone. Tabele se sastoje od redova - zapisi ili slogovi (records) i kolona - polja (fields). Podaci prikazani u tabelama grupisani su u kolone prema srodnosti podataka. Te kolone zovu se polja. Svako polje ima ime koje ga jednoznačno određuje i određen tip podataka (numerik, tekst, datum i t.d.). Na preseku između zapisa (u redovima) i polja (u kolonama) nalazi se vrednost (value)-stvarni podatak. Dok polja prepoznajemo po njihovim imenima, pojedinačne zapise prepoznajemo, obično, po nečemu što je jedinstveno za svaki zapis. Baza podataka sadrži jednu ili više tabela (tj. logičkih grupisanja srodnih podataka). Većina aplikacija u Access-u radi sa više međusobno povezanih tabela da bi efikasno prikazivala podatke. Takve aplikacije obično rade efikasnije nego što bi to bio slučaj kada bi svi podaci bili u jednoj tabeli. Rad sa više tabela pojednostavljuje unošenje podataka i pravljenje izveštaja tako što umanjuje redudansu (suvišno ponavljanje) podataka. Na primer, ako se u aplikaciji za obračun zarada radi sa samo jednom tabelom morali bismo da ime, prezime, radni staž radnika i t.d. prepisujemo onoliko puta koliko ima obračuna.

JMBG Ime Prezime Adresa Mesto Neto Plata Mesec 0203961... Petar Petrović Lička 4a Beograd 15000 01 0203961... Petar Petrović Lička 4a Beograd 15500 02

...

... 0203961... Petar Petrović Lička 4a Beograd 17000 11

Upit (Query) se koristi za izdvajaje iz baze podataka grupe podataka koji zadovoljavaju zadati kriterijum. Mogu se koristiti pre slanja izveštaja na štampanje tako da se filtriraju samo željeni podaci. Obrasci mogu takođe da koriste upite da bi se samo određeni zapisi pojavljivali na ekranu. Upiti se koriste i unutar procedura koje menjaju, dodaju ili brišu zapise podataka. Obrasci za unošenje podataka (forms) omogućavaju dodavanje, ažuriranje, brisanje podataka, kao i pregledanje i pretraživanje. Princip da se podaci unose posredstvom obrazaca je uobičajen i koristi se za ograničavanje pristupa poljima u tabeli, kao i za proveravanje ispravnosti podataka pre nego što se prihvate u bazu podataka. Obrasci omogućavaju da unošenje podataka bude samo po sebi razumljivo tako što vode korisnika kroz polja tabele čiji sadržaj on ažurira (user friendly). Izveštaji (reports) prikazuju podatke u obliku pripremljenom za štampu. Sistem za upravljanje bazama podataka omogućava sastavljanje više različitih vrsta izveštaja. Na primer izveštaj može da sadrži sve zapise neke

Page 14: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

13

tabele ili da prikaže slogove radnika koji ispunjavaju zadati uslov. Izveštaj može da kombinuje podatke iz više tabela i/ili upita. Stranice za pristup podacima (Data Acess Pages) mogu da se prave složeni interaktivni obrazci na Internetu koji su povezani sa podacima u bazi. Počev od verzije Access 2000, moguće je korišćenje Access aplikacija za rad na Internetu. Omogućeno je prebacivanje tabela, upita, izveštaja i prikaza u tabelarnom obliku u HTML format koji se može prikazati kroz neki od veb brauzera (web browser) kao što su Internet Explorer, Netscape Navigator, Mozila Firefox, Opera i t.d. Makroi stoje na raspolaganju pre svega korisnicima koji nisu vični programiranju. Oni omogućavaju automatsko obavljanje niza komandi. Postoji više destina makro komandi koje omogućavaju automatizaciju izvršavanja grupe komandi. Na primer, može se napraviti makro koji će kada se aktivira izvršiti nekoliko komandi za pravljenje back up kopije podataka, bez intervencije korisnika. Npr. scenario bi mogao biti sledeći: Kada korisnik izabere opciju back up iz menija, prikaži korisniku poruku na ekranu da treba da priključi USB flash memoriju, kada to učini i pritisne komandno dugme OK, napraviti kopiju na hard disku, zatim izvršiti kompresiju kopiranih podataka i snimiti kopiju na USB Flash memoriju; po završetku cele operacije, prikazati poruku o završetku i automatski otvoriti prozor u kome će se prikazati novi sadržaj USB flash memorije i t.d. Moduli služe za skladištenje procedura i funkcija pisanih od strane korisnika. Ove procedure se po potrebi mogu pozivati (aktivirati) iz menija, obrazaca, makroa i t.d. Programski kod u modulu piše se u programskom jeziku VBA – Visual Basic for Applications. Za ozbiljnije programiranje u Accessu potrebno je poznavati barem osnove programiranja VBA. VBA je posebna tema i na ovom kursu se nećemo njime baviti. Treba napomenuti da se i bez VBA mogu praviti veoma kvalitetne aplikacije. Ako se nađete u situaciji da ne možete da svome programu dodate neku specifičnu funkcionalnost, to verovatno znači da je došlo vreme da se pozabavite učenjem VBA. Dotle, uživajte u jednostavnosti programiranja koja omogućava korisnicima najrazličitijih struka i orjentacija (lekari, serviseri, knjigovođe, bibliotekari ...) da za kratko vreme naprave potpuno funkcionalne aplikacije u domenu svoje struke bez velikog poznavanja teorije informatike i računara. Grupe se koriste za smeštanje prečica do različitih objekata baze podataka na jedno mesto. Da bi se napravila nova grupa desnim tasterom miša pritisne se grupa Favourites, a zatim izabere opcija New Group. Pojaviće se okvir za dijalog u koji se upisuje ime nove grupe. Prevlačenjem objekta na odgovarajuću grupu vrši se dodavanje prečice ka tom objektu u posmatranu grupu.

2.4 Sistem menija

File meni sadrži standardne komande za manipulaciju fajlovima, kao što su, već pomenuta New... za kreiranje nove baze, Open otvara neku od postojećih baza, Close zatvara aktivnu bazu, Exit izlaz iz Access-a. Opcija Save snima izmene u trenutno aktivnom objektu baze (tabeli, obrascu, izveštaju i t.d.). Save As... snima trenutno

Page 15: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

14

selektovani objekat ne samo pod drugim imenom nego u nekim slučajevima dozvoljava transformaciju u drugi tip objekta ili neke dodatne opcije. Npr. ako markirate neku postojeću tabelu u prozoru baze podataka i aktiviramo opciju Save As... možemo tabelu snimiti kao tabelu, formu, izveštaj ili stranu za prikaz podataka. Opcija Get External Data omogućava uvoz (Import) podataka ili povezivanje (Link Tables) tabela iz druge Access baze ili nekog drugog izvora podataka. Linkom povezana tabela se ne može menjati iz Access-a već samo otvaranjem originalne baze. Page Setup, kao i u drugim MS Office programima, služi za definisanje karakteristika stranice. Print Preview, standardna opcija za prikazivanje na ekranu izveštaja pripremljenog za štampu. Send To omogućava slanje dokumenta direktno na e-mail. Database properties je spisak svojstava baze, kao što su naziv autora, naziv, predmet, ključne reči aplikacije, statistike, spisak objekata u bazi i t.d. Edit meni sadrži standardne komande za ažuriranje (Cut, Copy, Paste, Undo, Redo, Delete, Rename), pravljenje prečice (Create Shortcut) i t.d. View meni sadrži stavke izbora tipa objekta, određivanje tipa ikona i njihovog rasporeda, određivanje svojstava objekata (Properties) i uvid u programski kod objekata kod kojih je to moguće (Code). Insert meni sadrži opcije za kreiranje novog objekta u bazi, kao i automatsko generisanje forme ili izveštaja na osnovu selektovane tabele ili upita. Tools u svom prvom delu sadrži poznate Microsoft Office alate Spelling i AutoCorrect. Spelling izvršava proveru pravopisa (za srpski se mora instalirati poseban dodatak), dok AutoCorrect automatski ispravlja neke često ponavljane greške. Database Utilities je grupa opcija koja omogućava konvertovanje (Convert) baze iz ranijih verzija u bazu novog formata, Compact and Repair omogućava komprimovanje i opravke baze. Komprimovanje eliminiše "šupljine" (fragmente) unutar baze nastale brisanjem i ažuriranjem objekata pa baza posle ove opcije postaje fizički manja i dobija se na brzini rada. Linked Table Manager služi za upravljanje linkovaniim tabelama iz druge baze, Database Splitter za razdvajanje podataka i programa iz baze, Switchboard Manager za jednostavno kreiranje "komandne table" iz koje se upravlja celom aplikacijom, Upsizing wizard za automatsko generisanje SQL Server baze na osnovu postojeće Accessove. Online Colaboration je standardna Microsoft Office opcija za saradnju više korisnika istovremeno na istom projektu. Relationships je vizualni alat za povezivanje tabela i definisanje referencijalnog integriteta, dok podmeni Analyze nudi alate za analizu strukture i poboljšanje performansi baze. U ovoj grupi se nalazi i Dokumenter, alat za izradu projektne dokumentacije. Tu

Page 16: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

15

su još i alati za izradu makroa (Macro) i rad u programskom jeziku VBA, alti za dodavanje ActiveX kontrola, administraciju (Security), razne dodatne programe (Add Ins), replikaciju (Replications), podešavanja (Customize... i Options...). Window meni sadrži opcije za aranžiranje prozora na ekranu. Help meni sadrži opcije za pomoć u radu.

3. Rad sa tabelama

Tabela je objekat koji čini srž baze podataka. Tabele u bazi služe za skladištenje podataka. Svi drugi objekta baze podataka mogu samo da manipulišu („hendluju”) podacima, ne i da ih skladište. Access-ova baza podataka može da sadrži stotine tabela, a broj zapisa koje može svaka tabela da sadrži ograničen je samo prostorom na disku.

3.1 Projektovanje tabela

Proces projektovanja tabele obuhvata nekoliko faza. Najpre je potrebno saznati koji podaci će se smeštati u bazu. Ti podaci zavise od namene same baze, odnosno njene svrhe. Tako na primer, u bazi koja čuva podatke o prodatoj robi nalaziće se: broj računa, naziv proizvoda, količina, jedinična cena, datum. Baza veterinarske stanice bi čuvala podatke o klijentima (ime, prezime, adresa...) i njihovim životinjama (ime, rasa, starost, do sada preležane bolesti...). Kada se sakupe ulazni podaci, potrebno je organizovati te podatke unutar sistema da bi bili na raspolaganju za izveštaje i dalju obradu. Neophodno je napraviti spisak polja sa podacima koji će biti potreban da bi se obezbedili zahtevani izlazni podaci, obično ti podaci se nalaze unutar polja koja se pojavljuju u pojedinačnim izveštajima. Nakon toga potrebno je povezati podatke u logičke celine, iz kojih će nastati tabele. Tabele se međusobno povezuju da bi podaci iz jedne bili dostupni drugoj tabeli. To povezivanje se vrši vezama (relacijama), koje se uspostavljaju između tabela koje dele istu vrednost. Nije neophodno da nazivi tih polja budu isti, već je bitno da sadrže istu vrednost. Svako polje u tabeli mora da ima ime. Ono bi trebalo da se lako pamti i da se na osnovu njega prepoznaje njegova namena. Dužina naziva ne treba biti previše dugačka zbog preglednosti programa i vremena koje se izgubi na

Page 17: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

16

kucanje takvih naziva (naziv polja se može pojavljivati i veliki broj puta u raznim programima), ali ni preterano kratka, zbog intuitivnog prepoznavanja namene polja. Na primer, polje koje treba da sadrži ime i prezime radnika ne bi bilo dobro nazvati I_P, jer se iz ove skraćenice ne prepoznaje namena ovog polja, Ime_i_Prezime bi možda bilo predugačko za kucanje ako bi se pojavljivalo na mnogo mesta u programskom kodu, ImePrez bi bila, možda, neka zlatna sredina: Dovoljno kratko a dovoljno intuitivnio. Pored imena svako polje treba da bude određenog tipa. Tip zavisi od vrste podataka koji će se čuvati u koloni. To znači da se podaci o datumu ne mogu čuvati, recimo u AutoNumber tipu podataka. U sledećoj tabeli dati su tipovi podataka podržanih u Access-u:

Tipovi podataka u Access-u: Text Alfanumerički znaci (najviše 255) Memo Alfanumerički znaci (do 64000 znakova) Number Brojne vrednosti mnogih formata i tipova Date/Time Datum i vreme Currency Valuta AutoNumber Brojač koji se automatski inkrementira Yes/No Logička vrednost OLE object Objekti uvezeni iz drugih aplikacija, slika, zvuk, video

zapis, Word dokument, Excel dokument, grafikon ... Hyperlink Hiperlink ka nekom drugom programu, web strani ili

e-mail adresi Posle definisanja strukture baze podataka unose se probni podaci. Oni se pažljivo biraju da bi se testirao što veći broj mogućih specifičnih slučajeva. Posle toga se proverava ispravnost unetih podataka kako bi se obezbedilo da se u bazi nalaze samo ispravni podaci da bi sistem prihvatio samo one podatke koji prođu test ispravnosti. Zatim se pristupa izradi obrazaca koji će služiti za manipulaciju podacima od strane korisnika.

Page 18: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

17

3.2 Rad sa tablema

Kada je nova baza kreirana može se pristupiti formiranju tabela. Potrebno je da u okviru menu Objects bude izabrana stavka Tables. Tabela se može kreirati na tri načina: Ø Korišćenjem opcije Design View, Ø Korišćenjem čarobnjaka (wizard), Ø Unosom podataka.

Za kreiranje nove tabele uobičajeno je izabrati Design View. Ova opcija služi za pravljenje strukture tabele. Sastoji se od dva okvira: (kao što se vidi na slici) okvir za polja i okvir za svojstva polja. U gornjem okviru se unose imena polja, tipovi podataka i (opciono) tekst koji dodatno opisuje polje, a u donjem se za svako od polja podešavaju svojstva (properties).

Panel za zadavanje zadataka(Task Pane)

Page 19: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

18

Novo polje se dodaje upisivanjem imena i izborom tipa polja u prazan red okvira za oblikovanje strukture tabele. Neželjeno polje može se izbrisati pritiskom na birač reda, a zatim Delete, ili iz menija Edit / Delete Row. Ukoliko želite da promenite redosled polja jedan od načina je „prevlačenjem” polja na novo mesto (Drag & Drop) unutar strukture tabele. Kao što je već rečeno, svako polje mora imati svoje ime koje će naziv kolone u tabeli činiti jednoznačnim. Svako polje mora biti određenog tipa. Tip polja se određuje na osnovu skupa operacija koje se mogu izvršavati nad tim poljem, i skup vrednosti koje polje može da uzme. Većina tipova podataka ograničava po definiciji vrstu podataka koja može da se unosi. Neki tipovi podataka mogu da se prevode u druge. Na primer, numeričko polje može da se prevede u tekstualno a da se pri tom ne gubi matematičko značenje vrednosti jer ne mogu da se koriste u matematičkim proračunima. Tekst (slova) ne može da se unese u numeričko ili datumsko polje. Sve promene koje se naprave u tabeli, automatski se prave i na ostalim mestima koja koriste to polje (obrasci, upiti ili izveštaji). Npr. Ako promenimo naziv polja Sektor_ID u SektorID, SUBP Access-a će za vas izvršiti izmene u svim obrascima i drugim objektima koji se referenciraju na to polje. Namena opisa polja (description) je da podseti na svrhu polja i da je pojasni drugom korisniku. Nije obavezna i često se ostavlja nepopunjenom. Najčešće se popunjava za ona polja čija se namena ne može utvrditi samo na osnovu imena polja. Opis polja se pojavljuje na ekranu svaki put kada se nađete na tom polju. Ako je potrebno preciznije definisati svojstva svakog od polja, to se može učiniti u okviru za definisanje svojstava. Različiti tipovi polja sadrže različita svojstva (properties). U ovom okviru se nalaze dve kartice: General i Lookup.

} Definisanje strukture tabele

} Svojstva polja koje je Trenutno u fokusu (Radnik_ID u ovom primeru)

Page 20: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

19

3.3 Primarni ključ

Poslednji korak u formiranju strukture tabele definisanje primarnog ključa. Svaka tabela, po pravilu, treba da ima primarni ključ, odnosno, jedno ili više polja koja čine zapis jedinstvenim, ako se kojim slučajem zaboravi Access će ponuditi da ga sam napravi. Primarni ključ može da se napravi na sledeći način: Obeleži se polje koje će služiti kao primarni ključ, a zatim pritisne desni taster miša i izabere opcija Primary Key ( ).

4. Veze među tabelama Sledeći korak posle kreiranja tabela je definisanje veza. Neophodan uslov za povezivanje dve tabele je da polja između kojih se uspostavlja veza budu istog tipa (i veličine), dok im se imena mogu razlikovati. Veza se najčešće uspostavlja tako što se međusobno povezuje primarni ključ jedne tabele sa spoljnim ključem druge tabele. Primarni ključ relacije je atribut (prost ključ) ili skup atributa relacije (složeni ključ) koji jedinstveno indentifikuje n-torku u relaciji (jednu vrstu u tabeli). Primarni ključ u prikazu relacije se podvlači. Spoljni ključ je atribut (ili skup atributa) u relaciji R1 koji se povezuje sa primarnim ključem relacije R2, pri čemu ovaj atribut nije primarni ključ u R1. Spoljini ključevi služe za uspostavljanje veza između relacija (tabela). Prost ključ je polje koje jednoznačno identifikuje svaki zapis u tabeli. Složen ključ čini grupa polja koja jedinstveno identifikuje zapis. Primer, tabela Plate ima složen ključ sačinjen od tri polja: RadnikId, Mesec, Deo (šifra radnika, mesec obračuana i redni broj obračuna u mesecu).

RadnikId Mesec Deo Bruto ... 12132 10 1 25000 ... 12132 10 2 26000 ... 14321 10 1 35000 ... 14321 10 2 28000 ... 12132 11 1 25000 ... 12132 11 2 29000 ... 14321 11 1 37000 ... ... ... ... ... ...

Složeni ključ: RadnikId + Mesec + Deo

Page 21: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

20

Primer jednostavnog MOV – Evidencija zarada radnika (MOV – Model Objekti Veze)

Pravougaonicima su predstavljeni objekti (Entiteti) – buduće tabele u relacionom modelu. Linije koje ih povezuju su veze. Brojevi na linijama (1,1; 0,M; 1, M ...) nazivaju se kardinalni brojevi. Rombovi na sredini veza semantički opisuju svaku vezu, obično se formulišu kao glagol u pasivu. Kod nekih tipova veze postaju poseban objekat, kod drugih ne. U nastavku će biti objašnjeni tipovi veze.

4.1 Formiranje veza u Accessu

Veze između tabela se definišu u posebnom alatu baze podataka, Relationship Builder-u. Izborom ove opcije iz menija Tools->Relationships ili pritiskom dugmeta Relationships na traci sa alatkima ( ). Pojavljuje se prozor Relationship. Koncept je sledeći:

1. Dodaju se postojeće tabele (tabele moraju biti prethodno već formirane) u prozor Relationship. Ovaj prozor je na početku prazan i u njega dodajemo, po pravilu, samo one tabele koje želimo da povezujemo na taj način što kliknemo desnim tasterom miša na unutrašnjost ovog prozora što prouzrokuje otvaranje shortcut menija iz koga biramo opciju Show Table. U prozoru Show Table biramo tabele koje želimo da se pojave u prozoru Relationship Builder-a.

Markiranjem i klikom na Add tabela se pojavljuje u prozoru Relationships.

Radnici

Plate

Mesta

Sektori

1, 1 0, M

1, 1

1, M

rođeni

pripadaju

..............................

Page 22: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

21

2. Formiraju se veze - prevlačenjem pomoću miša "iscrtavaju" se konture veza. Prevlači se polje (primarni ključ) jedne tabele i "spušta na odgovarajuće polje za vezu druge tabele (spoljni ključ).

3. Vrši se, po pravilu, provera ispravnosti generisanih veza i dodatna podešavanja, ako je potrebno. Kada je veza formirana (nacrtana linija koja povezuje dve tabele), duplim klikom na ovu liniju dobijaju se svojstva veze. Proverite da li je SUBP ispravno generisao ova svojstva i ako je potrebno možete kroz dijalog prozor Edit Relationships izvršiti izmene.

Page 23: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

22

4. Definiše se referencijalni integritet. Referencijalni integritet podrazumeva pravila za održavanje konzistentnosti podataka u bazi. Po pretpostavljenoj vrednosti, referencijalni integritet nije uključen. Da bi naredili SUBP-u da kontroliše i štiti konzistentnost baze, treba štiklirati opciju Enforce Referential Integrity. Od trenutka kada je referencijalni integritet forsiran, SUBP preuzima na sebe brigu oko konzistentnosti baze. U gornjem primeru, neće dozvoliti da unesemo u šifarnik radnika podatak da je radnik iz Beograda a da pri tome ne postoji povezani zapis u šifarniku Mesta (Beograd mora da bude prethodno unet u šifarnik mesta). Referencijalni integritet nije obavezno forsirati, ali je preporuka da to učinite da biste sprečili kasnije moguće greške u podacima i aplikaciji.

4.2 Kreiranje veza pomoću LookUp čarobnjaka Vrednosti koje se pojavljuju na listi lookup polja najčešće se nalaze u drugoj tabeli. Na primer, u tabeli Radnici, lista u lookup polju bi mogla da sadrži vrednosti iz tabele Naselja.

Kada koristite Lookup wizard da biste napravili polje bazirano na vrednostima iz druge tabele, Access-ov sistem za upravljanje bazom podataka preuzima na sebe kreiranje i održavanje veze između dve tabele. Svaki put kada pokušate da unesete vrednost u polje Mesto tabele Radnici, implicitno se izvršava upit u tabel Naselja. Postupak: 1. Otvorite tabelu kroz Design View 2. Izaberite polje iznad koga želite da napravite lookup polje, ili ako takvo polje

ne postoji, kliknite na prvi prazan red ispod poslednjeg polja. 3. Iz Insert menija izaberit Lookup Field.

Page 24: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

23

4. Kliknite na dugme Next da biste potvrdili da želite da vrednosti u listi budu iz

postojeće tabele ili upita. 5. Izaberite tabelu sa kojom želite da povežete lookup polje i kliknite na Next. 6. Izaberite jedno ili više polja za lookup tako što ga prebacite iz liste

raspoloživih u listu selektovanh polja. Kliknite na Next dugme.

7. Izaberite redosled za sortiranje podataka u listi. Opciono. Na primer, sort po nazivu mesta u rastućem redosledu. Ako želite da promenite u opadajući

Page 25: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

24

redosled kliknite na dugme Ascending, natpis će se promeniti u Descending, i obrnuto. Kliknite na Next dugme za sledeći korak.

8. Ako je potrebno, možete proširiti kolonu/kolone povlačenjem desne ivice zaglavlja kolone u desnu stranu. Po pretpostavci, ključna kolona je sakrivena. Ako želite da je prikažete, dečekirajte polje Hide key column. Kliknite na Next dugme. 9. U poslednjem koraku dodelite ime koloni i pritisnite Finish.

Page 26: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

25

5. Rad sa upitima

Za selekciju podataka iz jedne ili više tabela koristi se upit (Query). Postavljanjem odgovarajućih uslova može se iz celog skupa pobataka izdvojiti samo podskup podataka koji zadovoljava zadati uslov. Kao rezultat dobijamo virtualnu tabelu u kojoj su prikazani samo redovi i kolone koje smo zadali u upitu. Da bi se sastavili složeni uslovi za izdvajanje podataka neophodno je dobro poznavanje pravila za generisanje izraza. U izrazima se mogu koristiti funkcije i relacioni, logički, matematički, znakovni i drugi operatori.

Upit, kao što sama reč kaže, znači postavljanje pitanja DBMS-u, kao na primer, "Kolika su prosečna primanja radnika za ovu godinu", ili "Prikaži mi imena, prezimena i neto iznos plate radnika čija su u primanja u prethodnom mesecu bila manja od 12000 din", i t.d. Postavljanje ovakvih i sličbnih pitanja omogućava alatk za sastavljanje upita (Query Tools). Upit može da bude jednostavno pitanje o podacima koji su svi u jednoj tabeli, ili složeno pitanje koje se odnosi na podatke razmeštene u više tabela. Kao odgovor na postavljeno pitanje Access prikazuje samo redove i kolone koji su traženi.

5.1 QBE (Query By Example) prozor

Jedan od načina za izradu obrazaca je da u prozoru baze podataka pritisnete dugme Queries i izaberete jednu od opcija:

• Create query in Design View – za startovanje QBE (Access alat za jednostavnije kreiranje upita).

• Create query by using Wizard – za formiranje upita u samo nekoliko koraka sistemom odgovora na pitanja koja vam Čarobnjak postavlja.

Kreiranje upita pomoću QBE (Design View) Prvo što se pojavljuje po izboru opcije Create query un Design View je prozor za dijalog Show Table koji sadrži imena svih tabela i upita u bazi podataka. Izbor određene tabele (ili grupe tabela), vrši se klikom na komandno dugme Add.

Page 27: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

26

Klikom na komandno dugme Close aktivira se prozor QBE (Query By Example).

Page 28: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

27

QBE prozor se sastoji od dva dela: - U gornjem se nalaze tabele koje su u prethodnom koraku izabrane. Linije kojima su tabele povezane predstavljaju veze. Na slici je prikazan jednostavan primer veze između tabele Plate i tabele Radnici. Spoljna linija povezuje polja RadnikID iz ove dve tabele. Automatsko iscrtavanje veza je moguće zahvaljujući tome što su veze bile definisane u prozoru Relationship. Naknadno dodavanje tabela vrši se klikom desnog tastera miša na gornji deo prozora a zatim izborom opcije Show table iz kontekst menija. Uklanjanje tabele iz gornjeg dela RQBE prozora se može jednostavno obrisati selektovanjem tabele i pritiskom tastera Delete. Tabele neće automatski biti povezane ukoliko to nije učinjeno na nivou baze podataka, ili ako je isključena opcija AutoJoin. - Donji deo prozora je u formi tabele koja sadrži "metapodatke" (podaci o samom upitu). Kolone predstavljaju buduće kolone koje će se pojaviti u rezultatu upita, a u redovima se definišu karakteristike upita:

• Field - Definiše koja polja će se koristiti u upitu. Pošto je postavljeno okruženje (tabele i veze koje će se koristiti) u upitu, treba izabrati polja iz datih tabela i dodati ih u red Filed donjeg prozora. Polja se mogu dodavati jedno po jedno (dupli klik na polje u odgovarajućoj tabeli ili prevlačenjem u red Field ili odabirom iz kombo boksa u redu Field), može se vršiti odabir više polja istovremeno, ili izabrati * (sva polja).

• Table - Prikazuju se imena tabela iz kojih potiču polja. • Sort - Zadaje se kriterijum za sortiranje podataka upita. • Show - Određuje da li će polje biti vidljivo ili ne u rezultatu upita. • Criteria – Definisanje uslova za filtriranje zapisa.

Uslovi tekstualnog tipa unose se prostim upisivanjem primera vrednosti podatka koji treba da bude pronađen u tom polju. Može se koristiti i negacija Not ispred nekog teksta, i na taj način će biti prikazani svi logovi koji ne sadrže tu vrednost. Kod uslova za numerička ili datumska polja mogu se koristiti operatori za upoređivanje, kao što su (>)veće, (<)manje, (=)jednako.

• Or – Definisanje dodatnih uslova za selekciju zapisa

Izvršavanje upita može se izvršiti klikom na uskličnik ( ! ) u traci sa alatima Query Designer. Dobijeni prikaz u kome se vidi rezultat upita naziva se Datasheet view (slika iznad ovog teksta). Pored Datasheet view i Design View postoji i SQL View (sledeća slika).

Page 29: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

28

6. Rad sa obrascima

Obrasci služe, pre svega, za prikaz, pretraživanje i ažuriranje podataka. Iako se podaci mogu unositi direktno u tabele ili kroz neke vrste upita, to se, kao što je već rečeno, obično čini posredstvom obrazaca (formi). Obrasci omogućavaju efektniji i komforniji unos, dodatnu proveru unetih podataka, olakšavaju unos operaterima jer omogućavaju dodatnu funkcionalnost koja se ne može postići direktnim unosom podataka u tabele. Postoji više vrsta obrazaca:

1. Pojedinačna forma (Single Form) 2. Tabelarni orazac (Continous Forms) 3. Tabelarni prikaz (Datasheet) 4. Obrazac za izvedene tabele (PivotTable) 5. Obrazac za prikaz Dijagrama (PivotChart) 6. Obrazac sa podobrascem (Form with Subform)

6.1 Kreiranje i korišćenje obrazaca

Za kreiranje obrazaca potrebno je da u prozoru baze podataka pritisnete dugme Forms a zatim primenite jedan od načina:

• Iz prozora Forms izaberete jednu od opcija: • Create form in Design view • Create form by using wizard

• Pritiskom na dugme New a zatim izborom jedne od ponuđenih opcija, kao na sledećoj slici:

- Design View – Polazi se od potpuno praznog obrasca, definiše se okruženje i ručno se ređaju polja koja će se prikazivati. Obično se obrazac kreira nekim od

Page 30: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

29

"automatizovanih" postupaka (Autoform ili Wizard) a zatim se u Design View vrše dodatna podešavanja.

- Form Wizard – Obrazac se automatski generiše sistemom odgovora na pitanja koje "Čarobnjak" postavlja. Ovako generisani obrasci se retko koriste u finalnoj verziji, ali predstavljaju dobru polaznu osnovu za kreiranje složenijih formi.

- Auto Form (Columnar, Tabular, Datasheet) - trenutno pravi obrazac koji prikazuje podatke u formi pojedinačnih zapisa (Columnar), više zapisa istovremeno (Tabular), ili u formi klasične tabele (Datasheet).

- Chart Wizard – Kreiranje obrazaca sa dijagramom. - PivotTable Wizard – Kreiranje obrasca koji sadrži unakrsnu tabelu (slično Excel-

u). Navigacija u obrascima funkcioniše slično kao i u tabelama, s tom razlikom što je kod obrazaca tipa Single Form (Columnar), umesto pomeranja na određeni zapis, potrebno prikazivati jedan po jedan zapis. Iz obrazaca se izborom opcije File -> Print... iz menija mogu i štampati zapisi onakvi kakvi su prikazani na ekranu, ali su u tu svrhu mnogo pogodniji izveštaji (Reports). Često se prva verzija obrasca formira pomoću Wizard-a, a zatim se dalje podešava kroz Design View.

6.2 Kreiranje obrasca pomoću Čarobnjaka (Wizard)

Kada ste izabrali opciju Create form in Design view kao što je opisano u prethodnom

poglavlju, na ekranu se pojavljuje Form Wizard. Sastoji se od sledećih koraka (na kraju svakog koraka kliknite na dugme Next, poslednji korak zavrsavarw klikom na Finish):

1. Treba da izaberete tabelu ili upit na osnovu koga želite da napravite obrazac.

Page 31: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

30

2. Kada ste izabrali tabelu/upit, sa liste raspoloživih polja koja se nalazi na levoj strani (Available Fields), birate ona koja želite da se pojave na obrascu. Izbor se vrši duplim klikom na odgovarajuće polje ili tako što markirate polje i kliknete na dugme >, čime se polje prebacuje sa liste raspoloživih na listu selektovanih polja (Selected Fielfds) koja se nalazi sa desne strane. Ako želite da jednim potezom selektujete sva raspoloživa polja, kliknite na dugme >>.

3. Izaberete oblik obrasca. Columnar prikazuje jedan zapis u jednom trenutku tako što polja poređa jedno ispod drugog, a ako ima veći broj polja tako da ne mogu da stanu u jednu kolonu, formira sledeću kolonu i t.d. Ovakav prikaz je uobičajen kada obrazac sadrži veći broj polja. Tabular , kao i Datasheet, prikazuje više zapisa istovremeno, što je preglednije od prethodnog oblika kada forma ne sadrži veći broj polja, u suprotnom, ne mogu se sva polja istovremeno posmatrati na obrascu već je neophodno "skrolovanje" sadržaja u levu ili desnu stranu. Datasheet je prikaz u formi klasične tabele, mogu se širiti, sužavati, premeštati kolone dok je obrazac aktivan na ekranu, što mu daje prednost u tom pogledu u odnosu na Columnar i Tabular ali ima neke druge nedostatke, pre svega po pitanju upravljivosti izgledom i ponašanjem obrasca. Justified je pokušaj kombinacije da se sva polja vide na obrascu bez skrolovanja u levu ili desnu stranu i da se prikazuje više zapisa istovremeno. Loša strana je nepreglednost, obično ostavlja utisak da se "od šume ne vidi drveće". PivotTable i PivotChart kao što nazivi kažu, prikazuju pivot tabelu i grafikon. Nijedan od oblika nije idealan, birate oblik u zavisnosti od svrhe obrasca, broja polja, dizajna koji želite da ugradite i t.d.

Page 32: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

31

4. Izaberete stil. Klikom na naziv stila možete videti izgled templejta obrasca na slici sa leve strane Wizard-ovog prozora.

Page 33: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

32

5. U poslednjem koraku, unesite naziv pod kojim želite da sačuvate obrazac i kliknite na dugme Finish.

6.3 Izmene obrasca kroz Design View Kada je obrazac kreiran, možete ga prikazati na više načina: -

Page 34: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

33

- Design View: Omogućava izmene u dizajnu i strukturi obrasca. Ovo je jedini način da izvršite dodatna podešavanja na obrascu. - Form View: Omogućava unos, ažuriranje, prikazivanje,pretraživanje podataka kroz obrazac (sve ono zbog čega smo ga i kreirali). - Datasheet View: Kao i prethodno, samo što obrazac prikazuje kao tabelu. - PibotTable i PivotChart View: Prikazuje sadržaj obrasca u formi pivot tabele, odnosno grafikona. Kada želite da "starujete" obrazac u Form View (mod za rad sa podacima), treba da uradite sledeće:

1. U prozoru baze, u Object meniju kliknite na Forms. 2. Selektujte željeni obrazac, npr. klikom miša. 3. U baznom prozoru kliknite na dugme Open.

Kada želite da menjate dizajn obrasca u Design View (mod za izmenu dizajna), treba da uradite sledeće:

1. U prozoru baze, u Object meniju kliknite na Forms. 2. Selektujte željeni obrazac, npr. klikom miša. 3. U baznom prozoru kliknite na dugme Design.

Page 35: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

34

U Design modu se prikazuje dizajn i struktura obrasca, ne i podaci. U gornjem primeru je prikazan obrazac za ažuriranje podataka o mestima. U dizajn modu možemo videti da se na obrascu nalaze objekti koje nazivamo Kontrolama (Controls). U ovom jednostavnom primeru na obrascu se vide dve vrste kontrolnih polja: labele ili oznake (Labels) - siva polja u kojima piše MestoId odnosno Naziv, i tekst boksovi (Text Box) - polja sa belom pozadinom sa desne strane na kojima takođe piše MestoId odnosno Naziv. U tekst boksovima će se, kada se obrazac "startuje" u radnom - Form View - modu, prikazivati podaci iz odgovarajućih polja šifarnika Mesta (npr. umesto MestoId će pisati 11000, umesto Naziv pisaće Beograd). Labele ili oznake predstavljaju kratak opis namene polja. Uobičajeno je da je svakom tekst boksu koji prikazuje podatke iz tabele pridružena labela koja opisuje šta ti podaci predstavljaju. Npr. labela MestoId nam govori da je podatak 11000 Identifikator (šifra) mesta, labela Naziv nam govori da je Beograd naziv mesta i t.d. Svaki objekat na obrascu ima svoje osobine. Svojstva svakog objekta na obrascu možete prikazati desnim klikom na taj objekat (kontrolu), a zatim izborom opcije Properties (svojstva) iz kontekstnog menija koji se posle toga pojavljuje. Kada se izabere kontrolni objekat, na njegovim uglovima i u sredini stranica pojavljuju se četiri ili osam ručica (tačaka) za pomeranje. Ručica u gornjem levom uglu je oblika kvadratića i nešto je veća od ostalh-služi za pomeranje objekta, dok ostale služe za podešavanje veličine objekta. Istovremeni izbor više kontrolnih objekata vrši se korišćenjem tastera Shift prilikom njihovog selektovanja ili mišem prevlačenjem pravougaonika preko objekata koji se biraju. Veličina kontrolnih objekata može da se menja povlačenjem jedne od manjih ručica (tačaka na ivicama objekta) što omogućava povećanje ili smanjenjenje širine i visine.

Opcija meni Format–Align služi za poravnje više selektovanih kontrolnih objekata: Left-poravnava leve ivice grupe izabranih objekata sa levom ivicom prvog s leva, Right sa desnom ivicom "najdesnijeg" objekta, Top sa gornjom ivicom najvišljeg, Bottom sa donjom ivicom najnižeg objekata. To Grid poravnava gornje leve uglove selektovanih objekata sa najbližom tačkom mreže koja se može prikazati/sakriti opcijom View->Grid.

Page 36: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

35

Izborom opcije Format-Size može se podešavati veličina objekta na osnovu vrednosti podataka, mreže (grid) i drugih objekata.

- To Fit podešava veličinu objekta prema fontu koji se koristi u njemu. - To Grid podešava veličinu izabranih objekata tako što njihove uglovi

poravnava sa najbližim tačkama mreže.

- To Tallest podešava visinu izabranih objekata prema najvišem od njih.

- To Shortes podešava visinu izabranih objekata prema najnižem od njih.

- To Widest podešava širinu izabranih objekata prema najširem od njih.

- To Narrowest podešava širinu izabranih objekata prema najužem od njih.

Često je mnogo lakše formatirati grupu objekata istovremeno nego pojedinačno svaki od njih. To se može učiniti markiranjem tih objekata (za selekciju više objekata držati pritisnut taster shift dok klikćete na svaki od njih) a zatim u prozoru za prikaz/izmenu svojstava objekata (Properties) izvršiti željene izmene (npr. jednim potezom možemo da promenimo font u svim markiranim poljima).

Svojstva (Properties) određuju osobine i ponašanje kontrolnih objekata. Svojstava imaju svoja imena i vrednosti i prikazuju se u prozor svojstava. Broj i sadržaj svojstava zavisi od vrste objekta. Prozor svojstava sdrži tabove (kartice) po kojima su funkcionalno razvrstana svojstva. Kartica All prikazuje sva svojstva istovremeno. Leva kolona sadrži imena svojstava, a u desnoj se prikazuju vrednosti svojstava koje se, uglavnom, mogu menjati. • Kartica Format sadrži svojstva za oblikovanje objekta (osobine fonta, veličina, boja,

specijalni efekti, okviri, vidljivost...). • Kartica Data sadrži svojstva za vezu sa poljem tabele (samo za vezane kontrolne

objekte) • Kartica Event sadrži svojstva koja su u vezi sa određenim događajima, kao što su klik

mišem, dvostruki klik, dolak/izlazak iz fokusa, pritisak na određeni taster i t.d.. • Other svojstva utiču na ostale karakteristike objekta (ime, tekst u status baru,

zaustavljanje fokusa (tab stop) i t.d..).

Page 37: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

36

Sam obrazac poseduje određena svojstva. Da bismo ih videli/menjali potrebno je selektovati ceo obrazac klikom miša na kvadratić u gornjem levom uglu u kome se posle klika pojavljuje manji crni kvadratić kao znak da je obrazac selektovan). Aktiviranje Properties prozora izvršava se klikom desnim tasterom miša na željeni objekat i izborom opcije Properties ili pritiskom na dugme Properties na paleti sa alatkama. Objekat oobrazac (Form) sadrži preko sto svojstava. Jedno od veoma bitnih svojstava je Default View koje određuje vrstu obrasca (Single Form, Continuous Form, DataSheet, PivotTable, PivotChart). Svojstvo Caption treba postaviti u svakom novokreiranom obrascu ako želimo da tekst u naslovnoj liniji (title bar) bude u skladu sa namenom obrasca; Ako želimo da onemogućimo izmene podataka u formi, možemo postaviti osobinu Allow Edits na vrednost False, za onemogućavanje brisanja Allow Delitions, za onemogućavanje dodavanja novih zapisa Allow Additions = False. Record Sourse je izuzetno važna osobina koja definiše izbor podataka (tabela ili upit). Na obrazac se može ugraditi više vrsta zaglavlja i podnožja. Form Header se pojavljuje na vrhu svake strane prikaza i štampanog obrasca, Page Header (zaglavlje strane) se javlja samo na štampanom obrascu-posle zaglavlja, Page Footer (podnožje strane) se javlja samo na štampanom obrascu-ispred podnožja, a Form Footer (podnožje obrasca) se pojavljuje u dnu svake strane prikaza i štampanog obrasca. Za prikaz zaglavlja i podnožja obrasca odnosno strane potrebno je uključiti opciju View-Form Header/Footer odnosno View-Page Header/Footer.

Page 38: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

37

7. Izveštaji

Izveštaji su slični obrasima, imaju slična svojstva i koriste se za prikaz podataka. Izveštaji predstavljaju specijalizovani oblik prikazivanaj podataka iz upita i tabela prilagođen štampi. Izveštaji (Reports) prikazuju podatke u formatu pripremljenom za štampu. Sadržaj izveštaja definiše korisnik kome je izveštaj namenjen. Izveštaj se može prikazivati na ekranu (Print Preview) ili štampati na štampaču. Podaci u izveštajima se mogu grupisati na više nivoa. Na nivou grupa mogu se definisati agregatne funkcije – zbir (SUM), prosek (AVERAGE), brojanje (COUNT), minimum (MIN), maksimum (MAX) i t.d. Podaci se mogu sortirati po više kriterijuma. Izveštaj je neka vrsta šablona za prikaz podataka. Izvor podataka za izveštaj mogu biti tabele i/ili upiti. Najčešće korišćene vrste izveštaja su:

• Tabelarni izveštaji - podaci se štampaju u redovima i kolonama, podaci se mogu grupisati i računati zbirovi na više nivoa.

• Stubični izveštaji - liče na obrasce i mogu da izračunavaju ukupne zbirove, mogu sadržati dijagrame i t.d.

• Izveštaji za štampanje cirkularnih pisama. • Izveštaji za štampanje nalepnica – često se primenjuje za štampanje nalepnica

sa adresama za cirkularna pisma, koje se potom lepe na koverte i šalju poštom. Obično sa pre pristupanja izradi izveštaja napravi plan koji podrazumeva definisanje sadržaja i dizajna izveštaja – u mislima i/ili na papiru se skicira oblik i sadržaj izveštaja. Odmah se može uočiti da li će i u kojoj meri izveštaj sadržati grupne odeljke, donosi se odluka kako će podaci biti sortirani, koje kolone će sadržati detaljni redovi, koje će se prikazivati na nivou grupe i t.d. Zatim se koristeći neki od alata za izradu izveštaja najpre definiše okruženje (tabele i/ili upiti, selektuju se potrebna polja, definišu grupni redovi i t.d). Formirani izveštaj pregleda u preview modu, uočavaju se nedostaci koje treba ispraviti, prelazi se u Design mod, gde se vrše ispravke. Ovaj postupak se ponavlja do finalne verzije izveštaja. Iako Print Preview potpuno simulira izgled izveštaja kakav bi bio kada se odštampa, preporuka je da se uvek odštampa barem jedan probni primerak, da bi se stekao pravi uvid u čitljivost izveštaja (neki put je font na ekranu čitljiv a na papiru ne, format strane može biti neodgovarajući i t.d).

7.1 Kreiranje izveštaja Za kreiranje izveštaja potrebno je da u prozoru baze podataka pritisnete dugme Reports a zatim primenite jedan od načina:

• Iz prozora Reports izaberete jednu od opcija: • Create report in Design view • Create report by using wizard

• Pritiskom na dugme New... otvara se New Report prozor iz koga se zatim može izabrati jedna od ponuđenih opcija:

Page 39: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

38

- Design View – polazi se od prazne podloge na koju se dodaje okruženje i kontrolni objekti.

- Report Wizard - čarobnjak za kreiranje izveštaja koji automatizaovano pravi izveštaj na osnovu odgovora koje dobije na postavljena pitanja.

- AutoReport - Iz kombo polja u donjem delu prozora New Report izaberete naziv tabele ili upita na osnovu koga želite da kreiramo izveštaja , kliknete na OK komandno dugme i izveštaj je završen! Problem je u tome što je ovo dovoljno za kreiranje jednostavnijih izveštaja baziranih na jednoj tabeli ili jednom upitu. Za složenije izveštaje pogodnije je koristiti report wizard. Autoreport može biti u formi tabele (Tabular) ili kolone (Columnar).

- ChartWizard – Čarobnjak za izradu grafikona. - LabelWizard - Čarobnjak za poštanske nalepnice.

7.1.1 Upotreba čarobnjaka

Prvi korak je izbor tabela/upita i polja koja će se pojaviti u izveštaju. Moguće je izabrati polja iz više tabela između kojih postoje kreirane veze. Klikom na Next > prelazite na sledeći prozor.

Page 40: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

39

Access automatski nudi polja po kojima će se vršiti grupisanje i dozvoljava promenu redosleda grupa.

Ako je potrebno mogu se dodati nove grupe. Može se definisati najviše 4 nivoa grupisanja, što je u principu sasvim dovoljno za većinu izveštaja.

Page 41: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

40

Sledeći korak omogućava zadavanje redosleda sortiranja i opcija za izračunavanje sumarnih podataka. Ako kliknete na dugme Summary Options, dobićete dijalog prozor za izračunavanje zbira (SUM), proseka (AVG), minimuma (MIN) i maksimuma (MAX) u grupi, kao na sledećoj slici:

Ako se izabere opcija Detail and Summary prikazivaće se svi podaci, dok Summary Only prouzrokuje da se na izveštaju pojave samo sumarni podaci. Ako se potvrdi polje Calculate percent of total for sums na izveštaju se prikazuje i procenat učešća zbira grupe u ukupnom zbiru izveštaja.

Page 42: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

41

U Sledećem dijalog prozoru se zadaje oblik (Layout) izveštaja izborom jednog od šest ponuđenih šablona. Za svaki od šablona prikazuje se primer u levom delu prozora. Takođe, u ovom koraku se definiše orjentacija strane, da li će biti uspravno (Portrait) ili horizontalno (Landscape).

U sledećem koraku se definiše stil prikazivanja izveštaja. Stilovi se odnose na način formatiranja objekata na izveštaju. Sa leve strane se za svaki stil vidi primer, što nam pomaže u odabiru.

Page 43: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

42

U poslednjem koraku se zadaje naziv novonastalog izveštaja. Čarobnjak sam nudi naziv prema imenu tabele/upita, možete ga prihvatiti ili promeniti. Na kraju treba kliknuti na jedno od opcionih dugmadi na dnu ekrana, u zavisnosti od toga da li želimo da pregledamo izveštaj u Preview modu, ili izborom Modify the report's design odmah preći na modifikovanje generisanog izveštaja u Design View. Klik na dugme Finish završava rad u wizardu. Kada je izveštaj kao šablon formiran, podaci se mogu pregledati na ekranu i štampati na štampaču izborom opcije File->Print iz menija ili klikom na dugme Print u Preview prozoru ili prozoru baze podataka.

Page 44: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

43

8. Kreiranje aplikacije

Na kraju je potrebno povezati sve kreirane objekte u jedinstvenu aplikaciju. Jedan od najbržih načina je kreiranjem Kontrolne table pomoću Switchboard Manager alata koji nudi Access. Aktivira se izborom opcije Tools->Database Utilities->Switchboard Manager. Ako ne postoji već kreirana komandna tabla (switchboard) odgovorite potvrdno na pitanje Acces-a da li želite da kreira novu. Posle toga se na ekranu otvara Switchboard Manager sa automatski kreiranim poljem New Switchboard Page. Komandno dugme New…, služi za dodavanje novih polja switchboard-a. Klikom na ovo dugme izazvaćete pojavljivanje Create New dijaloga u koji treba uneti ime nove switchboard strane (Unos podataka) i pritisnuti dugme OK. Ponovite postupak za dodavanje strane Izveštaji. Posle toga, kontrolna tabla bi trebala da izgleda kao na sledećoj slici: Markirajte opciju Unos podataka i kliknite na dugme Edit... Iz dijaloga Edit Switchboard Page kliknite na dugme New... za dodavanje forme na ovu stranu komandne table. U dijalogu Edit Switchboard Item, unesite sledeće parametre: U polje Text: unosi se natpis koji će stajati ispred ovog polja menija. Iz kombo polja Command: izaberite Open Form In Edit Mode, posle čega se neposredno ispod ovog pojavljuje kombo polje Form:, umesto natpisa Switchboard. Iz ovog kombo polja treba izabrati naziv forme koja treba da se pokrene izborom ove opcije switchboarda (u ovom primeru forma Radnici).

Page 45: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

44

Kada završite sa dodavanjem obrazaca, kliknite još jedanput na dugme New... za dodavanje dugmeta za izlaz sa ove strane i povratak u glavni meni. Unesite parametre: Text: Izlaz. Command: Go To Switchboard Switchboard: New Switchboard Page (Default). Po završetku bi trebalo da switchboard strana Unos podataka ima elemente kao na sledećoj slici: Zatim zatvorite ovaj dijalog prozor klikom na dugme Close. Zatim markirajte opciju Izveštaji, pritisnite dugme Edit, otvara se dijalog prozor Edit Switchboard Page, a zatim, slično kao što su dodate forme na stranu Unos podataka, ponovite postupak i na strani Izveštaji, s tom razlikom što Iz kombo polja Command: treba izabrati Open Repšort, posle čega se neposredno ispod ovog pojavljuje kombo polje Report:, umesto natpisa Switchboard.

Page 46: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

45

Iz ovog kombo polja treba izabrati naziv izveštaja koji treba da se pokrene izborom ove opcije switchboard-a (u primeru izveštaj Zaposleni Radnici). Postupak ponoviti za ostale izveštaje i na kraju dodajte dugme Izlaz kao što ste to uradili na prethodnoj strani. Po završetku bi trebalo da switchboard strana Izveštaji ima elemente, slično kao na sledećoj slici: Pritisnite Close za povratak na glavni switchboard. Markirajte opciju New Switchboard Page i pritisnite komandno dugme Edit... U Edit Switchboard Page dijalog prozoru promenite Switchboard Name: Galvni meni (umesto New Switchboard Page). Zatim dodajte (New...) sledeće opcije: Text: Unos podataka Command: Go To Switchboard Switchboard: Unos podataka Ponovite postupak za dodavanje Izveštaja. Na kraju dodajte dugme za izlaz iz aplikacije klikom na New..., a zatim upisom parametara: Text: Izlaz Command: Exit Application. Strana Glavni meni bi trebala na kraju da izgleda kao na slici: Ako zavirite u prozor baze, videćete da je dodata nova tabela Switchboard Items kao i obrazac Switchboard. Obrazac Switchboard koji je automatki generisan može se menjati kroz Design View kao i bilo koji drugi (verovatno ćete poželeti da promenite sliku, fontove i t.d.).

Page 47: SkriptaAccess I - suk.gov.rs · PDF fileTitle: SkriptaAccess I.doc Author: Vlada Created Date: 11/15/2010 3:15:48 PM

Служба за управљање кадровима Сектор за стручно усавршавање државних службеника

Управа за заједничке послове републичких органа Сектор за информатику, интернет и телекомуникације

46

Na kraju, korišćenjem opcije Tools->Startup možete podesiti da se aplikacija automatski startuje pri otvaranju baze. Izborom ove opcije, na ekranu se pojavljuje dijalog prozor kao na sledećoj slici:

1. 1.

1. Unesite naziv aplikacije u polje Application Title 2. Izaberite formu koju želite da automatski startuje (Switchboard) 3. Možete dodati ikonicu aplikacije klikom na dugme Browse... pored polja

Application Icon 4. Možete dodati traku menija 5. Obično se isključuje prikazivanje prozora baze uklanjanjem potvrde sa opcije

Display Database Window. 6. Potvrdite sa OK.

Kada sledeći put otvorite bazu automatski će se startovati switchboard forma preko koje možete, po potrebi, pozivati ostale opcije aplikacije.