26. maj 2003 - 09:59Der er
9 kommentarer og 2 løsninger
Mine floats er blevet til heltal
Hejsa
Jeg har et meget stort problem som jeg håber der er en venlig sjæl der kan hjælpe med. Jeg sidder og udvikler i Borland C++ Builder 6 mod en Informix-database. Indtil for nylig var der ingen problemer med at hente komma-tal op fra databasen men ligepludselig er det kun hel-tal jeg kan få fat i. Med linien dmSHS711->qChkStockFLL->FieldByName("st_qty")->AsFloat fik jeg før f.eks. 19,95 ind i min variabel, men nu hvis jeg holder musen hen over "AsFloat" kan jeg se den kun har hentet 19 op, dvs. fjernet alt efter kommaet :(
Er det en option jeg har fået slået til i Borland eller hvad kan det skyldes?
Øhhh.... ikke forstået. Det er jo et tal den henter fra databasen og den burde hente 19,95 (komma'et er borlands formatering når den har hentet doubles fra databasen). Jeg sætter 19.95 ind i databasen da komma automatisk bliver lavet til punktum ved at bruge .ToDouble()
Du køre sikkert på en engelsk udgave af OS, eller har sat localisation til engelsk hvorved 19,95 selvfølgelig er er 19, da 19,95 på engelsk skrives 19.95???
Jeg bruger sql's sum() funktion... i "Database Desktop"-programmet fungerer den fint og returnerer 19,95. I selve Borland C++ bliver ,95 fjernet... og jeg er sikker på at det først er noget den er begyndt på inden for de sidste 14 dage. Min localisation er Dansk, så der burde ikke være nogen konflikter dér.
qChkStockFll: SELECT sum(st_items) as st_items, sum(st_qty) as st_qty, st_unitprice FROM shsstock WHERE stock = :Stock GROUP BY st_unitprice
double noget; noget = dmSHS711->qChkStockFLL->FieldByName("st_qty")->AsFloat();
Har fundet ud af at hvis jeg laver et nyt projekt fra grunden og kører samme query så får den fat i det rigtige tal. Så umiddelbart er det en option jeg har fået sat et eller andet sted. Spørgsmålet er bare hvor, for jeg kan ikke huske jeg har gjort noget ud over det sædvanlige og jeg kan ikke lige umiddelbart finde hvor det skulle være :(
Nevermind... blev så sur at jeg fjernede hele lortet og geninstallerede Borland. Nu virker det, så for fremtiden, hvis Borland ikke kan regne, så skal den bare geninstalleres... skod-produkt ;) Lav et svar, så får du nogle point for besværet og ellers tak for hjælpen.
Det er jeg ked af at høre, jeg har selv brugt borland i mange år og har ikke haft så mange problemer som med de andre jeg har forsøgt, måske fordi jeg kendte borland bedre.
Det viser sig så at være QuickReport der er problemet. Når man har haft en QuickReport åben, så virker sum ikke mere. Meget underligt og der står ikke noget på deres egen hjemmeside om problemet. Nogen sidste idéer?
Måske er der nogle flag på de der sum man kan sætte, uden overhovedet at kende QuickReport, som får dem til at tælle int ligesom på en iostream?
Synes godt om
Ny brugerNybegynder
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.