Na osnovu uvida u Vaš primer baze uočio sam da niste odvojili predmete poslovanja od klasifikatora.
Označavanje a samim tim i šifriranje premeta poslovanja je jedan od osnovnih preduslova razvoja informacionih sistema. Primer Klasifikator, koji sam prložio u prethodnom postu upravo je urađen po principima koje možete naći na ovom linku
http://www.cet.rs/cetcitaliste/CitalisteTekstovi/1087.pdf.
Dakle klasifikacija služi da onaj ko posmatra sistem lakše dođe do neke informacije.
Predmet poslovanja je u hijerarhiji informacija nedeljiv objekat posmatranja i njega određuje onaj ko posmatra tj. analizira svoj sistem i on je jednoznačan što znači kada mu se dodeli ID broj, on jenoznačno opisuje objekat. Dok klasa opisuje grupu kojoj pripada objekat i to jednoznačnu grupu, ako imate potrebu da neki predmet poslovanja pripada u više klasa onda se to modeliranjem definiše drugačije, primer koji sam dao ne predviđa takvu mogućnost.
Sledeći dominantni objekat koji se javlja u realnom sistemu je "Dokument" (Radni nalog, Otpremnica, Plan, Račun, Tender...).
Iz Vašeg primera vidi se da postoji objekat po imenu "tblTender" i objekat "tblTenderSpecifikacija", ako bi generalizovali ove nazive to liči na Dokument i DokumentStavka.
Ako se pogledaju tabele fizički sadržaj je ajmo reći dobar ali logički nije. Logički bi tabela "tblTenderSpecifikacija" trebala da ima vezu sa tabelom "PredmetPoslovanja", a ne sa tabelom "Klasifikator".
Zbog toga Vam nastaje problem. Nadalje problem može nastati i u Vašem slučaju zbog možda neadekvatene klasifikacije.
Npr. UVOZNI LEK se stalno ponavlja u nazivu klasifikacije, postavlja se pitanje da li sam taj naziv može biti klasa, pa unutar te klase podklase ili uopšte ne treba klasifikovati na taj način...
Pogledajte gore naznačen članak, verujem da će Vam pomoći.
[Ovu poruku je menjao Zoran.Eremija dana 27.12.2010. u 19:05 GMT+1]