You are on page 1of 27

BAZE PODATAKA

SEMINARSKI RAD

TEMA: ROBNO POSLOVANJE

Predmetni nastavnik: Student:

Abramović dr Borislav Todorović Borislav

Indeks br.48/03-3-INF

Novi Sad, Jun 2004


SADRŽAJ

SADRŽAJ............................................................................................................................2
1. UVOD..............................................................................................................................3
1.1 BAZE PODATAKA - ACCESS.................................................................................3
1.2 OSNOVNI ELEMENTI KREIRANJA BAZA U ACCESS-U..................................4
1.2.1 TABELE..............................................................................................................4
1.2.2 FORME...............................................................................................................5
1.2.3 UPITI..................................................................................................................6
1.2.4 IZVEŠTAJI.........................................................................................................6
2. ZADATAK.......................................................................................................................8
2.1 OSNOVNE KARAKTERISTIKE APLIKACIJE......................................................8
2.1.1 ULAZNI PODACI APLIKACIJE......................................................................8
2.1.2 INTERAKTIVNI RAD.......................................................................................8
2.1.3 ŠTAMPANI IZVEŠTAJI.....................................................................................9
2.2 ANALIZA I ZRADA APLIKACIJE..........................................................................9
2.2.1 Relacioni model podataka.................................................................................10
2.2.2 Izrada tabela......................................................................................................14
2.2.3 Izrada formi, upita i izveštaja...........................................................................16
2.2.4 Izrada switchboarda..........................................................................................20
2.2.5 Moduli i VBA...................................................................................................21
3. ZAKLJUČAK................................................................................................................27

2
1. UVOD

1.1 BAZE PODATAKA - ACCESS

Baza podataka se definiše kao organizovan skup logički povezanih


podataka (slogova) i datoteka koji se odnosi na slične pojmove ili predmete,
organizovanih za određenu namenu. Znači, baza podataka predstavlja
organizovanje podataka u takozvanoj integrisanoj formi gde podaci u bazi
podataka mogu biti organizovani po više različitih obeležja po kojima je
moguće primenom odgovarajućih mehanizama baze vršiti pretraživanja i
nalaženje baš onih podataka koji su potrebni.

Brigu o podacima, vezama među podacima, ispravnosti podataka i


svemu ostalom na sebe preuzima sistem za upravljanje podacima u bazi
podataka (DBMS – Database Management Sistem). Svi moderni sistemi za
upravljanje bazama podataka koriste relacioni model podataka što znači da
korisnik vidi bazu kao skup tabela sa slogovima, gde je i rezultat svake
operacije nad sadržajem baze podataka takođe tabela. Pored toga relacioni
model koristi veze, odnosno relacije (relationships) za povezivanje datoteka
(tabela) baze podataka u strukturiranu celinu.

Microsoft Access je sistem, odnosno program za upravljanje bazama


podataka. Microsoft Access 2002 je verzija koja je dizajnirana za rad s
Windowsima 95, 98/NT i XP, i stiže u okviru paketa Microsoft Office XP
Professional. Ova verzija Access-a ne raditi na 16-bitnim verzijama
Windowsa (Windows 3.x).

Access omogućuje skupljanje, slaganje i organizovanje podataka kao i


stvaranje izvještaja koji vode do poslovnih odluka. Glavne funkcionalne
mogućnosti Access-a su sledeće:

- Unos podataka direktno u bazu podataka ili uvoz podataka iz drugih


programa.
- Sortiranje, indeksiranje i organizacija podataka na način koji se želi.
- Brzo stvaranje izvještaja ili priprema ispis nalepnica za pisma
upotrebom svih ili samo dela podataka.

3
- Kreiranje formi kako bi manje stručni korisnici mogli unositi nove
podatke u bazu podataka.
- Stvaranje upita koji će reziltirati izveštajem zavisno od uslova koji su
postavljeni.

1.2 OSNOVNI ELEMENTI KREIRANJA BAZA U ACCESS-U

Baza podataka kreirana u Access-u sastoji se od sledećih elemenata


odnosno objekata:

- tabele,
- forme,
- upiti i
- izveštaji
- makroi i VBA.

Pored osnovnih elemenata Access baza može da sadrži i Data Access


