• 2 odgovora
  • 3.952 pregleda
unos broja sa dvije decimale 30.08.2006. u 15:41 · pre 245 meseci #1
E ovako:

Desava mi se jedna interesantna stvar:

na jednom dijalogu ima Edit za unos neke cijene. Ja zelim da mi se bez obzira na to koliko ima cifara poslije decimalnog zareza, u bazu uvijek unese broj sa dvije cifre.
Znaci: ako se unese 10, da se u bazu unsese: 10.00
ili 25.7 da se unese 25.70

Ja sam to uradio na ovaj nacin:


ADOTable1->Active=true;
ADOTable1->Insert();
ADOTable1->FieldByName("Cijena")->AsFloat=StrToFloat(FormatFloat("0.00",StrToFloat(Edit1->Text)));
ADOTable1->Post();

ali se desi da , iako ga unese sa dvije decimale, kasnije kada prikazujem cijene u nekom DBGrid-u ili Report-u uvijek se prikaze bez decimala...(Meni treba prikaz sa dvije decimale)

Dakle, sta da uradim kako bih rijesio ovaj problem??
Potpis
kod žorža ti je ka' u banku!!
oko? sto ce ti oko??
Re: unos broja sa dvije decimale 31.08.2006. u 10:01 · pre 245 meseci #2
Dobro si zapisao podatak, no same DB komponente automatski odstrane "nepotrebna" decimalna mjesta. Možda najbolje bi ti bilo spremati taj podatak kao AnsiString, pa onda mora spremiti baš kako ti želiš. S obzirom da imaš podržane gotovo sve konverzije iz AnsiStringa u brojevne tipove podataka ne bi trebalo biti problema dalje pri matematičkim operacijama...
Re: unos broja sa dvije decimale 31.08.2006. u 11:57 · pre 245 meseci #3
Posto radis u Borland C++ Builderu koliko vidim, imas tamo opcije za polja (fieldove) imas DisplayFormat ili tako nesto, koliko se secam pa postavi na 0.00 ili koji ti vec format treba. Slicno radis i sa alatima za izvestaje, svaki bi trebao da ima mogucnosti da formatira polje.
Pozdrav
Potpis
RTFM
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme