P6. Prilog Projektovanje i realizacija studije slucaja putem CASE alata u klijent-server okruzenju

Size: px
Start display at page:

Download "P6. Prilog Projektovanje i realizacija studije slucaja putem CASE alata u klijent-server okruzenju"

Transcription

1 P6. Prilog Projektovanje i realizacija studije slucaja putem CASE alata u klijent-server okruzenju U okviru ovog priloga prezentuje se postupak projektovanja i realizacije jednog transakcionog programa u klijent-server okruzenju, uz upotrebu CASE proizvoda. Rec je o transakcionom programu za kreiranje naloga za otpremu, u okviru studije slucaja "Komercijalna funkcija", prezentovane u glavama 11. i 12. Za server baze podataka izabran je sistem za upravljanje bazama podataka ORACLE V.8.*. Izabrani CASE proizvod za projektovanje i generisanje programskog koda je Designer 2000 V.2.1, a ciljno okruzenje za pokretanje transakcionog programa je Developer 2000 V.2.1. Bez namere da se umanji vaznost sprovodjenja ostalih faza, u okviru priloga su prikazani rezultati sprovodjenja sledecih glavnih faza izgradnje baze podataka i programske podrske: analiza i formalno specificiranje korisnickih zahteva, konceptualno projektovanje, implementaciono projektovanje, opis seme baze podataka putem jezika podataka i mehanizama SUBP i generisanje i programiranje. Prezentacija pomenute studije slucaja je organizovana tako da, u okviru ogranicenog prostora knjige, ilustruje samo najbitnije aktivnosti koje treba sprovesti u cilju realizacije jednog transakcionog programa. Detaljno pokrivanje svih elemenata projektovanja i prakticne realizacije jednog dela informacionog sistema izlazi izvan okvira knjige. Treba, takodje, naglasiti da je i sama studija slucaja prilagodjena potrebama ove knjige, sto znaci

2 636. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka da je svesno nacinjen odredjeni broj pojednostavljenja, koja u praksi ne bi mogla biti napravljena. Neka od njih se odnose na izostavljeno pravilo poslovanja po kojem se nalozi za otpremu koji imaju makar jednu realizovanu stavku, ili su kompletno realizovani, ne smeju modifikovati niti brisati, ili na pravilo poslovanja po kojem i otpremnica moze imati status realizovane ili nerealizovane, tako da se realizovane otpremnice ne mogu brisati ili modifikovati, vec samo stornirati. P6.1. Analiza i formalno specificiranje korisnickih zahteva studije slucaja Faza snimanja, analize i formalnog specificiranja korisnickih zahteva je detaljnije opisana u tacki Na ovom mestu, prezentuju se rezultati sprovodjenja aktivnosti iz ove faze na studiji slucaja "Komercijalna funkcija", uvedenoj putem primera Rec je o zadacima koje, u smislu isporuke robe kupcu po poslatoj porudzbenici, moraju da obave referent prodaje i skladistar. Na slici P6.1 je prikazana hijerarhijska dekompozicija funkcija - procesa, identifikovanih u okviru studije slucaja. Slika P6.1. U okviru navedene specifikacije funkcionalne strukture studije slucaja, funkcije PORUDZBINA, NALOG i IZDROB su proglasene elementarnim, sto znaci da se ocekuje da svaka od navedenih funkcija reprezentuje jedan ili vise kompletnih transakcionih programa, zasnovanih na istoj ekranskoj ili stampanoj formi. Cinjenica da je za svaku od ovih funkcija zadat parametar Vreme odgovora = trenutno (u terminologiji proizvoda Designer 2000 Response = Immediate), ukazuje da ce se na osnovu ovih funkcija formirati programi sa ekranskim formama, namenjeni za interaktivno azuriranje baze podataka. Posto je IZDROB

3 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 637. elementarna funkcija, tada funkcije IZDAVANJE i OTPREMNICA postaju atomarne funkcije. Kao sto je vec naglaseno u tacki 11.3, funkcije (procesi) se, saglasno sprovedenom postupku snimanja korisnickih zahteva, opremaju dodatnim tekstuelnim objasnjenjima i komentarima, koji ce posluziti kao osnov za dalje sprovodjenje ove i narednih faza razvoja programa. Na slikama P6.2 i P6.3 su prikazani tekstuelni opisi funkcija PORUDZBINA i NALOG. Na slici P6.4 je prikazan dijagram toka podataka procesa KOMPOS, a na slikama P6.5 i P6.6 su prikazani dijagrami tokova podataka direktno podredjenih procesa PORNAL i IZDROB, saglasno specifikacijama, datim na slikama 11.2 i Dijagrami tokova podataka su oblikovani putem Designer-a Dijagram na slici P6.4 daje prikaz tokova podataka na visem nivou apstrakcije, u odnosu na dijagrame sa slika P6.5 i P6.6. Saglasno tome, svaki tok podataka na slici P6.4, prikazan isprekidanom linijom *), reprezentuje jedan ili vise tokova podataka sa podredjenih dijagrama i nasledjuje naziv jednog od njih. Tako na primer, tok podataka sa slike P6.4 pod nazivom "Izvestaj o bonitetu,..." *) reprezentuje tokove podataka sa slike P6.5 pod nazivom "Izvestaj o bonitetu" i "Izvestaj o mogucnosti isporuke". Slika P6.2. *) *) U terminologiji Designer-a 2000, ovakvi tokovi podataka se nazivaju Resolved Flows. Simbol "...", uz naziv toka, oznacava da dati tok podataka reprezentuje vise od jednog toka podataka na nizem nivou apstrakcije.

4 638. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.3. Slika P6.4.

5 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 639. Slika P6.5. Slika P6.6.

6 640. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka P6.2. Konceptualno projektovanje studije slucaja Postupci konceptualnog projektovanja baze podataka su detaljno razmatrani u tacki Na ovom mestu, kao rezultat konceptualnog projektovanja seme baze podataka studije slucaja, na slici P6.7 je prikazan odgovarajuci ER dijagram konacnog resenja, izradjen putem Designer-a ER dijagram je sacinjen prema specifikaciji, zadatoj putem slika 11.16, i Slika P6.1. Opsta pravila za tumacenje ovako prikazanog ER dijagrama se mogu pronaci u tacki Pored toga, ovde je potrebno naglasiti da: simbol "#" uz obelezje oznacava da je rec o obelezju koje je u sastavu primarnog kljuca tipa entiteta, simbol " " uz obelezje oznacava da je rec o obelezju koje je obavezno za unos, odnosno korespondira ogranicenju Null(N, A) =, simbol "ο" uz obelezje oznacava da je rec o obelezju koje nije obavezno za unos, odnosno korespondira ogranicenju Null(N, A) = T, simbol " " na tipu poveznika oznacava da je tip entiteta na strani gde se nalazi simbol " " identifikaciono zavisan od tipa entiteta na drugoj strani, sto znaci da ce u sastav primar-

7 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 641. nog kljuca takvog tipa entiteta uci i sva obelezja primarnog kljuca tipa entiteta na drugoj strani posmatranog tipa poveznika, a simbol " " na tipu poveznika oznacava da se pojave tipa entiteta na strani gde se nalazi simbol " " ne mogu "prevezivati" za druge pojave tipa entiteta na drugoj strani. To znaci da se ne dozvoljava modifikacija kljuca tipa poveznika, odnosno stranog kljuca buduce seme relacije, koja ce od posmatranog tipa entiteta nastati. Na slici P6.8 je prikazan izvod iz specifikacije integriteta domena, sacinjene prema slici Polje "Format" odgovara tipu podataka domena Typ(D), a polje "Max Att Length" odgovara maksimalnoj duzini podataka domena Len(D). Panel "Detail", koji ovde nije prikazan, sadrzi pored ostalog i polje za zadavanje predefinisane vrednosti domena Def (D), a panel "Values" omogucava zadavanje dozvoljenih vrednosti, ili intervala dozvoljenih vrednosti domena, te u potpunosti odgovara specifikaciji uslova Con(D). Slika P6.2. Na slikama P6.9 i P6.10 je prikazan izvod iz specifikacije integriteta vrednosti obelezja za tip entiteta ZAGLAVLJE NALOGA. Polje "Domain" odgovara specifikaciji domena obelezja A tipa s nazivom N, Dom(N, A), a polje "Opt" (tj. "Optional") specifikaciji nula vrednosti Null(N, A). Predefinisana vrednost Def(N, A) se zadaje u okviru panela "Att Detail", pri cemu u Designer-u 2000 postoji ogranicenje po kojem obelezje, vezano za neki domen, obavezno nasledjuje njegovu predefinisanu vrednost Def(Dom(N, A)), ali je zato ostavljena mogucnost da se obelezje ne poveze ni sa jednim domenom.

8 642. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.3. Slika P6.4.

9 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 643. Panel "Att Values", ciji je izgled prikazan na slici P6.10, obezbedjuje zadavanje dozvoljenih vrednosti, ili intervala dozvoljenih vrednosti obelezja, cime su samo delimicno pokrivene mogucnosti koje predvidja specifikacija uslova integriteta vrednosti obelezja Con(N, A). Na slici P6.10 je prikazana deklaracija uslova Con(ZAGLAVLJE NALOGA, STN ) {'D', 'N ' }, pri cemu skracenica 'D' oznacava realizovani, a 'N ' nerealizovani nalog za otpremu robe. Isto tako, realizovan je i uslov Con(STAVKA NALOGA, STA) {'R', 'I ' }, pri cemu slovo 'R' oznacava rezervisanu, a 'I ' isporucenu robu sa stavke. Ukoliko se u bilo kom redu, u panelu "Att Values", zadaju i vrednost polja "Value" i polja "High Value", podrazumeva se da je zadat interval dozvoljenih vrednosti, cija je donja granica odredjena vrednoscu polja "Value", a gornja granica vrednoscu polja "High Value". Na nivou svake eksterne seme, u okviru konceptualnog projekta seme baze podataka, predvidjeno je da se za svaki tip T eksterne seme zadaju uloge s obzirom na pravila upotrebe i namenu posmatrane eksterne seme: Role(T ) {r, i, m, d}. Isto tako, zadaje se i skup obelezja tipa, koji se putem programa, napravljenih nad datom eksternom semom, moze modifikovati Mod(T ) Q. Koncept koji obezbedjuje realizaciju slicne logike u okviru Designer-a 2000 zasniva se na matricama Funkcije / Tipovi entiteta i Funkcije / Obelezja. U preseku jedne vrste i jedne kolone matrice Funkcije / Tipovi entiteta zadaju se nacini upotrebe tipa entiteta od strane posmatrane funkcije i mogu biti: Create (C), sa znacenjem da je zadatak funkcije da formira nove pojave posmatranog tipa entiteta i odgovara ulozi i Role(T ), Retrieve (R), sa znacenjem da je zadatak funkcije da preuzima ("cita") podatke o postojecim pojavama tipa entiteta i odgovara ulozi r Role(T ), Update (U), sa znacenjem da je zadatak funkcije da modifikuje podatke o postojecim pojavama tipa entiteta i odgovara ulozi m Role(T ), Delete (D), sa znacenjem da je zadatak funkcije da brise pojave tipa entiteta i odgovara ulozi d Role(T ), Archive (A), sa znacenjem da je zadatak funkcije da, putem posebnih postupaka, arhivira pojave tipa entiteta i Other (O), sa znacenjem da funkcija ima, u odnosu na pojave posmatranog tipa entiteta, zadatke koji nisu pokriveni prethodnim ulogama. U preseku jedne vrste i jedne kolone matrice Funkcije / Obelezja zadaju se nacini upotrebe obelezja tipova entiteta od strane posmatrane funkcije i mogu biti: Insert (I ), sa znacenjem da je zadatak funkcije da prvi put zadaje vrednost obelezja tipa entiteta, Retrieve (R), sa znacenjem da je zadatak funkcije da preuzme postojecu vrednost obelezja tipa entiteta, Update (U ), sa znacenjem da je zadatak funkcije da modifikuje prethodno zadatu vrednost obelezja tipa entiteta, Nullify (N ), sa znacenjem da je zadatak funkcije da omoguci zadavanje nula vrednosti za obelezje tipa entiteta, koje je prethodno imalo zadatu ne-nula vrednost, Archive (A), sa znacenjem da je zadatak funkcije da omoguci arhiviranje vrednosti obelezja tipa entiteta, putem posebnih postupaka i