strane, makroe i/ili VBA module (Visual Basic for Application - programski
jezik za programiranje operacija u Office aplikacijama). Svrha ovih
elemenata je nadigradnja osnovnog oblika baze u cilju maksimalne moguće
prilagođenosti baze ka njenom korisniku i ispunjenja posebnih zahteva
korisnika.

1.2.1 TABELE

Osnovni elemenat svake baze podataka je tabela. Svaka tabela sarži


kolone i redove a u njihovom preseku nalazi se polje ili ćelija u koje Access
smešta karakterističan podatak. Red tabele predstavlja jedan slog koji sa
svojim poljima daje grupu podataka čiji je karakter određen kolonama
tabele. Definisanjem kolone, odnosno karaktera podatka koji će se slagati u
koloni, polja u koloni se definišu i svrstavaju u određen tip, koji može biti:
tekst, broj, datum/vreme, logičko polje, memo polje (polje u koga se može
uneti tekst proizvoljne veličine), polje za unos brojeva u novčanom formatu,
posebno polje u kome se automatski po započetom unosu sloga inkrementira
broj (polje AutoNumber), hiperlink polje (pokazivač na adresu na Internetu),

4
OLE objekt polje (polje sa objektom povezanim iz drugog programa) i Look
Up polje (polje čiji prikazani sadržaj se nalazi u drugoj tabeli).

Pri kreiranju baze podataka veoma je bitno postaviti tip polja, jer su
pre svega, organizovanost podataka i veličina same baze u direknoj vezi sa
ispravno postavljenim tipom polja.

1.2.2 FORME

Svi podaci koji se unose u bazu podataka završavaju u tabeli i spremni


su za obradu. Pomalo je zamorno unositi podatke direktno u tabelu, te se
kreiraju posebne maske tzv. forme kako bi se lakše unosili podaci. Forma
omogućava stvaranje stranice kako bi se kasnije unosili željeni podaci na
najjednostavniji
način. Access
povezuje formu i
tabelu pa podaci
koji se unesu u
formu neposredno
se slažu u tabelu
formirajući novi
slog tabele. Forma
za unos podataka
može sadržati
slike, komandne
tastere (pritiskom
na njih se aktivira
neka komanda,...),
može sadržati
podformu itd.

5
1.2.3 UPITI

Upit je način skrivanja informacija koje se žele videti, a da bi se


informacije koje se žele prikazati videle što jasnije. U tom smislu bitno je iz
mnoštva podataka izdvojiti samo one koji su neophodni ne bi li se dobila
egzaktna informacija. Tako se uz pomoć upita mogu filtrirati podaci kako iz
jedne tako i iz mnoštva drugih tabela u okviru baze podataka.

Pored toga moguće je i ustanoviti kriterijume po kojima će se vršiti


pretraga i sortiranje podataka. Rezultat svakog upita je, praktično jedna
nova tabela sa novoformiranim slogovima po željenim kriterijumima.

1.2.4 IZVEŠTAJI

Izveštaji predstavljaju elektronski oblik klasičnih papirnih obrazaca


koji se mogu gledati na ekranu ili štampati na papir. Podaci prikazani u

6
izveštaju mogu biti izvedeni iz tabela ili iz upita (filtrirani podaci). Kreiranje
izveštaja je veoma slično dizajniranju formi.

1.2.5 MAKROI I MODULI

Makroi i moduli predstavljaju dva alata za kreiranje elemenata baze


podataka pisanjem programa. Nije retkost da se javlja potreba za
formiranjem funkcija koje ne postoje u Accessu, ili se grupe funkcija moraju
vezati u jedu celinu, pa se za razvijanje i automatizovanje baze podataka
mora pristupiti pisanju programa. Makroima se iz konačnog skupa funkcija i
naredbi automatizuje rad baze, oni se uglavnom koriste prilikom aktiviranja
nekog objekta ili događaja na objektu. Međutim, korišćenje makroa se u
novijim aplikacijama izbegava, jer se puna sloboda i funkcionalnost
ostvaruju tek kreiranjem i upotrebom modula. Objekat, modul predstavlja
niz procedura i funkcija koje nisu napisani za neke konkretne forme ili
izveštaje. Access poseduje mogućnost direktne upotrebe Visual Basic-a u
svrhu kreiranja modula.

7
2. ZADATAK

2.1 OSNOVNE KARAKTERISTIKE APLIKACIJE

