---
title: "Lista de poster enligt två villkor"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/102640-lista-de-poster-enligt-två-villkor/page2"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "plelkes"
published: "2004-04-29T17:24:12.000Z"
updated: "2004-05-03T08:41:48.000Z"
replies: 29
views: 597
page: 2
pages: 2
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/102640-lista-de-poster-enligt-två-villkor"
---

# Lista de poster enligt två villkor

_Sida 2 av 2._

## #21 — plelkes, 2004-05-03T06:37Z

Vill helst undvika att röra om i sql-satsen :r 
Trodde att ngt sånt skulle funka:

```
<%
pat = Request.Form("rapport")
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 f.FluidNamn, f.FluidID, v.Dag, v.PatID, v.Volym, v.Energi," &_
         " p.ftEnamn, p.ftFnamn FROM (tblVetskebalans v INNER JOIN tblFluids f"&_
          " ON v.FluidID = f.FluidID) INNER JOIN tblPersonuppgifter p ON v.PatID = p.PatID" &_
          " WHERE p.PatID = "& pat &""
		  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("PatID")) & "<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>
<%v
v = 0
e = 0
 Do While Not rs1.EOF
[B]v = v + rs1("Volym")
e = e + rs1("Energi")[/B]
       Response.Write "<TR><TD>" & CDate(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
[B]Response.Write "Totala volymen är  " & v & "<BR>"
Response.Write "Totala energi är  " & e & "<BR>"[/B]
vbalans.Close
Set vbalans = Nothing
 %>
```

 Men får fel:

> Microsoft VBScript runtime error '800a000d' 
> Type mismatch: 'v'

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

## #22 — PDahlen, 2004-05-03T06:47Z

Vad är Volym och Energi för kolumntyper? På vilken rad får du felet?
Det bästa ur prestandasynpunkt är att lägga SUM i sql-satsen.

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

## #23 — plelkes, 2004-05-03T07:23Z

> **PDahlen skrev:**
>
> Vad är Volym och Energi för kolumntyper?

 dessa är båda tal

> **PDahlen skrev:**
>
> På vilken rad får du felet?

 på rad 33

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

## #24 — PDahlen, 2004-05-03T07:30Z

Ok, är rad 33

```
v = v + rs1("Volym")
```

Prova 

```
v = v + cint(rs1("Volym"))
```

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

## #25 — plelkes, 2004-05-03T07:35Z

hjälper tyvärr inte

> SELECT f.FluidNamn, f.FluidID, v.Dag, v.PatID, v.Volym, v.Energi, p.ftEnamn, p.ftFnamn FROM (tblVetskebalans v INNER JOIN tblFluids f ON v.FluidID = f.FluidID) INNER JOIN tblPersonuppgifter p ON v.PatID = p.PatID WHERE p.PatID = '1111111111'
> 111111 - 1111
> Elvansson, Elvan
> 
> 
> 
> Datum Vätska Volym Energi 
> Microsoft VBScript runtime error '800a000d' 
> Type mismatch: 'v' 
> 
> /vatskebalans/visa_rapporten102.asp, line 33

 
Koden:

```
<%@ Language=VBScript LCID=1053%>
<HTML>
<title>Rapport</title>
<BODY>
 <%
pat = Request.Form("rapport")
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 f.FluidNamn, f.FluidID, v.Dag, v.PatID, v.Volym, v.Energi," &_
         " p.ftEnamn, p.ftFnamn FROM (tblVetskebalans v INNER JOIN tblFluids f"&_
          " ON v.FluidID = f.FluidID) INNER JOIN tblPersonuppgifter p ON v.PatID = p.PatID" &_
          " WHERE p.PatID = "& pat &""
		  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("PatID")) & "<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>
<%v
v = 0
e = 0
 Do While Not rs1.EOF
v = v + cint(rs1("Volym"))
e = e + cint(rs1("Energi"))
       Response.Write "<TR><TD>" & CDate(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
Response.Write "Totala volymen är  " & v & "<BR>"
Response.Write "Totala energi är  " & e & "<BR>"
vbalans.Close
Set vbalans = Nothing
 %>
</TABLE>
</body>
</html>
```

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

## #26 — plelkes, 2004-05-03T07:44Z

upps - det smög tydligen in ett litet extra v
nu är det borta - och verkar funka!!
Men i utskriften kommer först volymmängden och energi och sedan tabellen..
Hur switchar jag detta? dvs 

1. lista tabellen
2. skriv ut volym
3. skriv ut energi

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

## #27 — PDahlen, 2004-05-03T08:09Z

Det är för att du inte stänger tabellen innan du skriver ut volym och energi. Antingen stänger du tabellen innan eller så sätter du en tabellrad och tabellceller runt volym och energi.

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

## #28 — plelkes, 2004-05-03T08:14Z

Patrik:
du rekomenderar alltså:

```
StrSQL1 = SELECT SUM (energi) FROM tblVetskebalans
```

 
Hur skulle du baka ihop detta med mitt övriga kod?

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

## #29 — plelkes, 2004-05-03T08:31Z

Hellt plötsligt för jag följande med för vissa pat:

> Microsoft VBScript runtime error '800a0006' 
> Overflow: 'cint' 
> 
> /vatskebalans/visa_rapporten102.asp, line 36 
> Datum Vätska Volym Energi 
> 2004-05-02 Vitrimix 1099 1099 
> 2004-04-29 Proviva 23 23 
> 2004-04-29 Proviva 125 125 
> 2004-04-29 Sondmat 2345 1172,5 
> Microsoft VBScript runtime error '800a0006' 
> Overflow: 'cint' 
> 
> /vatskebalans/visa_rapporten102.asp, line 36

 vad berro detta meddelande på?

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

## #30 — plelkes, 2004-05-03T08:41Z

tror att jag hittade själv svaret när jag googlade:

> The maximum value allowed for the CInt function is 3276

 
Så jag torde ah överskridit detta i min tabell

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/102640-lista-de-poster-enligt-två-villkor/page2  
Föregående sida: https://www.webforum.nu/amne/asp/102640-lista-de-poster-enligt-två-villkor.md