10 644. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Other (O), sa znacenjem da funkcija ima, u odnosu na vrednosti posmatranog obelezja tipa entiteta, zadatke koji nisu pokriveni prethodnim ulogama. Skup svih obelezja tipa entiteta, za koji posmatrana funkcija ima naznacenu ulogu Update ili Nullify, treba da odgovara skupu obelezja za modifikaciju Mod(T ). Matrice Funkcije / Tipovi entiteta i Funkcije / Obelezja se projektuju tako da u njima figuriraju sve elementarne funkcije i, najcesce, ovim matricama su jedino one i obuhvacene, mada se uloge tipova entiteta i obelezja mogu zadavati i za ostale (na primer atomarne) funkcije. Na slici P6.11 je prikazana matrica Elementarne funkcije / Tipovi entiteta, za studiju slucaja, saglasno specifikacijama uloga tipova u eksternim semama, sa slika i 11.13, kao i i Slika P6.5. Na slikama P6.12, P6.13, P6.14, P6.15, P6.16 i P6.17 su prikazane matrice Elementarne funkcije / Obelezja, za tipove entiteta KUPAC, SKLADISTE, ROBA, ZALIHA, ZAGLAVLJE NALOGA i STAVKA NALOGA, u cilju ilustracije nacina zadavanja skupova obelezja za modifikaciju u eksternoj semi koja pokriva formiranje naloga za otpremu robe, prema slikama i U cilju podsecanja, ponovo se navodi da je u eksternoj semi za formiranje naloga zadato Mod(Zaliha) = {RAS}, Mod(Zag_Nal ) = {OSN, STN } i Mod(Stav_Nal ) = {KOL}. Na kraju ovog dela, potrebno je naglasiti da konceptualno projektovanje transakcionog programa, u smislu zahteva koji se postavljaju u okviru tacke 11.5, za formiranje naloga za otpremu nije sprovedeno. Razlog zato je da ni sam Designer 2000, na konceptualnom nivou, ne podrzava tehniku izrade strukturnih dijagrama, ili neku drugu tehniku za formalno iskazivanje procedure, koju transakcioni program treba da sprovede.

11 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 645. Slika P6.6. Slika P6.7. Slika P6.8.

12 646. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.9. Slika P6.10. Slika P6.11.

13 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 647. P6.3. Implementaciono projektovanje studije slucaja U prvom delu ove tacke prezentuju se rezultati projektovanja implementacione seme baze podataka studije slucaja, a zatim se posvecuje paznja implementacionom projektovanju programa za formiranje naloga za otpremu i implementacionom projektovanju odgovarajuce podseme. Na ovom mestu, potrebno je naglasiti da CASE proizvod Designer 2000 diktira takav redosled koraka, po kojem se prvo mora deklarisati specifikacija programa pa se tek potom oblikuje podsema koja, takodje, pripada specifikaciji programa. P Implementaciono projektovanje seme baze podataka studije slucaja Na slici P6.18 je prikazan dijagram implementacione seme baze podataka studije slucaja, formiran nakon postupka prevodjenja konceptualne seme baze podataka sa slike P6.7, u relacioni model podataka i izvrsene normalizacije. Svaki pravougaonik na dijagramu reprezentuje jednu semu relacije, odnosno buducu tabelu baze podataka, dok linije reprezentuju puteve prostiranja primarnog kljuca, odnosno ogranicenja stranog kljuca. Svaka sema relacije je na dijagramu reprezentovana svojim nazivom, u gornjem delu pravougaonika, skupom obelezja, u sredini pravougaonika, i nazivom ogranicenja primarnog kljuca, u donjem delu pravougaonika. P Oblikovanje skupa obelezja i integriteta torke seme relacije studije slucaja Postupak prevodjenja konceptualne seme u relacioni model je sproveden upotrebom alata Database Design Transformer, dok je projektovanje konacne verzije implementacione seme baze podataka obavljeno pomocu alata Design Editor / Server Model. Konacni skup sema relacija implementacione seme, prikazan na slici P6.18, odgovara skupu sema relacija iz primera Radi ilustracije razlika izmedju prve verzije implementacione seme, dobijene prevodjenjem ER seme baze podataka, i konacne verzije, u koju su ukljuceni efekti sprovedene normalizacije, navode se sledeci primeri: U inicijalnoj verziji seme relacije Stav_Nal postojala su dva obelezja: SN_ZG_FK_IDS i SN_ZL_FK_IDS. Prvo od ova dva obelezja je reprezentovalo obelezje stranog kljuca IDS, prenetog u ovu semu relacije iz seme Zag_Nal, po osnovu veze SN_ZG_FK, dok je drugo takodje reprezentovalo obelezje stranog kljuca IDS, ali koje je u ovu semu relacije preneto iz seme Zaliha, po osnovu veze SN_ZL_FK. Preimenovanjem, umesto ova dva obelezja, formirano je jedno obelezje, pod nazivom IDS, saglasno cinjenici da se na stavci naloga za otpremu moze naci samo roba iz onog skladista za koje se kompletan nalog za otpremu formira. U inicijalnoj verziji seme relacije Stav_Otp postojalo je obelezje SO_SN_FK_BRN, koje je reprezentovalo broj naloga za otpremu, kao obelezje stranog kljuca iz seme relacije

14 648. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Stav_Nal. Saglasno analizi prezentovanoj u primeru 12.2, ovo obelezje je, u cilju zadovoljenja uslova trece normalne forme, uklonjeno iz seme relacije Stav_Otp. Slika P6.1. Alat Database Design Transformer, za prevodjenje ER seme baze podataka u relacioni model, obezbedjuje i automatizovano prevodjenje specifikacije integriteta tipa u specifikaciju integriteta torke seme relacije. Na slikama P6.19 i P6.20 je prikazan izvod iz specifikacije integriteta vrednosti obelezja STN iz seme relacije Zag_Nal. Polje "Domain" odgovara specifikaciji domena obelezja A seme relacije N, Dom(N, A), a polje "Mandatory" specifikaciji nula vrednosti Null(N, A). Predefinisana vrednost Def (N, A) se zadaje u okviru polja "Default value", pri cemu je u Designer-u 2000 moguce za obelezje seme relacije, koje je vezano za neki domen, zadati predefinisanu vrednost Def (N, A), ali je ostavljena mogucnost i da obelezje, ostavljanjem prazne vrednosti polja "Default value", nasledi predefinisanu vrednost domena Def (Dom(N, A)). Dozvoljeno je i da obelezje seme relacije ne bude vezano ni za jedan domen.

15 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 649. Slika P6.2. Slika P6.3.

16 650. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.4. Slika P6.5. Panel "Allowable Values", ciji je izgled prikazan na slici P6.20, obezbedjuje zadavanje dozvoljenih vrednosti, ili intervala dozvoljenih vrednosti obelezja, cime su, jednim delom, pokrivene mogucnosti koje predvidja specifikacija uslova integriteta vrednosti obelezja Con(N, A).

17 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 651. Na slici P6.20 je prikazana deklaracija uslova Con(Zag_Nal, STN ) {'D', 'N ' }, koji je formiran preuzimanjem s konceptualnog nivoa deklaracije uslova Con(ZAGLAVLJE NALOGA, STN ) {'D', 'N ' }. Uslov ogranicenja torke se u okviru Designer-a 2000 moze deklarisati i putem koncepta tabelarnog ogranicenja, pod nazivom Check Constraint. Na slikama P6.21 i P6.22 su prikazani paneli za definisanje uslova ogranicenja torke putem ovog koncepta, pri cemu je deklarisan uslov Con(Zaliha, RAS ) = RAS ZAL. Navedeni koncept obezbedjuje mogucnost implementacije ogranicenja torke ili putem SQL klauzule CHECK, ili putem poziva logicke, validacione funkcije, definisane na nivou servera baze podataka. U drugom slucaju, putem koncepta pod nazivom "Table API ", postoji i mogucnost automatizovanog generisanja trigera i procedura baze podataka, koji ce obezbediti poziv navedene logicke funkcije prilikom pokusaja dodavanja novih, ili modifikacije postojecih podataka. Ako i samo ako validaciona funkcija vrati istinitu vrednost (tj. vrednost true), ogranicenje se smatra zadovoljenim. Koncepti Allowable Values i Check Constraint, na taj nacin, obezbedjuju potpunu pokrivenost uslova integriteta vrednosti obelezja Con(N, A), uvedenog u glavi 6. Kada je u pitanju specifikacija svih integriteta torki studije slucaja, zadata tabelom na slici 11.1, napominje se da je ona u potpunosti realizovana putem alata Design Editor / Server Model. P Implementaciono projektovanje referencijalnih integriteta studije slucaja Kada je rec o implementacionom projektovanju skupa medjurelacionih ogranicenja, alat Database Design Transformer, takodje, obezbedjuje inicijalno formiranje skupa referencijalnih integriteta, saglasno izvrsenom prostiranju primarnih kljuceva. U postupku finalizacije implementacione seme baze podataka, neophodno je izvrsiti eventualno potrebna prilagodjavanja dobijenih referencijalnih integriteta i definisati druga medjurelaciona ogranicenja, kao sto su prosireni referencijalni integriteti, inverzni referencijalni integriteti i slozenija pravila poslovanja. Dok se referencijalni integriteti u Designer-u 2000 mogu deklarisati upotrebom koncepta na nivou tabele, pod nazivom Foreign Keys, svi drugi tipovi medjurelacionih ogranicenja se projektuju pomocu koncepta trigera baze podataka i PL/SQL programa. Referencijalni integriteti se, u najvecem broju slucajeva, mogu implementirati na nivou servera baze podataka deklarativno, a ostali tipovi medjurelacionih ogranicenja se implementiraju iskljucivo upotrebom proceduralnih mehanizama. Detaljnije informacije o mehanizmima i nacinima implementacije ogranicenja baze podataka na serveru baze podataka su sadrzane u glavama 8 i 9, kao i prilogu P5. Paneli za definisanje osnovnih podataka o referencijalnom integritetu Zag_Nal[IDK] Kupac[IDK], putem koncepta Foreign Keys, su prikazani na slikama P6.23, P6.24, P6.25 i P6.26. Referencijalni integritet se definise na nivou referencirajuce tabele, odnosno seme relacije koja se nalazi s leve strane referencijalnog integriteta. Osim naziva (slika P6.23), svaki referencijalni integritet ukazuje na referenciranu semu relacije (tabelu) i specificira se da li je strani kljuc obavezan, ili opcionalan za unos.

18 652. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.1. Slika P6.2.

19 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 653. Slika P6.3. Slika P6.4. Na sledecem panelu (slika P6.24) definisu se nizovi obelezja leve i desne strane referencijalnog integriteta. Redosled obelezja u nizu odgovara redosledu vrsta u samom