ROBNO POSLOVANJE je aplikacija koja obezbeđuje sve evidencije


o stanju i prometu roba, neophodnih za organizovano i ažurno vođenje
zaliha. Ova aplikacija prati kretanje roba po stvarnim nabavnim
vrednostima, sa mogućnošću preračunavanja cena u skladu sa poslovnom
politikom preduzeća. Takođe se obezbeđuje delimičan ili potpuni otpis roba,
a obrađuje i evidenciju kretanja roba po vrsti i mestima prodaje. Aplikacija
podržava obrade sa više subjekata i više skladišta.

2.1.1 ULAZNI PODACI APLIKACIJE

- Matični podaci roba,


- Početno stanje roba,
- Prijemnice, višak po inventaru i povratnice izveštaji,
- Izdatnice, manjak po inventaru i otpremnice,
- Rashodovanje roba oštećenih u transportu i manipulaciji,
- Povraćaj roba od kupca.

2.1.2 INTERAKTIVNI RAD

Glavni meni aplikacije ROB obezbeđuje:

- Unos i ažuriranje matičnih podataka roba,


- Knjiženje svih vrsta prometnih promena,
- Upite na ekranu,
- Preglede na štampaču,
- Prelazne i završne obrade, automatsko otvaranje i dr.,
- Sistemsko spašavanje i rekonstrukcija podataka.

8
2.1.3 ŠTAMPANI IZVEŠTAJI

- Bilans roba,
- Promet po subjektima, mestima prodaje, skladištima
- Pregled prometa po vrsti robe, kupcu, periodu
- Dnevnik ulaza-izlaza roba,
- Analitička evidencija-kartoteka roba,
- Stanje svih zaliha po artiklima unutar skladišta,
- Izveštaj o stanju i otpisu roba,
- Pregled početnog stanja,
- Pregled stanja pre i posle inventara, višak, manjak,
- Popisna lista.

2.2 ANALIZA I ZRADA APLIKACIJE

Na osnovu dobijenog zadatka a sa ciljem što efikasnijeg rada baze


podataka potrebno je izvršiti analizu toka podataka. U tu svrhu formiran je
grafički prikaz hijerarhije funkcija ne bi li se sagledao tok podataka odnosno
obuhvatili svi neophodni elementi da bi aplikacija funkcionalno
zadovoljavala sve potrebne zahteve a da pri tom nema udvajanja, odnosno
redudantnosti podataka.

Dijagram konteksta predstavlja prvi, najviši hijerarhijski nivo


dijagrama toka podataka na kojem se u obliku jedne, jedinstvene funkcije,
prikazuju veze procesa iz sistema koji se analizira sa okruženjem. Pomoću
dijagrama konteksta definišu se granice, sadržaj globalnih ulaznih i izlaznih
podataka i sama razmena podataka sa njihovim ekstremnim nosiocima.

Dijagram konteksta predstavlja, u suštini, dijagram toka


podataka na najvišem nivou apstrakcije podataka i formalizam njegove
izrade svodi se u potpunosti na formalizam dijagrama toka podataka, s tim
što je kod dijagrama konteksta obavezno označavanje svih prijemnika,
predajnika i promo-predajnika podataka, dok dok je kod dijagrama toka
podataka opciono.

9
Na narednom grafiku prikazan je kontekst dijagram, koji određuje
granice aplikacije i zadatku koji treba da se ispuni za kreiranje aplikacije
robnog poslovanja.

Robno
poslovanje

Promet Šifarnici Pregledi i Administracija


izveštaji

Rad sa
Unos Roba Izveštaj korisnicima
i

Bilans roba Spas


Komintent podataka
Izmen
a Promet po... Pregledi
Grua roba
Dnevnik u-i Pregled
početnog

Magacina Kartoteka
Pr. Stanja pre
Svih zaliha i posle
Opština

2.2.1 Relacioni model podataka

Na osnovu definisanog projektnog zadatka a u cilju što efikasnijeg


manipulisanja podacima, uzimajići u obzir činjenicu da može biti više
desetina hiljada podataka, potrebno je izvršiti organizaciju podataka. U tu
svrhu koristi se metod E-R modelovanja podataka. Ovaj model omogućuje
analitičaru da identifikuje objekte i njihove veze. U smislu strukturne
analize, ovakvo modelovanje pruža detalje u vezi skladišta podataka i
njihovih veza prema procesima prikazanim u modelu toka podataka.

