[ Markanto @ 10.07.2009. 11:24 ] @
Trazim nacin kako da dobijem sumu u rave-u. Dobio sam sumu polja Iznos, ali kako da sada na to dodam porez od 22%. Odnosno kako pomnozim sum(Iznos) * 0,22 u Rave-u? |
[ Markanto @ 10.07.2009. 11:24 ] @
[ captPicard @ 10.07.2009. 11:36 ] @
Citat: Markanto: Trazim nacin kako da dobijem sumu u rave-u. Dobio sam sumu polja Iznos, ali kako da sada na to dodam porez od 22%. Odnosno kako pomnozim sum(Iznos) * 0,22 u Rave-u? Pa prije nego daš PrintTab napravi iznos := iznos *1,22. Ili nisam dobro shvatio pitanje? [ Markanto @ 10.07.2009. 12:00 ] @
Nismo se shvatili. Sve vučem u Rave-u iz DataSet-a, a vrijednost pdv-a nemam u Datasetu. Sada sam uz pomoć Data Text-a dobio sam sumu Iznos, ali kako da sada iz tog iznosa izvučem PDV? Trebam jos jedan DataText (valjda on) u kojem će pisati ta vrijednost! Trebam nacin kako da sada dodjem do toga kroz code u Rave-u!
[ captPicard @ 10.07.2009. 12:11 ] @
Čekaj, ti želiš izvući iznos pdv-a iz nekog iznosa?
Npr. Želiš iz iznosa 122 dobiti da je unutra 22 pdv-a? [ Markanto @ 10.07.2009. 12:24 ] @
Tako je. U Delphi-u sam to dobio (na labelu), a sada mi još samo to fali u rave-u!
[ captPicard @ 10.07.2009. 12:33 ] @
Citat: Markanto: Tako je. U Delphi-u sam to dobio (na labelu), a sada mi još samo to fali u rave-u! Pa možeš tako kako sam ti napisao u prvom odgovoru. Izračunaš iznos pdv-a i onda PrintTab(iznos) [ Markanto @ 10.07.2009. 12:47 ] @
Ne razumijem taj PrintTab. Mozes mi to malo pojasnit? Malo coda mozda??
[ captPicard @ 10.07.2009. 13:10 ] @
Code: procedure TFIspis.ZagLista(Sender: TBaseReport); begin with Sender do begin MarginTop := 20; YPos := 10; MarginBottom := 25; MarginRight := 20; MarginLeft := 20; DataModule.DataSet.Open; if DataModule.DataSet.Locate('POLJE', sPolje, []) then begin ClearTabs; SetTab(05, pjLeft, 100, 0, 0, 0); SetFont('Arial', 11); Bold := True; PrintTab(DataModule.DataSet['NAZIV']); NewLine; SetFont('Arial', 10); To ti je samo isječak iz koda. [ captPicard @ 10.07.2009. 13:13 ] @
Auuuuuuuuuuuuuuuuuu,
![]() sorry, tek sada sam skužio da piše RAVE. Ovo šta sam ti ja pisao je nešto drugo, Zanemari i sorry. Ali evo načina: Dodaj u dataset calculated polje, i onda na OnCalcFields izračunaj taj iznos koji ti treba i to je to. [ Markanto @ 10.07.2009. 13:38 ] @
Hvala, ali moze jos jedna mala pomoc, odnosno malo bolje obasnjenje! Razumijmem kako sa time, ali nikak da to skopcam sada/zavrsim!
[ captPicard @ 10.07.2009. 13:41 ] @
Desni klik na dataset, fields editor. Opet desni klik Add new field. Označi ga kao data, daj mu ime, tip.
Zatim na Dataset.OnCalcFields napiši nešto ovako: Dataset.FieldByName('clcPolje').AsFloat := nekiiznos * nesto / 100; Nakon toga možeš to polje koristiti isto kao ostala polja u datasetu. Kužiš? [ Markanto @ 10.07.2009. 14:23 ] @
Svaka cast na strpljenu! :)
Hvala, to bi bio odgovor! Imam još neka pitanja, pa dali ti se mogu obratiti na privatni mail (ali tek za 10-ak dana)? [ captPicard @ 10.07.2009. 14:24 ] @
![]() Možeš, nije problem. [ dogriz @ 10.07.2009. 21:30 ] @
[ gpedja_70 @ 14.07.2009. 11:11 ] @
Postavis CalcOp komponentu sa Reports palete,
za operator stavis coMul za Src1DataView postavis dataview koji si povezao za Src1DataField postavis taj tvoj IZNOS za Src2Value postavis 0.22 DestParam nazovi npr. IZNOS_POREZA postavi DataText komponentu i u DataField upisi: Param.IZNOS_POREZA poz. [ Markanto @ 20.07.2009. 08:18 ] @
gpedja_70 hvala. Bio sam na godisnjem odmoru pa nisam iz toga razloga mogao nista prije napisati. Odg. mi se cini ok, samo sto sada
nailazim na jedan problem, a to je da kada stavim DataText i u DataField upisem: Param.IZNOS_POREZA nista ne vidim na reportu. Ne vidim gdje sam pogrijesio. Sve je opisamo step by step (svaka cast), ali jos mi nesto tu fali. [ gpedja_70 @ 20.07.2009. 13:06 ] @
da li si CalcOp i DataText postavio na DataBand?
i da li taj DataBand ima property DataView na neki dataview koji vraca tvoju kolonu IZNOS? poz. [ Markanto @ 20.07.2009. 14:21 ] @
Taj dio bi stavio u titleBand. Mogu? Dogriz je dao dobar tutorial koji sam malo na brzinu pogleda, te me se cini temeljit,
pa kada dodjem doma pokusat cu jos nesto iskemijat. Rijesenje iznos i pdv bi mi trebali pisati na vrhu papira ili na zaglavlju. [ gpedja_70 @ 20.07.2009. 19:26 ] @
Onda, posto pretpostavljam nemas samo jednu stavku na racunu, ili dokumentu :)
Napravi CalcOp kao sto sam ti rekao gore, samo preskoci poslednji korak za DataText Zatim na TitleBand ili gde vec hoces porez postavi drugu komponentu CalcTotal podesi property CalcType ctSum, DataField postavi Param.IZNOS_POREZA, Controller postavi DataBand koji sadrzi detalje tj stavke DestParam nazovi rezimo TOTAL_POREZA I sada postavi DataText na TitleBand i za DataField sada stavi Param.TOTAL_POREZA Ovim postupkom racunas porez za svaku stavku i na kraju ga sumiras i prikazes kao DataText. pozz! [ Miloš Baić @ 21.07.2009. 09:21 ] @
@Markanto
Sve to se može odraditi u SQL - u, potom dobijeni atribut proslediš u RAVE kao deo sloga koji učitavaš i, po meni, na osnovu zahteva koji si izneo je najjednostavnija varijanta. Ali nije loše i da naučiš kako se to u RAVE - u može odraditi, verovatno može i bez OnCalcFields, odnosno da ti sam RAVE izračuna vrednosti koje želiš na osnovu, recimo, dva atributa koja si mu prosledio (u tvom slučaju suma i porez!?!). Pozdrav. Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|