Avatar billede bonzai Nybegynder
05. august 2004 - 15:10 Der er 1 kommentar og
1 løsning

Decimalerne kommer ikke med, når jeg henter data fra en tabel

Hej igen!

Jeg har en variabel x: double; som jeg skal have en tabelværdi ind i.
Så jeg gør følgende:
x := database.tabelValuta['Kurs'];
I min database er 'kurs' af typen decimal med 4 decimaler.
Spørgsmålet går på, hvorfor min x-værdi ikke får decimalerne med, men får en heltalsværdi???

På forhånd tak for hjælpen.
Avatar billede hrc Mester
05. august 2004 - 22:42 #1
Man skulle jo tro at Delphi konverterede kursen til en double når nu det var hvad værdien blev tildelt.

Har du prøvet med den "gamle" måde. Den nye, som du bruger og som jeg selv anbefalede engang, er ikke altid så smart - bl.a. har jeg oplevet at varianterne blev returneret forkert - lidt som du har beskrevet det hvor det kan være at varianten tildeler den værdi der sidder i en integer. Det vil forklare hvor dine decimaler er forsvundet hen.

Prøv med: x := Database.TabelValuta.FieldByName('Kurs').AsFloat;

Kender du i øvrigt tricket med at dobbeltklikke på en TTable? På denne måde kan du lave variable der peger direkte på et felt i en tabel. Fordelen er at du meget præcist kan styre hvordan feltet håndteres. Der er naturligvis også ulemper: Hvis du bruger det på den måde, så virker FieldByName ikke længere.
Avatar billede bonzai Nybegynder
10. august 2004 - 15:15 #2
Tak for hjælpen.
Jeg ændrede typen i databasen til float, det hjalp lidt på det hele :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester