[ bobiris @ 16.07.2003. 00:29 ] @
Imam problem prilikom otvaranja forme sa "OnLoad".

napisao sam sledeći kod:

Private Sub Form_Load()
If RangSen2002.Value = 1 Then
ZB2002Sen = ZB2002Sen + 5
ElseIf RangSen2002.Value = 2 Then
ZB2002Sen = ZB2002Sen + 3
ElseIf RangSen2002.Value = 3 Then
ZB2002Sen = ZB2002Sen + 1
End If
Form.Refresh
End Sub

On mi ovo odradi, ali samo za prvi zapis, za ostale zapise neće. Ako sve ovo stavim na "OnOpen", prijavi da ne može da piše u tabelu, iako je Editovanje dozvoljeno.

[Ovu poruku je menjao tOwk dana 16.07.2003. u 13:12 GMT]
[ byTer @ 16.07.2003. 03:47 ] @
Jesi pokusao sa
select case. Mozda i uspe ako nesto promenis )
[ Nub.Saibot @ 16.07.2003. 11:53 ] @
Citat:
bobiris:
Imam problem prilikom otvaranja forme sa "OnLoad".

napisao sam sledeći kod:

Private Sub Form_Load()
If RangSen2002.Value = 1 Then
ZB2002Sen = ZB2002Sen + 5
ElseIf RangSen2002.Value = 2 Then
ZB2002Sen = ZB2002Sen + 3
ElseIf RangSen2002.Value = 3 Then
ZB2002Sen = ZB2002Sen + 1
End If
Form.Refresh
End Sub

On mi ovo odradi, ali samo za prvi zapis, za ostale zapise neće. Ako sve ovo stavim na "OnOpen", prijavi da ne može da piše u tabelu, iako je Editovanje dozvoljeno.


Nisam siguran da li sam dobro razumeo tvoj post, ali meni ovo liči da želis da na neki način sumiraš polja u tabeli pri učitavanju forma. Međutim, tvoj kod radi to samo sa prvim redom jer na ostale i ne prelazi. Moraš staviti obradu polja u petlju. Ne koristim Visual Basic pa cu umesto VB koda napisati pseudo kod.

1. Postavi kursor tabele na prvi red
2. Sve dok nije kraj tabele radi
3. obrada polja
4. Postavi kursor tabele na sledeci red
5. Idi na korak 2

Valjda sam pogodio u čemu je stvar :)
[ bobiris @ 16.07.2003. 12:22 ] @
Pogodio si, to hocu, ali ni ja ne znam da napisem to u Visual Basic-u. Pokusacu sa VB scriptom, kao za WEB.
[ Simke @ 16.07.2003. 12:49 ] @
Nije mi jasno kada hoces da se kod izvrsava? OnLoad event i treba da izvrsava kod samo jednom. Ako hoces da se kod izvrsava kada ides sa rekorda na rekord, koristi OnCurrent event.
[ leka @ 16.07.2003. 12:56 ] @
Moze li autor da objasni kakve veze ima njegov tekst sa bazama podataka????
[ bobiris @ 16.07.2003. 13:09 ] @
Prvo za Leku: (Autor)

Ovaj tekst ima veze sa bazama podataka jer se radi o programu (ili bazi) koju pravim u Access-u. Ako sam pogresio forum, molim te usmeri me na pravi.

Sada za Simketa:

Pa hocu da se izvrsi jednom, jer se radi o reportu koji je samo za "gledanje", ne za azuriranje, ali hocu da prodje sve zapise, a ne samo prvi, tj. onaj koji se prilikom ucitavanja pojavi na ekranu.

Sa VB scriptom bih se snasao, ali mislim da Visual Basic u okviru Accesa to mnogo brze odradjuje. Baza je velika (?), ima 17000 zapisa sa dosta podataka. Ako otvaram ODBC konekciju, pa pisem kod kao za Asp, mislim da ce to dosta usporiti stvar.
[ vbraca @ 16.07.2003. 18:12 ] @
Koristi za formu OnCurrent event a ako je u pitanju izvestaj za stampu - koristi OnFormat dogadjaj detalja izvestaja

Pozdrav,
[ bobiris @ 17.07.2003. 11:58 ] @
Da, ali kada u Formi "šetaš" kroz zapise unapred, sve je ok, svaki odrađuje šta treba, ali kada se onda vraćaš nazad, on opet odrađuje, i tako u krug, pa se vrednost stalno povećava, svaki put kada pristupiš zapisu.

To nije rešenje, možda za Report, u slučaju da se samo štampa, bez pregledanja.
[ Nub.Saibot @ 18.07.2003. 12:53 ] @
Citat:
bobiris:
Pogodio si, to hocu, ali ni ja ne znam da napisem to u Visual Basic-u. Pokusacu sa VB scriptom, kao za WEB.


U VB sam radio samo sitne programe tako da ne mogu da ti pomognem oko pisanja koda. Ako ti nešto znači mogu kod da ti napišem u Delphi-ju.

Potrazi pomoć u forumu VB & ASP http://www.elitesecurity.org/forum/21