Poslao: 06 Feb 2006 18:36
|
offline
- Pridružio: 27 Jun 2005
- Poruke: 36
|
Imam tabelu sa numerickim poljima u decimalnom obliku, problem mi predstavlja da prikazem u grid-u decimalni deo sa 0 (na pr. 2.30) jer mi u gridu prikazuje samo 2.3; druge vrednosti razlicite od 0 pokazuje normalno. Da napomenem da u tabeli je upisano pravilno 2.30 i u DB exploreru prikazuje normalno.
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
|
Poslao: 06 Feb 2006 21:15
|
offline
- Pridružio: 27 Jun 2005
- Poruke: 36
|
Bitno je da ostane float ali nisi me razumeo. ja vec dobijam gotovu tabelu i samo citam vrednosti, ali kad ih prikazem u DBGrid-u nule u decimalnom delu su odsecene. Bitno je oda ostane float i da ima i nule u decimalnom delu zbog integracije u drugi program koji radi obradu podataka.
|
|
|
|
Poslao: 06 Feb 2006 22:02
|
offline
- Srki_82
![Male](https://www.mycity.rs/templates/simplified/images2/user-sex.gif)
- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Moram da pitam... kakve veze ima integracija sa drugim programom i prikaz podataka u DBGrid-u?
Da odredis nacin na koji ce se podatak prikazivati u data-aware kontrolama koristi DisplayFormat property TField (ili neke druge klase koje je nasledjuje) objekta koji predstavlja zeljeno polje. Za izgled kontrole kada se podatak edituje koristi EditFormat property. Imas detaljno upuststvo za koriscenje u Delphi Help-u.
|
|
|
|
|
Poslao: 07 Feb 2006 11:36
|
offline
- Srki_82
![Male](https://www.mycity.rs/templates/simplified/images2/user-sex.gif)
- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Pardon... moja greska u prethodnom postu... nema TField klasa te propertye, nego TNumericField.
DBGrid uzima podatke iz neke tabele, querya ili neceg slicnog. Te klase obicno imaju Fields property. Dovoljno je da uradis sledece:
TNumericField(ADOTable1.Fields[0]).DisplayFormat := '#.00';
Prvo polje ce se uvek prikazivati na 2 decimale (ako je broj npr. 1 prikazace se kao 1,00).
Ako ti je lakse da poljima pristupas preko imena mozes da napises:
TNumericField(ADOTable1.FieldByName('Kolicina')).DisplayFormat := '#.00';
|
|
|
|
Poslao: 07 Feb 2006 11:42
|
offline
- Pridružio: 18 Apr 2003
- Poruke: 1819
- Gde živiš: Beograd
|
A u data source kojim izvlacis podatke iz tabele, kako si definisao...
Evo zbog tebe sam otvorila neki svoj stari kod, i pogledala kako sam ja to radila i koliko mogu da vidim bitno je da kod datasource-a lepo definises polja
|
|
|
|
Poslao: 08 Feb 2006 12:50
|
offline
- Pridružio: 27 Jun 2005
- Poruke: 36
|
E..zato meni ispadose oci nocas Nema veze..mislim da ce ovo raditi posao. Tnx
@Jelena: Polja su vec ranije definisana, ali pogledacu sutra opet.
Dopuna: 08 Feb 2006 12:50
Ovaj nacin sa TNumericField radi ali me zanima jos nesto.
Ima li neki nacin da mi prikaze sva float polja sa dve decimale, da ne kucam za svako polje posebno kako ce da ga prikazuje?
|
|
|
|
Poslao: 08 Feb 2006 14:02
|
offline
- Srki_82
![Male](https://www.mycity.rs/templates/simplified/images2/user-sex.gif)
- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Mislim da nema... jedini nacin bi bio da kopiras Delphi unit u kojem je definisan TNumericField u folder gde se nalazi tvoj program i da promenis constructor tako da DisplayFormat po defaultu bude #.00
Mada, ne vidim zasto bi bilo tesko napraviti jednu proceduru koja bi za sve TNumericField postavila format kakav zelis... cela procedura bi bila ovakva:
procedure SetDisplayFormat(aField: TFields; aFormat: String);
var
I: Integer;
begin
for I := 0 to aField.Count - 1 do
if aField[I] is TNumericField then
TNumericField(aField[I]).DisplayFormat := aFormat;
end;
Pozivas je ovako:
SetDisplayFormat(Tabel1.Fields, '#.00');
Ti uradi kako zelis.
P.S.
Pisao sam iz glave pa je moguce da u kodu ima neka greska, ali sustina je jasna.
|
|
|
|
Poslao: 08 Feb 2006 14:22
|
offline
- Pridružio: 27 Jun 2005
- Poruke: 36
|
Radi uz malo izmene, aF definisano 2x. Glupo izgleda sto svim brojevima dodaje .00 ali sta da se radi.
Pozz
|
|
|
|