104
Univerzitet u Novom Sadu Tehnički fakultet »Mihajlo Pupin« Zrenjanin Informacioni sistem Maloprodajnog objekta -seminarski rad- Informacioni sistemi-Informacioni sistemi u obrazovanju Profesor: Dr Biljana Radulović Student: Katarina Brkić 98⁄95-021

Maloprodajni objekat

Embed Size (px)

Citation preview

Page 1: Maloprodajni objekat

Univerzitet u Novom SaduTehnički fakultet »Mihajlo Pupin«

Zrenjanin

Informacioni sistem Maloprodajnog objekta-seminarski rad-

Informacioni sistemi-Informacioni sistemi u obrazovanju

Profesor: Dr Biljana Radulović Student: Katarina Brkić 98⁄95-021Asistent: Mr Ljubica Kazi Smer: Profesor informatike

Zrenjanin, 2009.

Page 2: Maloprodajni objekat

Sadržaj:

1. Uvod........................................................................................................................................32. Opis posla................................................................................................................................33. Snimak stanja..........................................................................................................................4

3.1. Postojeće stanje realnog sistema......................................................................................43.2. Spisak dokumenata..........................................................................................................53.3. Organizaciona struktura i povezanost sa drugim sistemina.............................................53.4. Radna mesta, odgovornosti i ovlašćenja..........................................................................53.5. Zakonska regulativa.........................................................................................................63.6. Lokalna pravila poslovanja..............................................................................................63.7. Problemi...........................................................................................................................63.8. Potrebe.............................................................................................................................63.9. Odluke..............................................................................................................................63.10. Automatizmi..................................................................................................................73.11. Perspektive razvoja sistema...........................................................................................73.12. Organizacija rada...........................................................................................................7

4. Model procesa-Strukturna sistem analiza...............................................................................84.1. Stablo procesa..................................................................................................................84.2. Dijagrami toka podataka.................................................................................................94. 3. Rečnik Podataka............................................................................................................18

4.3. 1. Spisak elementarnih podataka................................................................................184.3.2. Struktura tokova podataka......................................................................................214.3.3. Struktura skladišta podataka...................................................................................29

5. Modeli Podataka...................................................................................................................375.1. ER Model.......................................................................................................................37

5.1.1. Podmodeli...............................................................................................................375.1.2. Spisak entiteta sa atributima, tipovima podataka i identifikacionim obeležjima....50

6. Opis aplikacije......................................................................................................................586.1. O aplikaciji.....................................................................................................................586.2. Hardverski i softverski zahtevi aplikacije......................................................................586.3. Korišćenje......................................................................................................................58

6.3.1. Opšte napomene u vezi programa...........................................................................586.3.2. Prikaz aplikacije......................................................................................................61

7. Literatura...............................................................................................................................83

Page 3: Maloprodajni objekat

1. Uvod

Za potrebe seminarskog rada izabran je informacioni sistem maloprodajnog objekta. Ovaj objekat se nalazi u sastavu firme D.O.O. „Donić“ koja se bavi trgovinom na veliko i malo ( veleprodaja i maloprodaja) robom iz asortimana: bela tehnika, električni aparati za domaćinstvo, ... Firmu čine: direkcija, šest maloprodajnih objekata, magacin i prevoz.

2. Opis posla

Na početku poslovne godine vrši se otvaranje trgovačke knjige (datum otvaranja trgovačke knjige, za godinu, početno stanje). Kao početno stanje uzima se:

- ako je objekat tek počeo da radi (prvi put se vodi trgovačka knjiga) 0.00 (nula)- inače za početno stanje uzima se ukupno stanje iz prethodne poslovne godine (ukupno

zaduženje – ukupno razduženje)

Na osnovu uvida u stanje robe u maloprodajnom objektu vrši se naručivanje robe iz magacina. Poslovođa sastavlja dokument na osnovu koga se roba naručuje iz magacina (šifra robe, količina). Iz magacina roba se prevozi do objekta. Roba se u radnji zadužuje po Kalkulacijama. Kalkulacija se dobija u dva primerka. Poslovođa ili trgovac potpisuje kalkulaciju i jedna kopija se zadržava a druga vraća. Kopija se upisuje u trgovačku knjigu i skladišti u registar. Roba se izlaže u radnji. Svaka roba mora da bude obeležena šifrom i cenom.

Kupac može da bude fizičko ili pravno lice. Ukoliko je kupac fizičko lice njemu se izdaje fiskalni isečak. Ukoliko je kupac pravno lice njemu se uz fiskalni isečak izdaje faktura (račun). Naophodno je da se tom prilikom unese redni broj fiskalnog isečka na osnovu koga je evidentiran promet u fiskalnoj kasi. Fiskalni račun se radi u dva primerka (jedan primerak za kupca, a drugi za knjigu dnevnih izveštaja). Načini plaćanja prilikom kupovine mogu biti: gotovina, ček ili kartica. Sredstva plaćanja se mogu kombinovati tako da deo računa bude plaćen, na primer čekom, a ostatak računa karticom ili gotovinom. Napomena: uplata posredstvom žiro-računa (faktura) u fiskalnoj kasi se evidentira kao ček.

Ukoliko je potrebno robu dostaviti kupcu od kupca se uzimaju podaci neophodni za dostavu robe (ime, prezime, adresa, telefon) i određuje datum za dostavu robe. Poslovođa ili trgovac sastavlja nalog za dostavu robe i dostavlja prevozniku.

Kupac može da se odluči da vrati kupljenu robu pri čemu je potrebno da donese fiskalni isečak i ličnu kartu. U blok za ispravku računa (nalog za ispravku) unosi se broj fiskalnog isečka, upisuje stavka, podaci o kupcu (ime i prezime, JMBG) i vraća novac.

U slučaju nemogućnosti korišćenja fiskalne kase (tehnički pregled, oštećenje fiskalne kase... ) izdaje se fiskalni račun (u dva primerka-jedan primerak za potrebe kupca, a drugi za knjigu dnevnih izveštaja)

Page 4: Maloprodajni objekat

U slučaju da dođe do promene cene robe iz direkcije se dobija dokument Nivelacija koji sadrži podatke o staroj i novoj ceni. Kao i u slučaju kalkulacije, nivelacija se dobija u dva primerka. Nivelacija se potpisuje i jedan primerak se zadržava a drugi vraća. Nivelacija se upisuje u trgovačku knjigu i skladišti u registar.

Kada je robu potrebno vratiti (za potrebe drugog maloprodajnog objekta ili iz bilo kog drugog razloga) sastavlja se dokument Povratnica kojim se roba vraća u magacin. Povratnica se radi u dva primerka i postupak je isti kao i kod kalkulacije i nivelacije.

Na kraju dana se vrši unošenje podataka u trgovačku knjigu o ostvarenom prometu (pazar u gotovom, ček, kartice). Na kraju radnog dana formira se dnevni izveštaj (iz fiskalne kase ) i u knjigu dnevnih izveštaja unose se podaci o:

- datumu formiranja dnevnog izveštaja i - redni broj dnevnog izveštaja

U knjigu dnevnih izveštaja unose se podaci o broju naloga za ispravku, broj izdatih faktura i broj izdatih fiskalnih računa.

Jednom godišnje vrši se popis robe u maloprodajnom objektu, gde se utvrđuje stvarno brojno stanje robe. Za potrebe popisa koristi se popisna lista. Popisna lista se skladišti u registar.

Na kraju godine vrši se zaključivanje trgovačke knjige. Sumiraju se podaci o ukupnom zaduženju i ukupnom razduženju (datum zatvaranja trgovačke knjige, ukupno stanje robe). Ispravnost trgovačke knjige potvrđuje direktor svojim potpisom.

3. Snimak stanja

3.1. Postojeće stanje realnog sistema

Stanje realnog sistema

Realni sistem je maloprodajni objekat koji se nalazi u sastavu firme D.O.O. „Donić“ koja se bavi trgovinom na veliko i malo (veleprodaja i maloprodaja) robom iz asortimana: bela tehnika, električni aparati za domaćinstvo,...

Stanje informacionog sistema

Ne postoji softversko rešenje (informacioni sistem) koje odgovara potrebama maloprodajnog objekta, a u skladu sa ranije navedenim opisom posla. Za obavljanje poslova u maloprodajnom objektu koriste se standardna dokumenta kao što su: trgovačka knjiga, blok za ispravku računa, blok za izdavanje računa, knjiga dnevnih izveštaja, popisna lista. Za izradu pojedinih dokumenata kao što su: naruđžbina, faktura(račun), nalog za dostavu robe, povratnica koristi se Microsoft Word program. Za izdavanje fiskalnog isečka koristi se fiskalna kasa (ComTrade ONE-P). Maloprodajni objekat poseduje računar i štampač.

Page 5: Maloprodajni objekat

Plan razvoja realnog sistema

Maloprodajni objekat je u sastavu firme D.O.O. „Donić“ i u skladu sa promenama u poslovanju firme menjaće se i rad maloprodajnog objekta.

Plan razvoja informacionog sistema

Fiskalna kasa biće zamenjena fiskalnim štampačem koji se povezuje na računar tako da će se objedini rad fiskalnog štampača i računara (odnosno realizovanog softverskog rešenja). Nakon izrade softverskog rešenja koje bi pokrilo poslovanje maloprodajnog objekta radiće se na izradi rešenja koje bi objedinilo i pokrilo poslovanje firme u celini.

