Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Access - problem oko racunanja stanja lagera

[es] :: Access :: Access - problem oko racunanja stanja lagera

[ Pregleda: 6901 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

interfood

Član broj: 21285
Poruke: 3
*.dialup.neobee.net.



Profil

icon Access - problem oko racunanja stanja lagera31.03.2004. u 14:52 - pre 227 meseci
U pokusaju da napravim nesto u Access-u dosao sam dotle da imam dve tabele.
U jednoj su sve unete robe na lager, a u drugoj sve robe koje su izdate sa lagera.
Nakon toga sam napravio dva upita koji racunaju koliko je ukupno svake robe izdato i uneto na lager.
Problem: Kad od upita "ukupno uneto na lager" oduzmem "ukupno skinuto sa lagera" dobijem NISTA. Verovatno jer nisu sve robe izlazile sa lagera tako da njihov unos ne postoji.

Nadam se da sam dovoljno jasno izneo moj problem.
Da napomenem da sam totalni pocetnik u ovome.
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com



+79 Profil

icon Re: Access - problem oko racunanja stanja lagera31.03.2004. u 19:46 - pre 227 meseci
Jedan od nacina da resis pitanje "stanja na lageru" je da napravis 3 tabele.

tblRobaGlavna (RobaID,Opis...), PK=(RobaID)
tblIzlazRobe (RobaID,IzlazID, Kolicina,Datum), PK=(IzlazID)
tblUlazRobe (RobaID,UlazID, Kolicina,Datum), PK=(UlazID)

(Nemoj sad da se javi neko i da ispravlja dizajn - da li trebaju posebne tabele za Ulaz/Izlaz ili ne, ovo je skolski primer)

Ti otprilike imas tabele za Ulaz i Izlaz. Dodaj tblRobaGlavna i budi siguran da u svim tabelama imas polje RobaID. U tabelama tblUlazRobe i tblIzlazRobe ne sme da se nalazi ni jedna RobaID koji nije definisan u tabeli tblRobaGlavna. Ovo mozes da obezbedis ako postavis relacije gde je tblRobaGlavna parent a tblUlaz itblIzlaz su children.

Da prikazes stanje na lageru trebaju ti sledeci kveriji:

qryRobaIzlazTotal
qryRobaUlazTotal
qryRobaStanjeNaLageru

qryRobaIzlazTotal => uradi GROUP BY po RobaID, SUM(Kolicina) AS SumaIzlaz
qryRobaUlazTotal => uradi GROUP BY po RobaiD, SUM(Kolicina) AS SumaUlaz

qryRobaStanjeNaLageru => treba ti LEFT OUTER JOIN na kverije qryRobaIzlazTotal i qryRobaUlazTotal, sa poljima
qryRobaStanjeNaLageru.RobaID, qryRobaStanjeNaLageru.Description,
qryRobaIzlazTotal.SumaIzlaz
qryRobaUlazTotal.SumaUlaz

Ako si prosao neki Access tutorial, ovo treba da je dovoljno. Ako nisi, prouci pa se javi.

Srecno,

:-)

 
Odgovor na temu

narko
Pozarevac

Član broj: 92440
Poruke: 97
*.ptt.yu.



Profil

icon Re: Access - problem oko racunanja stanja lagera24.04.2006. u 02:00 - pre 202 meseci
Ma kakve 3 tabele?! Napravis samo jednu tabelu sa poljima:
-sifra robe
-naziv robe
-Ulaz
-Izlaz
-stanje na lageru =([ulaz]-[izlaz])
i to ti je cela komplikacija.Laksi nacin NE POSTOJI!!!
 
Odgovor na temu

tacka
novi sad

Član broj: 55414
Poruke: 105
82.208.195.*



Profil

icon Re: Access - problem oko racunanja stanja lagera24.04.2006. u 19:07 - pre 202 meseci
ja sam to resio tako sto sam pored ovih tabela napravio i tbl_lager.
sa kolonama
SifID - sifra dokumenta po kojem nasatupa promena u lager listi (prijemnica, int. ulaz, int. izlaz itd.)
DokID - broj dokumenta po kojem nasatupa promena u lager listi
KolUlaz - kolicinski ulaz
KolIzlaz - kolicinski izlaz
FinUlaz - finansijski ulaz
FinIzlaz - finansijski izlaz
RobaID - id robe
MagID - id magacina
DatDok -datum dokumenta
Promene se upisuju u tabelu pri knjizenju bilo ulaznih ili izlaznih dokumenata.
 
Odgovor na temu