20 654. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka panelu, a svaka vrsta sadrzi par obelezja, pri cemu je levo obelezje iz referencirajuce, a desno iz referencirane tabele. Sto se tice vrste referencijalnog integriteta v, Designer 2000, V.2.1 i ORACLE V.8.* omogucavaju samo implementaciju podrazumevanog referencijalnog integriteta (v = b). Parcijalni i potpuni referencijalni integriteti nisu podrzani. Panel "Cascade Rules" (slika P6.25) omogucava, putem liste izbora "Cascade delete rule", definisanje aktivnosti a, koja se sprovodi pri pokusaju brisanja torke iz referencirane relacije. Moguce aktivnosti su, kao sto je to vec navedeno i u glavi 7, sprecavanje (a = b), kaskadno brisanje (a = c), svodjenje na nula vrednost (a = n) i svodjenje na predefinisanu vrednost (a = d). Referencijalni integriteti za cije aktivnosti vazi a = b ili a = c, mogu se implementirati putem deklarativnih mehanizama, dok se u ostalim slucajevima mora pristupiti implementaciji putem proceduralnih mehanizama. Vec pomenuti "Table API " koncept, omogucava automatizovano generisanje trigera i procedura baze podataka, koji ce obezbediti proceduralnu implementaciju referencijalnih integriteta za koje je a = n ili a = d. Na panelu "Cascade Rules", specificira se i to da li je dozvoljena modifikacija vrednosti stranog kljuca. Ako jeste, putem liste izbora "Cascade update rule", specificira se aktivnost koja se sprovodi pri pokusaju modifikacije vrednosti kljuca u referenciranoj relaciji. Moguce aktivnosti su iste kao i za slucaj pokusaja brisanja iz referencirane tabele, pri cemu, ako je modifikacija stranog kljuca zabranjena, podrazumeva se da je aktivnost pri modifikaciji sprecavanje. Na slici P6.26, prikazan je sadrzaj panela "Validation", putem kojeg se zadaje podatak o mestu validacije ogranicenja. Mesto validacije ogranicenja moze biti: "Server", "Klijent", "Server i Klijent" ("Both") i "Nigde" ("None"). Na istom panelu se zadaje i poruka koja se prosledjuje korisniku programa, u slucaju da dodje do narusavanja ogranicenja. Treba naglasiti da se u Designer-u 2000, iako to na slikama ovog priloga nije prikazano, za sva deklarativno zadata ogranicenja, vezana za tabelu, moze zadati i parametar "Defer Status", koji odredjuje trenutak aktiviranja kontrole ogranicenja. Moguce vrednosti ovog parametra su: "Inicijalno odlozeno" ("Initially Deferred"), "Inicijalno trenutno" ("Initially Immediate") i "Trenutno" ("Not Deferred") aktiviranje kontrole ogranicenja. Odlozeno aktiviranje podrazumeva da se kontrola ogranicenja sprovodi na samom kraju transakcije, u postupku njenog potvrdjivanja. Na slici P6.18 su svi referencijalni integriteti studije slucaja reprezentovani graficki, putem linija. Rec je o referencijalnim integritetima koji pripadaju finalnom skupu medjurelacionih ogranicenja I iz primera U nastavku su dati opisi znacenja simbola na ovim linijama: Puna linija oznacava da je rec o stranom kljucu koji je oznacen kao obavezan za unos, a isprekidana linija oznacava strani kljuc cija se vrednost ne mora zadati. Strana linije, na kojoj se nalazi simbol " ", oznacava referencirajucu, a druga strana referenciranu tabelu. Simbol " " na liniji oznacava da je modifikacija vrednosti stranog kljuca zabranjena. Simbol " " na liniji oznacava da je rec o referencijalnom integritetu sa aktivnoscu pri brisanju oznacenom kao "sprecavanje" (a = b).

21 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 655. Simbol " " na liniji oznacava da je rec o referencijalnom integritetu sa aktivnoscu pri brisanju oznacenom kao "kaskadno brisanje" (a = c). Linije s nazivima SN_ZG_FK i SO_ZO_FK na slici P6.18 reprezentuju, redom, referencijalne integritete Stav_Nal[(IDS, BRN )] c Zag_Nal[(IDS, BRN )] i Stav_Otp[(IDS, BRO)] c Zag_Otp[(IDS, BRO)], izmedju takvih sema relacija koje su povezane i odgovarajucim inverznim referencijalnim integritetima, redom, Zag_Nal[(IDS, BRN )] c Stav_Nal[(IDS, BRN )] i Zag_Otp[(IDS, BRO)] c Stav_Otp[(IDS, BRO)]. Zbog toga su ove linije na dijagramu "podebljane" i oznacene drugom (zelenom) bojom. Pri tome, inverzni referencijalni integriteti Zag_Nal[(IDS, BRN )] c Stav_Nal[(IDS, BRN )] i Zag_Otp[(IDS, BRO)] c Stav_Otp[(IDS, BRO)] se realizuju putem proceduralnih mehanizama, dok se referencijalni integriteti Stav_Nal[(IDS, BRN )] c Zag_Nal[(IDS, BRN )] i Stav_Otp[(IDS, BRO)] c Zag_Otp[(IDS, BRO)] realizuju deklarativno. Za trenutak aktiviranja kontrole ovih referencijalnih integriteta je izabrana vrednost Defer Status = Initially Deferred. P Implementaciono projektovanje ostalih medjurelacionih ogranicenja studije slucaja Ostala medjurelaciona ogranicenja studije slucaja predstavljaju: inverzni referencijalni integriteti Zag_Nal[(IDS, BRN )] c Stav_Nal[(IDS, BRN )] i Zag_Otp[(IDS, BRO)] c Stav_Otp[(IDS, BRO)], prosireni referencijalni integritet ><(Stav_Otp, Zag_Otp)[(IDS, BRN, IDR)] Stav_Nal[(IDS, BRN, IDR)] i pravilo poslovanja iz primera 12.6: (P6.1) p: ( t r(zaliha))(t[zal] = t[ras] + v [ KOL] ) I, v s gde je s = σ STA = rezervisan IDR = t[idr] (r(stav_nal )). Detaljan prikaz nacina realizacije navedenih inverznih referencijalnih integriteta, prosirenog referencijalnog integriteta i pravila poslovanja p, datog izrazom (P6.1), nalazi se u prilogu P5 i zasnovan je na principima, izlozenim u glavama 8 i 9, te se na ovom mestu tom pitanju ne posvecuje vise prostora. U nastavku teksta, daju se samo napomene koje su bitne sa stanovista primene proizvoda Designer 2000 pri oblikovanju pomenutih ogranicenja. Linija s nazivom SO_SN_FK (slika P6.18) ne reprezentuje "obican" referencijalni, vec prosireni referencijalni integritet ><(Stav_Otp, Zag_Otp)[(IDS, BRN, IDR)] Stav_Nal[(IDS, BRN, IDR)]. Ovaj prosireni referencijalni integritet je nastao modifikacijom referencijalnog integriteta Stav_Otp[(IDS, BRN, IDR)] Stav_Nal[(IDS, BRN, IDR)] I p, iz primera 12.6, nakon sprovedenog postupka normalizacije, zbog toga sto je iz seme relacije Stav_Otp uklonjeno obelezje BRN (odnosno SO_SN_FK_BRN ). Linija koja reprezentuje navedeni prosireni referencijalni integritet je, takodje, "podebljana" i oznacena drugom (crvenom) bojom. Posto se prosireni referencijalni integritet ne moze realizovati putem deklarativnih mehanizama, tada se za ogranicenje stranog kljuca SO_SN_FK zadaje Validation Level = None, a umesto ogranicenja stranog kljuca, formiraju se PL/SQL procedure i

22 656. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka trigeri baze podataka za podrsku prosirenog referencijalnog integriteta, onako kako je to opisano u prilogu P5. Pravilo poslovanja (P6.1) na dijagramu sa slike P6.18 nije posebno prikazano. Ono se implementira u drugacijoj formi od one, date putem prikazanog izraza, sto je prikazano u okviru priloga P5. Pri tome, vec pomenuti uslov Con(Zaliha, RAS ) = RAS ZAL predstavlja jednu od posledica pravila poslovanja p. U cilju ilustracije, putem slika P6.27, P6.28 i P6.29, prikazan je postupak implementacionog projektovanja jednog trigera baze podataka, u okviru Designer-a Rec je o trigeru PP_Stav_Nal_INS, koji je definisan nad semom relacije (tabelom) Stav_Nal. Na levoj strani slike P6.27, prikazan je hijerarhijski navigator objekata. Vidljivo je da je triger PP_Stav_Nal_INS direktno podredjen tabeli Stav_Nal. Na desnoj strani iste slike, prikazano je telo trigera, iskazano putem proceduralnog jezika PL/SQL. Celokupan programski kod trigera reprezentuje objekat, odnosno PL/SQL program, pod nazivom PP_Stav_Nal_INS, koji je definisan u okviru klase Trigger Definitions. Deklarativni deo ovog programa sadrzi definiciju izuzetka, pod nazivom Exc. Izuzetak Exc, zajedno s programskim kodom za njegovu obradu, definisan je u okviru klase Program Data. Slika P6.1.

23 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 657. Slika P6.2. Slika P6.3. Na slici P6.28 je prikazan panel za zadavanje naziva, opisnog polja "svrha" i naziva PL/SQL programa, pridruzenog trigeru.

24 658. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Sledeci panel, prikazan na slici P6.29, omogucava definisanje: dogadjaja koji pokrece izvrsenje trigera, trenutka okidanja trigera, kao i to da li je rec o trigeru koji se pokrece na nivou iskaza, ili na nivou torke. Ukoliko se za dogadjaj izabere operacija UPDATE, tada se otvara poseban panel, putem kojeg se zadaje skup obelezja tabele, cija modifikacija dovodi do pokretanja trigera. Panel "When" omogucava zadavanje logickog (WHEN) uslova, ukoliko triger treba takav uslov da sadrzi. P Implementaciono projektovanje programa i podseme studije slucaja Ukoliko se upotrebljava CASE proizvod Designer 2000, tada su aktivnosti implementacionog projektovanja programa i podseme medjusobno povezane, jer podsema egzistira iskljucivo u okviru specifikacije programa i svodi se na zadavanje upotreba tabela i upotreba kolona tabela, o cemu je bilo reci u tacki Zato se ove dve aktivnosti, u nastavku teksta, razmatraju u okviru jedne celine. Inicijalno formiranje specifikacije programa, odnosno modula, prema terminologiji zastupljenoj u Designer-u 2000, pod nazivom "Izrada naloga za otpremu robe", obavljeno je putem alata Application Design Transformer, na osnovu: podataka o elementarnoj funkciji NALOG, konceptualne seme baze podataka, prikazane putem ER dijagrama sa slike P6.7, delova matrica Elementarne funkcije / Tipovi entiteta i Elementarne funkcije / Obelezja koji se odnose na kolonu za funkciju NALOG, prikazanih na slikama P6.11, P6.12, P6.13, P6.14, P6.15, P6.16 i P6.17 i implementacione seme baze podataka, ciji dijagram je prikazan na slici P6.18. Rezultat, dobijen pomocu alata Application Design Transformer, predstavlja kandidat za modul, tj. specifikaciju programa, pod nazivom NALOG0010. Ovaj kandidat se moze odbaciti i izbrisati, ili prihvatiti za nastavak rada. U okviru kandidata NALOG0010, dobijene su upotrebe tabela Kupac, Roba, Skladiste, Zaliha, Zag_Nal i Stav_Nal, s odgovarajucim upotrebama kolona, odnosno vezanim poljima, saglasno sadrzaju matrica Elementarne funkcije / Tipovi entiteta i Elementarne funkcije / Obelezja. Prihvatanjem za dalji rad, kandidat za modul NALOG0010 postaje modul, pod istim nazivom. Nad ovim modulom se nadalje sprovode aktivnosti implementacionog projektovanja programa. Izmedju ostalih, u te aktivnosti spadaju: pregled inicijalne specifikacije, dobijene putem Application Design Transformer-a, preciziranje uloga sema relacija u podsemi, odnosno upotreba tabela u okviru buduceg programa, preciziranje uloga obelezja iz sema relacija podseme, odnosno upotreba kolona tabela, detaljno oblikovanje izgleda ekranske forme, kao i nacina prikaza polja na formi i lista vrednosti i specificiranje nestandardnih postupaka obrade podataka, ili manipulacije podacima putem programa.

25 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 659. Slika P6.1. Na slici P6.30 je prikazan definicioni dijagram strukture programskog modula NALOG0010, koji odslikava i strukturu podseme modula. Unutar pravougaonika koji reprezentuje sam modul, nalaze se dva pravougaonika, pod nazivom Zag_Nal i Stav_Nal, koji reprezentuju komponente modula, odnosno blokove podataka buduce ekranske forme. Prvi blok podataka ce odgovarati zaglavlju naloga za otpremu robe, a drugi stavkama naloga za otpremu robe. Fizicko pozicioniranje komponenata modula na dijagramu odredjuje da ce se blok podataka za zaglavlje naloga, na ekranskoj formi, fizicki naci iznad bloka podataka sa stavkama naloga. U okviru prve komponente modula, nalazi se bazna upotreba tabele Zag_Nal i upotrebe tabela za dve liste izbora vrednosti Kupac i Skladiste s odgovarajucim upotrebama kolona, odnosno vezanim poljima. Spajanje podataka iz ovih tabela ce biti izvrseno prema referencijalnim integritetima, reprezentovanim putem ogranicenja implementacione seme baze podataka ZG_KP_FK i ZG_SK_FK. Tako na primer, spajanje torki iz tabela Zag_Nal i Kupac se obavlja zbog potrebe prikaza vrednosti obelezja NAK i ADR u zaglavlju naloga i u listi za izbor zeljene vrednosti obelezja IDK, kao i za validaciju direktno unete vrednosti obelezja IDK, pri unosu ili modifikaciji naloga za otpremu.