3.2. Spisak dokumenata

- Dokumenta koja se koriste u sistemu, primaju: kalkulacija, nivelacija - Dokumenta koja se formiraju, izdaju: trgovačka knjiga, naruđžbina, fiskalni isečak,

faktura, knjiga dnevnih izveštaja, nalog za dostavu robe, nalog za ispravku, fiskalni račun, povratnica, popisna lista

3.3. Organizaciona struktura i povezanost sa drugim sistemina

- Interna organizaciona struktura ne postoji, jer ne postoje posebne organizacione jedinice. Maloprodajni objekat kao najmanje organizacione jedinice ima radna mesta.

- Povezanost sa drugim sistemima:

Direkcija-nivelacijaPrevoz-kalkulacija, nalog za dostavu robe, povratnicaMagacin-podaci o stanju robe u magacinu, porudžbinaDirektor-trgovačka knjiga (potpisivannje)Kupac-podaci o kupcu, fiskalni isečak (za povratak robe), faktura

3.4. Radna mesta, odgovornosti i ovlašćenja

U maloprodajnom objektu rade poslovođa i dva trgovca. Poslovođa je odgovoran za ispravno vođenje trgovačke knjige, knjige dnevnih izveštaja i sve ostale dokumentacije. Trgovci obavljaju osnovne poslove u maloprodajnom objektu (prodaja, ...).

Page 6: Maloprodajni objekat

3.5. Zakonska regulativa

Maloprodajni objekat posluje prema važećim zakonima u datoj oblasti (Zakon o fiskalnim kasama, zakon o trgovini, ...)

3.6. Lokalna pravila poslovanja

Način dostave i rok za dostavu robe, rok za uplatu računa, ...

3.7. Problemi

Problemi postojećeg informacionog sistema

Ne postoji softversko rešenje (informacioni sistem). Za obavljanje poslova u maloprodajnom objektu koriste se standardna dokumenta, i dokumenta urađena u Micrisoft Word programu čime je otežano praćenje dokumentacije ( ne postoji brz pristup odgovarajućoj dokumentaciji), pregled dokumenata po raznim kriterijumima. Ne postoji mogućnost generisanja raznih statistika(one koje se mogu dobiti iz fiskalne kase nisu pregledne i ne zadovoljavaju sve potrebe). Ne postoji veza sa ostalim objektima u sastavu firme (ne postoji direktan uvid u stanje robe u magacinu).

Uticaj na osnovne delatnosti realnog sistema

Nema brzog pristupa odgovarajućim podacima (stanje robe u magacinu, uvid u dokumentaciju).

3.8. Potrebe

Pregled robe u maloprodajnom objektu (stanje robe u maloprodajnom objektu i formiranje spiska robe u maloprodajnom objektu), vođenje trgovačke knjige (pregled i štampanje).

3.9. Odluke

Maloprodajni objekat ima ovlašćenja za manji krug odluka, odluke se donose na nivou direkcije (direktor).

Page 7: Maloprodajni objekat

3.10. Automatizmi

Automatsko ažuriranje trgovačke knjige po evidentiranju odgovarajuće dokumentacije (kalkulacija, nivelacija, povratnica), sva izračunavanja.

3.11. Perspektive razvoja sistema

Nakon realizacije softverskog rešenja koje odgovara potrebama maloprodajnog objekta, a u skladu sa opisom posla, nabaviće se fiskalni štampač i povezati sa računarom. Time će u potpunosti biti pokriveno poslovanje maloprodajnog objekta. Naredne faze će se odnositi na izradu softverskog rešenja za potrebe ostalih delova (objekata) firme i objedinjavanja u jednu celinu.

3.12. Organizacija rada

Svi zaposleni imaju predznanja za rad na računaru, a softversko rešenje će pokriti potrebe maloprodajnog objekta.

Page 8: Maloprodajni objekat

4. Model procesa-Strukturna sistem analiza

4.1. Stablo procesa

0. IS Maloprodajnog objekta

1. Otvaranje trgovačke knjige

2. Nabavka robe 2.1. Sastavljanje porudžbine

2.2. Evidentiranje kalkulacije

3.Izdavanje računa 3.1. Sastavljanje računa

3.2. Sastavljanje fiskalnog računa

4. Formiranje naloga za dostavu robe

5. Formiranje naloga za ispravku računa

6. Evidentiranje nivelacije

7. Sastavljanje povratnice

8. Formiranje dnevnih izveštaja 8.1.Evidentiranje podataka o ostvarenom prometu

8.2. Evidentiranje podataka u knjizi dnevnih izveštaja

9. Zatvaranje poslovne godine9.1.Evidentiranje popisne liste9.2 .Zaključivanje trgovačke knjige

Page 9: Maloprodajni objekat

4.2. Dijagrami toka podataka

Kontekst dijagram-IS Maloprodajnog objekta

Page 10: Maloprodajni objekat

Dijagram toka podataka 1. nivo – Maloprodajni objekat

Page 11: Maloprodajni objekat
Page 12: Maloprodajni objekat
Page 13: Maloprodajni objekat

Dijagram toka podataka 2. nivo-Nabavka robe

Page 14: Maloprodajni objekat

Dijagram toka podataka 2. nivo - Izdavanje računa

Page 15: Maloprodajni objekat

Dijagram toka podataka 2. nivo - Formiranje dnevnih izveštaja

Page 16: Maloprodajni objekat

Dijagram toka podataka 2. nivo - Zatvaranje poslovne godine

Page 17: Maloprodajni objekat
Page 18: Maloprodajni objekat

4. 3. Rečnik Podataka

4.3. 1. Spisak elementarnih podataka

Naziv Tip adresa_firme VA40 adresa_kupca VA40 adresa_magacina VA40 adresa_maticne_firme VA40 adresa_objekta VA40 adresa_prodavnice VA40 adresa_stanovanja_zaposlenog VA40 brlk_zaposlenog A6 broj_dokumenta VA9 broj_fiskalne_kase VA9 broj_fiskalnog_isecka LI broj_fiskalnog_racuna LI broj_izdatih_fiskalnih_racuna BT broj_izdatih_racuna BT broj_kalkulacije VA9 broj_naloga_za_dostavu VA9 broj_naloga_za_ispravku_racuna VA9 broj_nivelacije VA9 broj_objekta BT broj_popisne_liste VA9 broj_porudzbine VA9 broj_povratnice VA9 broj_prodavnice BT broj_racuna LI cek MN cena MN datum_dostave_robe D datum_fiskalnog_racuna D datum_formiranja_dnevnog_izvestaja D datum_ispravke_racuna D datum_izdavanja_fiskalnog_isecka D datum_kalkulacije D datum_knjizenja D datum_naloga_za_dostavu D datum_nivelacije D datum_otvaranja_trgovacke_knjige D datum_popisa_robe D datum_porudzbine D datum_povratnice D datum_prijema_kalkulacije D datum_prijema_nivelacije D datum_racuna D datum_uplate_na_ziro_racun D datum_zakljucivanja_trgovacke_knjige D delatnost VA5 e_mail_firme VA40 e_mail_maticne_firme VA40 e_mail_objekta VA40 fax_firme VA15 fax_maticne_firme VA15

Page 19: Maloprodajni objekat

Naziv Tip fax_objekta VA15 fiksni_telefon_zaposlenog VA15 fiksni_telefon_kupca VA15 fs_racun_izdao_ime VA20 fs_racun_izdao_prezime VA20 gotovina MN ime_kupca VA20 ime_zaposlenog VA20 iznos_uplate MN jedinica_mere VA5 jedinica_mere_narucene_robe VA5jedinica_mere_robe_u_magacinu VA5JMBG_zaposlenog A13 JMBG_kupca A13 JMBG_odgovorno_lice A13 kalkulaciju_potpisao_ime VA20 kalkulaciju_potpisao_prezime VA20 kartica MN kolicina N kolicina_narucene_robe Nkolicina_robe_u_magacinu Nmarza N maticni_broj VA9 mesto_firme VA30 mesto_kupca VA30 mesto_magacina VA30 mesto_maticne_firme VA30 mesto_objekta VA30 mesto_prodavnice VA30 mesto_stanovanja_zaposlenog VA30 mobilni_telefon_zaposlenog VA15 mobilni_telefon_kupca VA15 mp_cena MN nacin_placanja VA30 nalog_formirao_ime VA20 nalog_formirao_prezime VA20 nalog_za_dr_sastavio_ime VA20nalog_za_dr_sastavio_prezime VA20naziv_firme VA40 naziv_maticne_firme VA50 naziv_objekta VA40 naziv_robe VA50 naziv_robe_u_magacinu VA50naziv_robe_za_narucivanje VA50nivelaciju_potpisao_ime VA20 nivelaciju_potpisao_prezime VA20 nova_cena MN odgovorni_lice_ime VA20 odgovorno_lice_firme_ime VA20 odgovorno_lice_firme_prezime VA20 odgovorno_lice_prezime VA20 opis_knjizenja VA30 PDV_maticne_firme VA9 PIB_firme VA9 PIB_maticne_firme VA9 po_fiskalnom_isecku LI po_fiskalnom_racunu LI pocetno_stanje MN popis_robe_vrsio_ime VA20

Page 20: Maloprodajni objekat

