[ASP] Client regional number settings

Pagina: 1
Acties:

  • Sjeng
  • Registratie: Juli 2001
  • Laatst online: 10-12-2025
Ik heb een stuk ASP code geschreven dat uit een SQL database een hoop data haalt en dit via een file stream als CSV file (comma seperated values file) naar de gebruiker stuurt. Tot zover geen probleem.

Er doen zich echter problemen voor bij het importeren van deze files in excel. Daarom wil ik graag voor ik de file naar de gebruiker stuur eerst checken welke numberformatting hij/zij gebruikt. De twee mogelijke opties zijn:

$ 1,000.00
of
€ 1.000,00

Ik wil dit graag opvragen in mijn asp code en dan een op de gebruiker zijn settings aangepaste file naar de gebruiker sturen zodat hij/zij geen fout kan maken bij een import in excel.

Iemand een idee hoe dit kan opvragen/ondervangen. Ik heb al gezocht naar iets als 'Request.ServerObject("NumberFormatBlahblah")' maar kan zoiets niet echt vinden.

B.v.d.

Sjeng

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:02

gorgi_19

Kruimeltjes zijn weer op :9

Je kan de landinstellingen volgens mij niet uitlezen (dit is clientside en ASP = serverside); je kan ze wel de keuze geven en presenteren in een bepaald formaat door de LCID property van het Session-object


Bijvoorbeeld:
code:
1
2
3
<%
Session.LCID = 1043
%>

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Sjeng
  • Registratie: Juli 2001
  • Laatst online: 10-12-2025
Ik kan de landsinstellingen dus wel uitlezen maar daar ben ik niet mee geholpen. Deze bieden me namelijk geen garantie dat de numberinstelling hieraan gelijk zijn.

Ik kan via een request bijvoorbeeld dit doen:
Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")
Dit geeft bijvoorbeeld zoiets terug:
nl,en:q=0.5

Echter nu zou ik een soort van lookup moeten maken voor alle mogelijkheden en dan bestaat er nog steeds de kans dat de gebruiker deze settings zelf aangepast heeft. Helaas zijn er in de omgeving waar dit straks moet gaan draaien veel mensen die dit zelf zo ingesteld hebben omdat ze veel files uit de US ontvangen.
Ik wil dus echt de instelling voor de numbers weten... ??
Kan ik niet een script lokaal laten draaien en dan in het request de uitkomst hiervan meesturen??

Sjeng

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:02

gorgi_19

Kruimeltjes zijn weer op :9

Dan moet je hem misschien 'faken'
Onderstaand is een ideetje, of het werkt weet ik niet, maar het is een mogelijkheid.

Je doet door middel van Javascript een formatnumber aan de client en plaatst deze in een hidden field. Deze laat je meeposten 'met de opdracht'. Dit hiddenfield lees je uit; aan de format die hier staat, moet je dan de clientformat kunnen herleiden. Of het werkt, geen idee, want zo een ster ben ik niet in JS.. :(

Maar misschien dat er betere methoden zijn.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Sjeng
  • Registratie: Juli 2001
  • Laatst online: 10-12-2025
Done... welliswaar niet met JavaScript maar met ClientSide VB script embedded in een bedje van ASP code... erg veel genest maar het werkt...

Sjeng B-)

  • Sjeng
  • Registratie: Juli 2001
  • Laatst online: 10-12-2025
Vraag ik me ineens af: Werkt clientside vbcode eigenlijk ook op bijvoorbeeld het linux of mac platform of is het echt alleen maar voor Windoos en Internet Exploder?

Sjeng :(

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:02

gorgi_19

Kruimeltjes zijn weer op :9

Of het gebonden is aan Windows weet ik niet, wel aan Internet Explorer

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Zou je het script wat je gebruikt hebben eens willen posten?
Ik vind dat namelijk wel interessant.
Want ik zit met een soortgelijk probleem.

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

Ik kan het mis hebben hoor ;)
Maar comma seperater values, en dan als decimaalteken een , ik kan me voorstellen dat dat niet helemaal lekker loopt... Ik heb hier ook een , als decimaalteken, als ik dit in een csv file zet en importeer in Excel:
Hallo,15.25
Krijg ik netjes 2 kolommen, als ik er 15,25 van maak, zit ik met 3 kolommen opgescheept ipv 2, en moet ik zelf weer aangeven dat het 1 veld is, 15,25 en niet 2 velden van 15 en 25.

Exact expert nodig?


Verwijderd

Op donderdag 18 juli 2002 12:54 schreef gorgi_19 het volgende:
Je kan de landinstellingen volgens mij niet uitlezen (dit is clientside en ASP = serverside); je kan ze wel de keuze geven en presenteren in een bepaald formaat door de LCID property van het Session-object


Bijvoorbeeld:
code:
1
2
3
&lt;%
Session.LCID = 1043
%&gt;
Ik had ooit ook zo'n vraag met dat antwoord, maar als ik dat boven de page zette, en ik vroeg de time() op, kreeg ik wel 12:02:00 AM dus niet de 23uurs klok... toch iemand een ID?
Pagina: 1