U tabeli imam polja predmet1, ocena predmeta1 i ocena predmeta1 (slovima). E sad hoću da kada upišem u polje ocena predmeta1 broj 5, da on automatski ispiše u polju ocena predmeta1 (slovima): "odličan" , pa za 4 da ispiše "vrlo dobar"..
Može recimo i preko list box-a ili combo box-a, da izaberem ocenu od 1 do 5, pa da automatski ubaci tamo odličan, dobar, dovoljan..
I još nešto: Kako da u polju prosek napišem funkciju za izračunavanje proseka? znači kada u polje ocena predmeta1 upišem 4, da sačuva tamo u polje prosek, pa sabere sa 3 koju ću uneti u polje ocena predmeta2.. i na kraju da podeli sa brojem unesenih predmeta. Dakle imam 17 polja sa ocenama a ubacujem 12, pa da na kraju deli prosek sa 12 a ne 17.
Ako može neko da mi to ispiše ovde nekako primitivno, šta i gde da kliknem, bio bi zahvalan, ovo je moj prvi pokušaj u accessu!
Popunjavanje tabele možeš da rešiš po tvom izboru npr. preko neke forme i sl. uglavnom posle popunjavanja podataka o predmetu i oceni na dugme npr. sačuvaj napisao mali kod npr.
rs!predmet = me.txtpredmet
rs!ocena = me.txtocena
if me.txtocena = 5 then
rs!ocenaslovima = 'odlican'
else
if me.txtocena = 4 then
rs!ocenaslovima = 'odlican' ' ... itd za ostale uspehe
end if
rs.update
end sub
Formu postavis kao unbound i postavis dva text boxa u koja ces unositi podatke o predmetu i oceni na osnovu kojih ce popunjava trecu kolonu u tabeli.
Hvala ali još uvek nisam uspeo to da povezem. Kako treba da podesim ta polja oko ocena? Ne znam da povezem dve tabele, pošto meni treba da štampam report! I ono za prosek ocena, mi i dalje ne ide!
Kao prvo mislim da nema potrebe da u tabeli cuvas ocenu kao broj i kao opis. Dovoljno je samo kao broj. Posle ces u izvestaju ili formi postaviti polje na kome ces dobiti i opis. Osim nacina koji su napisani u prethodnim odgovorima evo jos dva resenja:
Ok ali gde pisem: Switch (X=5,"Odličan, X=4,"Vrlo dobar", X=3,"Dobar",
X=2,"Dovoljan", X=1,"Nedovoljan")
u validation rule, ili gde, ne razumem? i kako onda da resim onaj opis? u formi, tabeli, reportu..?
Sto se tice proseka, tu treba znaci klasicno da se saberu ocene svih predmeta i podele broju predmeta.
Izvini, imao sam ovo zapisano kao primer u wordu pa sam samo kopirao tako kako jeste.Trebaju ti bar dve tabele. Prva tblUcenici koja ce sadrzati polja o ucenicima kao na primer IDUcenika (moze i autonumber), Ime i prezime itd. I drugu koja takodje ima polje IDUcenika, Naziv predmeta i Ocena. Tada napravis izvestaj zasnovan na tabeli za ocene ili nekom upitu koji ces napraviti po zelji. U izvestaju dodas grupu IDUcenika sa hederom i futerom, a u Detail postavis naziv predmeta, ocena i jedno polje koje mozes da nazoves OpisOcene. Na dogadjan On Format Detail sekcije postavis sledecu proceduru:
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me.OpisOcene = Switch(Ocena = 5, "Odličan", Ocena = 4, "Vrlo dobar", Ocjena = 3, "Dobar", Ocjena = 2, "Dovoljan", Ocjena = 1, "Nedovoljan")
End Sub
Jos u futeru grupe IDUcenik postavis jedno polje koje ce imati vrednost (Control source) :
=avg(Ocena)
Evo i primer
Evo vratio se sa kampovanja ali i dalje problemi.. Ne kontam gde treba da upišem funkciju za to automatsko ispisivanje ocena slovima! Znaci imam polje ocena1 i ocena1slovima. Kako glasi funkcija da to on automatski ispise i gde treba da je pisem? (objasnite klik po klik, primer ne pomaze)!
Isto tako ne mogu da resim i onaj prosek! Dakle, imam polja ocena1, ocena2,...,ocena17. Gde i koju funkciju treba da napisem, da on automatski izracunava prosek, pri svakoj promeni u bilo kom polju? (tu ne moze da se pise broj sum(ocena1, ocena2,...,ocena17)/17 jer ne znam koliko ce biti predmeta).
Polja za ocene moram imati 17, zbog reporta koji moram da stampam a tu se pojavljuje i 3. problem. Koju funkciju treba da upisem u dugme printReport, koje se nalazi u formi da on stampa report za datog ucenika?
Izvinite sto postajem nepodnosljiv ali iz ovog primera (ocjene) od bokija postoji problem. Ja unesem sve potrebne predmete ali kada tu tabelu ubacim u report on stampa samo prvi predmet i prve ocene a meni treba da on ispise citavo svedocanstvo za jednog ucenika. Jel moze neko da mi ispravi tu tabelu da to proradi, bio bi zahvalan! Znaci treba da smesta u jednu tabelu podatke o uceniku, predmete, ocene i prosek!
Tabela Ucenika bi trebala da ima polje ID Ucenika (Auto number, primary key)
Tabela Predmeti bi trebala da ima polja ID Ucenika (long integer)i ID Predmeta (Auto number, primary key)
Tabela Ocjene bi trebala imati polje ID Predmeta (long integer)
Povezujes tabele Ucenici i Predmeti preko polja ID Ucenika iz obadvije tabele i to jedan naprema vise
Povezujes tabele Predmeti i Ocjene preko polja ID Predmeta iz obadvije tabele i to jedan naprema vise
Evo malo blizih informacija: U tabeli ucenik imam polje Prezime i Ime, i ostala koja su verujem nebitna. Sad u tabeli predmeti treba da napisem samo nekih 10-ak predmeta koje ima ucenik sa Id=1, pa imam polja od predmet1 do predmet 15 (za svaki slucaj ih stavljam vise). U tabeli ocene treba da imam valjda neko polje sa povezivanje sa tabelom predmeti, ali to jos nisam resio, (valjda treba isto da se zove predmet1, pa do 15 mada ne znam) onda polje ocenaPredmeta1 pa do 15 i polja ocenaPredmetaSlovima1 pa do 15. Jesam li to dobro odradio? Moze li neko da mi napise konkretan primer, kako to da resim?
Hvala dario ali gde se odredjuje ono longinteger? Jel bi mogao da mi napises neki primercic?
Aha, kontam, još samo treba da automatski ispisuje ocenu slovima (ako je 1 onda nedovoljan, 2 dovoljan..)
Jel to ova f-ja:
Me.OcjenaOpis = Switch(Ocena = 5, "Odličan", Ocena = 4, "Vrlo dobar", Ocjena = 3, "Dobar", Ocjena = 2, "Dovoljan", Ocjena = 1, "Nedovoljan")
End Sub
Taj link je tema koju treba da pročitaš ako želiš nešto više da saznaš o toj problematici. Inače se postovi ne prebacuju sa sajta na sajt. Rešenje tvog problema je zkačeno na mom prethodnom postu u vidu sličnog primera.
Verovatno nisi postavio polja predmet i ocene u Detail section od izvestaja, ali kacim ti jedan primer, mada verovatno moze i drugacije i bolje. Nego, sta se desava kad ucenik krene u sledeci razred?
Rešio sam ovo za automatski ispis ocena ali jos nisam onaj report. I dalje on Prikaze samo:
Marko Markovic Matematika 3 Dobar
a treba da ispise
Marko Markovic Matematika 3 Dobar
Srpski jezik 4 Vrlo Dobar
Engleski jezik 4 Vrlo Dobar..
Probacu sad da ukradem ideju za prosek od bokija. Pa kad prodje sledeci razred dobice novo svedocanstvo..
Hvala boki, hvala getsbi, hvala svima
Iz bokijevog primera mi ne treba razred. Kada ga obrisem ne radi mi ovo dugme u formi ucenici. Koju funkciju treba da napisem, da dugme radi bez tog razreda. Znaci da prikaze print prewiew reporta1, samo za datog ucenika?
Ostalo sve radi i hvala na velikoj pomoci. Jos samo da pokusam da odradim da i prosek pored broja napise i slovima..