Osnovna karakteristika ovakvog modelovanja je kreiranje entiteta


odnosno pojma za koji postoji interes da se posmatra, odnosno da se
posmatraju neke od njegovih osobina. Te osobine nazivaju se obeležja ili
atributi. Svaki od entiteta sadrži određen skup osobina gde svaka konkretna

10
vrednost obeležja iz skupa osobina čini podatak. Takođe u skupu obeležja
postoji podskup koji se naziva identifikator entiteta odnosno primarni ključ.
Svi ostali atributi iz formiranog skupa dodatno opisuju entitet i mogu se po
potrebi pojaviti kao sekundarni ključevi.

Entiteti se dele na objekte, osobine i veze. Ulogu objekta obično


preuzimaju čvrsti (primarni) elementi sistema koji ne zavise od drugih
primarnih elemenata, ali i objekti koji su u određenom stepenu zavisni od
drugih. Osobine opisuju objekat koji se posmatra, dok su veze posebni
entiteti ili pridružene osobine koji povezuju dva ili više objekata.

Na osnovu E-R modela identifikovani su sledeći entiteti sa


pripadajućim atributima:

Entitet: ROBA

RED. ATRIBUT TIP PODATKA


BROJ
1. IDROBE AUTONUMBER PRIMARNI KLJUČ
2. IDGRROBE NUMBER
3. NAZIVROBE TEXT
4. JEDINICA TEXT
5. PAKOVANJE TEXT

Entitet: GRUPA ROBE

RED. ATRIBUT TIP PODATKA


BROJ
1. IDGRROBE NUMBER PRIMARNI KLJUČ
2. OPISGRROBE TEXT

Entitet: KOMINTENT

RED. ATRIBUT TIP PODATKA


BROJ
1. IDKOMINTENTA AUTONUMBER PRIMARNI KLJUČ
2. IME TEXT
3. ADRESA TEXT
4. TELEFON NUMBER
5. KONTAKTOSOBA TEXT
6. TRASAKCIONIRACUN NUMBER

11
Entitet: MAGACIN

RED. ATRIBUT TIP PODATKA


BROJ
1. SIFRAMAGACINA NUMBER PRIMARNI KLJUČ
2. LOKACIJA TEXT
3. SIFRALOKACIJE NUMBER
4. POSTANSKIBROJ NUMBER

Entitet: MESTA

RED. ATRIBUT TIP PODATKA


BROJ
1. POSTANSKIBROJ NUMBER PRIMARNI KLJUČ
2. NAZIV TEXT
3. SIFRAOPSTINE NUMBER

Entitet: OPŠTINE

RED. ATRIBUT TIP PODATKA


BROJ
1. SIFRAOPSTINE NUMBER PRIMARNI KLJUČ
2. NAZIV TEXT
3. POSTANSKIBROJ NUMBER

Entitet: PROMET

RED. ATRIBUT TIP PODATKA


BROJ
1. IDPROMET AUTONUMBER PRIMARNI KLJUČ
2. IDROBE NUMBER SEKUNDARNI KLJUČ
3. IDKOMINTENTA NUMBER SEKUNDARNI KLJUČ
4. IDMAGACINA NUMBER SEKUNDARNI KLJUČ
5. DATUMSTAVKE DATE/TIME SEKUNDARNI KLJUČ
6. KOLICINA NUMBER
7. JEDINICNIIZNOS NUMBER
8. SALDO NUMBER
9. STANJE NUMBER
10. IDTRANSAKCIJE NUMBER
11. BROJDOKUMENTA TEXT
12. VRSTADOKUMENTA NUMBER

12
Entitet: TRANSAKCIJE

RED. ATRIBUT TIP PODATKA


BROJ
1. IDTRANSAKCIJE NUMBER PRIMARNI KLJUČ
2. OPISTRANSAKCIJE TEXT
3. ULAZIZLAZ NUMBER
4. TIP TEXT TIP KOMINTENTA

Entitet: DOKUMENTI

RED. ATRIBUT TIP PODATKA


BROJ
1. IDDOKUMENTA NUMBER PRIMARNI KLJUČ
2. OPISDOKUMENTA TEXT
3. OPSEGOD NUMBER
4. OPSEGDO NUMBER