Naziv Tip popis_robe_vrsio_prezime VA20 porez BT porudzbinu_sastavio_ime VA20 porudzbinu_sastavio_prezime VA20 poslovna_funkcija VA40 povratnicu_sastavio_ime VA20 povratnicu_sastavio_prezime VA20 prezime_kupca VA20 prezime_zaposlenog VA20 proizvodjac VA50 proizvodjac_narucene_robe VA50proizvodjac_robe_u_magacinu VA50rabat N racun_izdao_ime VA20 racun_izdao_prezime VA20 racun_primio_ime VA20 racun_primio_prezime VA20 razduzenje MN razlog_sastavljanja_povratnice VA80 rb_stavke_naloga_za_ispravku_racuna BTredni_broj_dnevnog_izvestaja LI redni_broj_knjizenja I redni_broj_stavke_fr I redni_broj_stavke_kalkulacije I redni_broj_stavke_knjige_di LIredni_broj_stavke_nivelacije I redni_broj_stavke_popisne_liste I redni_broj_stavke_porudzbine I redni_broj_stavke_povratnice I redni_broj_stavke_racuna I redni_broj_stavke_robe_za_dostavu I robu_dostaviti_na_adresu VA40 robu_dostaviti_u_mesto VA30 rok_za_uplatu D sifra_magacina VA8 sifra_objekta VA8 sifra_prodavnice VA8 sifra_robe VA5 sifra_robe_u_magacinu VA5sifra_robe_za_narucivanje VA5stara_cena MN svrha_popisa VA30 telefon_firme VA15 telefon_maticne_firme VA15 telefon_objekta VA15 tk_potpisao_ime VA20 tk_potpisao_prezime VA20 ukupan_broj_naloga_za_ispravku_racuna

BT

ukupno_stanje_robe MN uplaceni_iznos MN za_godinu I zaduzenje MN zaposlen_u_objektu_naziv VA40zaposlen_u_objektu_broj BTziro_racun_maticne_firme VA30

Page 21: Maloprodajni objekat
Page 22: Maloprodajni objekat

4.3.2. Struktura tokova podataka

KALKULACIJA:

< SIFRA_PRODAVINE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, BROJ_KALKULACIJE, DATUM_KALKULACIJE, {<

REDNI_BROJ_STAVKE_KALKULACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, RABAT, MARZA, POREZ, MP_CENA >}>

POTPISANA KALKULACIJA:

< SIFRA_PRODAVINE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, BROJ_KALKULACIJE, DATUM_KALKULACIJE, {<

REDNI_BROJ_STAVKE_KALKULACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA,

Page 23: Maloprodajni objekat

CENA, RABAT, MARZA, POREZ, MP_CENA >} KALKULACIJU_POTPISAO_IME, KALKULACIJU_POTPISAO_PREZIME>

POVRATNICA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_POVRATNICE, DATUM_POVRATNICE, RAZLOG_SASTAVLJANJA_POVRATNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, {<

REDNI_BROJ_STAVKE_POVRATNICE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, MARZA, POREZ, MP_CENA >} POVRATNICU_SASTAVIO_IME, POVRATNICU_SASTAVIO_PREZIME>

NALOG ZA DOSTAVU ROBE

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NALOGA_ZA_DOSTAVU, DATUM_NALOGA_ZA_DOSTAVU, [<IME_KUPCA,PREZIME_KUPCA>,<NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME>],

Page 24: Maloprodajni objekat

{<REDNI_BROJ_STAVKE_ROBE_ZA_DOSTAVU,

SIFRA_ROBE, NAZIV_ROBE,

PROIZVODJAC KOLICINA, JEDINICA_MERE >} ROBU_DOSTAVITI_NA_ADRESU, ROBU_DOSTAVITI_U_MESTO, NALOG_ZA_DR_SASTAVIO_IME, NALOG_ZA_DR_SASTAVIO_PREZIME>

PODACI ZA RACUN-za izdavanje računa (fakture)

< NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, PIB_FIRME, FAX_FIRME, TELEFON_FIRME, E_MAIL_FIRME, ODGOVORNO_LICE_FIRME_IME, ODGOVORNO_LICE_FIRME_PREZIME>

RACUN-FAKTURA

< NAZIV_MATICNE_FIRME, ADRESA_MATICNE_FIRME, MESTO_MATICNE_FIRME, TELEFON_MATICNE_FIRME, FAX_MATICNE_FIRME, PIB_MATICNE_FIRME, PDV_MATICNE_FIRME, ZIRO_RACUN_MATICNE_FIRME, SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_RACUNA, DATUM_RACUNA, [PO_FISKALNOM_ISECKU, PO_FISKALNOM_RACUNU] ROK_ZA_UPLATU, {<

Page 25: Maloprodajni objekat

REDNI_BROJ_STAVKE_RACUNA, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, POREZ, MP_CENA >} RACUN_PRIMIO_IME, RACUN_PRIMIO_PREZIME, NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, PIB_FIRME, RACUN_IZDAO_IME, RACUN_IZDAO_PREZIME>

PODACI ZA ISPRAVKU RACUNA

< [<NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, ODGOVORNO_LICE_FIRME_IME, ODGOVORNO_LICE_FIRME_PREZIME, JMBG_ODGOVORNO_LICE>, < IME_KUPCA, PREZIME_KUPCA, JMBG_KUPCA>], [<BROJ_FISKALNOG_ISECKA,DATUM_IZDAVANJA_FISKALNOG_ISECKA>, < BROJ_FISKALNOG_RACUNA,DTUM_FISKALNOG_RACUNA>], [BROJ_FISKALNE_KASE], {<

NAZIV_ROBE,PROIZVODJAC,

KOLICINA, JEDINICA_MERE, CENA, POREZ, MP_CENA>}>

FISKALNI RACUN

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_FISKALNOG_RACUNA, DATUM_FISKALNOG_RACUNA, FR_IZDAO_IME,

Page 26: Maloprodajni objekat

FR_IZDAO_PREZIME, {<

REDNI_BROJ_STAVKE_FR, SIFRA_ROBE, NAZIV_ROBE,

PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, POREZ, MP_CENA >} {<NACIN_PLACANJA, UPLACEN_IZNOS>}>

PODACI O KUPCU-za dostavu robe

< [<IME_KUPCA,PREZIME_KUPCA,ADRESA_KUPCA,MESTO_KUPCA,FIKSNI_TELEFON_KUPCA, MOBILNI_TELEFON_KUPCA>, <NAZIV_FIRME,ADRESA_FIRME,MESTO_FIRME>], ROBU_DOSTAVITI_NA_ADRESU, ROBU_DOSTAVITI_U_MESTO>

DNEVNI IZVESTAJ

< BROJ_FISKALNE_KASE, DATUM_FORMIRANJA_DNEVNOG_IZVESTAJA, REDNI_BROJ_DNEVNOG_IZVESTAJA>

IZVESTAJ O PROMETU

< GOTOVINA, CEK, KARTICA>

Page 27: Maloprodajni objekat

FISKALNI ISECAK

< BROJ_FISKALNOG_ISECKA, {<

NAZIV_ROBE, KOLICINA, JEDINICA_MERE >}>

TRGOVACKA KNJIGA ZA POTPISIVANJE

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE ZA_GODINU, DATUM_OTVARANJA_TRGOVACKE_KNJIGE, POCETNO_STANJE, UKUPNO_STANJE_ROBE, DATUM_ZAKLJICIVANJA_TRGOVACKE_KNJIGE, {<

REDNI_BROJ_KNJIZENJA, DATUM_KNJIZENJA, OPIS_KNJIZENJA, [BROJ_DOKUMENTA], [ZADUZENJE, RAZDUZENJE] [<DATUM_UPLATE_NA_ZIRO_RACUN, IZNOS_UPLATE>] >} ODGOVORNO_LICE_IME, ODGOVORNO_LICE_PREZIME,>

POTPISANA TRGOVACKA KNJIGA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE ZA_GODINU, DATUM_OTVARANJA_TRGOVACKE_KNJIGE, POCETNO_STANJE, UKUPNO_STANJE_ROBE, DATUM_ZAKLJICIVANJA_TRGOVACKE_KNJIGE, {<

Page 28: Maloprodajni objekat

REDNI_BROJ_KNJIZENJA, DATUM_KNJIZENJA, OPIS_KNJIZENJA, [BROJ_DOKUMENTA], [ZADUZENJE, RAZDUZENJE] [<DATUM_UPLATE_NA_ZIRO_RACUN, IZNOS_UPLATE>] >} ODGOVORNO_LICE_IME, ODGOVORNO_LICE_PREZIME, TK_POTPISAO_IME, TK_POTPISAO_PREZIME>

NIVELACIJA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NIVELACIJE, DATUM_NIVELACIJE, {<

REDNI_BROJ_STAVKE_NIVELACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, STARA_CENA, NOVA_CENA >}>

POTPISANA NIVELACIJA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NIVELACIJE, DATUM_NIVELACIJE, {<

REDNI_BROJ_STAVKE_NIVELACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE,

Page 29: Maloprodajni objekat

KOLICINA, STARA_CENA, NOVA_CENA >}NIVELACIJU_POTPISAO_IME,NIVELACIJU_POTPISAO_PREZIME>

