---
title: "Type mismatch"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/88177-type-mismatch"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Insider"
published: "2003-10-10T13:57:45.000Z"
updated: "2003-10-14T08:37:07.000Z"
replies: 18
views: 444
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/88177-type-mismatch"
---

# Type mismatch

## #1 — Insider, 2003-10-10T13:57Z

Denna koden ger ett felmeddelande.

```
<%datum=FormatDateTime(Dateadd("h",1,InDate & " " & Left(Time,2) & ":00"),vbShortDate)
response.write(datum)%>
```

Felmeddelande:
Microsoft VBScript runtime error '800a000d' 

Type mismatch: '\[string: "10/10/2003 4::00"\]' 

/Bokning/Index.asp, line 182 

Det har funkat tidigare, men helt plötsligt kom detta fel.
Varför??

Permalänk: https://www.webforum.nu/p/88177

## #2 — Engine^, 2003-10-10T13:59Z

Hur ser InDate ut?

Permalänk: https://www.webforum.nu/p/1181554

## #3 — Insider, 2003-10-10T14:01Z

InDate = Date()

Permalänk: https://www.webforum.nu/p/1181555

## #4 — Insider, 2003-10-10T14:03Z

Alltså: "10/10/2003"

Permalänk: https://www.webforum.nu/p/1181556

## #5 — Insider, 2003-10-10T14:06Z

Tar jag bort kolonet i ":00" i min kod så får jag svaret:
12/30/1899

...och inget felmeddelande.

Det måste ha hänt nåt med servern.

Permalänk: https://www.webforum.nu/p/1181560

## #6 — @nders, 2003-10-10T14:07Z

Man skall icke använda strängfunktioner för att ta ut delar av datum eller tid, utan man skall använda de datum-/tidfunktioner som finns att tillgå. Får man gissa på att **Left(Time,2)** är tänkt att returnera timmar? Du kan inte vara säker på att det är ett visst antal tecken i en datum- eller tidsträng, det beror ju helt och hållet på vilka regionala inställningar maskinen har. Använd **Hour(Time)** istället.

Permalänk: https://www.webforum.nu/p/1181562

## #7 — Insider, 2003-10-10T14:08Z

OK, så beror det på att de regionala inställningarna på servern ändrats??? (till amerikansk tid)

Permalänk: https://www.webforum.nu/p/1181563

## #8 — @nders, 2003-10-10T14:09Z

Jag förstår inte riktigt heller vad du vill göra. 

Kan du beskriva i ord exakt vad du vill ska hända?

Permalänk: https://www.webforum.nu/p/1181564

## #9 — @nders, 2003-10-10T14:10Z

> **Insider skrev:**
>
> OK, så beror det på att de regionala inställningarna på servern ändrats??? (till amerikansk tid)

Ja, det är inte omöjligt. Till och med troligt.

Permalänk: https://www.webforum.nu/p/1181565

## #10 — Insider, 2003-10-10T14:18Z

Nej, dom hade inte ändrtats...det är svensk tid och sverige är valt.

Permalänk: https://www.webforum.nu/p/1181576

## #11 — @nders, 2003-10-10T14:19Z

> **@nders skrev:**
>
> Man skall icke använda strängfunktioner för att ta ut delar av datum eller tid, utan man skall använda de datum-/tidfunktioner som finns att tillgå. Får man gissa på att **Left(Time,2)** är tänkt att returnera timmar? 
> 
> ..
> 
> Använd **Hour(Time)** istället.

Permalänk: https://www.webforum.nu/p/1181577

## #12 — Insider, 2003-10-10T14:22Z

Det är en applikation som ett konsultföretag skapat. Jag har inte lusläst koden, men raden ska ta fram dagens datum å tid.

Efter att ha testat applikationen på en annan maskin funkade allting oavsett om det var svensk eller amerikansk tid...

Permalänk: https://www.webforum.nu/p/1181579

## #13 — Insider, 2003-10-10T14:45Z

Men det är alltså ingen lösning eftersom vi inte kan flytta den dit :(
Jag fattar inte hur det bara kan sluta funka... :q

Koden jag bifogade har jag förstått ska ta fram dagens datum i ett visst format. (Eller blir det kanske morgondagens??)

(Jag har redigerat mitt felmeddelande högst upp, missade en sak förut)

Permalänk: https://www.webforum.nu/p/1181601

## #14 — Insider, 2003-10-10T15:05Z

Jag kan vara lösningen på spåren:

Problemet verkar vara att Time visar tid i amerikanskt format. Detta gör att det blir ett extra kolon i resultat-strängen, eftersom Left()-funktionen tar 2 tecken från vänster och får med ett kolon från 5:07.

Tydligen har detta funkat tidigare utan problem. Kan man ställa in på nåt sätt att Time ska returnera 17:07 istället för 5:07? (nån annanstans än i koden alltså)

Det har nämligen installerats en serverprogramvara på server-burken och då kanske nånting ändrades....

Permalänk: https://www.webforum.nu/p/1181630

## #15 — niko, 2003-10-10T15:53Z

Hur defaultformatet ser ut om ingen LCID är angiven i koden är lite av en djungel:

<http://support.microsoft.com/default.aspx?kbid=306044>

I övrigt får man ju hoppas att samma "konsultföretag" inte skriver flygledarsystem:

```
on error resume next
if Datediff('n', left(rc("Ankomsttid"), 5), left(Time , 5) ) > 5 then ..
..
```

(Iaf om man vill våga flyga innan 10 på morronen.)

Permalänk: https://www.webforum.nu/p/1181659

## #16 — Insider, 2003-10-14T08:24Z

Problemet försvann när admin loggade in på servern (konsollen) och förblev inloggad. Det funkade inte när ingen var inloggad. Men detta är ju ingen lösning egentligen...

Permalänk: https://www.webforum.nu/p/1186535

## #17 — @nders, 2003-10-14T08:26Z

Varför inte lösa problemet på rätt sätt, dvs använda de datum- och tidfunktioner som finns :q

Permalänk: https://www.webforum.nu/p/1186536

## #18 — Insider, 2003-10-14T08:31Z

Jo, det kan man fråga sig. Men man vill ju inte sitta och ändra i koden som dom har skrivit, med risk för att röra till det hela. Men i länken som niko skickade med så beskrevs ju problemet, det går kanske att lösa det permanent på nåt sätt..

Permalänk: https://www.webforum.nu/p/1186538

## #19 — @nders, 2003-10-14T08:37Z

> **Insider skrev:**
>
> Men man vill ju inte sitta och ändra i koden som dom har skrivit, med risk för att röra till det hela.

Helt sant. Jag tycker ändå att de är klåpare. ;)

Mvh

Permalänk: https://www.webforum.nu/p/1186543

---

Tråden på webben: https://www.webforum.nu/amne/asp/88177-type-mismatch