Entitet: POPIS

RED. ATRIBUT TIP PODATKA


BROJ
1. IDROBE NUMBER PRIMARNI KLJUČ
2. NAZIVROBE TEXT
3. JEDINICA TEXT
4. KOLICINA NUMBER
5. DATUMPOPISA DATE/TIME

Do kraja, definisano je deset entiteta sa definisanim atributima kao i


njihovim tipovima podataka gde se za svaki entitet utvrdio primarni a za
neke i sekundarni ključevi.

Da bi se eliminisala redundantnost podataka, posebna oblast pri


projektovanju baze podataka je normalizacija (prva, druga, treća, četvrta i
peta) forme podataka. Nakon normalizacije grubo formirane tabele dobijaju
znatno funkcionalniju formu. U konkretnom zadatku tabela promena ulaza i
tabela promena izlaza spajaju se u jednu tabelu koja obuhvata sve
neophodne elemente dok se redudantnost gubi.

Veze, odnosno relacije između ovih entiteta prikazani su na sledećoj


slici.

13
2.2.2 Izrada tabela

Nakon izvršene prve


normalizacije dobije se broj i veze
između tabela kao što je prikazano na
predhodnoj slici. Matična tabela je
tabela roba. Ona sadrži sve
neophodne atribute robe dok svi ostali
elementi direktno vezani za robu kao
što su grupa roba i elementi početnog
stanja odnosno popisa robe su svrstani
u posebne tabele a putem
jedinstvenog ključa direktno vezani za
tabelu roba. Tabela prometa je u stvari
najkompleksnija jer ona obuhvata
elemente iz svih tabela. Iz tog razloga,

14
formirana je na takav način da pored primarnog ključa IDPROMET ima
četiri strana ključa i to: IDROBE, IDKOMINTENTA, IDMAGACINA i
DATUMSTAVKE. Pored ključeva tabela sadrži još i atribute kao što su:
količina, jedinični iznos, saldo, tip transakcije, broj dokumenta i vrsta
dokumenta. Po karakteru podatka (Data Type) polja su definisana na sledeći
način: polje IDPROMET definisan je kao AutoNumber dok polja stranih
ključeva izuzev polja DATUMSTAVKE koji je definisan kao Date/Time,
definisani su kao Number iako su u tabelama u kojima predstavljaju
primarni ključ AutoNumber, jer se oni u ovu tabelu samo pozivaju. Polja
količina, jedinični iznos, saldo, tip transakcije, broj dokumenta i vrsta
dokumenta se definišu kao Number.

Sve tabele su kreirane korišćenjem Design View -a mada Access


dozvoljava kreiranje tabela i uz pomoć čarobnjaka (Create table by using
wizard),
importovanjem
tabela iz Microsoft
Excela - Import
Table ili Link
Table - čarobnjak
koji kreira tabelu
koja je "povezana"
(znači da ta tabela
nije u bazi koja se
kreira već u nekoj
drugoj, ali je
moguće pozvati iz
baze koja se kreira)
sa nekom tabelom iz
spoljne datoteke.

Kroz primer definisanja tabele prometa prikazan je način definisanja


svih tabela koje su formirane za potrebe kreiranja ove aplikacije. Kreirano je
deset tabena sa definisanim primarnim ključevima, kolonama i definisanim
poljima unutar tabela. Kao rezultat ovog dela projektovanja aplikacije
stvorena je osnova za nastavak razvoja aplikacije jer sada je moguće
formirati sve ostale elemente koji čine jednu aplikaciju odnosno formirati
forme za unos podataka, upite i izveštaje.

15
2.2.3 Izrada formi, upita i izveštaja

Na osnovu kreiranih tabela potrebno je formirati forme za unos


podataka. Naravno da se podaci mogu direktno unositi u tabele, ali potrebno
je omogućiti lak i ne smetan unos podataka koji mogu da koriste i priučeni
operateri na krajnje jednostavan način. U tu svrhu kreiraju se forme koje
sadrže sve elemente jednog sloga tabele ali imaju mnogo prijatniji izgled.

Forma je komponenta baze podataka čija je funkcija interakcija sa


korisnikom. Korisnik ne vidi tabele već forme. Forme se koriste za:

- unos podataka,
- stvaranje "switchboard"-a tj. forme iz koje se otvaraju druge forme,
pokreću upiti i tabele,
- stvaranje "dialog boxes"-a (upitnika) za primanje korisničkog unosa i
onda se na osnovi tog unosa nastavljaju akcije (primer je dialog box
kod parametarskih upita).

Kao i kod kreiranja tabela, Access nudi više mogućnosti za kreiranje


formi:

- Design view – stvaramo formu od praznog prozora forme, moramo


sam kreator dodavati sve kontrole na radnu površinu. Izgled forme
zavisi potpuno od autora i njegovim potrebama
- Form wizard – čarobnjak pomoću kojeg se može izgraditi osnovni
tipovi formi uključujući i subforme.
- Auto form : Colomunar – čarobnjak koji automatski stvara formu, a
kontrole slaže u redove.
- Auto form : Tabular – čarobnjak koji automatski stvara formu, a
kontrole slaže u kolone.
- Auto form : Datasheet – čarobnjak koji automatski stvara formu u
obliku tabele.
- Chart Wizard – čarobnjak koji pravi grafove iz odabranih polja i
stvara formu sa tim grafom.
- Pivot table wizard – čarobnjak koji stvara formu sa Excelovom
tabelom.

Forme za ovu aplikaciju kreirane su uz pomoć čarobnjaka ali nakon


što su kreirane korišćenjem dizain opcije poboljšavani su neki elementi kako

16
bi forme dobile na lepšem izgledu ali i funkcionalnocti (dodavanjem tastera
za izlaz iz forme).

Za potrebe ove
aplikacije kreirano je
deset formi od kojih
devet služe za
direktno unošenje
podataka u tabele,
dok je jedna forma
kreirana kao forma za
unos kriterijuma za
pretraživanje odnosno
kriterijume za upite.

Unošenjem podataka kroz forme popunjava se baza i tada se stvara


mogućnost za pretraživanje podataka po različitim kritetijumima. U tu svrhu
formiraju se upiti odnosno Query. Dakle, upit je komponenta baze podataka
kojom se koristimo kada se želi naći, izvući i/ili promeniti određeni podatak
ili grupa podataka, iz jedne ili više tabela, pored toga oni se mogu koristiti
kao podloga za izveštaje ili forme. Baš kod kreiranja upita najviše do
izražaja dolaze ključevi koji su definisani pri formiranju tabela. Oni sada
omogućuju da se iz tabela mogu izdvajati samo pojedini atributi, i time se
umnogome olakšava i ubrzava pretraga podataka.

Takođe, kao i kod tabela za kreiranje upita otvorita se upit grupa i


odabira New gde Access nudi takođe više izbora za način kreiranja upita, i
to:

- Design View – Otvara prazan upit u koji autor sam postavlja polja
koja želi u njemu.
- Simple query wizard – Čarobnjak koji ubrzava i pojednostavljuje
proces, odabira polja u upitu (preporučeno korištenje).
- Crosstab query wizard – Čarobnjak koji kreira crosstab upite.
- Find Duplicates query wizard – Čarobnjak koji stvara upit iz jedne
tabele ili upita, a prikazuje redove koji imaju istu vrednost u nekom
polju.

17
- Find Unmached query wizard – Čarobnjak koji traži redove iz jedne
tabele koji nisu povezani ni sa jednim redom u drugoj tabeli.

Za potrebe ove aplikacije kreirano je trinaest upita najvećim delom za


filtriranje podataka namenjenih formiranju izveštaja ali i kao pomoćni
podatak na formama koji, konkretno, daje podatak o trenutnom stanju
materijala na zalihama.

U okviru upita (polje Criteria) mogu se definisati konkretni kriterijumi


gde se dodatno filtriraju podaci gde se unosom teksta u uglaste zagrade u
datom polju pri otvaranju upita pojavljuje prozor sa naredbom za unos
parametarske veličine.

18
Takođe, moguće je i formiranje formi koje će olakšavati unos
kriterijuma za pretraživanje i sortiranje gde se na jednoj formi mogu uneti
više kriterijuma za više upita. Za potrebe ove aplikacije kreirana je jedna
takva forma iz koje je unosom karakterističnih vrednosti moguće formirati
tri različita upita.

Pored uvođenja kriterijuma pri kreiranju upita moguće je korišćenje


kako prostih tako i složenijih matematičkih funkcija unutar izvedenih
podataka putem pretrage.