PORUDZBINA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, BROJ_PORUDZBINE, DATUM_PORUDZBINE, {<

REDNI_BROJ_STAVKE_PORUDZBINE, SIFRA_ROBE_ZA_NARUCIVANJE, NAZIV_ROBE_ZA_NARUCIVANJE, PROIZVODJAC_NARUCENE_ROBE, KOLICINA_NARUCENE_ROBE, JEDINICA_MERE_NARUCENE_ROBE >} PORUDZBINU_SASTAVIO_IME, PORUDZBINU_SASTAVIO_PREZIME>

PODACI O STANJU ROBE U MAGACINU

< SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, {<

SIFRA_ROBE_U_MAGACINU, NAZIV_ROBE_U_MAGACINU, PROIZVODJAC_ROBE_U_MAGACINU, KOLICINA_ROBE_U_MAGACINU, JEDINICA_MERE_ROBE_U_MAGACINU >}>

Page 30: Maloprodajni objekat

4.3.3. Struktura skladišta podataka

KALKULACIJA

< SIFRA_PRODAVINE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, BROJ_KALKULACIJE, DATUM_KALKULACIJE, {<

REDNI_BROJ_STAVKE_KALKULACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, RABAT, MARZA, POREZ, MP_CENA >} DATUM_PRIJEMA_KALKULACIJE, KALKULACIJU_POTPISAO_IME, KALKULACIJU_POTPISAO_PREZIME>

KNJIGA DNEVNIH IZVESTAJA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, NAZIV_MATICNE_FIRME, PIB_MATICNE_FIRME, BROJ_FISKALNE_KASE {<

REDNI_BROJ_STAVKE_KNJIGE_DI, DATUM_FORMIRANJA_DNEVNOG_IZVESTAJA, REDNI_BROJ_DNEVNOG_IZVESTAJA, BROJ_IZDATIH_RACUNA, BROJ_IZDATIH_FISKALNIH_RACUNA, UKUPAN_BROJ_NALOGA_ZA_ISPRAVKU_RACUNA

Page 31: Maloprodajni objekat

>} >

KUPAC

< [<NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, PIB_FIRME, FAX_FIRME, TELEFON_FIRME, E_MAIL_FIRME, ODGOVORNO_LICE_FIRME_IME, ODGOVORNO_LICE_FIRME_PREZIME, JMBG_ODGOVORNO_LICE>, <IME_KUPCA, PREZIME_KUPCA, ADRESA_KUPCA, MESTO_KUPCA, FIKSNI_TELEFON_KUPCA, MOBILNI_TELEFON_KUPCA, JMBG_KUPCA>]>

NIVELACIJA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NIVELACIJE, DATUM_NIVELACIJE, {<

REDNI_BROJ_STAVKE_NIVELACIJE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, STARA_CENA, NOVA_CENA >}, DATUM_PRIJEMA_NIVELACIJE, NIVELACIJU_POTPISAO_IME, NIVELACIJU_POTPISAO_PREZIME >

OBJEKAT

< SIFRA_OBJEKTA, NAZIV_OBJEKTA, [BROJ_OBJEKTA], MESTO_OBJEKTA, ADRESA_OBJEKTA, E_MAIL_OBJEKTA, FAX_OBJEKTA, TELEFON_OBJEKTA>

Page 32: Maloprodajni objekat

PODACI O MATICNOJ FIRMI

< NAZIV_MATICNE_FIRME, ADRESA_MATICNE_FIRME, MESTO_MATICNE_FIRME, TELEFON_MATICNE_FIRME, FAX_MATICNE_FIRME, E_MAIL_MATICNE_FIRME, PIB_MATICNE_FIRME, PDV_MATICNE_FIRME, MATICNI_BROJ, DELATNOST, ZIRO_RACUN_MATICNE_FIRME>

POPISNA LISTA

< SIFRA_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_PRODAVNICE BROJ_POPISNE_LISTE, DATUM_POPISA_ROBE, SVRHA_POPISA, {<

REDNI_BROJ_STAVKE_POPISNE_LISTE, SIFRA_ROBE, NAZIV_ROBE,

PROIZVODJAC, JEDINICA_MERE, KOLICINA, MP_CENA >} POPIS_ROBE_VRSIO_IME, POPIS_ROBE_VRSIO_PREZIME,>

PORUDZBINA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA,

Page 33: Maloprodajni objekat

BROJ_PORUDZBINE, DATUM_PORUDZBINE, {<

REDNI_BROJ_STAVKE_PORUDZBINE, SIFRA_ROBE_ZA_NARUCIVANJE, NAZIV_ROBE_ZA_NARUCIVANJE, PROIZVIDJAC_NARUCENE_ROBE, KOLICINA_NARUCENE_ROBE, JEDINICA_MERE_NARUCENE_ROBE >} PORUDZBINU_SASTAVIO_IME, PORUDZBINU_SASTAVIO_PREZIME>

POVRATNICA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, SIFRA_MAGACINA, ADRESA_MAGACINA, MESTO_MAGACINA, BROJ_POVRATNICE, DATUM_POVRATNICE, RAZLOG_SASTAVLJANJA_POVRATNICE, {<

REDNI_BROJ_STAVKE_POVRATNICE, SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, MARZA, POREZ, MP_CENA >} POVRATNICU_SASTAVIO_IME, POVRATNICU_SASTAVIO_PREZIME>

RACUN

< NAZIV_MATICNE_FIRME, ADRESA_MATICNE_FIRME. MESTO_MATICNE_FIRME,

Page 34: Maloprodajni objekat

TELEFON_MATICNE_FIRME, FAX_MATICNE_FIRME, PIB_MATICNE_FIRME, PDV_MATICNE_FIRME, ZIRO_RACUN_MATICNE_FIRME, SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_RACUNA, DATUM_RACUNA, [PO_FISKALNOM_ISECKU, PO_FISKALNOM_RACUNU] ROK_ZA_UPLATU, {<

REDNI_BROJ_STAVKE_RACUNA, SIFRA_ROBE, NAZIV_ROBE,

PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, POREZ, MP_CENA >} RACUN_PRIMIO_IME, RACUN_PRIMIO_PREZIME, NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, PIB_FIRME, RACUN_IZDAO_IME, RACUN_IZDAO_PREZIME>

ROBA

< SIFRA_ROBE, NAZIV_ROBE, PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, RABAT, MARZA, POREZ, MP_CENA>

ZAPOSLENI

<

Page 35: Maloprodajni objekat

IME_ZAPOSLENOG, PREZIME_ZAPOSLENOG, JMBG_ZAPOSLENOG, BRLK_ZAPOSLENOG, ADRESA_STANOVANJA_ZAPOSLENOG, MESTO_STANOVANJA_ZAPOSLENOG, FIKSNI_TELEFON_ZAPOSLENOG, MOBILNI_TELEFON_ZAPOSLENOG, POSLOVNA_FUNKCIJA, ZAPOSLEN_U_OBJEKTU_NAZIV, [ZAPOSLEN_U_OBJEKTU_BROJ]>

FISKALNI RACUN

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_FISKALNOG_RACUNA, DATUM_FISKALNOG_RACUNA, FR_IZDAO_IME, FR_IZDAO_PREZIME, {<

REDNI_BROJ_STAVKE_FR, SIFRA_ROBE, NAZIV_ROBE,

PROIZVODJAC, JEDINICA_MERE, KOLICINA, CENA, POREZ, MP_CENA >} {<NACIN_PLACANJA, UPLACEN_IZNOS>}>

NALOG ZA DOSTAVU ROBE

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NALOGA_ZA_DOSTAVU, DATUM_NALOGA_ZA_DOSTAVU, [<IME_KUPCA,PREZIME_KUPCA>,<NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME>], {<

REDNI_BROJ_STAVKE_ROBE_ZA_DOSTAVU, SIFRA_ROBE,

Page 36: Maloprodajni objekat

NAZIV_ROBE,PROIZVODJAC

KOLICINA, JEDINICA_MERE >} ROBU_DOSTAVITI_NA_ADRESU, ROBU_DOSTAVITI_U_MESTO, NALOG_ZA_DR_SASTAVIO_IME, NALOG_ZA_DR_SASTAVIO_PREZIME, DATUM_DOSTAVE_ROBE>

NALOG ZA ISPRAVKU RACUNA

< NAZIV_MATICNE_FIRME, PIB_MATICNE_FIRME, SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE, BROJ_NALOGA_ZA_ISPRAVKU_RACUNA, DATUM_ISPRAVKE_RACUNA, [<NAZIV_FIRME, ADRESA_FIRME, MESTO_FIRME, ODGOVORNO_LICE_FIRME_IME, ODGOVORNO_LICE_FIRME_PREZIME, JMBG_ODGOVORNO_LICE>,< IME_KUPCA, PREZIME_KUPCA, JMBG_KUPCA>], [<BROJ_FISKALNOG_ISECKA,DATUM_IZDAVANJA_FISKALNOG_ISECKA>, < BROJ_FISKALNOG_RACUNA,DTUM_FISKALNOG_RACUNA>], [BROJ_FISKALNE_KASE], {<

RB_STAVKE_NALOGA_ZA_ISPRAVKU_RACUNA,NAZIV_ROBE,PROIZVODJAC,

KOLICINA, JEDINICA_MERE, CENA, POREZ, MP_CENA >} NALOG_FORMIRAO_IME, NALOG_FORMIRAO_PREZIME>

TRGOVACKA KNJIGA

