---
title: "error '80020009'"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/102760-error-80020009"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "plelkes"
published: "2004-05-02T09:38:47.000Z"
updated: "2004-05-03T06:04:38.000Z"
replies: 9
views: 294
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/102760-error-80020009"
---

# error '80020009'

## #1 — plelkes, 2004-05-02T09:38Z

Som ni ser [denna tråd](http://www.webforum.nu/showthread.php?s=&threadid=100389&forumid=22)  så får jag ej till det hela\*snyft\*
Så därför har jag tänkt ut en ny approach:
Upplägget är ju som följer:
Ur tblVetskebalans för varje PatID = Request.Form("rapport")

- datum som patienten förekommer i tabllen
- och för varje datum vätskor med dess egenskaper

 
Samt ur tblPersonuppgifter hämta efternamn och förnamn
Samtliga uppgifter finns i tblVetskebalans, tblPersonuppgifter,tblFluids följande kod:

```
<%@ Language=VBScript LCID=1053%>
<HTML>
<title>Rapport</title>
<BODY>
 <%
Set vbalans = Server.CreateObject("ADODB.Connection")
vbalans.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("\vatskebalans\db\vbalans.mdb")
vbalans.ConnectionString = "Data Source='" & MdbFilePath & "'"
vbalans.open
strSQL = "SELECT tblFluids.FluidNamn, tblFluids.FluidID, tblVetskebalans.Dag," & _
        " tblVetskebalans.PatID AS patid, tblVetskebalans.FluidID, tblVetskebalans.Energi," & _
		" tblVetskebalans.Volym, tblPersonuppgifter.PatID AS ID, tblPersonuppgifter.ftFnamn," &_
		" tblPersonuppgifter.ftEnamn FROM tblVetskebalans, tblFluids, tblPersonuppgifter WHERE" &_
        " tblPersonuppgifter.PatID = "&Request.Form("rapport")&" AND tblVetskebalans.PatID = tblVetskebalans.Dag ORDER by Dag ASC"
Set rs1 = vbalans.Execute (strSQL)
Response.Write "<BR><B>" & strSQL & "</B><P>"
'formatera till svensk personnummer
Function SvPnr(txt)
      personnummer =Left(txt,6) & " - " & Right(txt,4)
  SvPnr = personnummer
End Function
    Response.Write SvPnr(rs1("ID")) & "<BR>"
    Response.Write "<B>" & rs1("ftEnamn") & ", " & rs1("ftFnamn") & "</B><P><P><P>"
%>
<TABLE border=1>
  <TR>
    <TD><B>Datum</B></TD>
    <TD><B>Vätska</B></TD>
    <TD><B>Volym</B></TD>
    <TD><B>Energi</B></TD>
   </TR>
<%
 Do While Not rs1.EOF
       Response.Write "<TR><TD>" & rs1("Dag") & "</TD>"
       Response.Write "<TD>" & rs1("FluidNamn") & "</TD>"
       Response.Write "<TD>" & rs1("Volym") & "</TD>"
       Response.Write "<TD>" & rs1("Energi") & "</TD></TR>"
rs1.MoveNext
Loop
vbalans.Close
Set vbalans = Nothing
 %>
</TABLE>
</body>
</html>
```

 
Ger felutskriften:

> SELECT tblFluids.FluidNamn, tblFluids.FluidID, tblVetskebalans.Dag, tblVetskebalans.PatID AS patid, tblVetskebalans.FluidID, tblVetskebalans.Energi, tblVetskebalans.Volym, tblPersonuppgifter.PatID AS ID, tblPersonuppgifter.ftFnamn, tblPersonuppgifter.ftEnamn FROM tblVetskebalans, tblFluids, tblPersonuppgifter WHERE tblPersonuppgifter.PatID = '1111111111' AND tblVetskebalans.PatID = tblVetskebalans.Dag ORDER by Dag ASC
> error '80020009'

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

## #2 — m_soderlund, 2004-05-02T10:38Z

PatID kanske är ett tal i din databastabell, och i så fall ska du skriva så här:

```
PatID = Cint(Request.Form("rapport"))
```

Annars kan du spinna vidare på denna Google-sökning.

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

## #3 — PDahlen, 2004-05-02T11:03Z

Om du googlar på felet så får du reda på att det uppstår när du i din SELECT hämtar en kolumn av typ TEXT eller BLOB men inte sätter dom sist i sql-satsen.
Skriv om din SELECT.

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

## #4 — plelkes, 2004-05-02T16:02Z

tyvärr hjälpte det inte...

```
<%
Set vbalans = Server.CreateObject("ADODB.Connection")
vbalans.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("\vatskebalans\db\vbalans.mdb")
vbalans.ConnectionString = "Data Source='" & MdbFilePath & "'"
vbalans.open
strSQL = "SELECT tblFluids.FluidID, tblVetskebalans.FluidID, tblVetskebalans.Energi," &_
       " tblVetskebalans.Volym, tblFluids.FluidNamn, tblVetskebalans.Dag," &_
	   " tblVetskebalans.PatID AS patid, tblPersonuppgifter.ftFnamn," &_
	   " tblPersonuppgifter.PatID AS ID, tblPersonuppgifter.ftEnamn FROM" &_
	   "  tblVetskebalans, tblFluids, tblPersonuppgifter WHERE tblVetskebalans.PatID" &_
	   " = tblVetskebalans.Dag AND tblPersonuppgifter.PatID ="&Request.Form("rapport")&" " &_
	   " ORDER by Dag ASC"
Set rs1 = vbalans.Execute (strSQL)
Response.Write "<BR><B>" & strSQL & "</B><P>"
'formatera till svensk personnummer
Function SvPnr(txt)
      personnummer =Left(txt,6) & " - " & Right(txt,4)
  SvPnr = personnummer
End Function
    Response.Write SvPnr(rs1("ID")) & "<BR>"
    Response.Write "<B>" & rs1("ftEnamn") & ", " & rs1("ftFnamn") & "</B><P><P><P>"
%>
```

 
Ger

> SELECT tblFluids.FluidID, tblVetskebalans.FluidID, tblVetskebalans.Energi, tblVetskebalans.Volym, tblFluids.FluidNamn, tblVetskebalans.Dag, tblVetskebalans.PatID AS patid, tblPersonuppgifter.ftFnamn, tblPersonuppgifter.PatID AS ID, tblPersonuppgifter.ftEnamn FROM tblVetskebalans, tblFluids, tblPersonuppgifter WHERE tblVetskebalans.PatID = tblVetskebalans.Dag AND tblPersonuppgifter.PatID ='1111111111' ORDER by Dag ASC
> error '80020009' 
> 
> /vatskebalans/visa_rapporten102.asp, line 22

 
Line 22:

```
personnummer =Left(txt,6) & " - " & Right(txt,4)
```

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

## #5 — PDahlen, 2004-05-02T16:51Z

Kolla alla dina kolumntyper. Vad är ftFnamn, ftEnamn, Dag och FluidNamn för typer?

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

## #6 — plelkes, 2004-05-02T17:08Z

de är alla av typen text...
resterande kolumner som ingår är av typen "number"

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

## #7 — PDahlen, 2004-05-02T18:11Z

Då har du inte skrivit om din SELECT-sats. ALLA textfält skall komma sist och som du har skrivit så har du fortfarande fel ordning.

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

## #8 — plelkes, 2004-05-02T18:14Z

jag fattar att skall komma sist, fattar bara inte hur  jag skall formulera selectsatsen

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

## #9 — plelkes, 2004-05-02T18:57Z

Försökt ändra strSQL till

```
strSQL = "SELECT * FROM  tblVetskebalans, tblFluids, tblPersonuppgifter" &_
       " WHERE tblVetskebalans.PatID = tblVetskebalans.Dag AND" &_
       " tblPersonuppgifter.PatID = "& pat &" ORDER by Dag ASC"
```

 
Men får utskriften:

> SELECT \* FROM tblVetskebalans, tblFluids, tblPersonuppgifter WHERE tblVetskebalans.PatID = tblVetskebalans.Dag AND tblPersonuppgifter.PatID = '9303060156' ORDER by Dag ASC
> 
> ADODB.Recordset error '800a0cc1' 
> 
> Item cannot be found in the collection corresponding to the requested name or ordinal. 
> 
> /vatskebalans/visa_rapporten102.asp, line 22

```
rad 18: Function SvPnr(txt)
      rad 19: personnummer =Left(txt,6) & " - " & Right(txt,4)
    rad 20: SvPnr = personnummer
   rad 21: End Function
    rad 22: Response.Write SvPnr(rs1("PatID")) & "<BR>"
   rad 23:  Response.Write "<B>" & rs1("ftEnamn") & ", " & rs1("ftFnamn") & "</B><P><P><P>"
```

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

## #10 — PDahlen, 2004-05-03T06:04Z

Du ska inte använda \*. Eftersom du har TEXTkolumner måste du sätta dem i rätt ordning.
Du har ju redan formulerat sql-satsen. Nu ska du bara sortera det du hämtar så att alla text-kolumner står SIST i SELECT raden. Det är inte svårare än så.

```
SELECT tblFluids.FluidID, tblVetskebalans.FluidID,
tblVetskebalans.Energi, tblVetskebalans.Volym,
tblVetskebalans.Dag, tblVetskebalans.PatID AS patid,
tblPersonuppgifter.PatID AS ID, tblFluids.FluidNamn,
tblPersonuppgifter.ftFnamn, tblPersonuppgifter.ftEnamn
```

Du ska inte ändra något i FROM eller WHERE, bara i SELECT raden.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/102760-error-80020009
