:-)
Ne moze bez koda, ali je kod minimalan. Umesto reci 'aplikacija' ili 'projekt' nekada se govorilo prosto 'program'. A program ne ide bez programiranja, kako se nkad prosto govorilo, ili 'pisanja koda' kako se danas kaze. Za pocetak, prouci u Helpu komande DoCmd.OpenForm, DoCmd.OpenReport. To ti omogucuje da uradis 90% onog sto ti treba za 'normalnu upotrebu'. Za finese, vezbaj pomalo, niko se naucen nije rodio. I zaboravi da postoji rec Macro u Accessu. To je prva stvar koju treba da uradis ako hoces da programiras. Zaboravi makroe.
Da se vratimo na problem:
U formi frmRadneJedinice, koja je datasheet forma, read only, i ciji je zadatak da samo izlista radne jedinice, imas sigurno polje RadnaJedinicaID (ili tako nekako). To je recimo neki text box, ili combo box, svejedno. U design modu odaberes taj kombo box, pa u propertises sheet izaberes Events i tamo nadjes OnDoubleClick event. Kreiras event proceduru za taj event - kliknes nesto sa strane i izaberes 'Event procedure'. Access ce sam da ti otvori VBA prozor i napise pocetak i kraj procedure, nesto kao:
sub RadnaJedinicaID_DblClick()
end sub
Sad ti upises ovo unutar procedure:
Dim strFormName as string 'ime forme koju treba otvoriti
Dim strWhere as String 'ovde ces da kazes za koju radnu jedinicu
strFormName="frmKarticeRadnihJedinica"
strWhere = "RadnaJedinicaID=" & Me!RadnaJedinicaID
'Ovo ce biti malkice komplikovanije ako ti je RadnaJedinicaID tekstualno polje
'u tom slucaju treba ovako:
strWhere = "RadnaJedinicaID='" & Me!RadnaJedinicaID & "'"
'iza = ubacio sam ' a na kraju je ' izmedju dva "
'PAZI: U tvom kodu sme da bude samo jedan od ova dva strWhere=
DoCmd.OpenForm FormName:=strFormName,view:=acFormDS,WheeCondition:=strWhere
Da sumiramo:
Code:
sub RadnaJedinicaID_DblClick()
Dim strFormName as string 'ime forme koju treba otvoriti
Dim strWhere as String 'ovde ces da kazes za koju radnu jedinicu
strFormName="frmKarticeRadnihJedinica"
strWhere = "RadnaJedinicaID=" & Me!RadnaJedinicaID
'Ovo ce biti malkice komplikovanije ako ti je RadnaJedinicaID tekstualno polje
'u tom slucaju treba ovako:
strWhere = "RadnaJedinicaID='" & Me!RadnaJedinicaID & "'"
'iza = ubacio sam ' a na kraju je ' izmedju dva "
'PAZI: U tvom kodu sme da bude samo jedan od ova dva strWhere=
DoCmd.OpenForm FormName:=strFormName,view:=acFormDS,WheeCondition:=strWhere
end sub
Nemoj samo da Cut/Paste ovaj kod odavde, mozda se tvoje polja i forme zovu drugacije, a mozda sam i ja napravio neku gresku u kucanju (da li se parametar view zaista tako zove ili drugacije, proveri u Help za DoCmd)
I tako isto n sledecoj formi. Za ovo nema wizard, iako postoji slican wizard - kad ubacis dugme mozes da izaberes koju formu/report da otvori to dugme, i za formu mozes da definises i uslov (za report ne mozes, moras da ga dopises ovako kako sam ti pokazao).
Dakle, prouci Help za DoCmd i OnClick event za dugmice i DblClick event za ne-dugmice.
:-)