< SIFRA_PRODAVNICE, BROJ_PRODAVNICE, ADRESA_PRODAVNICE, MESTO_PRODAVNICE ZA_GODINU, DATUM_OTVARANJA_TRGOVACKE_KNJIGE,

Page 37: Maloprodajni objekat

POCETNO_STANJE, UKUPNO_STANJE_ROBE, DATUM_ZAKLJICIVANJA_TRGOVACKE_KNJIGE, {<

REDNI_BROJ_KNJIZENJA, DATUM_KNJIZENJA, OPIS_KNJIZENJA, [BROJ_DOKUMENTA], [ZADUZENJE, RAZDUZENJE] [<DATUM_UPLATE_NA_ZIRO_RACUN, IZNOS_UPLATE>] >} ODGOVORNO_LICE_IME, ODGOVORNO_LICE_PREZIME, TK_POTPISAO_IME, TK_POTPISAO_PREZIME>

Page 38: Maloprodajni objekat

5. Modeli Podataka

5.1. ER Model

5.1.1. Podmodeli

Zbog velikog broja entita dati su podmodeli koji odgovaraju primitivnim procesima iz SSA.

Podmodel-Otvaranje trgovačke knjige

Page 39: Maloprodajni objekat

Podmodel-Sastavljanje porudžbine

Page 40: Maloprodajni objekat

Podmodel-Evidentiranje kalkulacije

Page 41: Maloprodajni objekat

Podmodel-Sastavljanje računa

Page 42: Maloprodajni objekat

Podmodel-Sastavljanje fiskalnog računa

Page 43: Maloprodajni objekat

Podmodel-Formiranje naloga za dostavu robe

Page 44: Maloprodajni objekat

Podmodel-Formiranje naloga za ispravku računa

Page 45: Maloprodajni objekat

Podmodel-Evidentiranje nivelacije

Page 46: Maloprodajni objekat

Podmodel-Sastavljanje povratnice

Page 47: Maloprodajni objekat

Podmodel-Evidentiranje podataka o ostvarenom prometu

Page 48: Maloprodajni objekat

Podmodel-Evidentiranje podataka u knjizi dnevnih izveštaja

Page 49: Maloprodajni objekat

Podmodel-Evidentiranje popisne liste

Page 50: Maloprodajni objekat

Podmodel-Zaključivanje trgovačke knjige

Page 51: Maloprodajni objekat

5.1.2. Spisak entiteta sa atributima, tipovima podataka i identifikacionim obeležjima

FISKALNI RACUN:

Atribut Tip podataka I MBROJ_FISKALNOG_RACUNA LI Yes YesDATUM_FISKALNOG_RACUNA D No Yes

FIZICKO LICE:

Atribut Tip podataka I MIME_KUPCA VA20 No YesPREZIME_KUPCA VA20 No YesJMBG_KUPCA A13 No NoMOBILNI_TELEFON_KUPCA VA15 No NoFIKSNI_TELEFON_KUPCA VA15 No No

JEDINICA MERE:

Atribut Tip podataka I MOZNAKA_JEDINICE_MERE VA5 Yes YesNAZIV_JEDINICE_MERE VA20 No Yes

KALKULACIJA:

Atribut Tip podataka I MBROJ_KALKULACIJE VA9 Yes YesDATUM_KALKULACIJE D No YesDATUM_PRIJEMA_KALKULACIJE D No Yes

KNJIGA DNEVNIH IZVESTAJA:

Atribut Tip podataka I MSIFRA_KNJIGE_DNEVNIH_IZVESTAJA

I Yes Yes

BROJ_FISKALNE_KASE_KDI VA9 No Yes

Page 52: Maloprodajni objekat

KUPAC:

Atribut Tip podataka I MSIFRA_KUPCA I Yes YesADRESA_KUPCA VA40 No No

MATICNA FIRMA:

Atribut Tip podataka I MSIFRA_MATICNE_FIRME A8 Yes YesNAZIV_MATICNE_FIRME VA50 No YesADRESA_MATICNE_FIRME VA40 No NoPIB_MATICNE_FIRME VA9 No YesPDV_MATICNE_FIRME VA9 No YesMATICNI_BROJ VA9 No NoDELATNOST VA5 No NoZIRO_RACUN_MATICNE_FIRME VA30 No YesTELEFON_MATICNE_FIRME VA15 No YesFAX_MATICNE_FIRME VA15 No YesE_MAIL_MATICNE_FIRME VA40 No No

MESTO:

Atribut Tip podataka I MSIFRA_MESTA I Yes YesNAZIV_MESTA VA40 No Yes

NACIN PLACANJA:

Atribut Tip podataka I MUPLACENI_IZNOS MN No Yes

NALOG ZA DOSTAVU ROBE:

Atribut Tip podataka I MBROJ_NALOGA_ZA_DOSTAVU VA9 Yes YesDATUM_NALOGA_ZA_DOSTAVU D No YesDATUM_DOSTAVE_ROBE D No YesROBU_DOSTAVITI_NA_ADRESU VA40 No No

Page 53: Maloprodajni objekat

NALOG ZA ISPRAVKU RACUNA:

Atribut Tip podataka I MBROJ_NALOGA_ZA_ISPRAVKU_RACUNA VA9 Yes YesDATUM_ISPRAVKE_RACUNA D No Yes

NIVELACIJA:

Atribut Tip podataka I MBROJ_NIVELACIJE VA9 Yes YesDATUM_NIVELACIJE D No YesDATUM_PRIJEMA_NIVELACIJE D No Yes

OBJEKAT:

Atribut Tip podataka I MSIFRA_OBJEKTA A8 Yes YesBROJ_OBJEKTA BT No NoADRESA_OBJEKTA VA40 No NoTELEFON_OBJEKTA VA15 No NoE_MAIL VA40 No NoFAX_OBJEKTA VA15 No No

OPSTINA:

Atribut Tip podataka I MPTT LI Yes YesNAZIV_OPSTINE VA40 No Yes

POPISNA LISTA:

Atribut Tip podataka I MBROJ_POPISNE_LISTE VA9 Yes YesDATUM_POPISA_ROBE D No YesSVRHA_POPISA VA30 No Yes

PORUDZBINA:

Atribut Tip podataka I MBROJ_PORUDZBINE VA9 Yes YesDATUM_PORUDZBINE D No Yes

Page 54: Maloprodajni objekat

POSLOVNA FUNKCIJA:

Atribut Tip podataka I MSIFRA_POSLOVNE_FUNKCIJE BT Yes YesOPIS_POSLOVNE_FUNKCIJE VA40 No Yes

POVRATNICA:

Atribut Tip podataka I MBROJ_POVRATNICE VA9 Yes YesDATUM_POVRATNICE D No YesRAZLOG_SASTAVLJANJA_POVRATNICE VA80 No Yes

PRAVNO LICE:

Atribut Tip podataka I MNAZIV_FIRME VA40 No YesPIB_FIRME VA9 No YesFAX_FIRME VA15 No NoTELEFON_FIRME VA15 No NoE_MAIL_FIRME VA40 No NoIME_ODGOVORNO_LICE VA20 No NoPREZIME_ODGOVORNO_LICE VA20 No NoZVANJE_ODGOVORNO_LICE VA20 No NoJMBG_ODGOVORNO_LICE A13 No No

RACUN:

Atribut Tip podataka I MBROJ_RACUNA LI Yes YesDATUM_RACUNA D No YesROK_ZA_UPLATU D No YesPO_FISKALNOM_ISECKU LI No No

Page 55: Maloprodajni objekat

ROBA:

Atribut Tip podataka I MSIFRA_ROBE VA5 Yes YesNAZIV_ROBE VA50 No YesPROIZVODJAC VA50 No YesKOLICINA N No YesCENA MN No YesRABAT N No YesMARZA N No YesPOREZ BT No YesMP_CENA MN No Yes

STAVKA FISKALNOG RACUNA:

Atribut Tip podataka I MKOLICINA_ROBE_PO_FISKALNOM_RACUNU N No Yes

STAVKA KALKULACIJE:

Atribut Tip podataka I MKOLICINA_PO_KALKULACIJI N No Yes

STAVKA KNJIGE DNEVNIH IZVESTAJA:

Atribut Tip podataka I MREDNI_BROJ_STAVKE_KNJIGE_DI LI Yes YesBROJ_IZDATIH_FISKALNIH_RACUNA BT No NoBROJ_IZDATIH_RACUNA BT No NoDATUM_FORMIRANJA_DNEVNOG_IZVESTAJA D No YesREDNI_BROJ_DNEVNOG_IZVESTAJA LI No YesUKUPAN_BROJ_NALOGA_ZA_ISPRAVKU_RACUNA BT No No

STAVKA NALOGA ZA DOSTAVU ROBE:

Atribut Tip podataka I MKOLICINA_ROBE_ZA_DOSTAVU N No Yes

Page 56: Maloprodajni objekat

STAVKA NALOGA ZA ISPRAVKU RACUNA:

Atribut Tip podataka I MKOLICINA_VRACENE_ROBE N No YesBROJ_FISKALNOG_ISECKA LI No NoDATUM_IZDAVANJA_FISKALNOG_ISECKA D No NoBROJ_FISKALNE_KASE VA9 No No

STAVKA NIVELACIJE:

Atribut Tip podataka I MNOVA_CENA MN No YesSTARA_CENA MN No YesKOLICINA_PO_NIVELACIJI N No Yes