narko
Pozarevac

Član broj: 92440
Poruke: 97
*.ptt.yu.



Profil

icon Re: Access - problem oko racunanja stanja lagera24.04.2006. u 20:51 - pre 202 meseci
Moze i tako!
 
Odgovor na temu

laponac84
Aleksandar Popović

Član broj: 101043
Poruke: 106
*.beobug.com.



Profil

icon Re: Access - problem oko racunanja stanja lagera11.07.2006. u 09:01 - pre 199 meseci
Ljudi, jeste da sam nov, ali mislim da je samo Narko bio blizu, zasto to ne uradite ovako
Pored stadardnih polja, sifra ... u tabelu stavite polja, npr:
...
Stanje
Izlaz
...

i sad ide mala cak prilikom unosa podataka u formu:

1. Za ulaz robe koristite samo polje stanje

2. Za izlaz koristite oba:
Promene unosite u polje izlaz,
a kao dodatak stavite da je stanje jednako apsolutnoj vrednosti Izlaza
(Ako je izlaz = 3, onda je stanje = -3)


Stanje ce te dobiti kada napravite Queri tako sto ga grupisete po proizvodima i stavite da sumira Stanje,

KOD MENE TAKO RADI.


 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
*.tippnet.co.yu.

Sajt: www.baze-podataka.net


+4 Profil

icon Re: Access - problem oko racunanja stanja lagera11.07.2006. u 14:49 - pre 199 meseci
Citat:
Zidar: (Nemoj sad da se javi neko i da ispravlja dizajn - da li trebaju posebne tabele za Ulaz/Izlaz ili ne, ovo je skolski primer)


Ipak su se javili

-----
Djordje Balasevic - Panonski Mornar
"Ovo je prica i za suze i za smeh"
"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.neobee.net.



+41 Profil

icon Re: Access - problem oko racunanja stanja lagera11.07.2006. u 15:58 - pre 199 meseci
Citat:
interfood:
Problem: Kad od upita "ukupno uneto na lager" oduzmem "ukupno skinuto sa lagera" dobijem NISTA.


Dakle, to je bio problem. Umesto sto ste se zdusno bavili savetima vezanim za projektovanje, niko nije pomogao coveku i resio mu problem. Meni se cini da si ga i sam dobro shvatio
Citat:
interfood:Verovatno jer nisu sve robe izlazile sa lagera tako da njihov unos ne postoji.


To je zato sto Access kada oduzima ili dodaje nesto sto je NULL (Izlazi robe koja nije izlazila, npr.) ceo izraz dobija vrednost NULL, tj. 5 + null = null; 400 - null = null...
Cela caka je u tome da obezbedis 0 tamo gde je null da bi mogao da vrsis aritmeticke operacije, a jedna od varijanti je:

Code:

SELECT Roba.Sifra, TUlaz.Kolicina AS Ulaz, TIzlaz.Kolicina AS Izlaz, 
IIF(ISNULL(TUlaz.Kolicina), 0, TUlaz.Kolicina) - IIF(ISNULL(TIzlaz.Kolicina), 0, TIzlaz.Kolicina) AS Stanje 
FROM Roba 
LEFT JOIN TUlaz ON Roba.Sifra = TUlaz.Sifra 
LEFT JOIN TIzlaz ON Roba.Sifra = TIzlaz.Sifra


Naravno, ovo je primer, nisi naveo kako ti se zovu tabele, ali si objasnio sledece
Citat:
interfood: U pokusaju da napravim nesto u Access-u dosao sam dotle da imam dve tabele.
U jednoj su sve unete robe na lager, a u drugoj sve robe koje su izdate sa lagera.
Nakon toga sam napravio dva upita koji racunaju koliko je ukupno svake robe izdato i uneto na lager.

pa sam ti dao SQL koji je u skladu sa postavkom.

Pozdrav!

Hahaha!

Sad sam tek video datum poruke, @narko - iz koje mracne proslosti i sa kojim razlogom si iskopao ovaj topic?

:>)
 
Odgovor na temu

laponac84
Aleksandar Popović

Član broj: 101043
Poruke: 106
*.beobug.com.



Profil

icon Re: Access - problem oko racunanja stanja lagera11.07.2006. u 20:44 - pre 199 meseci
E ljudi, prvi dan sam na forumu, a već napravio zbrku,

sad sam i ja video datume

odreagovao sam povucen narkovim rešenjem.


 
Odgovor na temu

[es] :: Access :: Access - problem oko racunanja stanja lagera

[ Pregleda: 6901 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.