webForumDet fria alternativet

lista tabel och undertabeller

ASPur ASP

28 svar · 791 visningar · startad av plelkes · sida 2 av 2

Frågan, av plelkes

... skulle jag vilja. Men hur gör jag detta?

Läs frågan i sin helhet →
Medlem sedan mars 2002823 inlägg
#21

Gjorde ett försök till ommöblering:

<%  
Set vbalans = Server.CreateObject("ADODB.Connection")
vbalans.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("/vetskebalans/vbalans.mdb")
vbalans.ConnectionString = "Data Source='" & MdbFilePath & "'"
vbalans.open
strSQL1 =" SELECT * FROM tblFluidTypes ORDER by typeID ASC"
strSQL1 =" SELECT * FROM tblFluidRelat, tblFluids, tblFluidTypes WHERE tblFluidRelat.FluidID = tblFluids.FluidID AND tblFluidRelat.typeID = tblFluidTypes.typeID "
Set rs1 = vbalans.Execute (strSQL1)
Set rs2 = vbalans.Execute (strSQL2)
Do While Not rs1.EOF
Response.Write  rs1("typeNamn") & "<BR>"
Do While Not rs2.EOF
Response.Write rs2("FluidNamn") & "<BR>"
rs2.MoveNext
Loop
rs1.MoveNext
Loop
vbalans.Close
Set vbalans = Nothing
  %>

Men får bara fel

Microsoft JET Database Engine fel '80040e0c' Det angavs inte någon kommqandotext för kommandoobjektet
rad 16 -> Set rs2 = vbalans.Execute (strSQL2)

Medlem sedan juni 200032 967 inlägg
#22

Angående ditt sista felmeddelande: du har samma namn på båda SQL-frågorna (igen ;) ), så när du försöker köra strSQL2 finns det inget som heter det.

Om du ska få ditt senaste försök att fungera bör du nog ställa den andra SQL-frågan inne i rs1-loopen.

Dock, jag tycker ditt försök innan dess ser mer korrekt ut, det gäller bara att fippla lite med if-satser och variabler som kontrollerer om det är en ny "rubrik".

Jag har inte riktigt tid att kika på det nu, men jag ska se om jag kan kika in senare. :-)

Lycka till!

Mvh

Medlem sedan mars 2002823 inlägg
#23

hittade just felet :r
hade 2 st strSQL1 men ingen strSQL2

Medlem sedan mars 2002823 inlägg
#24

mitt senaste försök funkar bara första gången*snyft*..
Det som händer är att första rs1("typeNamn") skrivs ut, sedan skrivs samtliga "FluidNamn" och sedan de övriga "typeNamn")

Medlem sedan juni 200032 967 inlägg
#25

plelkes skrev:

mitt senaste försök funkar bara första gången*snyft*..
Det som händer är att första rs1("typeNamn") skrivs ut, sedan skrivs samtliga "FluidNamn" och sedan de övriga "typeNamn")

Jepp, jag vet, det var det jag menade med att du måste nog lyfta in skapandet av recordset 2 i loopen där du loopar ut rs1. Då kan du använda värde från rs1 till att hämta ut rätta Fluidnamn för varje typ. (snurrigt)

Jag har tyvärr inte tid att pilla till någon kod just nu...

mvh

Medlem sedan mars 2002823 inlägg
#26

bara för att kolla att jag inte är ute och simmar ;)
Jag bör använda mig av Recordset find metoden - eller?
Får inte riktigt till det hela, men...

Set rs1 = vbalans.Execute (strSQL1)
Do While Not rs1.EOF
strSearch = rs1("typeNamn")
[B]rs1.find("typeNamn") = strSearch[/B]
If TRUE Then
 Response.Write rs1("FluidNamn") & "<BR>"
 Else
Response.Write "<B><U>" & rs1("typeNamn") & "</U></B><BR>" & rs1("FluidNamn") & "<BR>"
End If
rs1.MoveNext
Loop

Ovanstående kod ger för tillfället

Provider fel '80020005'
Typblandningsfel

på fet-markerade raden

Medlem sedan mars 2002823 inlägg
#27

Nedanstående kod

<%  
Set vbalans = Server.CreateObject("ADODB.Connection")
vbalans.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("/vetskebalans/vbalans.mdb")
vbalans.ConnectionString = "Data Source='" & MdbFilePath & "'"
vbalans.open
strSQL1 =" SELECT * FROM tblFluidRelat, tblFluids, tblFluidTypes WHERE tblFluidRelat.FluidID = tblFluids.FluidID AND tblFluidRelat.typeID = tblFluidTypes.typeID  ORDER by tblFluidTypes.typeNamn"
typ ="" 
Set rs1 = vbalans.Execute (strSQL1)
Do While Not rs1.EOF
If typ <> rs1("typeNamn") then
typ = rs1("typeNamn")
Response.Write "<B><U>" & rs1("typeNamn") & "</U></B><BR>" & rs1("FluidNamn") & "<BR>"
Else
Response.Write rs1("FluidNamn") & "<BR>"
End If
rs1.MoveNext
Loop
vbalans.Close
Set vbalans = Nothing
  %>

funkar iaf lokalt på min hårddisk...

Medlem sedan juni 200032 967 inlägg
#28

Weeee!

Vad skönt att jag slipper sätta mig ner och knåpa ihop ett exempel, för det är ungefär exakt så jag tycker det ska lösas!

Snyggt! :D

Mvh

Medlem sedan mars 2002823 inlägg
#29

Om jag skulle vilja dela upp recordseten på flera sidor typ:
så att första typeNamn skrivs och sen listas alla tillhörande Namn. Och sedan på nästa sida skrivs andra typeNamn ut och sen listas alla tillhörande Namn. osv...

Skall paging användas, eller bör/skall jag lösa på annat sätt?

249 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
116 ms — hämta statistik (db)
130 ms — hämta tråd, inlägg och bilagor (db)