Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 09:32 Der er 25 kommentarer og
1 løsning

Datoproblem

Jeg kan simpelthen ikke få mine datoer til at fungere ordentligt!
De bliver skrevet forkert ind i databasen og bliver vist forkert´- jeg vil meget gerne have dem i dansk format - jeg har prøvet <%Session.LCID = 1030%>, men så skriver den datoen forkert ind i min access database! Jeg ved simpelthen ikke hvad man kan gøre for at få det skrevet ind korrekt og derefter vist korrekt!

Er der nogle der kan hjælpe mig med det?
Avatar billede keysersoze Ekspert
09. oktober 2001 - 09:34 #1
du siger, at hvis du bruger <%Session.LCID = 1030%> så bliver det skrevet forkert ind i databasen... har du prøvet at bruge <%Session.LCID = 1030%> ved _udskrivning_ fra databasen?
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 09:37 #2
Hvordan?
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 09:38 #3
Jeg bruger access - er der forskel på om man bruger en dansk eller engelsk version?
Avatar billede eagleeye Praktikant
09. oktober 2001 - 09:38 #4
hvis du har access kan du hendte dato\'en ud formateret på denne måde:

sql = \"SELECT Format(dato,\'dd-mm-yyyy\') as DatoStr, * FROM tabel\"
Set rs = con.execute(sql)

dato er i  rs(\"datostr\")
Avatar billede keysersoze Ekspert
09. oktober 2001 - 09:44 #5
på den side du udskriver dataene fra databasen - dér SKAL være <%Session.LCID = 1030%> i toppen... det burde være lige meget når du indsætter i databasen, men primært hvor du udskriver datoen skal det være i toppen af dit dokument...
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 09:46 #6
jeg har sat det ind på ALLE sider!
Avatar billede eagleeye Praktikant
09. oktober 2001 - 09:47 #7
Du kan også bruge FormatDateTime:

Dato = FormatDateTime(rs(\"dato\"), 1)    eller
Dato = FormatDateTime(rs(\"dato\"), 2)

Når du skriver til databasen skal dato formatet være mm-dd-yyyy (default-dato format). Jeg har set access bytte rundt på mm og dd i flere tilfælde.
Avatar billede eagleeye Praktikant
09. oktober 2001 - 09:50 #8
mathiasiversen  >> du er ikke den enste der ikke kan få <%Session.LCID = 1030%> til at virke. Jeg har heller ikke haft gode erfarringer med LCID.
Avatar billede keysersoze Ekspert
09. oktober 2001 - 09:55 #9
sidste gang jeg kigge på en, der ville han have at indtastning skulle være dd/mm/åå - men de data blev sat ind i databasen som mm/dd/åå hvilket gjorde at han fuckede ret så meget op i alle datoer...

bliver det bygget rigtigt op virker <%Session.LCID = 1030%> fint...
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:00 #10
eagleeye>> default-dato - mener du at jeg skal indstille det índe i access?
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:01 #11
hvad står 1 og 2 for?
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:04 #12
det virker ikke men det er nok en syntaxfejl:
strSQL = \"SELECT Format(dagsdato,\'dd-mm-yyyy\') as DatoStr,* FROM journal Where KOB = \'\"&rs2(\"kob\")&\"\'\"
Set rsdato = conn.execute(strSQL)
Avatar billede stoffer Nybegynder
09. oktober 2001 - 10:05 #13
1 og 2 er i stedet for vb constanterne vblongdate, vbshortdate

hvis du vil bruge konstanterne skal du bare inkludere adobvs.inc i din side...

NB (jeg kan ikke lige huske om 1 er vblongdate osv. men det kan du selv slå op)
Avatar billede eagleeye Praktikant
09. oktober 2001 - 10:08 #14
1 giver eksvis 9 oktober 2001
2 giver eksvis 09-10-2001

Det jeg mener med default er hvis du skriver dags-dato med function Date().

Får du en fejl i din SQL?
Avatar billede eagleeye Praktikant
09. oktober 2001 - 10:09 #15
Du skal udskrive med : rsdato(\"Datostr\")
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:10 #16
Datatyperne stemmer ikke overens i kriterieudtrykket.
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:10 #17
jep I know
Avatar billede eagleeye Praktikant
09. oktober 2001 - 10:12 #18
har dette virket før:
..journal Where KOB = \'\"&rs2(\"kob\")&\"\'\"
Det kunne jo være at KOB var et tal og ikke tekst.

Er dagsdato defineret som dato/time felt?
Avatar billede stoffer Nybegynder
09. oktober 2001 - 10:13 #19
jeg vil stærk anbefale at du ikke bruge session.lcid, da hvis du laver nogle beregninger kan give problemer, med f.eks. Round funktionen.
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:13 #20
ups!
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:15 #21
nu virker den del af det men jeg forstår stadig ikke hvordan jeg kan få det rigtige datoformat ind i min database!
Avatar billede eagleeye Praktikant
09. oktober 2001 - 10:17 #22
Når man insætter en dato i access gennem SQL er jeg kommet til at det er nødvendig at benytte dato formatet mm-dd-yyyy.
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:19 #23
hvor indstiller du det henne?
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:24 #24
hvad gør jeg for at få datoen til at ligge sig sådan?
Avatar billede eagleeye Praktikant
09. oktober 2001 - 10:25 #25
indstiller?
Hvis jeg har en dato som er indtastet i en form konverter jeg fra dd-mm-yyyy:
myArr = split(inputDato,\"-\",-1)
datoInd = myArr(1) & \"-\" & myArr(0) & \"-\" & myArr(2)

sql = \"INSERT INTO tabel(dagto) VALUES (#&datoInd &\"#)\"

Hvis det er dagsdato som Date() så:
sql = \"INSERT INTO tabel(dagsdato) VALUES (#& date() &\"#)\"
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 10:52 #26
ok... det begynder sku at ligne noget - jeg er lige igang med at teste det af, så jeg er helt sikker på at det virker :)
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