26 660. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka U okviru druge komponente modula, nalazi se bazna upotreba tabele Stav_Nal i upotrebe tabela za listu izbora vrednosti Zaliha i Roba. Predvidjeno je da se, prilikom pozicioniranja kursora na ekransko polje koje odgovara obelezju IDR, moze pozvati lista izbora, koja ce dati prikaz vrednosti obelezja IDR, NAR, JM i RAS, za svu, ili izabranu robu na zalihama u datom skladistu. Isto tako, predvidjeno je da se uz svaku stavku naloga, pored obelezja IDR i KOL, prikazu i odgovarajuce vrednosti obelezja NAR i JM. Spajanje zaglavlja i stavki naloga se vrsi prema referencijalnom integritetu SN_ZG_FK, dok se spajanje stavke naloga sa zalihama obavlja prema referencijalnom integritetu SN_ZL_FK, a zalihe s robom prema referencijalnom integritetu ZL_RO_FK. Specifikacijom se, takodje, predvidja da se za svaku listu izbora vrednosti koristi posebna ekranska forma, sto znaci da je za svaku listu izbora trebalo napraviti i poseban ekranski modul. U gornjem desnom delu dijagrama sa slike P6.30 je vidljivo da je modul NALOG0010 pozivajuci modul za tri druga modula: NALOG0010_L1, NALOG0010_L2 i NALOG0010_L3. Prvi od ova tri modula sluzi za prikaz liste izbora saglasno upotrebama tabela Zaliha i Roba. Drugi sluzi za prikaz liste izbora saglasno upotrebi tabele Kupac, a treci se koristi za prikaz liste izbora saglasno upotrebi tabele Skladiste. Za sam modul, svaku komponentu modula, upotrebu tabele i upotrebu kolone, zadaje se citav niz parametara, koji omogucavaju detaljno implementaciono projektovanje modula. Zbog izrazito velikog broja takvih parametara, na ovom mestu, ilustruje se uloga samo nekih od njih. Na slici P6.31 je prikazan panel "Operations", koji omogucava da se na nivou komponente modula zadaju osnovne operacije koje se nad baznom tabelom te komponente modula mogu sprovesti. Ostali paneli komponente modula, uglavnom, omogucavaju definisanje detalja nacina prikaza buduceg bloka podataka na formi. Kada je u pitanju komponenta modula Zag_Nal, na slici P6.31 je vidljivo da su dozvoljene operacije: upis, brisanje, modifikacija i selekcija podataka za prikaz. Slika P6.3 daje prikaz panela "Items" za upotrebu tabele. Na ovom panelu se, za svaku upotrebu tabele, prebacivanjem iz levog (Available Columns) u desni prozor (Selected Items), biraju obelezja seme relacije koja ulaze u sastav seme relacije podseme, odnosno biraju se kolone tabele za koje se formiraju polja na formi. Putem indikatora pod nazivom [Disp], odredjuje se, takodje, i koja su polja na formi vidljiva za korisnika i definise se redosled prikaza polja na formi. Na slici P6.33 je prikazan panel "Operations", putem kojeg se zadaju osnovne operacije, koje korisnik sme da sprovede nad poljima forme. Tako, na primer, vidljivo je da korisnik nece moci da modifikuje vrednosti polja kljuca IDS i BRN, seme relacije Zag_Nal, na zaglavlju naloga za otpremu, jer je indikator Update za ova dva polja iskljucen. Na slici P6.34 je prikazan panel "Display", putem kojeg se zadaju neki, ali ne svi parametri vizuelnog prikaza polja na formi. Pored odredjivanja naslova, nacina prikaza i dimenzija polja na formi, projektant je u mogucnosti da definise i format-masku za prikaz numerickih ili datumskih vrednosti, zada predefinisanu vrednost, te da li je polje obavezno za unos podataka, da li se unos vrednosti ogranicava samo na velika slova, itd. Projektant je, takodje, za svaku upotrebu tabele za listu izbora, u mogucnosti, da odredi koja polja ce biti vidljiva u listi izbora. Moguce je zadati i dodatni kriterijum selekcije podataka kako za baznu, tako i za upotrebu tabele za listu vrednosti, cime se krajnji korisnik pri selektovanju podataka ogranicava samo na podskup skupa torki tabele.

27 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 661. Slika P6.2. Slika P6.3.

28 662. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.4. Slika P6.5. Na slici P6.35 je prikazan vizuelni dijagram modula NALOG0010. U okviru pravougaonika koji reprezentuje sam modul, nalazi se pravougaonik koji reprezentuje prozor s

29 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 663. naslovom "Nalog za otpremu" i obuhvata obe komponente modula. To znaci da ce celokupan sadrzaj ekranske forme biti rasporedjen na tacno jednom prozoru. U okviru komponenata modula, prikazana su samo polja koja su oznacena kao vidljiva za krajnjeg korisnika. Zapaza se da su i komponente modula i polja na ovom dijagramu prikazana putem svojih naslova, koji se pojavljuju i na ekranskoj formi. Pravougaonici s naslovima Nalog i Za kupca, u okviru prve komponente modula, predstavljaju grupe polja, koje se zajedno prikazuju. Slika P6.6. Simbol " ", koji se na slici P6.30 ili slici P6.35 moze primetiti na nivou polja IDR, komponenti modula, kao i samog modula, oznacava da je na datom nivou definisan klijentski program, ili klijentski dogadjaj, namenjen za izvrsavanje u okviru modula. U okviru implementacione specifikacije programskog modula postoji mogucnost definisanja dogadjaja na klijentu i klijentskih programa, putem kojih se mogu specificirati nestandardni postupci obrade podataka, ili manipulacije podacima. Iako proces izrade klijentskih prog-

30 664. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka rama i definisanja klijentskih dogadjaja spada u aktivnost programiranja, a sam programski kod se oblikuje putem proceduralno orijentisanog jezika PL/SQL, rezultat ovog procesa pripada implementacionoj specifikaciji programskog modula. Zbog toga se rezultati postupka izrade klijentskih dogadjaja i programa u okviru ove studije slucaja prezentuju u okviru ove tacke priloga. Kada je u pitanju programski modul za formiranje naloga za otpremu NA- LOG0010, programskim putem, realizovani su sledeci zahtevi: da se obezbedi kontrola inverznog referencijalnog integriteta Zag_Nal[(IDS, BRN )] c Stav_Nal[(IDS, BRN )], prilikom upisa novog naloga za otpremu u bazu podataka i da se u listi izbora za prikaz raspolozivog stanja zaliha robe obezbedi selektovanje samo zaliha robe iz skladista s vrednoscu sifre IDS, koja je specificirana u zaglavlju naloga. Prvi zahtev je nastao kao posledica opredeljenja da se upis torki u relacije r(zag_nal ) i r(stav_nal ) sprovodi direktno, putem SQL naredbi oblika INSERT, a ne pozivom udaljene procedure, pod nazivom Upis_Zag_Stav_Nal, prezentovane u okviru priloga P5. Do ovog opredeljenja se doslo s ciljem lakse realizacije programskog modula NALOG0010 putem Designer-a Da bi se navedeni zahtev ispunio, definisani su sledeci klijentski dogadjaji: "PRE-INSERT" klijentski triger, na nivou komponente modula Zag_Nal i "POST-FORMS-COMMIT" klijentski triger, na nivou modula NALOG0010. "PRE-INSERT" klijentski triger, na nivou komponente modula Zag_Nal (videti navigator objekata na levoj strani slike P6.36), pokrece se neposredno pre svakog pokusaja upisa nove torke u relaciju r(zag_nal ) i obezbedjuje aktiviranje mogucnosti direktnog izvrsenja SQL INSERT naredbe, time sto se blokira aktivnost trigera baze podataka Upis_IRI_Zag_Nal, prezentovanog u prilogu P5. Radi podsecanja, navodi se da triger baze podataka Upis_IRI_Zag_Nal ima zadatak da onemoguci direktan upis novih torki u relaciju r(zag_nal ). "POST-FORMS-COMMIT " klijentski triger, na nivou modula NALOG0010, pokrece se na samom kraju transakcije, ciji je zadatak upis novog naloga za otpremu u bazu podataka, odnosno jedne nove torke u relaciju r(zag_nal ) i svih povezanih torki u relaciju r(stav_nal ). Na levoj strani slike P6.36 je prikazan izvod iz hijerarhije objekata modula NALOG0010, u kojoj se vidi da navedeni triger pripada potklasi Applicatoin Logic / Events. Na desnoj strani iste slike je prikazan PL/SQL programski kod posmatranog trigera. Zadatak ovog klijentskog trigera je da deaktivira mogucnost direktnog izvrsenja SQL INSERT naredbe, time sto se deblokira aktivnost trigera baze podataka Upis_IRI_Zag_Nal, pozivom serverske procedure Izvrsenje_okidaca, opisane u glavi 9. Pored toga, ovaj triger sadrzi i poziv serverske funkcije Sadrzi_IRI_Zag_Nal, koja za zadatu torku v, odnosno zaglavlje naloga za otpremu, proverava da li u relaciji r(stav_nal ) postoji najmanje jedna odgovarajuca stavka naloga za otpremu. Ukoliko uslov nije zadovoljen, transakcija se ponistava. Detaljniji opis funkcije Sadrzi_IRI_Zag_Nal se nalazi u prilogu P5. Drugi zahtev, da se u listi izbora za prikaz raspolozivog stanja zaliha robe obezbedi selektovanje samo zaliha robe iz skladista s vrednoscu sifre IDS, koja je specificirana u zaglavlju naloga, realizuje se programski zbog odluke da se lista izbora prikazuje putem posebne forme i "nesavrsenosti" generatora koda Designer-a 2000 da, u toj situaciji, sam obezbedi automatski prenos vrednosti obelezja IDS, kao parametra u listu vrednosti. Programski kod i dogadjaj, potrebni za podrsku ovakvog zahteva, na ovom mestu nece biti

31 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 665. prezentovani, s tim sto je potrebno napomenuti da je sam programski kod formiran kombinovanjem drugih segmenata programa, koje je Designer 2000 u stanju da izgenerise i da je smesten u okviru recnika podataka, tj. pripada specifikaciji modula. Slika P6.7. P6.4. Opis seme baze podataka putem jezika podataka i mehanizama SUBP za studiju slucaja U okviru ove tacke priloga, prezentuje se deo opisa seme baze podataka, prikazanog putem jezika SQL. Rec je o automatski generisanom kodu, produkovanom pomocu generatora SQL koda Designer-a 2000 i prilagodjenom za SUBP ORACLE V.8.*. SQL opis seme baze podataka je dobijen na osnovu specifikacije implementacionog projekta seme baze podataka, ciji elementi su razmatrani u delu P Na slici P6.37 je prikazan izvod iz datoteke koja sadrzi SQL naredbe za kreiranje odgovarajucih tabela. Na slikama P6.38, P6.39 i P6.40 su prikazani izvodi iz datoteke koja sadrzi SQL naredbe za kreiranje ogranicenja seme baze podataka putem deklarativnih mehanizama. Slika P6.2 daje prikaz naredbi za kreiranje ogranicenja primarnog kljuca, slika