STAVKA POPISNE LISTE:

Atribut Tip podataka I MPOPISANA_KOLICINA_ROBE N No Yes

STAVKA PORUDZBINE:

Atribut Tip podataka I MSIFRA_ROBE_ZA_NARUCIVANJE VA5 Yes YesNAZIV_ROBE_ZA_NARUCIVANJE VA50 No YesPROIZVODJAC_NARUCENE_ROBE VA50 No YesKOLICINA_NARUCENE_ROBE N No Yes

STAVKA POVRATNICE:

Atribut Tip podataka I MKOLICINA_PO_POVRATNICI N No Yes

STAVKA RACUNA:

Atribut Tip podataka I MKOLICINA_KUPLJENE_ROBE N No Yes

Page 57: Maloprodajni objekat

STAVKA TRGOVACKE KNJIGE:

Atribut Tip podatka I MREDNI_BROJ_KNJIZENJA I Yes YesDATUM_KNJIZENJA D No YesZADUZENJE MN No NoRAZDUZENJE MN No NoBROJ_DOKUMENTA VA9 No NoDATUM_UPLATE_NA_ZIRO_RACUN D No NoIZNOS_UPLATE MN No No

TRGOVACKA KNJIGA:

Atribut Tip podataka I MZA_GODINU I Yes YesDATUM_OTVARANJA_TRGOVACKE_KNJIGE D No YesDATUM_ZAKLJUCIVANJA_TRGOVACKE_KNJIGE D No NoUKUPNO_STANJE_ROBE MN No NoPOCETNO_STANJE MN No YesTRGOVACKA_KNJIGA_ZAKLJUCENA BL No No

VRSTA KNJIZENJA:

Atribut Tip podataka I MSIFRA_VRSTE_KNJIZENJA BT Yes YesOPIS_VRSTE_KNJIZENJA VA30 No Yes

VRSTA KUPCA:

Atribut Tip podataka I MSIFRA_VRSTE_KUPCA BT Yes YesOPIS_VRSTE_KUPCA VA15 No Yes

VRSTA NACINA PLACANJA:

Atribut Tip podataka I MSIFRA_NACINA_PLACANJA BT Yes YesOPIS_NACINA_PLACANJA VA8 No Yes

VRSTA OBJEKTA:

Atribut Tip podataka I MSIFRA_VRSTE_OBJEKTA BT Yes Yes

Page 58: Maloprodajni objekat

OPIS_VRSTE_OBJEKTA VA30 No Yes

ZAPOSLENI:

Atribut Tip podataka I MSIFRA_ZAPOSLENOG I Yes YesIME_ZAPOSLENOG VA20 No YesPREZIME_ZAPOSLENOG VA20 No YesJMBG_ZAPOSLENOG A13 No YesBRLK_ZAPOSLENOG A6 No YesADRESA_STANOVANJA_ZAPOSLENOG VA40 No NoFIKSNI_TELEFON_ZAPOSLENOG VA15 No NoMOBILNI_TELEFON_ZAPOSLENOG VA15 No No

Page 59: Maloprodajni objekat

6. Opis aplikacije

6.1. O aplikaciji

IS Maloprodajnog objekta je program namenjen podršci poslovanja maloprodajnog objekta. Program omogućuje obradu i evidenciju podataka koja prate poslovanje maloprodajnog objekta. Program treba da omogući bržu, efikasniju i tačniju obradu podatka (odnosno odgovarajuće dokumentacije).

6.2. Hardverski i softverski zahtevi aplikacije

Minimalni hardverski zahtevi Preporučljivi hardverski zahtevi

Pentium IV na 2.0GHz Pentium IV na 3.2 GHz1GB RAM memorije 2GB RAM memorijeColor monitor 17 inča Color monitor 19 inča80GB hard disk 160GB hard diskDVD uređaj DVD uređajMiš MišTastatura Tastatura

Program je moguće koristiti na PC računarima sa instaliranim Windows XP operativnim sistemom. Potrebno je instalirati Microsoft .NET Framework 2.0. Potrebna rezolucija ekrana je 1024 x 768. Potrebno je da bude ispravno podešen datum (sa tačkom na kraju godine), brojevi (simbol za grupisanje cifara-tačka, decimalni simbol-zarez), prikazivanje novčanih iznosa.

6.3. Korišćenje

6.3.1. Opšte napomene u vezi programa

Obavezan unos podataka

Prilikom unošenja podataka na onim mestima gde stoji zvezdica unos podataka je obavezan

Page 60: Maloprodajni objekat

Objašnjenje namene tastera

Ukoliko na tasterima postoji samo slika, a ne i tekst za namenu tastera dovoljno je dovesti pokazivač miša i zadržati na tasteru. Pojaviće se obješnjenje za taj taster.

Dugme sa tri tačke

Klikom na dugme sa tri tačke koje stoji pored odgovarajućeg polja poziva se odgovarajuća forma iz šifarnika čime je omogućen unos-izmena podataka na toj formi.

Page 61: Maloprodajni objekat

Sortiranje podataka u mrežici

Za sortiranje podataka u mrežici koja se nalazi na kartici Pretraga dovoljno je kliknuti na naslov kolone po kojoj se želi sortiranje podataka

Lociranje podataka

Klikom na red u mrežici na kartici Pretraga prikazuju se odgovarajući podaci na kartici Ažuriranje

Page 62: Maloprodajni objekat

Korisnički aspekti

U aplikaciji je sve urađeno što se odnosi na korisničke aspekte (obavestenja, provere i ograničenja, provere grešaka, automatizmi).

6.3.2. Prikaz aplikacije

Prilikom pokretanja aplikacije prikazuje se forma za prijavljivanje.

Korisnik unosi korisničko ime i šifru. Ukoliko podaci nisu ispravni korisnik ima mogućnost da ponovo unese vrednosti. Korisnik ima pravo da tri puta pokuša sa unosom ispravnih vrednosti. Ukoliko prijavljinje ne uspe zabranjuje se pristup aplikaciji i zatvara prozor za prijavljivanje. Ukoliko je prijavljivanje uspešno prikazuje se glavni prozor aplikacije (dat na narednoj slici).

Page 63: Maloprodajni objekat

Struktura menija

Šifarnici: Opštine Mesta Vrste objekata Objekti Jedinice mere Poslovne funkcije Zaposleni

Obrada podataka: Otvaranje trgovačke knjige Nabavka robe

Sastavljanje porudžbine Evidentiranje kalkulacije

Upiti: Pregled robe u maloprodajnom objektu

Page 64: Maloprodajni objekat

Izveštaji: Spisak robe u maloprodajnom objektu

Servis: Korisnici

Prikaz: Statusna linija Paleta alatki

Program: Pomoć O programu Izlaz

6.3.2.1. Tipični ekrani

Šifarnici

Većina formi šifarnika ima isti izgled tako da je ovde dat prikaz forme Opštine.

Kartica Ažuriranje omogućuje unos, izmenu i brisanje podataka.

Page 65: Maloprodajni objekat

Kartica Pretraga omogućuje pronalaženje, odnosno pretragu podataka po određenom kriterijumu.

Kartica Štampa omogućuje pregled izveštaja pre štampanja kao i samo štampanje.

Page 66: Maloprodajni objekat

Obrada podataka.

Forma-Otvaranje trgovačke knjige

Za otvaranje trgovačke knjige potrebno je kliknuti na dugme Otvori. Polja će biti popunjena odgovarajućim vrednostima i izračunatom vrednošću za početno stanje. Korisnik može da potvrdi unos unetih vrednosti (uz eventualnu izmenu datuma ili godine) ili da odustane od unosa podataka.

Page 67: Maloprodajni objekat

Forma-Sastavljanje porudžbine

Na kartici Ažuriranje moguće je uneti novu porudžbinu, izmeniti ili obrisati postojeću porudžbinu. Za unošenje nove porudžbine potrebno je najpre uneti zaglavlje porudžbine a zatim stavke porudžbine. Po unošenju zaglavlja i stavki potrebno je ili potvrditi unos klikom na dugme Potvrdi unos ili odustati od unosa klikom na dugme Odustani od unosa. Za izmenu ili brisanje postojeće porudžbine najpre treba izabrati porudžbinu na kartici Pretraga, a zatim izvršiti željenu operaciju.

Page 68: Maloprodajni objekat

Na kartici Pretraga moguće je pronaći porudžbinu unosom broja porudžbine ili prikazati sve porudžbine uradjene za odgovarajuću godinu.

Page 69: Maloprodajni objekat

Forma-Evidentiranje kalkulacije

Način rada je isti kao i prilikom sastavljanja porudžbine. Prilikom uspešnog evidentiranja kalkulacije automatski se unosi odgovarajuća stavka trgovačke knjige (redni broj knjiženja, datum knjiženja, vrsta knjiženja-Kalkulacija, broj dokumenta, zaduženje).

Page 70: Maloprodajni objekat

Na kartici Pretraga moguće je pronaći kalkulaciju unosom broja kalkulacije ili prikazati sve kalkulacije evidentirane za određenu godinu.

Page 71: Maloprodajni objekat

Upiti

Forma-Pregled robe u maloprodajnom objektu

Na formi za pregled robe moguće je pronaći robu na osnovu šifre, na osnovu naziva ili prikazati svu robu. Takođe je moguće prikazati robu prema količini.

Page 72: Maloprodajni objekat

Izveštaji