Izveštaji se koriste kada se želi neka grupa podataka, najčešće


dobijena kroz upite, pripremiti za štampu. U osnovi izveštaj se ne razlikuje
mnogo od forme, izuzev što je u izveštaju moguće samo gledati podatke.

Izveštaji se kreiraju na isti način na koji se kreiraju i forme, znači uz


pomoć čarobnjaka ili direktno u Design wiev-u gde kreator aplikacije ima
veću slobodu pri grafičkom uređivanju tj. slobodnije može stavljati slike,
birati izgled i boju fonta,... Pored toga u samom izveštaju moguće je računati
sume, proseke, izvoditi totale, itd.

19
Za potrebe ove aplikacije kreirano je dvanaest izveštaja i to tako da se
osnovna forma izveštaja kreirala uz pomoć čarobnjaka a potom detalji
korigovani u Design wiev-u.

2.2.4 Izrada switchboarda

Nakon što su na osnovu kreiranih tabela formirane forme, upiti i


izveštaji potrebno ih je objediniti u jednu jedinstvenu celinu, odnosno
kreirati korisnički interface gde će na jednoj masci na ekranu korisnika biti
omogućeno lako i jednostavno korišćenje elemenata baze. U tu svrhu Access
omogućava kreiranje forme, odnosno SWITCHBOARD-a. Ova forma kreira
se tako da pokretanjem baze automatski se pokrece Switchboard i program
je aktiviran.

20
Na početnoj masci može se kreirati takav raspored funkcija pozivanja
elemenata baze da zadovoljava šelje i/ili potrebe korisnika u zavisnosti šta se
želi raditi. Ako se, pri projektovanju aplikacije sadržaj i raspored elemenata
aplikacije usmerava ka korisniku tada je na prvoj strani potrebno postaviti
pre svega one elemente baze koji se najčešće koriste u radu a pored toga
bitno je i kreirati logičke celinegde će se otvoriti mogućnost orvaranja
podmaski sa svim elementima koji čine jednu celinu.

Po navedenoj formuli formipanja maske na Switchboard-u na prvoj


strani redom pozivaju se prvo forme PROMET ROBE, ROBA i
KOMINTENTI gde se direktno otvaraju forme za unos podataka u bazu kao
elementi aplikacije koji se izuzetno često koriste u radu. Potom, slede
ŠIFARNICI, IZVEŠTAJI i POPIS ROBE – INVENTAR kao elementi
aplikacije koji su grupisani u funkcionalne celine koji otvaraju nove maske
sa sadržajem koji čini tu oblast npr POPIS ROBE – INVENTAR sadrži
sledeće elemente POPISNA LISTA, PREGLED STANJA VIŠAK-MANJAK
i UNOS POČETNOG STANJA kao elemente maske. Naravno iz svake pod
maske
postoji i
opcija
vraćanja na
glavni meni
dok na
glavnom
meniju
postoji
opcija
izlaska iz
aplikacije.

2.2.5 Moduli i VBA

21
Kao što je već na početku pomenuto pored osnovnih elemenata
Access baza može da sadrži i Data Access strane, makroe i/ili VBA module
(Visual Basic for Application - programski jezik za programiranje operacija
u Office aplikacijama). Svrha ovih elemenata je nadogradnja osnovnog
oblika baze u cilju maksimalne moguće prilagođenosti baze ka njenom
korisniku i ispunjenja posebnih zahteva korisnika.

Za potrebe ove aplikacije pri projektovanju korišćene su procedure


kucane u VBA i to za sledeće slučajeve:

1. Dvoklikom na polje ID GRUPA ROBE u formi za unos podataka


robe otvara se forma za unos podataka grupe robe a da se pri tom
forma za unos podataka robe ne zatvara.

Ova procedura znatno olakšava sam rad u aplikaciji jer već započet
posao unošenja podataka u polja forme robe se ne prekida ukoliko slučajno
ne postoji izbor grupe robe u padajućem meniju na formi roba. Dvoklikom
na polje ID GRUPA ROBE otvara se forma za unos podataka grupe robe i
nakon što se unesu novi podaci forma grupe robe se zatvara i nesmetano se
nastavlja unos podataka u formu robe.

Za izvršenje ove procedure potrebno je programirati polje padajućeg


menija ID GRUPE ROBE sledećim kodom:

22
2. U formi promet robe procedura u polju padajućeg menija ID
ROBE čiji je zadatak da u slučaju da je došlo do ne slaganja
između šifre robe i naziva robe upozori operatera porukom.

Kod za ovu proceduru ima sledeći oblik:

Private Sub IDROBE_LostFocus()


Dim RS As ADODB.Recordset
Dim STRSQL As String

STRSQL = "SELECT TBL_PROMET.STANJE,


MAX(DATUMSTAVKE)" & _
" FROM TBL_PROMET WHERE TBL_PROMET.IDROBE=" &
IDROBE & " GROUP BY TBL_PROMET.STANJE"
Set RS = New ADODB.Recordset
RS.Open STRSQL, g_cn, adOpenStatic
If RS.EOF Then

23
MsgBox "Neispravna sifra"
Exit Sub
Else
STANJE = RS(0)
End If

End Sub

3. U formi promet robe procedura čiji je zadatak da nakon što se


unesu podaci vezani za određen tip robe u polju trenutna količina
pokaže koliko je trenutno stanje artikla i da u slučaju pokušaja
smanjenja količine upozori da ta transakcija nije moguća.

Kod za ovu proceduru ima sledeći oblik:

Private Sub Form_BeforeUpdate(Cancel As Integer)


If TIPTRANSAKCIJE.Column(2) = -1 Then
STANJE = STANJE - KOLICINA
If STANJE < 0 Then

24
MsgBox "NA LAGERU NE POSTOJI TOLIKA KOLICINA
ROBE!"
STANJE = STANJE + KOLICINA
Cancel = 1
End If
Else
STANJE = STANJE + KOLICINA
End If
End Sub

4. U formi IZVEŠTAJ PO VRSTI ROBE, KUPCU I PERIODU


komandnim dugmićima su date procedure otvaranja konkretnih
izveštaja sa parametrima zadatim u predhodno popunjenim
poljima.

Kod za ove procedure ima sledeći oblik:

Private Sub CMDKUPAC_Click()


DoCmd.OpenReport "RPT_POKUPCU", acViewPreview, , "IME='"
& IME & "'"

End Sub

Private Sub CMDPERIOD_Click()

25
DoCmd.OpenReport "RPT_PROMEToddo", acViewPreview, ,
"DATUMSTAVKE BETWEEN FORMAT$('" & DATUMOD & "','DD MM
YYYY') AND FORMAT$('" & DATUMDO & "','DD MM YYYY')"

End Sub

Private Sub CMDVRSTA_Click()


DoCmd.OpenReport "RPT_PROMETPOVRSTI", acViewPreview, ,
"NAZIVROBE='" & Combo19 & "'"
End Sub

5. U svim formama na dodatim komandnim dugmićima su date


procedure za unos novog sloga u bazu podataka, kao i za izlaz iz
fome u kojoj se korisnik nalazi.

Kod za ove procedure ima sledeći oblik:

Private Sub Command14_Click()


On Error GoTo Err_Command14_Click

DoCmd.Close

Exit_Command14_Click:
Exit Sub
Err_Command14_Click:
MsgBox Err.Description
Resume Exit_Command14_Click
End Sub

Private Sub Command15_Click()


On Error GoTo Err_Command6_Click

DoCmd.GoToRecord , , acNewRec

Exit_Command6_Click:
Exit Sub
Err_Command6_Click:
MsgBox Err.Description
Resume Exit_Command6_Click
End Sub

26
3. ZAKLJUČAK

Baze podataka danas predstavljaju neizbežan alat u poslovanju svake


firme. Laka dostupnost bazama (Access u okviru Microsoft Office-a)
uslovila je da praktično ne postoji firma koja nema ma kakvu bazu podataka
što je i pokazano ovim seminarskim radom da se na vrlo jednostavan način
može kreirati baza podataka koja može da zadovolji većinu prosečnih
korisnika.

Ovim seminarskim radom želelo se pokazati osnonovni elementi


kreiranja aplikacije ROBNO POSLOVANJE. Aplikacija sadrži samo
osnovne elemente robnog poslovanja ali ostaje otvorena za sve vrste dorada i
dopuna ne bi li se mogla direktno primeniti i prilagoditi željama i potrebama
konkretnog poslovanja.

27