32 666. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka P6.39 daje prikaz naredbi za kreiranje ogranicenja torki, a slika P6.40 daje prikaz naredbi za kreiranje ogranicenja stranog kljuca. Na slici P6.41 je prikazan tekst trigera PP_Stav_Nal_INS, opisanog u tacki P CREATE TABLE KUPAC (IDK NUMBER(6) NOT NULL,NAK VARCHAR2(30) NOT NULL,ADR VARCHAR2(60) NOT NULL,BON NUMBER(6) DEFAULT 5 NOT NULL ) / CREATE TABLE SKLADISTE (IDS NUMBER(6) NOT NULL,NAS VARCHAR2(15) ) / CREATE TABLE ROBA (IDR NUMBER(6) NOT NULL,JEM VARCHAR2(15) NOT NULL,NAR VARCHAR2(30) NOT NULL ) / CREATE TABLE ZALIHA (IDS NUMBER(6) NOT NULL,IDR NUMBER(6) NOT NULL,ZAL NUMBER(10,4) DEFAULT 0 NOT NULL,RAS NUMBER(10,4) DEFAULT 0 NOT NULL ) / CREATE TABLE ZAG_NAL (IDS NUMBER(6) NOT NULL,BRN NUMBER(6) NOT NULL,IDK NUMBER(6) NOT NULL,STN VARCHAR2(15) NOT NULL,OSN VARCHAR2(15) ) / CREATE TABLE STAV_NAL (IDS NUMBER(6) NOT NULL,BRN NUMBER(6) NOT NULL,IDR NUMBER(6) NOT NULL,STA VARCHAR2(15) NOT NULL,KOL NUMBER(10,4) DEFAULT 0 NOT NULL ) Slika P6.1.

33 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 667. ALTER TABLE KUPAC ADD CONSTRAINT KP_PK PRIMARY KEY (IDK) / ALTER TABLE ROBA ADD CONSTRAINT RO_PK PRIMARY KEY (IDR) / ALTER TABLE SKLADISTE ADD CONSTRAINT SK_PK PRIMARY KEY (IDS) / ALTER TABLE ZALIHA ADD CONSTRAINT ZL_PK PRIMARY KEY (IDS, IDR) / ALTER TABLE ZAG_NAL ADD CONSTRAINT ZG_PK PRIMARY KEY (IDS, BRN) / ALTER TABLE STAV_NAL ADD CONSTRAINT SN_PK PRIMARY KEY (IDS, BRN, IDR) / Slika P6.2. ALTER TABLE KUPAC ADD CONSTRAINT AVCON_KUPAC_IDK_000 CHECK (IDK BETWEEN 100 AND 9999) ADD CONSTRAINT AVCON_KUPAC_BON_000 CHECK (BON BETWEEN 0 AND 5) / ALTER TABLE ZAG_NAL ADD CONSTRAINT AVCON_ZAG_N_BRN_000 CHECK (BRN BETWEEN AND ) ADD CONSTRAINT AVCON_ZAG_N_STN_000 CHECK (STN IN ('D', 'N')) ADD CONSTRAINT AVCON_ZAG_N_OSN_000 CHECK (OSN IN ('U', 'P')) / ALTER TABLE STAV_NAL ADD CONSTRAINT AVCON_STAV STA_000 CHECK (STA IN ('R', 'I')) ADD CONSTRAINT AVCON_STAV KOL_000 CHECK (KOL BETWEEN 0 AND ) / ALTER TABLE ZALIHA ADD CONSTRAINT CHECK_ZAL_RAS CHECK (RAS <= ZAL) ADD CONSTRAINT AVCON_ZALIH_ZAL_000 CHECK (ZAL BETWEEN 0 AND ) ADD CONSTRAINT AVCON_ZALIH_RAS_000 CHECK (RAS BETWEEN 0 AND ) Slika P6.3.

34 668. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka ALTER TABLE ZALIHA ADD CONSTRAINT ZL_SK_FK FOREIGN KEY (IDS) REFERENCES SKLADISTE (IDS) ADD CONSTRAINT ZL_RO_FK FOREIGN KEY (IDR) REFERENCES ROBA (IDR) / ALTER TABLE ZAG_NAL ADD CONSTRAINT ZG_KP_FK FOREIGN KEY (IDK) REFERENCES KUPAC (IDK) ADD CONSTRAINT ZG_SK_FK FOREIGN KEY (IDS) REFERENCES SKLADISTE (IDS) / ALTER TABLE STAV_NAL ADD CONSTRAINT SN_ZG_FK FOREIGN KEY (IDS, BRN) REFERENCES ZAG_NAL (IDS, BRN) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED ADD CONSTRAINT SN_ZL_FK FOREIGN KEY (IDS, IDR) REFERENCES ZALIHA (IDS, IDR) Slika P6.4. CREATE OR REPLACE TRIGGER PP_STAV_NAL_INS BEFORE INSERT ON STAV_NAL FOR EACH ROW DECLARE EXC EXCEPTION; BEGIN IF :NEW.STA!= 'R' THEN RAISE exc; END IF; UPDATE Zaliha SET RAS = RAS - :NEW.KOL WHERE IDS = :NEW.IDS AND IDR = :NEW.IDR; EXCEPTION WHEN EXC THEN RAISE_APPLICATION_ERROR(-20004, 'Status stavke naloga mora biti "rezervisano".'); WHEN OTHERS THEN RAISE_APPLICATION_ERROR(-20000, 'Doslo je do greske pri upisu nove stavke naloga i ' 'modifikaciji raspolozivog stanja zaliha'); END; / Slika P6.5.

35 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 669. P6.5. Generisanje i programiranje Generisanje programa za formiranje naloga za otpremu NALOG0010 je sprovedeno upotrebom generatora Forms modula, za okruzenje Developer 2000 V.2.1. U postupku generisanja, koji je obicno iterativne prirode, vrse se dodatne modifikacije implementacione specifikacije modula, da bi se otklonili eventualno uoceni nedostaci, ili da bi se izvrsila poboljsanja izgleda dobijene ekranske forme. Izmedju ostalog, tokom generisanja se pojavljuje i potreba izmene predefinisanih vrednosti generatorskih preferenci. Preference su parametri generatora modula, cije vrednosti dodatno uticu na izgled, nacin generisanja i nacin funkcionisanja izgenerisanog programa. Vrednosti generatorskih preferenci se mogu zadati na nivou aplikacionog sistema, domena, tabele, kolone tabele, modula, komponente modula, vezanog polja, itd, cime se definise i "opseg delovanja" vrednosti preference. Na slici P6.42 je prikazan izgled ekranske forme za formiranje naloga za otpremu, izgenerisanog modula NALOG0010. Slika P6.1.

36 670. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Slika P6.2. Na slici P6.43 je prikazan izgled iste ekranske forme, u trenutku kada se kursor nalazio na polju za unos identifikacionog broja kupca (IDK ) i kada je pozvana lista izbora vrednosti identifikacionog broja kupca. U okviru ove, kao i svih drugih lista izbora u ovom modulu, korisnik ima mogucnost da zada dodatne kriterijume za prikaz izvoda iz celokupne evidencije. Slika P6.3 daje prikaz ekranske forme za formiranje naloga za otpremu, u trenutku kada se kursor nalazio na polju za unos identifikacionog broja robe (IDR) i kada je pozvana lista izbora vrednosti identifikacionog broja robe. U ovoj listi vrednosti, mogu se naci samo podaci o robi koja je evidentirana na zalihama onog skladista, ciji je identifikacioni broj naveden u zaglavlju naloga. U ovom primeru, rec je o skladistu s identifikacionim brojem 10.

37 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 671. Slika P6.3. Osnovna logika izvrsavanja interaktivnog modula NALOG0010 jeste da korisnik, nakon pokretanja programa i prijavljivanja na server baze podataka, moze da selektuje, zadaje, modifikuje, ili brise podatke o nalogu za otpremu, putem prikazane ekranske forme. Ti podaci se smestaju u radnu zonu programa. U slucaju da je putem ekranske forme izvrseno azuriranje podataka u radnoj zoni programa, korisnik je u obavezi da pokrene postupak azuriranja podataka u bazi, izborom funkcije "Sacuvaj" ("Save", na primer pokretanjem opcije menija Action/Save, ili aktiviranjem odgovarajuce ikone), ili da odustane od izmena. Sam postupak azuriranja se sprovodi automatski, putem jedne transakcije, a korisnik ce, na kraju izvodjenja transakcije, biti obavesten o efektima njenog sprovodjenja. Za svaku novododatu torku u radnoj zoni programa, u okviru transakcije ce automatski biti formirana jedna SQL INSERT naredba. Isto tako, za svaku modifikovanu torku u radnoj zoni programa, transakcija ce sadrzati jednu UPDATE naredbu, dok ce za svaku torku u radnoj zoni programa, koja je oznacena kao izbrisana, transakcija sadrzati jednu DELETE naredbu.

38 672. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka Da bi se dobio prikazani interaktivni program, izvrsena su prilagodjenja vrednosti pojedinih generatorskih preferenci, kao i neznatna prilagodjenja sablonske forme i biblioteke Developer 2000 Forms objekata, koje generator, pri svom radu, takodje koristi. U praksi, da bi se ostvarila maksimalna efikasnost upotrebe generatora koda Designer-a 2000, potrebno je: propisati standarde za izgled korisnickog interfejsa generisanih aplikacija, propisati standarde upotrebe ovog CASE proizvoda, formirati opste komponente modula *), koje se, prema propisanom standardu, ukljucuju u specifikacije konkretnih programskih modula i izvrsiti znatna prilagodjenja vrednosti generatorskih preferenci, uvodjenjem imenovanih skupova preferenci, sablonske forme i biblioteke Developer 2000 Forms objekata. U nastavku teksta, kao ilustracija, navodi se da je izvrseno redefinisanje vrednosti generatorske preference pod nazivom VLDTPK, kojom se odredjuje trenutak provere vazenja ogranicenja primarnog kljuca putem klijentskog programa. Za ogranicenje primarnog kljuca se, generalno, u okviru specifikacije implementacione seme baze podataka, navodi mesto validacije (provere vazenja) ogranicenja, koje, kao sto je vec napomenuto, moze imati vrednost: "Server", "Klijent", "Server i Klijent", ili "Nigde". Ukoliko je za mesto provere vazenja ogranicenja izabrana vrednost "Klijent", ili "Server i Klijent", tada ce generator Forms modula obezbediti generisanje klijentskog programa koji ce proveriti vazenje ogranicenja primarnog kljuca. Inicijalna vrednost preference VLDTPK = B znaci da ce poziv takvog klijentskog programa uslediti: nakon pokusaja zadavanja ili modifikacije vrednosti poslednjeg polja koje odgovara obelezju primarnog kljuca, sto se naziva validacija na nivou polja i na pocetku transakcije za azuriranje podataka u bazi, sto se naziva validacija na nivou transakcije. Obe validacije putem klijentskog programa su, u logickom smislu, suvisne, posto je ogranicenje primarnog kljuca, putem deklarativnih mehanizama, implementirano na serveru baze podataka. Validacija na nivou transakcije je u ovom slucaju, medjutim, potpuno nepotrebna, jer se sprovodi, sa stanovista krajnjeg korisnika, u isto vreme kao i validacija ogranicenja na nivou servera baze podataka. Zbog toga je promenjena vrednost posmatrane preference, tako da vazi VLDTPK = F. To znaci da ce putem klijentskog programa biti obezbedjena samo validacija na nivou polja, kako bi korisnik bio, u slucaju narusavanja ogranicenja primarnog kljuca, upozoren da je doslo do greske vec pri pokusaju napustanja poslednjeg polja koje odgovara obelezju primarnog kljuca, a ne tek u momentu kada pokrene transakciju azuriranja podataka u bazi. U okviru ovog teksta, bice ilustrovana i motivacija za izmenu vrednosti generatorske preference LOVVAL. Naime, u okviru implementacionog projekta seme baze podataka, predvidjeno je da se za mesto validacije ogranicenja stranog kljuca ZG_KP_FK izabere vrednost "Server i Klijent", sto znaci da je referencijalni integritet Zag_Nal[IDK ] Kupac[IDK ] potrebno kontrolisati i putem klijentskog programa, nakon pokusaja zadavanja ili promene vrednosti polja IDK. Ukoliko se projektant opredeli za prikaz liste izbora vrednosti putem predefinisanog objekta, pod nazivom Forms LOV objekat, a ne putem posebne ekranske forme, tada inicijalna vrednost preference LOVVAL = Y obezbedjuje da se *) Na engleskom: reusable module components.

