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

Access +Visual Basic

  • Upload
    -

  • View
    66

  • Download
    8

Embed Size (px)

DESCRIPTION

seminarski

Citation preview

Page 1: Access +Visual Basic

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

Page 2: Access +Visual Basic

SADRŽAJ

SADRŽAJ............................................................................................................................21. UVOD..............................................................................................................................3

1.1 BAZE PODATAKA - ACCESS.................................................................................31.2 OSNOVNI ELEMENTI KREIRANJA BAZA U ACCESS-U..................................4

1.2.1 TABELE..............................................................................................................41.2.2 FORME...............................................................................................................51.2.3 UPITI..................................................................................................................61.2.4 IZVEŠTAJI.........................................................................................................6

2. ZADATAK.......................................................................................................................82.1 OSNOVNE KARAKTERISTIKE APLIKACIJE......................................................8

2.1.1 ULAZNI PODACI APLIKACIJE......................................................................82.1.2 INTERAKTIVNI RAD.......................................................................................82.1.3 ŠTAMPANI IZVEŠTAJI.....................................................................................9

2.2 ANALIZA I ZRADA APLIKACIJE..........................................................................92.2.1 Relacioni model podataka.................................................................................102.2.2 Izrada tabela......................................................................................................14 2.2.3 Izrada formi, upita i izveštaja...........................................................................162.2.4 Izrada switchboarda..........................................................................................202.2.5 Moduli i VBA...................................................................................................21

3. ZAKLJUČAK................................................................................................................27

2

Page 3: Access +Visual Basic

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

Page 4: Access +Visual Basic

- 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

Page 5: Access +Visual Basic

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

Page 6: Access +Visual Basic

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

Page 7: Access +Visual Basic

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

Page 8: Access +Visual Basic

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

Page 9: Access +Visual Basic

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

Page 10: Access +Visual Basic

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

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

Robno poslovanje

Pregledi

Pregled početnog

Pr. Stanja pre i posle

Pregledi i izveštaji

Šifarnici Administracija

Rad sa korisnicima

Spas podataka

Promet

Unos

Izmena

Roba

Komintent

Grua roba

Magacina

Opština

Izveštaji

Bilans roba

Promet po...

Dnevnik u-i

Kartoteka

Svih zaliha

10

Page 11: Access +Visual Basic

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. BROJ

ATRIBUT TIP PODATKA

1. IDROBE AUTONUMBER PRIMARNI KLJUČ2. IDGRROBE NUMBER3. NAZIVROBE TEXT4. JEDINICA TEXT5. PAKOVANJE TEXT

Entitet: GRUPA ROBE

RED. BROJ

ATRIBUT TIP PODATKA

1. IDGRROBE NUMBER PRIMARNI KLJUČ2. OPISGRROBE TEXT

Entitet: KOMINTENT

RED. BROJ

ATRIBUT TIP PODATKA

1. IDKOMINTENTA AUTONUMBER PRIMARNI KLJUČ2. IME TEXT3. ADRESA TEXT4. TELEFON NUMBER5. KONTAKTOSOBA TEXT6. TRASAKCIONIRACUN NUMBER

11

Page 12: Access +Visual Basic

Entitet: MAGACIN

RED. BROJ

ATRIBUT TIP PODATKA

1. SIFRAMAGACINA NUMBER PRIMARNI KLJUČ2. LOKACIJA TEXT3. SIFRALOKACIJE NUMBER4. POSTANSKIBROJ NUMBER

Entitet: MESTA

RED. BROJ

ATRIBUT TIP PODATKA

1. POSTANSKIBROJ NUMBER PRIMARNI KLJUČ2. NAZIV TEXT3. SIFRAOPSTINE NUMBER

Entitet: OPŠTINE

RED. BROJ

ATRIBUT TIP PODATKA

1. SIFRAOPSTINE NUMBER PRIMARNI KLJUČ2. NAZIV TEXT3. POSTANSKIBROJ NUMBER

Entitet: PROMET

RED. BROJ

ATRIBUT TIP PODATKA

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 NUMBER7. JEDINICNIIZNOS NUMBER8. SALDO NUMBER9. STANJE NUMBER10. IDTRANSAKCIJE NUMBER11. BROJDOKUMENTA TEXT12. VRSTADOKUMENTA NUMBER

12

Page 13: Access +Visual Basic

Entitet: TRANSAKCIJE

RED. BROJ

ATRIBUT TIP PODATKA

1. IDTRANSAKCIJE NUMBER PRIMARNI KLJUČ2. OPISTRANSAKCIJE TEXT3. ULAZIZLAZ NUMBER4. TIP TEXT TIP KOMINTENTA

Entitet: DOKUMENTI

RED. BROJ

ATRIBUT TIP PODATKA

1. IDDOKUMENTA NUMBER PRIMARNI KLJUČ2. OPISDOKUMENTA TEXT3. OPSEGOD NUMBER4. OPSEGDO NUMBER

Entitet: POPIS

RED. BROJ

ATRIBUT TIP PODATKA

1. IDROBE NUMBER PRIMARNI KLJUČ2. NAZIVROBE TEXT3. JEDINICA TEXT4. KOLICINA NUMBER5. 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

Page 14: Access +Visual Basic

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

Page 15: Access +Visual Basic

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

Page 16: Access +Visual Basic

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

Page 17: Access +Visual Basic

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

Page 18: Access +Visual Basic

- 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

Page 19: Access +Visual Basic

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

Page 20: Access +Visual Basic

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

Page 21: Access +Visual Basic

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

Page 22: Access +Visual Basic

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

Page 23: Access +Visual Basic

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.RecordsetDim 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

Page 24: Access +Visual Basic

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

Page 25: Access +Visual Basic

MsgBox "NA LAGERU NE POSTOJI TOLIKA KOLICINA ROBE!" STANJE = STANJE + KOLICINA Cancel = 1 End If Else STANJE = STANJE + KOLICINA End IfEnd 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

Page 26: Access +Visual Basic

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 SubErr_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 SubErr_Command6_Click: MsgBox Err.Description Resume Exit_Command6_ClickEnd Sub

26

Page 27: Access +Visual Basic

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