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

Vise nego famozni MSHFlexGrid (formatiranje prikaza)

[es] :: Visual Basic 6 :: Vise nego famozni MSHFlexGrid (formatiranje prikaza)

[ Pregleda: 1104 | Odgovora: 8 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

fragolan
Sam svoj majstor ....
Kraljevo

Član broj: 17146
Poruke: 58
*.nasamreza.com

ICQ: 41270492
Sajt: www.escbounty.info


Profil

icon Vise nego famozni MSHFlexGrid (formatiranje prikaza)27.02.2004. u 04:36

Imam jedan big problem sa MSHFlexGrid kontrolom. Naime desava mi se da kad filtriram neke podatke u bazi i rezultat prikazujem u MSHFlex-u decimalne zapise tipa 0,6 dobijem prikazane kao 0,599999999999998. Kako ovo spreciti ili ukloniit?

Citat:
Ne znam stvarno nisam pameten


[Ovu poruku je menjao mladenovicz dana 27.02.2004. u 13:43 GMT]
27.02.2004. u 04:36 

BlueSoniq
zaposlen / C#, ASP.NET senior
Beograd

Član broj: 11116
Poruke: 159
*.yubc.net



Profil

icon Re: Vise nego famozni MSHFlexGrid27.02.2004. u 09:49

Pa imas funkciju Round( nekibroj, broj_decimalnih_mesta)
27.02.2004. u 09:49 

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI, USA / Softwa..
Ann Arbor, MI, USA

Moderator
Član broj: 6598
Poruke: 2064
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Vise nego famozni MSHFlexGrid27.02.2004. u 10:13
Pogledaj Format funkciju.
27.02.2004. u 10:13 

fragolan
Sam svoj majstor ....
Kraljevo

Član broj: 17146
Poruke: 58
*.nasamreza.com

ICQ: 41270492
Sajt: www.escbounty.info


Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)28.02.2004. u 00:43
Hvala na sugestijama, ali njih sam vec probao.
primer: u bazi je upisano da je cena proizvoda 0.6. MSHFlex ga prikazuje kao 0.599999999998
kada probam da funkcijom Round zaokruzim vrednost iz MSHFlex celije javlja se sledeci problem:
ako promenljivu definisem kao currency onda izbacuje gresku overflow
Code:

Dim cena As Currency
cena = Round(gridPr.TextMatrix(gridPr.Row, 7), 2)


ako je ne definisem onda je vrednost promenljive cena 6E+16

Kada koristim Format funkciju onda je jos gore
Code:

cena = Format(gridPr.TextMatrix(gridPr.Row, 7), "##.##0.00")

vrednost promenljive cena je 599999999999800.00 ili ako promenim "##.##0.00" u "##,##0.00" onda je vrednost 59.999.999.999.998
U bazi je lepo upisano 0.6, pri stampi Reporta stampa 0.6, samo MSHFlex vidi decimalno mesto sa ovoliko 9 )).
Da li mozda kod upisivanja u bazu trebam mozda koristim neku posebnu funkciju za decimalne brojeve? Nema logike jer ga lepo upisuje, ali ga ovo cudo )) MSHFlex lose cita

Citat:
A mozda da se manem kompjuter? Ne znam, stvarno nisam vise pametan
28.02.2004. u 00:43 

Marko_L
Marko Lošonc
Project Manager, Maxifer d.o.o
Beograd

Moderator
Član broj: 20532
Poruke: 2112
*.yubc.net

Jabber: Marko_L@elitesecurity.org
ICQ: 249407402
Sajt: www.jurassicsoft.com


Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)28.02.2004. u 15:34
Probaj sa Val, ovako:
Code:

Dim cena As Currency
cena = Val (gridPr.TextMatrix(gridPr.Row, 7))

-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca m.
-Piše "Insert disk 3", a jedva sam i ova dva ugurao u drajv
-Postoje samo dve osobe kojima verujem, jedna sam ja, a druga nisi ti
28.02.2004. u 15:34 

BlueSoniq
zaposlen / C#, ASP.NET senior
Beograd

Član broj: 11116
Poruke: 159
*.ptt.yu



Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)28.02.2004. u 16:39
I ja sam sam imao isti problem kod izracunavanja npr. marze ili neceg slicnog i odlicno sam ga resio pomocu Round funkcije. Mislim da je greska kod toga sto pretvaras polje u Currency. Pretvori celo polje u string ili neku numericku promenljivu pa posle toga ga prebacu u Currency. Cak je bolje da napravis funkciju koja pretvara podatak iz tabele u broj pa ga posle sredjuj kako hoces. Sto se tice Format naredbe imas konstantu koja se zove STANDARD tako da ne moras da brines ni o tome

neki_string = Format (nesto, STANDARD)
28.02.2004. u 16:39 

fragolan
Sam svoj majstor ....
Kraljevo

Član broj: 17146
Poruke: 58
*.nasamreza.com

ICQ: 41270492
Sajt: www.escbounty.info


Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)29.02.2004. u 00:18
Ovo sa Val sljaka. Hvala
Sto se tice fore sa Format i onog STANDARD, definitivno dobijam nezeljeni efekat. Umesto 0,5999999999999999998 dobijam 5999999999999999998.
Mozda ima efekat kada cita iz text box-a, ali sam u guzvi probacu nekom prilikom.
Jos jednom hvala za Val
29.02.2004. u 00:18 

BlueSoniq
zaposlen / C#, ASP.NET senior
Beograd

Član broj: 11116
Poruke: 159
*.yubc.net



Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)01.03.2004. u 09:49
Taj rezultat (5999.....) dobijas zato sto ti je u regionalnom setingu ukljucen engleski format za pisanje brojeva. Ako hoces da koristis decimalni zarez umesto uobicajene tacke po amerima to onda treba i da namestis u Control Panelu. Sasvim lepo bi ti to radilo da je broj 0.59999 .
01.03.2004. u 09:49 

Marko_L
Marko Lošonc
Project Manager, Maxifer d.o.o
Beograd

Moderator
Član broj: 20532
Poruke: 2112
*.yubc.net

Jabber: Marko_L@elitesecurity.org
ICQ: 249407402
Sajt: www.jurassicsoft.com


Profil

icon Re: Vise nego famozni MSHFlexGrid (formatiranje prikaza)01.03.2004. u 10:59
Nema potrebe da menja Regional Settings, zato uostalom i postoji opcija Format kako ne bi svaki korisnik (end user) kome prodas (ili poklonis) program koji napravis morao da menja svoj Regional Settings samo da bi koristio tvoj program.Btw, ono sto si dobio sa opcijom Val mozes dobiti i na sledeci nacin:
Code:

Dim cena As Currency
cena = Format(gridPr.TextMatrix(gridPr.Row, 7) , "#.##")

A sam tip currency ce ti u reportu (stampi) staviti zarez kada odvaja decimale.
bar je kod mene tako radilo
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca m.
-Piše "Insert disk 3", a jedva sam i ova dva ugurao u drajv
-Postoje samo dve osobe kojima verujem, jedna sam ja, a druga nisi ti
01.03.2004. u 10:59 

[es] :: Visual Basic 6 :: Vise nego famozni MSHFlexGrid (formatiranje prikaza)

[ Pregleda: 1104 | Odgovora: 8 ]

Postavi temu Odgovori

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