39 Prilog P6. Projektovanje i realizacija studije slucaja putem CASE alata 673. kontrola navedenog referencijalnog integriteta izvrsi automatski, bez dodatnog pisanja klijentskog programa za tu svrhu. Posto je u ovoj studiji slucaja opredeljenje da se sve liste izbora vrednosti prikazu putem posebnih ekranskih formi, tada se ne moze obezbediti automatska kontrola validnosti referencijalnog integriteta na klijentu, vec se u te svrhe mora izgenerisati poseban klijentski program i jedan klijentski dogadjaj. Da bi se to postiglo, potrebno je redefinisati vrednost preference LOVVAL, tako da bude LOVVAL = N. Nakon definisanja vrednosti preference LOVVAL = N, generator Forms modula ce automatski formirati klijentski triger (dogadjaj) pod nazivom "When-Validate-Item", na nivou polja IDK, u okviru zaglavlja naloga. Na levoj strani slike P6.45 je prikazano mesto u hijerarhiji objekata alata Form Builder iz okruzenja Developer 2000, na kojem je triger "When-Validate-Item" definisan, dok je na desnoj strani iste slike prikazan PL/SQL programski kod, pridruzen ovom trigeru. Triger ce se pokrenuti neposredno nakon pokusaja korisnika da zada, ili modifikuje vrednost polja IDK, bilo pri napustanju polja, bilo pri zahtevu korisnika da se pokrene transakcija za azuriranje podataka u bazi. Namena trigera je da spreci takvo zadavanje ili modifikovanje vrednosti polja IDK, koje bi narusilo referencijalni integritet Zag_Nal[IDK ] Kupac[IDK ]. Slika P6.4. Centralno mesto u programskom kodu posmatranog trigera, koji se izvrsava na klijentu, zauzima poziv procedure pod nazivom CGFK$CHK_ZAG_NAL_ZG_KP_FK. Ona je, takodje, u potpunosti formirana od strane generatora Forms modula. Sam programski

40 674. P. Mogin, I. Lukovic, M. Govedarica / Principi projektovanja baza podataka kod ove klijentske procedure je prikazan na slici P6.46. Njena namena je da se, za zadatu vrednost polja IDK, odnosno parametra P_IDK, proveri da li u bazi podataka, odnosno relaciji r(kupac), postoji torka sa zadatom vrednoscu identifikacionog broja kupca. Ukoliko taj uslov nije ispunjen, izaziva se, putem naredbe RAISE, izuzetak NO_DATA_FOUND. Ovaj izuzetak je obradjen u okviru naredbe WHEN NO_DATA_FOUND THEN, trigera "When-Validate-Item", tako sto se, uz odgovarajucu poruku, prekida izvrsenje trigera, a kursor ostavlja na poziciji polja IDK. Slika P6.5. Treba napomenuti i to da se procedura CGFK$CHK_ZAG_NAL_ZG_KP_FK izvrsava manjim delom na klijentu, a vecim na serveru baze podataka. Tako, na primer, naredbe za otvaranje kursorskog podrucja (OPEN C ), pristup torki u kursorskom podrucju (FETCH C ), zatvaranje kursorskog podrucja (CLOSE C ) i preuzimanje vrednosti logicke promenljive C%NOTFOUND, koja vraca vrednost true, ako i samo ako je kursorsko podrucje prazno, predstavljaju zahteve koji se prosledjuju serveru baze podataka, kako bi ih on realizovao za potrebe klijentskog programa CGFK$CHK_ZAG_NAL_ZG_KP_FK. Aktivnost programiranja modula, u pristupu koji namece Designer 2000 V.2.1, treba da se svede na definisanje specificnih klijentskih dogadjaja i programa u samoj speci-

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije Biznis scenario: U školi postoje četiri sekcije sportska, dramska, likovna i novinarska. Svaka sekcija ima nekoliko aktuelnih projekata. Likovna ima četiri projekta. Za projekte Pikaso, Rubens i Rembrant

More information

Podešavanje za eduroam ios

Podešavanje za eduroam ios Copyright by AMRES Ovo uputstvo se odnosi na Apple mobilne uređaje: ipad, iphone, ipod Touch. Konfiguracija podrazumeva podešavanja koja se vrše na računaru i podešavanja na mobilnom uređaju. Podešavanja

More information

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI Za pomoć oko izdavanja sertifikata na Windows 10 operativnom sistemu možete se obratiti na e-mejl adresu esupport@eurobank.rs ili pozivom na telefonski broj

More information

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. 1) Kod pravilnih glagola, prosto prošlo vreme se gradi tako

More information

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings Eduroam O Eduroam servisu Eduroam - educational roaming je besplatan servis za pristup Internetu. Svojim korisnicima omogućava bezbedan, brz i jednostavan pristup Internetu širom sveta, bez potrebe za

More information

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri. Potprogrami su delovi programa. Često se delovi koda ponavljaju u okviru nekog programa. Logično je da se ta grupa komandi izdvoji u potprogram, i da se po želji poziva u okviru programa tamo gde je potrebno.

More information

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević GUI Layout Manager-i Bojan Tomić Branislav Vidojević Layout Manager-i ContentPane Centralni deo prozora Na njega se dodaju ostale komponente (dugmići, polja za unos...) To je objekat klase javax.swing.jpanel

More information

STRUČNA PRAKSA B-PRO TEMA 13

STRUČNA PRAKSA B-PRO TEMA 13 MAŠINSKI FAKULTET U BEOGRADU Katedra za proizvodno mašinstvo STRUČNA PRAKSA B-PRO TEMA 13 MONTAŽA I SISTEM KVALITETA MONTAŽA Kratak opis montže i ispitivanja gotovog proizvoda. Dati izgled i sadržaj tehnološkog

More information

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB. 9.72 8.24 6.75 6.55 6.13 po 9.30 7.89 5.86 10.48 8.89 7.30 7.06 6.61 11.51 9.75 8.00 7.75 7.25 po 0.38 10.21 8.66 7.11 6.89 6.44 11.40 9.66 9.73 7.69 7.19 12.43 1 8.38 7.83 po 0.55 0.48 0.37 11.76 9.98

More information

SAS On Demand. Video: Upute za registraciju:

SAS On Demand. Video:  Upute za registraciju: SAS On Demand Video: http://www.sas.com/apps/webnet/video-sharing.html?bcid=3794695462001 Upute za registraciju: 1. Registracija na stranici: https://odamid.oda.sas.com/sasodaregistration/index.html U

More information

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a NIS PETROL Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a Beograd, 2018. Copyright Belit Sadržaj Disable... 2 Komentar na PHP kod... 4 Prava pristupa... 6

More information

Port Community System

Port Community System Port Community System Konferencija o jedinstvenom pomorskom sučelju i digitalizaciji u pomorskom prometu 17. Siječanj 2018. godine, Zagreb Darko Plećaš Voditelj Odsjeka IS-a 1 Sadržaj Razvoj lokalnog PCS

More information

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT TRAJANJE AKCIJE 16.01.2019-28.02.2019 ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT Akcija sa poklonima Digitally signed by pki, pki, BOSCH, EMEA, BOSCH, EMEA, R, A, radivoje.stevanovic R, A, 2019.01.15 11:41:02

More information

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd, AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje Marko Eremija Sastanak administratora, Beograd, 12.12.2013. Sadržaj eduroam - uvod AMRES eduroam statistika Novine u okviru eduroam

More information

1. Instalacija programske podrške

1. Instalacija programske podrške U ovom dokumentu opisana je instalacija PBZ USB PKI uređaja na računala korisnika PBZCOM@NET internetskog bankarstva. Uputa je podijeljena na sljedeće cjeline: 1. Instalacija programske podrške 2. Promjena

More information

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći:

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći: Pogledi Ciljevi Poslije kompletiranja ove lekcije trebalo bi se moći: Opisati pogled Formirati novi pogled Vratiti podatke putem pogleda Izmijeniti postojeći pogled Insertovani, ažurirati i brisati podatke

More information

OBJEKTNO ORIJENTISANO PROGRAMIRANJE

OBJEKTNO ORIJENTISANO PROGRAMIRANJE OBJEKTNO ORIJENTISANO PROGRAMIRANJE PREDAVANJE 3 DEFINICIJA KLASE U JAVI Miloš Kovačević Đorđe Nedeljković 1 /18 OSNOVNI KONCEPTI - Polja - Konstruktori - Metode - Parametri - Povratne vrednosti - Dodela

More information

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Upute za korištenje makronaredbi gml2dwg i gml2dgn SVEUČILIŠTE U ZAGREBU - GEODETSKI FAKULTET UNIVERSITY OF ZAGREB - FACULTY OF GEODESY Zavod za primijenjenu geodeziju; Katedra za upravljanje prostornim informacijama Institute of Applied Geodesy; Chair

More information

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 LAB 09 Fizički model podatka 1. Fizički model podataka Fizički model podataka omogućava da se definiše struktura baze podataka sa stanovišta fizičke

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka 25. novembar 2011. godine 7. čas SQL skalarne funkcije, operatori ANY (SOME) i ALL 1. Za svakog studenta izdvojiti ime i prezime i broj različitih ispita koje je pao (ako

More information

Otpremanje video snimka na YouTube

Otpremanje video snimka na YouTube Otpremanje video snimka na YouTube Korak br. 1 priprema snimka za otpremanje Da biste mogli da otpremite video snimak na YouTube, potrebno je da imate kreiran nalog na gmailu i da video snimak bude u nekom

More information

IZRADA TEHNIČKE DOKUMENTACIJE

IZRADA TEHNIČKE DOKUMENTACIJE 1 Zaglavlje (JUS M.A0.040) Šta je zaglavlje? - Posebno uokvireni deo koji služi za upisivanje podataka potrebnih za označavanje, razvrstavanje i upotrebu crteža Mesto zaglavlja: donji desni ugao raspoložive

More information

SQL standard podrzava sledece vrste ogranicenja: Ogranicenja domena Ogranicenja tabela i kolona Opsta ogranicenja

SQL standard podrzava sledece vrste ogranicenja: Ogranicenja domena Ogranicenja tabela i kolona Opsta ogranicenja 1. Ograničenja u relacionom modelu. DINAMIČKA PRAVILA INTEGRITETA Pravila integriteta definišu dozvoljena stanja i dozvoljene prelaze sistema iz stanja u stanje. Pravilo integriteta u relacionom modelu

More information

Struktura i organizacija baza podataka

Struktura i organizacija baza podataka Fakultet tehničkih nauka, DRA, Novi Sad Predmet: Struktura i organizacija baza podataka Dr Slavica Aleksić, Milanka Bjelica, Nikola Obrenović Primer radnik({mbr, Ime, Prz, Sef, Plt, God, Pre}, {Mbr}),

More information

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS - Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS 1. Pokrenite Adobe Photoshop CS i otvorite novi dokument sa komandom File / New 2. Otvoriće se dijalog

More information

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

Struktura indeksa: B-stablo.   ls/swd/btree/btree.html Struktura indeksa: B-stablo http://cis.stvincent.edu/html/tutoria ls/swd/btree/btree.html Uvod ISAM (Index-Sequential Access Method, IBM sredina 60-tih godina 20. veka) Nedostaci: sekvencijalno pretraživanje

More information

3D GRAFIKA I ANIMACIJA

3D GRAFIKA I ANIMACIJA 1 3D GRAFIKA I ANIMACIJA Uvod u Flash CS3 Šta će se raditi? 2 Upoznavanje interfejsa Osnovne osobine Definisanje osnovnih entiteta Rad sa bojama Rad sa linijama Definisanje i podešavanje ispuna Pregled

More information

Klasterizacija. NIKOLA MILIKIĆ URL:

Klasterizacija. NIKOLA MILIKIĆ   URL: Klasterizacija NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Klasterizacija Klasterizacija (eng. Clustering) spada u grupu tehnika nenadgledanog učenja i omogućava grupisanje

More information

BENCHMARKING HOSTELA

BENCHMARKING HOSTELA BENCHMARKING HOSTELA IZVJEŠTAJ ZA SVIBANJ. BENCHMARKING HOSTELA 1. DEFINIRANJE UZORKA Tablica 1. Struktura uzorka 1 BROJ HOSTELA BROJ KREVETA Ukupno 1016 643 1971 Regije Istra 2 227 Kvarner 4 5 245 991

More information

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY Softverski sistem Survey za geodeziju, digitalnu topografiju i projektovanje u niskogradnji instalira se na sledeći način: 1. Instalirati grafičko okruženje pod

More information

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE CJENOVNIK KABLOVSKA TV Za zasnivanje pretplatničkog odnosa za korištenje usluga kablovske televizije potrebno je da je tehnički izvodljivo (mogude) priključenje na mrežu Kablovskih televizija HS i HKBnet

More information

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA KOŽA I TEKSTIL ALU FELGE CJENIK APLIKACIJE CERAMIC PRO PROIZVODA Radovi prije aplikacije: Prije nanošenja Ceramic Pro premaza površina vozila na koju se nanosi mora bi dovedena u korektno stanje. Proces

More information

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti MRS LAB 03 MRSLab03 Metodologija Razvoja Softvera Vežba 03 Dijagrami aktivnosti 1. Dijagram aktivnosti Dijagram aktivnosti je UML dijagram koji modeluje dinamičke aspekte sistema. On predstavlja pojednostavljenje

More information

3.2. Prikazati podatke o svim proizvodima, koji se proizvode u Zrenjaninu.

3.2. Prikazati podatke o svim proizvodima, koji se proizvode u Zrenjaninu. Primer 3. Data je sledeća šema baze podataka S = (S, I ), pri čemu je skup šema relacija: S = { Dobavljač({ID_DOBAVLJAČA, NAZIV, STATUS, GRAD}, {ID_DOBAVLJAČA}), Deo({ID_DETALJA, NAZIV, BOJA, TEŽINA, GRAD},

More information

PROJEKTNI PRORAČUN 1

PROJEKTNI PRORAČUN 1 PROJEKTNI PRORAČUN 1 Programski period 2014. 2020. Kategorije troškova Pojednostavlj ene opcije troškova (flat rate, lump sum) Radni paketi Pripremni troškovi, troškovi zatvaranja projekta Stope financiranja

More information

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION VFR AIP Srbija / Crna Gora ENR 1.4 1 ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION 1. KLASIFIKACIJA VAZDUŠNOG PROSTORA

More information

MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA

MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA MODEL OBJEKTI - VEZE MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA MODELI PODATAKA Model objekti-veze Relacioni model Objektni model Objektno-relacioni model Aktivne baze podataka XML kao

More information

Razvoj softverskog rešenja za podršku upravljanju proizvodnim nalozima u industrijskoj proizvodnji

Razvoj softverskog rešenja za podršku upravljanju proizvodnim nalozima u industrijskoj proizvodnji INFOTEH-JAHORINA Vol. 12, March 2013. Razvoj softverskog rešenja za podršku upravljanju proizvodnim nalozima u industrijskoj proizvodnji Bojan Stojković, Darko Stefanović, Dejan Rašić, Goran Pilipović,

More information

msc Velimir Milanovic Unošenje prvih zapisa Kreiranje elektronskih obrazaca - formi Prva forma - Čitaoci U P I T I

msc Velimir Milanovic Unošenje prvih zapisa Kreiranje elektronskih obrazaca - formi Prva forma - Čitaoci U P I T I msc Velimir Milanovic SADRŽAJ: 1. Pojam informacionih sistema... 4 1. 1. Vrste informacionih sistema... 5 1.1.1. Informacioni sistemi za obradu podataka (dp data processing)... 5 1. 1. 2. Upravljački informacioni

More information

MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08

MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08 MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08 LAB 08 Konceptualni model podataka Logički model podataka 1. Konceptualni model podataka Modeli podataka omogućavaju modelovanje semantičke i logičke

More information

Dr.Miroljub Banković, prof. Kragujevac, 2008.

Dr.Miroljub Banković, prof. Kragujevac, 2008. VISOKA TEHNIČKA ŠKOLA STRUKOVNIH STUDIJA KRAGUJEVAC Skripta iz predmeta PROJEKTOVANJE INFORMACIONIH SISTEMA Dr.Miroljub Banković, prof. Kragujevac, 2008. SADRŽAJ OSNOVI TEORIJE SISTEMA... 3 DEFINICIJE

More information

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU KONFIGURACIJA MODEMA ZyXEL Prestige 660RU Sadržaj Funkcionalnost lampica... 3 Priključci na stražnjoj strani modema... 4 Proces konfiguracije... 5 Vraćanje modema na tvorničke postavke... 5 Konfiguracija

More information

Bušilice nove generacije. ImpactDrill

Bušilice nove generacije. ImpactDrill NOVITET Bušilice nove generacije ImpactDrill Nove udarne bušilice od Bosch-a EasyImpact 550 EasyImpact 570 UniversalImpact 700 UniversalImpact 800 AdvancedImpact 900 Dostupna od 01.05.2017 2 Logika iza

More information

1. MODEL (Ulaz / Zadržavanje / Stanje)

1. MODEL (Ulaz / Zadržavanje / Stanje) 1. MODEL (Ulaz / Zadržavanje / Stanje) Potrebno je kreirati model koji će preslikavati sledeći realan sistem: Svaki dan dolazi određen broj paleta u skladište Broj paleta na nivou dana se može opisati

More information

VBA moduli. mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice

VBA moduli. mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice VBA moduli mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice Moduli (modules) ponašanje modula Ponašanje modula može se prilagoditi na 4 načina: Option Explicit Option Private Module

More information

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik) JEDINSTVENI PORTAL POREZNE UPRAVE Priručnik za instalaciju Google Chrome dodatka (Opera preglednik) V1 OPERA PREGLEDNIK Opera preglednik s verzijom 32 na dalje ima tehnološke promjene zbog kojih nije moguće

More information

Advertising on the Web

Advertising on the Web Advertising on the Web On-line algoritmi Off-line algoritam: ulazni podaci su dostupni na početku, algoritam može pristupati podacima u bilo kom redosljedu, na kraju se saopštava rezultat obrade On-line

More information

3. Strukturna sistemska analiza... 2 3.1. Uvod... 2 3.1.1. Sadržaj... 2 3.1.2. Ciljevi... 3 3.2. Analiza sistema... 3 3.2.1. Sistem... 3 3.2.2. Analiza sistema... 4 3.2.3. Modelovanje sistema... 6 3.2.3.1.

More information

Nejednakosti s faktorijelima

Nejednakosti s faktorijelima Osječki matematički list 7007, 8 87 8 Nejedakosti s faktorijelima Ilija Ilišević Sažetak Opisae su tehike kako se mogu dokazati ejedakosti koje sadrže faktorijele Spomeute tehike su ilustrirae a izu zaimljivih

More information

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja.

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja. LabVIEW-ZADACI 1. Napisati program u LabVIEW-u koji računa zbir dva broja. Startovati LabVIEW Birati New VI U okviru Controls Pallete birati numerički kontroler tipa Numerical Control, i postaviti ga na

More information

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports. IZVJEŠTAJI U MICROSOFT ACCESS-u (eng. reports) su dijelovi baze podataka koji omogućavaju definiranje i opisivanje načina ispisa podataka iz baze podataka na papir (ili PDF dokument). Način izrade identičan

More information

Projektovanje softvera. Dijagrami slučajeva korišćenja

Projektovanje softvera. Dijagrami slučajeva korišćenja Projektovanje softvera Dijagrami slučajeva korišćenja Uvod 2 Dijagram slučajeva korišćenja (use-case) prikazuje skup slučajeva korišćenja i aktera Tipično se koristi da specificira neku funkcionalnost

More information

Tutorijal za Štefice za upload slika na forum.

Tutorijal za Štefice za upload slika na forum. Tutorijal za Štefice za upload slika na forum. Postoje dvije jednostavne metode za upload slika na forum. Prva metoda: Otvoriti nova tema ili odgovori ili citiraj već prema želji. U donjem dijelu obrasca

More information

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum:

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum: Programiranje Nastava: prof.dr.sc. Dražena Gašpar Datum: 21.03.2017. 1 Pripremiti za sljedeće predavanje Sljedeće predavanje: 21.03.2017. Napraviti program koji koristi sve tipove podataka, osnovne operatore

More information

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. Idejno rješenje: Dubrovnik 2020. Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. vizualni identitet kandidature dubrovnika za europsku prijestolnicu kulture 2020. visual

More information

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES TOPOSKUPJAJUĆI KABOVSKI PRIBOR HEAT-SHRINKABE CABE ACCESSORIES KATAOG PROIZVODA PRODUCT CATAOGUE 8 TEHNO SISTEM d.o.o. NISKONAPONSKI TOPOSKUPJAJUĆI KABOVSKI PRIBOR TOPOSKUPJAJUĆE KABOVSKE SPOJNICE kv OW

More information

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT Univerzitet u Novom Sadu Fakultet tehničkih nauka Odsek za računarsku tehniku i računarske komunikacije Uvod u GIT Šta je git? Sistem za verzionisanje softvera kao i CVS, SVN, Perforce ili ClearCase Orginalno

More information

FAKULTET TEHNIČKIH NAUKA

FAKULTET TEHNIČKIH NAUKA UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA Nastavni predmet: Vežba br 6: Automatizacija projektovanja tehnoloških procesa izrade alata za brizganje plastike primenom ekspertnih sistema Doc. dr Dejan

More information

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C INFOTEH-JAHORINA Vol. 10, Ref. E-I-15, p. 461-465, March 2011. Implementacija sparsnih matrica upotrebom listi u programskom jeziku C Đulaga Hadžić, Ministarstvo obrazovanja, nauke, kulture i sporta Tuzlanskog

More information

2. Kreiranje nove baze podataka

2. Kreiranje nove baze podataka 2. Kreiranje nove baze podataka Stvaranje strukture za bazu podataka je lako. Međutim, prazna baza nije ništa korisnija od praznog dokumenta u Microsoft Word-u ili praznog radog lista Microsoft Excel-a.

More information

Sybase PowerDesigner 12

Sybase PowerDesigner 12 Univerzitet u Beogradu Fakultet Organizacionih Nauka Poslovni Informacioni Sistemi Sybase PowerDesigner 12 Skripta Vuk Janošević, saradnik mr Ognjen Pantelić, asistent dr Dragana Bečejski-Vujaklija, profesor

More information

mdita Editor - Korisničko uputstvo -

mdita Editor - Korisničko uputstvo - mdita Editor - Korisničko uputstvo - Sadržaj 1. Minimalna specifikacija računara... 3 2. Uputstvo za instalaciju aplikacije... 3 3. Korisničko uputstvo... 11 3.1 Odabir File opcije iz menija... 11 3.2

More information

FAKULTET ZA POSLOVNU INFORMATIKU

FAKULTET ZA POSLOVNU INFORMATIKU FAKULTET ZA POSLOVNU INFORMATIKU Prof. dr Mladen Veinović Igor Franc Aleksandar Jevremović BAZE PODATAKA - PRAKTIKUM - Prvo izdanje Beograd 2006. Autori: Prof. dr Mladen Veinović Igor Franc Aleksandar

More information

1.7 Predstavljanje negativnih brojeva u binarnom sistemu

1.7 Predstavljanje negativnih brojeva u binarnom sistemu .7 Predstavljanje negativnih brojeva u binarnom sistemu U decimalnom brojnom sistemu pozitivni brojevi se predstavljaju znakom + napisanim ispred cifara koje definišu apsolutnu vrednost broja, odnosno

More information

KatzeView Uputstvo. verzija Novi Sad Josifa Marinkovića 44. Tel: +381 (0) Fax: +381 (0) Mob: +381 (0)

KatzeView Uputstvo. verzija Novi Sad Josifa Marinkovića 44. Tel: +381 (0) Fax: +381 (0) Mob: +381 (0) KatzeView Uputstvo verzija 3.2.2 21000 Novi Sad Josifa Marinkovića 44 Tel: +381 (0)21 443-265 Fax: +381 (0)21 443-516 Mob: +381 (0)63 513-741 http://www.cardware.co.yu info@cardware.co.yu Sadržaj: 1 Sistemski

More information

IMPLEMENTACIJA PODLOGE ZA SARADNJU KROKI ALATA SA ALATIMA ZA UML MODELOVANJE OPŠTE NAMENE

IMPLEMENTACIJA PODLOGE ZA SARADNJU KROKI ALATA SA ALATIMA ZA UML MODELOVANJE OPŠTE NAMENE IMPLEMENTACIJA PODLOGE ZA SARADNJU KROKI ALATA SA ALATIMA ZA UML MODELOVANJE OPŠTE NAMENE IMPLEMENTATION OF BASIS FOR COOPERATION BETWEEN KROKI TOOL AND UML MODELING TOOLS Željko Ivković, Renata Vaderna,

More information

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine UNIVERZITETUBEOGRADU RUDARSKOGEOLOŠKIFAKULTET DEPARTMANZAHIDROGEOLOGIJU ZBORNIKRADOVA ZLATIBOR 1720.maj2012.godine XIVSRPSKISIMPOZIJUMOHIDROGEOLOGIJI ZBORNIKRADOVA IZDAVA: ZAIZDAVAA: TEHNIKIUREDNICI: TIRAŽ:

More information

TRANSAKCIJA I ACID OSOBINE

TRANSAKCIJA I ACID OSOBINE KOMPONENTE SUBP (1) Baza podataka podaci, metapodaci, baza indeksa (2) Sistem za upravljanjem skladištenjem podataka upravljanje datotekama i upravljanje baferima (3) Ulazi u BP upiti, aplikacije, odrţavanje

More information

Uvod u web okruženje SQL

Uvod u web okruženje SQL МОDЕLI I BАZЕ PОDАТАKА Uvod u web okruženje SQL Korišteni materijali i reference http://www.hdonweb.com/programiranje/xampp-instalacija-apache-web-servera-za-mysql-i-php http://hr.wikipedia.org/wiki/apache_%28webserver%29

More information

Ali kako znati koja maksimalna plata pripada kojem sektoru? GROUP BY in SELECT Obično se uključuje GROUP BY kolona u SELECT listi.

Ali kako znati koja maksimalna plata pripada kojem sektoru? GROUP BY in SELECT Obično se uključuje GROUP BY kolona u SELECT listi. Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 9-1 Using Group By Having Clauses Za dobijanje srednje visine studenata: SELECT AVG(height) FROM students;

More information

Projektovanje IS. Fizičko modelovanje Aplikativno modelovanje Softver

Projektovanje IS. Fizičko modelovanje Aplikativno modelovanje Softver Projektovanje IS Fizičko modelovanje Aplikativno modelovanje Softver Referencijalni integritet Referencijalni integritet obezbjeđuje korektno povezivanje objekata jer objekat koji nije predstavljen u odgovarajućem

More information

DEFINISANJE TURISTIČKE TRAŽNJE

DEFINISANJE TURISTIČKE TRAŽNJE DEFINISANJE TURISTIČKE TRAŽNJE Tražnja se može definisati kao spremnost kupaca da pri različitom nivou cena kupuju različite količine jedne robe na određenom tržištu i u određenom vremenu (Veselinović

More information

Agregacija podataka u Data Warehouse sistemima

Agregacija podataka u Data Warehouse sistemima Automatizacija procesa poslovanja Agregacija podataka u Data Warehouse sistemima Materijalizovani pogledi i agregacione funkcije BPA Agregacija u DW Sadržaj Šema DW BP i agregirani podaci Upravljanje agregiranim

More information

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE)

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 2: Uvod u sisteme

More information

2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana)

2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana) Analizirana poglavlja Šapićeve disertacije Broj redova u radu Izvor preuzimanja Broj preuzetih redova 2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana) 1. 62 strana 31 2. 63 strana

More information

Interaktivni Generator Vizuelnih Simulatora Digitalnih Sistema (IGoVSoDS)

Interaktivni Generator Vizuelnih Simulatora Digitalnih Sistema (IGoVSoDS) Univerzitet u Beogradu Elektrotehnički fakultet dr Nenad M. Grbanović Interaktivni Generator Vizuelnih Simulatora Digitalnih Sistema (IGoVSoDS) Priručnik za korišćenje Beograd, avgust 2010. godine i Kratak

More information

KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES

KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES INFOTEH-JAHORINA Vol. 10, Ref. E-I-11, p. 441-445, March 2011. KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES Vladimir Vujović, Elektrotehnički

More information

JavaScript podrska u radu sa greskama

JavaScript podrska u radu sa greskama JavaScript podrska u radu sa greskama Svaki od pregledaca ima svoj podrazumevani naci reagovanja na greske, Firefox i Chrome upisuju greske u log datoteku, dok recimo Internet Explorer i Opera generisu

More information

Modeli podataka. Model podataka - osnovne komponente

Modeli podataka. Model podataka - osnovne komponente Model podataka - osnovne komponente Modeli podataka Osnovni pojmovi modela podataka Primeri MOV-a Logičko modeliranje podataka (6 koraka) Tipovi veza kod IDEF1X metodologije Logičko modeliranja podataka

More information

Aplikacija za podršku transferu tehnologija

Aplikacija za podršku transferu tehnologija Aplikacija za podršku transferu tehnologija uputstvo za instalaciju i administraciju sistema Doc. dr Vladimir Ćirić dipl. inž. Darko Tasić septembar 2012. 2 Sadržaj Uputstvo za instalaciju i administraciju

More information

POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU

POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU (Usaglašeno sa procedurom S.3.04 sistema kvaliteta Megatrend univerziteta u Beogradu) Uvodne napomene

More information

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi)

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi) Programiranje za internet zimski semestar 2013/2014 Java kroz primjere (skripta je u fazi izradi) Zadatak broj 1 Nacrtati kocku. (Zanimljiv teži problem za razmišljanje: Nacrtat kocku čije će dimenzije

More information

STABLA ODLUČIVANJA. Jelena Jovanovic. Web:

STABLA ODLUČIVANJA. Jelena Jovanovic.   Web: STABLA ODLUČIVANJA Jelena Jovanovic Email: jeljov@gmail.com Web: http://jelenajovanovic.net 2 Zahvalnica: Ovi slajdovi su bazirani na materijalima pripremljenim za kurs Applied Modern Statistical Learning

More information

PRIMENA OLAP KOCKE ZA ANALIZU PERFORMANSI NEUSAGLAŠENOSTI APPLICATION OF THE OLAP CUBE IN THE ANALYSIS OF THE ANTICOINCIDENCE PERFORMANCE

PRIMENA OLAP KOCKE ZA ANALIZU PERFORMANSI NEUSAGLAŠENOSTI APPLICATION OF THE OLAP CUBE IN THE ANALYSIS OF THE ANTICOINCIDENCE PERFORMANCE PRIMENA OLAP KOCKE ZA ANALIZU PERFORMANSI NEUSAGLAŠENOSTI APPLICATION OF THE OLAP CUBE IN THE ANALYSIS OF THE ANTICOINCIDENCE PERFORMANCE Nataša Gojgić 1, Alempije Veljović 2, Marija Nikolić 1, Vladimir

More information

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ DIZAJN TRENINGA Model trening procesa FAZA DIZAJNA CILJEVI TRENINGA Vrste ciljeva treninga 1. Ciljevi učesnika u treningu 2. Ciljevi učenja Opisuju željene

More information

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA Master akademske studije Modul za logistiku 1 (MLO1) POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA angažovani su: 1. Prof. dr Momčilo Miljuš, dipl.inž., kab 303, mmiljus@sf.bg.ac.rs,

More information

Direktan link ka kursu:

Direktan link ka kursu: Alat Alice može da se preuzme sa sledeće adrese: www.alice.org Kratka video uputstva posvećena alatu Alice: https://youtu.be/eq120m-_4ua https://youtu.be/tkbucu71lfk Kurs (engleski) posvećen uvodu u Java

More information

Mogudnosti za prilagođavanje

Mogudnosti za prilagođavanje Mogudnosti za prilagođavanje Shaun Martin World Wildlife Fund, Inc. 2012 All rights reserved. Mogudnosti za prilagođavanje Za koje ste primere aktivnosti prilagođavanja čuli, pročitali, ili iskusili? Mogudnosti

More information

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6.

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6. KOREKTAN PREVOD? - Reupotrebljiv softver? ( ne postoji prefiks RE u srpskom jeziku ) - Ponovo upotrebljiv softver? ( totalno bezveze ) - Upotrebljiv više puta? - Itd. PLAN RADA 1. Počnimo sa primerom!

More information

Primena OLAP tehnika u analizi otplate duga klijenata Banke Poštanske štedionice a. d.

Primena OLAP tehnika u analizi otplate duga klijenata Banke Poštanske štedionice a. d. UNIVERZITET U BEOGRADU MATEMATIČKI FAKULTET Nevena Joksić Primena OLAP tehnika u analizi otplate duga klijenata Banke Poštanske štedionice a. d. Master rad Beograd, 2010. god. Sadržaj 1. INTELIGENTNO POSLOVANJE...

More information

Uputstvo za pravljenje i korišdenje biblioteka sa dinamičkim povezivanjem (.dll)

Uputstvo za pravljenje i korišdenje biblioteka sa dinamičkim povezivanjem (.dll) Uputstvo za pravljenje i korišdenje biblioteka sa dinamičkim povezivanjem (.dll) pomodu razvojnog okruženja Microsoft Visual Studio 2010 Autor: dipl.ing. Nemanja Kojić, asistent Decembar 2013. Korak 1

More information

Windows Easy Transfer

Windows Easy Transfer čet, 2014-04-17 12:21 - Goran Šljivić U članku o skorom isteku Windows XP podrške [1] koja prestaje 8. travnja 2014. spomenuli smo PCmover Express i PCmover Professional kao rješenja za preseljenje korisničkih

More information

POSLOVNA INTELIGENCIJA

POSLOVNA INTELIGENCIJA VISOKA TEHNIČKA ŠKOLA STRUKOVNIH STUDIJA KRAGUJEVAC Dr Miroljub Banković, prof. POSLOVNA INTELIGENCIJA Kragujevac, 2012. 1. ŠTA JE POSLOVNA INTELIGENCIJA? Poslovna inteligencija (engl. Business Intelligence)

More information

Sadržaj. Baze podataka

Sadržaj. Baze podataka BAZE PODATAKA. Sadržaj I 1 UVOD U BAZE PODATAKA 1.1 Osnovni pojmovi vezani uz baze podataka 1.1.1 Baza podataka, DBMS, model podataka 1.1.2 Ciljevi uvođenja baza podataka 1.1.3 Arhitektura baze podataka

More information

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu Marijana Glavica Dobrica Pavlinušić http://bit.ly/ffzg-eprints Definicija

More information

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011.

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TECHNOLOGY, INFORMATICS AND EDUCATION FOR LEARNING AND KNOWLEDGE SOCIETY

More information

Pravljenje Screenshota. 1. Korak

Pravljenje Screenshota. 1. Korak Prvo i osnovno, da biste uspesno odradili ovaj tutorijal, morate imati instaliran GOM Player. Instalacija je vrlo jednostavna, i ovaj player u sebi sadrzi sve neophodne kodeke za pustanje video zapisa,

More information

1. Lekcija Pojam entiteta, podatka i informacije

1. Lekcija Pojam entiteta, podatka i informacije MICROSOFT ACCESS Program za rad sa bazama podataka 1. Lekcija Pojam entiteta, podatka i informacije U svakodnevnom životu često se koriste izrazi podatak, obaveštenje i informacija. Često se smatraju sinonimima?

More information

Testiranje koda - JUnit. Bojan Tomić

Testiranje koda - JUnit. Bojan Tomić Testiranje koda - JUnit Bojan Tomić Testiranje programa Dinamička provera ponašanja programa izvođenjem konačnog broja testova i upoređivanjem sa očekivanim ponašanjem programa Programska mana ( software

More information

Pokretanje izvršnog fajla

Pokretanje izvršnog fajla Pokretanje izvršnog fajla Eksterne komande koje smo do sada prešli na predavanjima su tipično bile smeštene u /bin ili /sbin direktorijumu Aktivirali smo komande jednostavnim kucanjem naziva komande, a

More information