zorrome
Član broj: 22587 Poruke: 198 *.cmu.carnet.hr.
|
Imam tablicu ARTIKLI u kojoj se nalazi polje NabavnaCijena i Faktor, a Jedinična Cijena je jednaka NabavnaCijena*Faktor. Kad upišem Nabavnu cijenu i faktor htio bi da mi se u polju JedCijena pojavi ta pomnožena vrijednost.
Kako to napravit i da li je to moguće uopće na tablicama napraviti???!
Primjer za tablicu ARTIKLI:
---------------------------------------------------------------------------
SifraArtikla | NabavnaCijena | Faktor | JedinicnaCijena(to bi htio napraviti) |
---------------------------------------------------------------------------
12485 | 4,56 kn | 2 | 9,12 kn |
---------------------------------------------------------------------------
|
|
| |
|
rms Bgd
Član broj: 41483 Poruke: 65 *.vdial.verat.net.
|
Najbrže je da napraviš update query, u field ubaci samo polje JedinicnaCijena a u Update To upiši: [NabavnaCijena]*[Faktor]
Potom startuj query da odradi svoje...
|
|
| |
|
Zidar Canada
Moderator Član broj: 15387 Poruke: 3085 *.eqao.com.
|
A sta ces ako se posle 'update' operacije promeni neka cena ili neki faktor, a zaboravis da uradis 'update' ili 'update' ne uspe?
|
|
| |
|
rms Bgd
Član broj: 41483 Poruke: 65 *.vdial.verat.net.
|
Pa to se retko dešava ;) A potpuno se slažem da kalkulisane vrednosti ne valja stavljati u tabelu nego samo po potrebi prikazivati u unbound kontroli.
Ali pošto je čovek to napisao, pretpostavio sam da ima neki dobar razlog...
|
|
| |
|
zorrome
Član broj: 22587 Poruke: 198 *.cmu.carnet.hr.
|
Pitanje je s razlogom. Pretpostavimo da netko želi raditi preko tablica, i želi nakon upisa NabavneCijene i Faktora dobiti JediničniCijenu [NabavnaCijena]*[Faktor]= [JedCijena]). Iako je možda nekome pitanje bezveze, treba se staviti u poziciju da to stvarno morate napraviti.
Mislim da to nije moguće izvesti direktno na tablicama zato što se svaki redak tablice sprema nakon prelaska u novi red(zapis), pa Access ne zna do unosa novog zapisa ili zatvaranja tablice s kakvim vrijednostima raspolaže u kojem polju, a koje su potrebn za računanje.
Što vi mislite?
|
|
| |
|
Zidar Canada
Moderator Član broj: 15387 Poruke: 3085 *.eqao.com.
|
Tacno, ne moze se direktno u tabelu uneti kalkulisano polje. I ima razloga zasto to Microsoft nije dozvolio. Drugo, nije predvidjeno da se u Accessu radi direktno sa tabelama - da korisnik unosi podatke direktno u tabele Podaci se unose peko formi. A na formi mozes da uradis jednu od dve stvari:
a) da izracunas sta vec treba i da onda to smestis u tvoje kalkulisano polje
b) da izracunas sta ti treba i da ga samo prikazes na formi. To je sve sto korisnik zeli -da vidi pomonzena dva broja istog momenta kad ih unese. kasnije, na zivestajima, takodje mozes da prikazes proizvod dva polja kad god hoces.
Moras da naucis da razumes sta u stvari korisnik hoce. Korisnik cesto ne zna da opise sta tacno hoce i ako bukvalno shvatis njegove reci onda dodjes u situaciju da ispunjavas glupe zahteve. Cak i ako je korisnik rekao 'ja hocu u tabelu da unesem cenu i kolicinu i da mi se u trecem polju to zapise kao cena puta kolicina', to uopste ne znaci
a) da hoce da unosi podatke direktno u Access tabelu.
b) da hoce da mu se izracunata vrednost cuva u nekom polju
Recenica 'ja hocu u tabelu da unesem cenu i kolicinu i da mi se u trecem polju to zapise kao cena puta kolicina' se prevodi ovako:
1) forma za unos mora da bude u tabelarnom obliku, znaci ili datasheet ili contin. form
2) korisnik zeli da vidi kalkulaciju odmah po unosu, znaci postaviti unbound text box na formu koji prikazuje proizvod dva uneta polja
3) Iz 1) i 2) proizilazi da ces napraviti recimo datasheet formu, proglasiti je za StartUp formu i kad god korisnik otvori svoj .MDB ta ce se forma automatski pojaviti. Posto forma izgleda kao tabela, ti si spunio prvi zahtev. Posto imas taxt box koji prikazuje rezultat mnozenja dva uneta polja, ispunio si i drugi zahtev. Za korisnika, IZGLEDA kao da radi u tabeli, a u stavri j u formi gde ti kontrolises igru. I svi su srecni.
:-)
|
|
| |
|
rms Bgd
Član broj: 41483 Poruke: 65 *.vdial.verat.net.
|
Ma, ja samo klimam glavom jer nemam šta da dodam na Zidarev odgovor... osim da možda još malo vremena posvetiš relacionom modelu pošto to sigurno neće biti straćeno vreme. :)
|
|
| |
|
akristic Ante Kristić Dubrovnik
Član broj: 24848 Poruke: 4 *.dialin.iskon.hr.
|
Stavka 3 je jednostavni ali i vrlo efikasni odgovor na postavljeno pitanje jer uobičajeni korisnik zaista ne može uočiti razliku između tabličnog obrasca (datasheet form) i osnovne tablice u Accessu.
|
|
| |
|