Forma-Spisak robe u maloprodajnom objektu

Na kartici je moguće izabrati pregled spiska robe pre štampe ili odštampati spisak robe.

Forma-Korisnici

Ova forma je po izgledu i funkcionalnosti slična formama iz šifarnika tako da ona nije prikazana.

Page 73: Maloprodajni objekat

6.3.2.2. Realizacija

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;

namespace IS_Maloprodajnog_objekta{ public partial class frmOpstine : Form { string StringKonekcija = "Data Source='MaloprodajniObjekat.mdb';Provider='Microsoft.Jet.OLEDB.4.0';"; OleDbConnection konekcija = new OleDbConnection(); OleDbCommand komanda = new OleDbCommand(); OleDbDataAdapter adOpstina = new OleDbDataAdapter(); OleDbDataAdapter adPretraga = new OleDbDataAdapter(); DataSet dsOpstina = new DataSet(); DataSet dsPretraga = new DataSet();

long StariPTT; string akcija, StariNazivOpstine; int RbSloga; public frmOpstine() { InitializeComponent(); }

private void PostaviStanje(string stanje) { switch (stanje) { case "prikaz": txtPTT.Enabled = false; txtNazivOpstine.Enabled = false; btnPrvi.Enabled = true; btnPrethodni.Enabled = true; btnNaredni.Enabled = true; btnPoslednji.Enabled = true; btnNovi.Enabled = true; btnIzmeni.Enabled = true; btnObrisi.Enabled = true; btnSnimi.Enabled = false; btnOdustani.Enabled = false; btnIzlaz.Enabled = true; grpKriterijumiPretrage.Enabled = true; dtgOpstine.Enabled = true; grpIzvestaji.Enabled = true; btnPregledPreStampe.Enabled = true; btnStampa.Enabled = true; ControlBox = true; txtPTT.BackColor = Color.LightGray; txtNazivOpstine.BackColor = Color.LightGray; lblNazivOpstineZvezdica.Visible = false;

Page 74: Maloprodajni objekat

lblPTTZvezdica.Visible = false; break; case "unos": case "izmena": txtPTT.Enabled = true; txtNazivOpstine.Enabled = true; btnPrvi.Enabled = false; btnPrethodni.Enabled = false; btnNaredni.Enabled = false; btnPoslednji.Enabled = false; btnNovi.Enabled = false; btnIzmeni.Enabled = false; btnObrisi.Enabled = false; btnSnimi.Enabled = true; btnOdustani.Enabled = true; btnIzlaz.Enabled = false; grpKriterijumiPretrage.Enabled = false; dtgOpstine.Enabled = false; grpIzvestaji.Enabled = false; btnPregledPreStampe.Enabled = false; btnStampa.Enabled = false; ControlBox = false; txtPTT.BackColor = System.Drawing.SystemColors.Window; txtNazivOpstine.BackColor = System.Drawing.SystemColors.Window; lblPTTZvezdica.Visible = true; lblNazivOpstineZvezdica.Visible = true; break; }

foreach (Form f in Application.OpenForms) { if (f.Text == "Informacioni sistem Maloprodajnog objekta") { f.Tag = "Status: u toku je " + stanje + " podataka"; f.Activate(); break; } } } private void Osvezi() { komanda.CommandText = "SELECT * FROM Opstina"; adOpstina.SelectCommand = komanda; dsOpstina = new DataSet(); adOpstina.Fill(dsOpstina);

RbSloga = 0; PrikaziOpstinu(RbSloga);

akcija = "prikaz";

} private Boolean PostojiPTT(long PTT) { OleDbDataAdapter adTrazi = new OleDbDataAdapter(); DataSet dsTRazi = new DataSet();

komanda.CommandText = "select * from OPSTINA where PTT=" + PTT;

Page 75: Maloprodajni objekat

adTrazi.SelectCommand = komanda; adTrazi.Fill(dsTRazi); if (dsTRazi.Tables[0].Rows.Count > 0) { return true; } else { return false; } }

private Boolean PostojiOpstina(string NazivOpstine) { OleDbDataAdapter adTRazi = new OleDbDataAdapter(); DataSet dsTRazi = new DataSet();

komanda.CommandText = "select * from Opstina where NAZIV_OPSTINE='" + NazivOpstine + "'"; adTRazi.SelectCommand = komanda; adTRazi.Fill(dsTRazi); if (dsTRazi.Tables[0].Rows.Count > 0) { return true; } else { return false; }

} private int BrojOpstina() { int broj; OleDbDataAdapter adTRazi = new OleDbDataAdapter(); DataSet dsTRazi = new DataSet();

komanda.CommandText = "select * from OPSTINA "; adTRazi.SelectCommand = komanda; adTRazi.Fill(dsTRazi); broj = dsTRazi.Tables[0].Rows.Count; return broj; }

private void PrikaziOpstinu(int RBS) { if (dsOpstina.Tables[0].Rows.Count == 0) { txtPTT.Text = ""; txtNazivOpstine.Text = ""; } else { txtPTT.Text = Convert.ToString(dsOpstina.Tables[0].Rows[RBS]["PTT"]); txtNazivOpstine.Text = Convert.ToString(dsOpstina.Tables[0].Rows[RBS]["NAZIV_OPSTINE"]); }

} private void PopuniMrezu() { dsPretraga.Clear(); komanda.CommandText = "select PTT,NAZIV_OPSTINE as [NAZIV OPSTINE] from Opstina"; adPretraga.SelectCommand = komanda; dsPretraga = new DataSet(); adPretraga.Fill(dsPretraga);

Page 76: Maloprodajni objekat

dtgOpstine.DataSource = dsPretraga.Tables[0]; dtgOpstine.Refresh(); } private void frmOpstine_Load(object sender, EventArgs e) { konekcija.ConnectionString = StringKonekcija;

konekcija.Open(); komanda.Connection = konekcija; komanda.CommandText = "SELECT * FROM Opstina"; adOpstina.SelectCommand = komanda; dsOpstina = new DataSet(); adOpstina.Fill(dsOpstina);

RbSloga = 0; PrikaziOpstinu(RbSloga);

PostaviStanje("prikaz"); akcija = "prikaz";

PopuniMrezu(); }

private void btnIzlaz_Click(object sender, EventArgs e) { this.Close(); }

private void btnNaredni_Click(object sender, EventArgs e) { if (RbSloga < (dsOpstina.Tables[0].Rows.Count - 1)) { RbSloga = RbSloga + 1; } else { RbSloga = dsOpstina.Tables[0].Rows.Count - 1; }

PrikaziOpstinu(RbSloga); }

private void btnNovi_Click(object sender, EventArgs e) { akcija = "unos"; PostaviStanje("unos"); txtPTT.Text = ""; txtNazivOpstine.Text = ""; txtPTT.BackColor = Color.Yellow; txtPTT.Focus(); }

private void btnSnimi_Click(object sender, EventArgs e) { long PTT; string NazivOpstine; DataRow slog;

if (txtPTT.Text == "")

Page 77: Maloprodajni objekat

{ MessageBox.Show("Morate uneti vrednost za PTT", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); txtPTT.Focus(); return; }

if (Convert.ToInt32(txtPTT.Text) == 0) { MessageBox.Show("PTT broj mora biti veci od nule!", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); txtPTT.Focus(); return; }

if (txtNazivOpstine.Text == "") { MessageBox.Show("Morate uneti vrednost za naziv opstine", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); txtNazivOpstine.Focus(); return; } PTT = Convert.ToInt32(txtPTT.Text); NazivOpstine = txtNazivOpstine.Text;

switch (akcija) { case "unos":

if (PostojiPTT(PTT)) { MessageBox.Show("PTT vec postoji! Pokusajte sa novim unosom.", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtPTT.Focus(); return; } if (PostojiOpstina(NazivOpstine)) { MessageBox.Show("Opstina vec postoji! Pokusajte sa novim unosom.", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtNazivOpstine.Focus(); return; }

slog = dsOpstina.Tables[0].NewRow(); slog["PTT"] = PTT; slog["NAZIV_OPSTINE"] = NazivOpstine; dsOpstina.Tables[0].Rows.Add(slog);

komanda.CommandText = ""; adOpstina.DeleteCommand = komanda; komanda.CommandText = ""; adOpstina.UpdateCommand = komanda;

komanda.CommandText = "INSERT into Opstina (PTT, NAZIV_OPSTINE) Values (" + PTT + ",'" + NazivOpstine + "')"; adOpstina.InsertCommand = komanda;

try

Page 78: Maloprodajni objekat

{ if (dsOpstina.HasChanges()) { adOpstina.Update(dsOpstina); MessageBox.Show("Uspesno ste uneli novu opstinu!", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (System.Exception Greska) { MessageBox.Show(Greska.Message, "Greska"); return; } RbSloga = dsOpstina.Tables[0].Rows.Count - 1; break; case "izmena": if (StariPTT == PTT) { //nista } else { if (PostojiPTT(PTT)) { MessageBox.Show("PTT vec postoji! Pokusajte sa novim unosom.", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtPTT.Focus(); return; } }

if (StariNazivOpstine.ToLower() == NazivOpstine.ToLower() ) { //nista } else { if (PostojiOpstina(NazivOpstine)) { MessageBox.Show("Opstina vec postoji! Pokusajte sa novim unosom.", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtNazivOpstine.Focus(); return; } }

dsOpstina.Tables[0].Rows[RbSloga]["PTT"] = PTT; dsOpstina.Tables[0].Rows[RbSloga]["NAZIV_OPSTINE"] = NazivOpstine;

komanda.CommandText = ""; adOpstina.DeleteCommand = komanda;

komanda.CommandText = ""; adOpstina.InsertCommand = komanda;

Page 79: Maloprodajni objekat

komanda.CommandText = "UPDATE Opstina Set PTT = " + PTT + ", NAZIV_OPSTINE = '" + NazivOpstine + "'WHERE PTT=" + StariPTT; adOpstina.UpdateCommand = komanda; try { if (dsOpstina.HasChanges()) { adOpstina.Update(dsOpstina); MessageBox.Show("Uspesna izmena!", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); }

} catch (System.Exception Greska) { MessageBox.Show(Greska.Message, "Greska"); return; }

break; } PostaviStanje("prikaz"); PopuniMrezu(); }

private void btnIzmeni_Click(object sender, EventArgs e) { if (BrojOpstina() > 0) { akcija = "izmena"; PostaviStanje("izmena"); txtPTT.BackColor = Color.Yellow; txtPTT.Focus(); StariPTT = Convert.ToInt32(txtPTT.Text); StariNazivOpstine = txtNazivOpstine.Text;

} else { MessageBox.Show("Evidencija je prazna", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } }

private void btnObrisi_Click(object sender, EventArgs e) { long PTT; DialogResult odgovor; if (BrojOpstina() == 0) { MessageBox.Show("Evidencija je prazna", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } else { odgovor = MessageBox.Show("Da li ste sigurni da zelite da obrisete podatak?", "Upozorenje", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation);

Page 80: Maloprodajni objekat

if (odgovor == DialogResult.No) { return; }

PTT = Convert.ToInt32(txtPTT.Text); akcija = "brisanje"; dsOpstina.Tables[0].Rows[RbSloga].Delete(); komanda.CommandText = ""; adOpstina.InsertCommand = komanda; komanda.CommandText = ""; adOpstina.UpdateCommand = komanda;

komanda.CommandText = "Delete * From Opstina where PTT = " + PTT; adOpstina.DeleteCommand = komanda;

try { adOpstina.Update(dsOpstina); MessageBox.Show("Podaci su uspesno obrisani!", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (OleDbException greska) { if (greska.ErrorCode == -2147467259) { MessageBox.Show("Brisanje se ne moze izvrsiti jer postoje povezani podaci", "Greska"); Osvezi(); return; } } catch (System.Exception Greska) { MessageBox.Show(Greska.Message, "Greska"); return; }

RbSloga = RbSloga - 1; if (RbSloga < 0) { RbSloga = 0; }

PrikaziOpstinu(RbSloga); PostaviStanje("prikaz"); PopuniMrezu(); } }

private void btnOdustani_Click(object sender, EventArgs e) { PostaviStanje("prikaz"); PrikaziOpstinu(RbSloga); }

private void btnPrvi_Click(object sender, EventArgs e) { RbSloga = 0;

Page 81: Maloprodajni objekat

PrikaziOpstinu(RbSloga); }

private void btnPrethodni_Click(object sender, EventArgs e) { if (RbSloga > 0) { RbSloga = RbSloga - 1; } else { RbSloga = 0; }

PrikaziOpstinu(RbSloga); }

private void btnPoslednji_Click(object sender, EventArgs e) { RbSloga = dsOpstina.Tables[0].Rows.Count - 1; PrikaziOpstinu(RbSloga); }

private void txtPTT_KeyPress(object sender, KeyPressEventArgs e) { if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8) e.Handled = true; if (e.KeyChar == (char)Keys.Enter) { txtNazivOpstine.Focus(); } }

private void rdbNazivOpstine_CheckedChanged(object sender, EventArgs e) { if (rdbNazivOpstine.Checked == true) { txtNazivOpstinePretraga.Enabled = true; txtNazivOpstinePretraga.Text = ""; txtPTTPretraga.Enabled = false; txtPTTPretraga.Text = ""; txtNazivOpstinePretraga.Focus(); } }

private void rdbPTT_CheckedChanged(object sender, EventArgs e) { if (rdbPTT.Checked == true) { txtNazivOpstinePretraga.Enabled = false; txtNazivOpstinePretraga.Text = ""; txtPTTPretraga.Enabled = true; txtPTTPretraga.Text = ""; txtPTTPretraga.Focus(); } }

private void txtNazivOpstinePretraga_TextChanged(object sender, EventArgs e) {

Page 82: Maloprodajni objekat

komanda.CommandText = "SELECT PTT,NAZIV_OPSTINE as [NAZIV OPSTINE] from Opstina where NAZIV_OPSTINE LIKE '" + txtNazivOpstinePretraga.Text + "%'"; dsPretraga.Clear(); adPretraga.SelectCommand = komanda; dsPretraga = new DataSet(); adPretraga.Fill(dsPretraga); dtgOpstine.DataSource = dsPretraga.Tables[0]; dtgOpstine.Refresh(); }

private void txtPTTPretraga_TextChanged(object sender, EventArgs e) { komanda.CommandText = "SELECT PTT,NAZIV_OPSTINE as [NAZIV OPSTINE] from Opstina where PTT LIKE '" + txtPTTPretraga.Text + "%'"; dsPretraga.Clear(); adPretraga.SelectCommand = komanda; dsPretraga = new DataSet(); adPretraga.Fill(dsPretraga); dtgOpstine.DataSource = dsPretraga.Tables[0]; dtgOpstine.Refresh(); }

private void txtNazivOpstine_Enter(object sender, EventArgs e) { txtNazivOpstine.BackColor = Color.Yellow; }

private void txtPTT_Leave(object sender, EventArgs e) { txtPTT.BackColor = System.Drawing.SystemColors.Window; }

private void txtPTT_Enter(object sender, EventArgs e) { txtPTT.BackColor = Color.Yellow; }

private void txtNazivOpstine_Leave(object sender, EventArgs e) { txtNazivOpstine.BackColor = System.Drawing.SystemColors.Window; }

private void txtNazivOpstinePretraga_Enter(object sender, EventArgs e) { txtNazivOpstinePretraga.BackColor = Color.Yellow; }

private void txtNazivOpstinePretraga_Leave(object sender, EventArgs e) { txtNazivOpstinePretraga.BackColor = System.Drawing.SystemColors.Window; }

private void txtPTTPretraga_Enter(object sender, EventArgs e) { txtPTTPretraga.BackColor = Color.Yellow; }

Page 83: Maloprodajni objekat

private void txtPTTPretraga_Leave(object sender, EventArgs e) { txtPTTPretraga.BackColor = System.Drawing.SystemColors.Window; }

private void btnPregledPreStampe_Click(object sender, EventArgs e) { string putanja = "";

putanja = Application.StartupPath;

rOpstine report = new rOpstine(); report.DataSourceConnections[0].SetConnection(putanja + "\\MaloprodajniObjekat.mdb", "MaloprodajniObjekat.mdb", true); report.DataSourceConnections[0].SetLogon("", ""); frmStampa fStampa = new frmStampa(); fStampa.Text = "OPSTINE"; fStampa.lblStampaj.Text = "false"; fStampa.Tag = report; fStampa.lblKriterijumFiltera.Text = ""; fStampa.ShowDialog(); }

private void btnStampa_Click(object sender, EventArgs e) { string putanja = "";

putanja = Application.StartupPath;

rOpstine report = new rOpstine(); report.DataSourceConnections[0].SetConnection(putanja + "\\MaloprodajniObjekat.mdb", "MaloprodajniObjekat.mdb", true); report.DataSourceConnections[0].SetLogon("", ""); frmStampa fStampa = new frmStampa(); fStampa.Text = "OPSTINE"; fStampa.lblStampaj.Text = "true"; fStampa.Tag = report; fStampa.lblKriterijumFiltera.Text = ""; fStampa.ShowDialog(); }

private void dtgOpstine_Click(object sender, EventArgs e) { int index; int brojZapisa; index = dtgOpstine.CurrentRowIndex; if (index == -1) { return; } brojZapisa = dsOpstina.Tables[0].Rows.Count;

for (int i = 0; i <= brojZapisa - 1; i++) { if (Convert.ToInt32(dsOpstina.Tables[0].Rows[i]["PTT"]) == Convert.ToInt32(dsPretraga.Tables[0].Rows[index]["PTT"])) { RbSloga = i; PrikaziOpstinu(RbSloga); break; }

Page 84: Maloprodajni objekat

} }

private void frmOpstine_FormClosed(object sender, FormClosedEventArgs e) { konekcija.Close(); foreach (Form f in Application.OpenForms) { if (f.Text == "Informacioni sistem Maloprodajnog objekta") { f.Tag = "Status: "; f.Activate(); break; } } }

private void tabOpstine_SelectedIndexChanged(object sender, EventArgs e) { if (tabOpstine.SelectedIndex == 1) { if (rdbNazivOpstine.Checked == true) { txtNazivOpstinePretraga.Focus(); } if (rdbPTT.Checked == true) { txtPTTPretraga.Focus(); } } }

}}

7. Literatura

[1] Radulović,B.,Kazi,Lj.,Kazi,Z., “Informacioni sistemi”, Tehnički fakultet „ Mihajlo Pupin“, Zrenjanin, 2006.