Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?

[es] :: Access :: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?

[ Pregleda: 2752 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

maticmilos
sbg
Beograd

Član broj: 51397
Poruke: 185
91.148.115.*



Profil

icon Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?27.02.2008. u 19:47 - pre 196 meseci
Da pojasnim,

Izvestaj izlistava neku tabelu i sadrzi kolone A, B, C i D. Vrednost prvog ispisa za polje C imamo. Kako da za naredne vrednosti polja C uzimamo vrednost polja D iz prethodnog ispisa u odnosu na tekuci? (U polju D se stampa zbir A+B+C)

Dacu primer da razjasnim:

A B C D
1 2 3 6
2 1 6 9
4 3 9 16
5 8 16 29


Nadam se da sam lepo formulisao konfuzno pitanje.

Hvala na pomoci!

www
 
Odgovor na temu

domaci_a_nas
PHP developer

Član broj: 42333
Poruke: 524
*.dynamic.sbb.co.yu.



+8 Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?27.02.2008. u 20:32 - pre 196 meseci
Ne znam da li formu posmatraš kao kao single view ili datasheet / continuous forms.

Ja bih napisao nešto kao C.DefaultValue = D.Value, s tim da polje D ne mora da postoji u tabeli, već stoji kao izraz A+B+C u query koji se koristi kao RecordSource forme.


Ozbiljan i odgovoran mladić
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?27.02.2008. u 22:26 - pre 196 meseci
U pitanju je report a ne forma. Izgleda kao da iams dve vrste redova:
prvi red koji je f(A,B,C) = D
svi ostali redovi, f(A,B,C=(D iz prethodnog reda)) = D

Ne vidim kako to moze na reportu, kad se u detail sekciji formatira jedan red reporta, taj se red 'zaboravja' pri prelasku na sledeci.
Jedini izuzetak je Running sum, koji se moze primeniti na kolonu D. Mislim da ne moze da se resi U Accessu, ni u kveriju. Kveri bi trebalo da je iterativan, sto u Accesu ne moze.

Ako bas mora ovako, napravi praznu tabelu, pa je napuni kroz petlju na nacin koji ti treba. Onda report cita iz te tabele.
Siguran sam da ce kolega domaci_a_nas ce biti srecan da ti pokaze kod za punjeje tabele

A mozes sve da uradis u Excelu ako ti bas treba

 
Odgovor na temu

domaci_a_nas
PHP developer

Član broj: 42333
Poruke: 524
*.dynamic.sbb.co.yu.



+8 Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?28.02.2008. u 00:36 - pre 196 meseci
Bas neću biti srećan da pokažem bilo šta Prekasno sam video da je u pitanju izveštaj, već sam bio poslao poruku, ali je poenta i dalje ista, bar u onom delu D = A + B + C. Mogu se koristiti unbound kontrole na izveštaju, kojima se dodeljuje vrednost kroz VBA kod pomoću promenljivih koje se definišu na nivou reporta. Tom prilikom treba imati u vidu da se format event javlja dva puta, kod treba pisati tako da se neke vrednosti ne dupliraju.
Ozbiljan i odgovoran mladić
 
Odgovor na temu

maticmilos
sbg
Beograd

Član broj: 51397
Poruke: 185
91.148.115.*



Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?28.02.2008. u 07:48 - pre 196 meseci
Nisam lepo rekao! Kolone A B C i D se ne vuku iz tabele, vuce se samo A B i C, dok se kolona D racuna u reportu. Nebitno, moze i u kveriju. Bitno je da u samom reportu kolona C dobija vrednost prethodnog D u svim ispisima posle prvog (Ovo poslednje mogu da resim IF-om). Posto ne znam dobro sintaksu VBA, a vucem neku logiku c-a, paskala i slicnih, pa sam mislio da postoji nesto me.C=(previous)me.D.

Svakako hvala na pomoci!

www
 
Odgovor na temu

DarioBH
Bosna i Hercegovina

Član broj: 86881
Poruke: 453
89.146.172.*



+1 Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?28.02.2008. u 08:21 - pre 196 meseci
ne kontam kako mislis polje C se vuce iz tabela, a kazes da je vrijednost tog polja prethodno D, znaci i polje C se izracunava na samom izvjestaju na osnovu prethodnih vrijednosti polja D
 
Odgovor na temu

domaci_a_nas
PHP developer

Član broj: 42333
Poruke: 524
*.dynamic.sbb.co.yu.



+8 Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?28.02.2008. u 10:11 - pre 196 meseci
Mislim da mu je ipak potrebna početna vrednost za polje C, ali ne mora biti u istoj tabeli kao A i B. Recimo da se to polje na reportu zove StartC i da je uključeno u RecordSource reporta i da se nalazi skriveno na reportu. Takođe bih dodao i brojač linija, tj. textbox RecCounter sa ControlSource =1 i Runing Sum Over All. Brojač je potreban jer se format Event dešava dva puta i nisam imao drugi način da odredim da li je u pitanju prvi record ili ne. Kontrole C i D su unbound.


Option Compare Database
Option Explicit
Dim StaroD As Long
Dim Otkazi As Boolean

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
If RecCounter = 1 Then StaroD = StartC
C.Value = StaroD
D.Value = Val(A) + Val(B) + Val(C)
StaroD = D
End Sub


Ozbiljan i odgovoran mladić
 
Odgovor na temu

maticmilos
sbg
Beograd

Član broj: 51397
Poruke: 185
195.252.105.*



Profil

icon Re: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?28.02.2008. u 20:58 - pre 196 meseci
Resio sam problem preko kverija koji kreira tabelu, a zatim u formi imam dugme OBRACUN koje modifikuje vrenosti u novoj tabeli.

Private Sub Command0_Click()

Dim vrpo As Double
Dim db As Database
Dim rst As Recordset
Set db = CurrentDb
Set rst = db.OpenRecordset("punjena_tabela")

vrpo = 0
rst.MoveFirst

Do
vrpo = rst.Fields(12)
rst.MoveNext

If rst.EOF = True Then Exit Do
If rst.Fields(3) = 1 Then vrpo = 0

rst.Edit
rst.Fields(8) = vrpo + rst.Fields(8)
rst.Update

rst.Edit
rst.Fields(11) = (rst.Fields(6) + rst.Fields(7) + rst.Fields(8) + rst.Fields(9) + rst.Fields(10)) * 0.1
rst.Update

rst.Edit
rst.Fields(12) = rst.Fields(6) + rst.Fields(7) + rst.Fields(8) + rst.Fields(9) + rst.Fields(10) + rst.Fields(11)
rst.Update
Loop

End Sub

Hvala na predlozima!

www
 
Odgovor na temu

[es] :: Access :: Uzimanje vrednosti iz prethodnog ispisa u izvestaju - kako?

[ Pregleda: 2752 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.