|
[ ngladov1 @ 03.10.2009. 17:23 ] @
| Prije svega, pozdrav svima!
Imam maleni problem u Accessu. Dakle napravio sam formu u kojoj se odabire tvrtka, njezin automobil i izdaje račun o popravku. Forma je dosta jednostavna. Međutim, problem je u report-u. Kada napravim blank report, i kada odaberem podatke koje hoću u njemu prikazati, tada mi on daje podatke s cijele baze, a ne one koji su trenutno u formi. Znam da je moguće to napraviti, da se prikažu podaci samo oni koji su trenutno u formi, i našao sam na netu dosta pitanja vezana uz to, ali jednostavno ne ide. Zato bih molio ako iko znade kako da rješim problem. I po mogućnosti, ako nije problem da mi napiše kako to grafiči rješiti preko ikona, bez kodova ako je moguće, s obzirom da sam početnik u Accesu. Unaprijed se zahvaljujem! |
[ Getsbi @ 04.10.2009. 06:32 ] @
Bez pisanja koda:
Napraviš da ti je forma tipa Datasheet. Pozicioniraš se na željeni zapis. Pritisneš dugme Filter By Selection iz palete alata. Sada na formi vidiš samo odabrani zapis. Spremno je za štampu. Odaberi Print Preview iz File menija ili Print za direktno štampanje na papiru.
Obzirom da se radi o računu, moguće je da ovo baš neće zadovoljiti tvoj kriterijum oko izgleda štampe. Access štampa onako kako vidi zapis. Zato pokušaj sa pisanjem minimalnog VBA koda nad reportom koji si već napravio.
Sa pisanjem minimalnog VBA koda:
Predpostavka je da u tabeli imaš neko polje po kojem ti se zapisi razlikuju. Recimo "Rb" za redni broj.
Na formi napraviš dugme. Na događaj On Click tog dugmeta napišeš VBA kod:
DoCmd.OpenReport „NazivTvogReporta” , acViewPreview,, WhereCondition:= "Rb = " & me!Rb
[ ngladov1 @ 05.10.2009. 08:23 ] @
Citat: Getsbi: Bez pisanja koda:
Napraviš da ti je forma tipa Datasheet. Pozicioniraš se na željeni zapis. Pritisneš dugme Filter By Selection iz palete alata. Sada na formi vidiš samo odabrani zapis. Spremno je za štampu. Odaberi Print Preview iz File menija ili Print za direktno štampanje na papiru.
Obzirom da se radi o računu, moguće je da ovo baš neće zadovoljiti tvoj kriterijum oko izgleda štampe. Access štampa onako kako vidi zapis. Zato pokušaj sa pisanjem minimalnog VBA koda nad reportom koji si već napravio.
Sa pisanjem minimalnog VBA koda:
Predpostavka je da u tabeli imaš neko polje po kojem ti se zapisi razlikuju. Recimo "Rb" za redni broj.
Na formi napraviš dugme. Na događaj On Click tog dugmeta napišeš VBA kod:
DoCmd.OpenReport „NazivTvogReporta” , acViewPreview,, WhereCondition:= "Rb = " & me!Rb
Ispričavam se za slanje PM-a, tek kasnije sam vidio da ne pružate podršku preko njih. Uglavnom u mojoj tabeli je polje koje se razlikuje od ostalih "Obrazac_ID", a ime reporta je Izvjestaj. Kada ubacim to u vaš VBA kod on izgleda ovako:
DoCmd.OpenReport „Izvjestaj”, acViewPreview, , WhereCondition:="Obrazac_ID = " & Me!Obrazac_ID
Međutim, sve save-am i kada kliknem na tipku za otvaranje reporta, javi mi grešku "Run-time error '2497'. The action or method requires a Report name argument"
Ne znam u čemu je problem, možda je neka balava greška koju ja ne vidim, ali ovako ne radi.
[ Getsbi @ 05.10.2009. 08:28 ] @
Zakači tvoj j fajl kao upload uz poruku, pa ću da pogledam večeras.
[ ngladov1 @ 05.10.2009. 09:58 ] @
Evo fajla, unaprijed se zahvaljujem
[ Getsbi @ 05.10.2009. 12:28 ] @
Molim te snimi to kao .mdb. Nemam Access 2007. Ili neka pogleda neko ko ima 2007.
[ galac1968 @ 05.10.2009. 12:32 ] @
U query reporta kao kriterijum sam ubacui NZ funkciju koja cita trenutno stanje na formi i report ce ti biti bas ongde gde hoces
[ Take 5 @ 05.10.2009. 14:14 ] @
@ngladov1
Prijateljski savet:
'Ajde ti to lepo ispočetka, pošto ništa nisi dobro postavio. Počev od primarnih ključeva, naziva ID polja, relacija...
Lepo pročitaj prvo par top tema ovde na forumu, pa onda celu bazu napravi ponovo od nule kako bog zapoveda.
[ ngladov1 @ 05.10.2009. 17:57 ] @
Citat: galac1968: U query reporta kao kriterijum sam ubacui NZ funkciju koja cita trenutno stanje na formi i report ce ti biti bas ongde gde hoces
Oprosti,ali ne znam što si uradio s bazom, skinem je,pokrenem i opet isto. Kad otvorim report kaže podatke iz cijele tablice ,a ne one koji su trenutno u formi.
[ ngladov1 @ 05.10.2009. 17:58 ] @
Evo .mdb
[ Getsbi @ 05.10.2009. 19:55 ] @
Pogledao sam i slažem se sa kolegom Take 5. Nevaljaju ti relacije. Ako jedna Tvrtka može imati samo jedan obrazac i ako jedan auto može imati samo jedan obrazac, onda ti ne trebaju sve tri tabele. Bilo bi dobro da razmisliš malo o poslovnom procesu.
Sugestija:
Jedna Tvrtka ima više Auta. Jedan Auto u određenom trenutku pripada samo jednoj Tvrtki.
Za jedan Auto se može izdati više računa (Obrazac), jer se može popravljati u više navrata.
Ako je ovo tačno, onda treba prvo preraditi model. Potom popuniti tabele sa po desetak zapisa (ne samo tabelu Auti). Na kraju razmišljati o izveštaju.
[ galac1968 @ 05.10.2009. 23:28 ] @
nije snimilo promene koje sam uneo,izvini. Evo ti sada sredjeno. Ali kao sto si gore procitao ovo ostalo nije dobro.al posto ne znam sta sec sa ovim tjs jel sa ovo samo isecak neceg veceg ili pocinjes ja sam ti odradio ovo kako sam znao ,moze i na drugi nacin al tek kad resis pitanje relacija. Moze u macrou na dugmetu Izvestaj da se prilikom otvaranja Reporta postavi Where uslov da se on otvara na trenutni broj racuna sa forme na koju si unosio. Vidi sta mozes da iskoristis.
[ ngladov1 @ 06.10.2009. 13:19 ] @
Hvala svima na pomoći. Budem ja, kad bude vremena, popravio to, odnosno napravio sve ispočetka i sredio te relacije. Tada će valjda na reportu raditi onaj VBA kod i vjerojatno ne će biti problema oko toga. Još jednom svima havala.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|