Evo primjera sa tablicama (samo najbitnija polja) kako bi to trebalo funkcionirati:
Code:
ULAZ_STAVKE
-----
broj_dokumenta
redni_broj_stavke
sifra_artikla
kolicina
IZLAZ_STAVKE
-----
broj_dokumenta
redni_broj_stavke
sifra_artikla
kolicina
ULAZ_STAVKE
-----
broj_dokumenta
redni_broj_stavke
sifra_artikla
kolicina
IZLAZ_STAVKE
-----
broj_dokumenta
redni_broj_stavke
sifra_artikla
kolicina
Primjer podataka:
ULAZ_STAVKE
1,1,100,5
1,2,200,4
2,1,100,10
2,1,200,2
IZLAZ_STAVKE
1,1,100,4
1,2,200,2
2,2,100,5
Dakle tebi ne treba nikakvo polje STANJE_ARTIKLA, ti imaš zablicu ulaza i tablicu izlaza i kada ti treba stanje nekog artikla dobiješ ga upitom:
Code:
select a.sifra, sum(u.kolicina - i.kolicina) as stanje from artikli a, ulaz_stavke u, izlaz_stavke i where
a.sifra= u.sifra and a.sifra = i.sifra
group by sifra
select a.sifra, sum(u.kolicina - i.kolicina) as stanje from artikli a, ulaz_stavke u, izlaz_stavke i where
a.sifra= u.sifra and a.sifra = i.sifra
group by sifra
Prema gornjem primjeru podataka ti sa upitom možeš dobiti da je npr stanje artikla 100=11 (artikal 100 je ušao sa količinom 5 u prvom dokumetnu Ulaz i sa količinom 10 u drugom dokumentu Ulaz, dakle ukupno ULAZ=15 i
izašao je u prvom dokumentu Izlaza sa koičinom 4, dakle ukupan IZLAZ=4). I 15-4=11 i to je stanje artikla na zalihama.
Nadam se da sam sada bio jasniji.
F