08. december 1999 - 14:17Der er
4 kommentarer og 1 løsning
Decimaltal med komma i Access
Jeg har en access 2000-database og en søgeside på Internettet, hvor man kan søge på oplysninger fra databasen. Søgesiden er lavet i FrontPage 2000 ved hjælp af ASP. Det hele kører fint bortset fra en søgning på aldersgrupper, hvor man skal kunne søge på halve år, f.eks. fra 1,5 til 4,5 år. Jeg kan få det til at virke, ved at søge på 1.5 til 4.5 år, men jeg kan ikke får lov til at søge på decimaltal, der vises med et komma. Når jeg går ind i databasen viser den værdierne med et komma (f.eks. 1,5), men sådan gemmer den dem åbenbart ikke! Er det noget som man kan gå ind i databasen og definere?
Det er fordi du har din w2000 (eller hvad du bruger) sat til Dansk. I Access, som i de fleste andre, er decimaltal ALTID gemt med et punktum istedet for et komma. Det er kun os danskere der skal have det omvendt og det er computerne ikke rigtigt forberedt til. Man har så snydt og sørget for at alle tal der vises benytter en "decimalseparator" værdi som angives under windows. Det betyder at du principielt kan få alle tal vist med et stjerne eller f.eks. et H der hvor kommaet ellers ville være.
Hvis du satte den til Engelsk ville det ikke være noget problem fordi der bruger punktum, men det er jo ikke løsningen. Brugerne bruger jo dk systemer og derfor komma.
Du er nødt til at erstatte de tal du modtager fra brugerne så kommaer bliver erstattet med punktum. Sådan gør man i stort set alle andre systemer.
Kommaer under vindows har asciiværdien 44 og punktum værdien 46 så en hurtig lille rutine til at erstatte 44 med 46 er løsningen.
Der er muligt der i Frontpage findes en automatisk konvertering.
Alle generelle ændringer vedr. decimaltal i windows sættes i Kontrol Panelet, International.
Desværre er der ikke umiddelbart nogen funktion i Access til at fortælle at alle tal skal gemmes med komma istedet for punktum.
Tak for hjælpen sjensen - du har identificeret problemet meget præcist. Skulle du tilfældigvis have en "hurtig lille rutine" som den omtalte på lager, så er jeg da aftager..... :-)
Vedr. en lille rutine: Desværre ikke, Mest fordi jeg ikke rigtigt er html/java ekspert, men jeg forventer faktisk at det er en let opgave for en der kender det. Og jeg kender faktisk en der ved lidt om det. Så jeg spørger ham lige og ser hvad han kan hjælpe med. Du hører fra mig senere.
OK - tak - det ser jeg frem til. Hvis du finder en rutine, der fungerer, kaster jeg gerne et par hundrede point mere efter dig eller din ekspert..... :-) Lisbeth
Jeg beklager ventetiden men jeg har været på en forretningsrejse og har derfor først set din kommentar idag.
Men.. Her er et par ideer til en rutine:
En javascript rutine til konvertering af komma til punktum ser sådan ud:
MyString = MyString.replace(/\,/g,".");
g'et sætter udskift rutinen til "global" så alle forekomster af komma bliver udskiftet med punktum.
I perl skal det sættes op med
MyString =~ tr/\,/\./;
Jeg håber at du kan bruge noget af det.
sjensen
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.