Citat:
1) Zaposleni ne moze da postoji pre nego sto postoji firma. To je OK. Vidimo relaciju 1 firma = vise zaposlenih.
2) Firma na neki nacin zavisi od zaposlenog. To nam pokazuije relacija 1 tblZaposleni_1 moze da bude ProjectMngr u/za vise firmi. Tu nesto nije dobro. Jedan zaposlemni je otvorio firmu. Drugi zaposleni je Proj.Mngr u firmi. A zaposleni generalno ne moze da postoji bez firme. Nekako ovo ide u krug a to nikako nije dobro.
3) Zaposleni kontaktira sa a) klijentima, B) prodavcima, ali tako sto i Klijent i Prodavac moraju biti prvo Zaposleni, jerbo Klijent_ID = Zaposleni_ID ali i prodavac_ID = ZaposleniID. Nesto mi ovde nije jasno, ponovo idemo u krug.
2) Firma na neki nacin zavisi od zaposlenog. To nam pokazuije relacija 1 tblZaposleni_1 moze da bude ProjectMngr u/za vise firmi. Tu nesto nije dobro. Jedan zaposlemni je otvorio firmu. Drugi zaposleni je Proj.Mngr u firmi. A zaposleni generalno ne moze da postoji bez firme. Nekako ovo ide u krug a to nikako nije dobro.
3) Zaposleni kontaktira sa a) klijentima, B) prodavcima, ali tako sto i Klijent i Prodavac moraju biti prvo Zaposleni, jerbo Klijent_ID = Zaposleni_ID ali i prodavac_ID = ZaposleniID. Nesto mi ovde nije jasno, ponovo idemo u krug.
Hajde sada da se pozabavimo samo ovim:
Mogao sam da napravim tabele tblNasaFirma i tblNasiZaposleni i tblKlijenti i tblZaposleni ona ne bi bilo problema o kojem govoriš. No (moja) poenta je da je struktura osnovnih podataka (tj. polja) o našoj firmi i firmama sa kojima radimo -- ista, što važi i za zaposlene. Zato ti se možda čini da idemo u krug.
(I)
Svaka firma, pa i naša, ima više zaposlenih (1-n).
Jedan od naših zaposlenih otvara unose za nove firme (1-n).
Jedan od naših zaposlenih je project manager u više firmi (1-n), dok firma s kojom radimo može imati jednog našeg project managera.
(*) na ovom mestu si uputio primedbu i rekao da to nije dobro. I da zaposleni ne može da postoji bez firme. Ovo je nešto između klasičnog ER modela (čiji je problem veliki broj tabela sa sličnim/istim poljima) i objektnog modela. Zato se čini da ide u krug.
Možemo li da modeliramo samo ove tabele: tblFirme i tblZaposleni?
(II)
Naša firma je "prodavac", zaposleni u našoj firmi su "prodavci" a druge firme su "firme kupci" ili "firme klijenti", pa su njihovi zaposleni "kupci" ("klijenti") - sinonimi, koristio sam reč "klijent". Mi prodajemo, klijenti kupuju.
Kalendar kontakta, Dnevnik dontakata, Delovodna knjiga (kako god da se zove - sinonimi) zamišljena je da se beleže sve interakcije prodavca i kupca (data je simplifikovana verzija).
U toj tabeli će se ponavljati naši prodavci, kao i naši klijenti, dok je svaki prodavac zaposlen u jednoj firmi (našoj) a svaki klijent radi za jednu firmu (n-1).
Gledam u tabelu koju sam napravio i meni je sasvim jasna. Naravno da možda nije tačna ili dobra, i ti/vi ćete mi na to skrenuti pažnju. Ako smo uspešno modelirali pod (I), možemo li da napravimo primer modela kako bi trebalo da izgleda (I) + (II)?
(III)
Citat:
"Radis dakle u nekoj firmi. Ta firma ima i druge zaposlene. Zaposleni kontaktiraju neke klijente i neke prodavce. " Sta vi radite klijentima a sta prodavcima, ili oni vama? kakvi se projecti menadzuju? U kakvoj su vezi klijenti, prodavci, projekti? ko koga kontaktira? Zasto/ sta pitaju prilikom kontakta? Ko to treba da vidi? Zasto?
Radim u firmi. Naša firma ima svoje zaposlene, među kojima sam i ja.
Prodajemo usluge.
Zaposleni u našoj firmi su sekretarica, prodavci i product manageri, treneri, supervizori, itd.
Prodavac može da bude i product manager (kasnije) za tu firmu klijenta (kupca), ili samo inicijalno da ugovori posao.
Takođe, taj isti prodavac može da bude i product manager (ista osoba je u pitanju) za neku firmu klijenta i da u njoj vrši jednu vrstu treninga, a i da u drugoj firmi (klijentu) da vrši drugu vrstu treninga (nad nekim drugim zaposlenima).
(*) Ovo je deo koji sam u ER-modelu iznostavio, Projekti-Usluge (gde spadaju, npr. treninzi), što sam sad letimično spomenuo.
Naši prodavci kontakturaju firme i njihove zaposlene nude im svoju uslugu, tako što prolaze kroz seriju susreta sa raznim zaposlednima tokom vremena (Kalendar Kontakata).
(*) "Susret" je zavravo "vrsta kontakta" koja može biti: telefonon, email, SMS, prezetacija, sastanak 1:1, grupni sastanak, dopis, itd.
Sve vreme dok ne zaključi posao on je prodavac i ništa više od toga. Nakon toga, prodavac (ili neko drugi iz naše firme) za klijenta drži treninge i prodavac (ili neko drugi) može da postane project manager za tu firmu (klijenta) ili supervizor, itd.
* * *
Nisam bukvalno odgovorio na svako pitanje, ali imaš daleko više uvida sada u to šta radimo. Izostavio sam ceo modul sa psihološkim testovima (o kojima sam pisao na početku teme), jer su oni tek deo Projekti-Usluge šeme koju sam sad prvi put uveo u priču.
Naših zaposlenih biće 20-ak, a naših klijentata 50-ak (u bazi), a njihovih zaposlenih 50-ak * 100-ak. To je srednji okvir baze. Hoću da kažem da nije obimna i ne sadrži veliki broj transakcija i samo je za internu upotebu (do dela sa testovima, ali taj most ćemo preći kad stignemo do njega).
Za početak bio bih srećan kad bih dobio dobro modelovan ER-model na osnovu datih podataka (modifikaciju mog modela). Onda bih sa tom osnovom, mogao da se igram s alatima, a to je već priča za sledeći post. :)
Zidar, veliko hvala na šarmu, duhovitosti, surovoj realnosti i vremenu. Saveti koji dobijam od tebe su objašnjenja za kojima tragam, šliht, šliht :)