13. oktober 2004 - 09:04
Der er
57 kommentarer og 1 løsning
join tre tabeller
Hej Med jer.. Her. <% strSQL = "Select * From orders Order by fFirma" Set rs = Conn.Execute(strSQL) Response.write "<table>" Response.write "<tr><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Adresse</td><td bgcolor='#f1ede7'><b>Postnr</td><td bgcolor='#f1ede7'><b>Bynavn</td><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Efternavn</td><td bgcolor='#f1ede7'><b>E.mail</td><td bgcolor='#f1ede7'><b>Orderdato</td><td bgcolor='#f1ede7'><b>Total</td><tr>" Do Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("fFirma") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("address1") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("postalcode") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("city") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("fName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("lName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write "<a href=""mailto:" & rs("email") & """>" & rs("email") & "</a>" Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("orderDate") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("Total")& ".00" VAR = VAR + rs("Total") Response.write "</td></tr>" rs.MoveNext Loop While Not rs.EOF Response.Write "</table>" response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" Conn.Close Set Conn = Nothing %> viser den alle bestillingerne men den tager ikke med hvad der er bestilt for det ligger i to andre tabeller der hedder : itemsOrdered felter: orderID productID quantity og en tabel med produkterne: products felter: productID productName nu er det så jeg gerne vil have at den også skal vise hvad man har bestilt.... :-)
Annonceindlæg tema
13. oktober 2004 - 09:24
#1
ok hvordan er relationen mellem ffirma of itemsordered? Jeg gaar ud fra at det er gennem orderID, men kan ikke se feltet orderID i din listing for ffirma?
13. oktober 2004 - 09:25
#2
du er skarp.. og det er korrekt det er orderID der er tråden hele vejen igennem.. :-)
13. oktober 2004 - 09:28
#3
jeg har bare glemt at skrive orderID
13. oktober 2004 - 09:42
#4
ok saa maa det vel blive noget i retning af: SELECT ffirma.Fornavn, ffirma.Efternavn, ffirma.Adresse, ffirma.Postnr, ffirma.Bynavn, ffirma.email,ffirma.orderdato, ffirma.Total, itemsordered.Quantity, products.prodcutName FROM ffirma INNER JOIN (itemsOrdered INNER JOIN products ON itemsordered.productID = products.productID) ON ffirma.OrderId = itemsOrdered.OrderID
13. oktober 2004 - 09:48
#5
skal det ikke være select from orders osv ?
13. oktober 2004 - 09:52
#6
tabellerne hedder: orders - her står firma navn itemsOrdered - hvormange af hvilke products - hvad hedder produkterne
13. oktober 2004 - 09:58
#7
ok lille fejl der, hvor der staar ffirma skal du bare bruge orders istedet. beklager- jeg har vaeret for tidligt oppe og er allerede begyndt at mangle kaffe :-)
13. oktober 2004 - 10:05
#8
nu ser den sådan ud: <% strSQL = "SELECT orders.Fornavn, orders.Efternavn, orders.Adresse, orders.Postnr, orders.Bynavn, orders.email,orders.orderdato, orders.Total, itemsordered.Quantity, products.prodcutName FROM orders INNER JOIN (itemsOrdered INNER JOIN products ON itemsordered.productID = products.productID) ON orders.OrderId = itemsOrdered.OrderID" Set rs = Conn.Execute(strSQL) og der kommer denne fejl: Microsoft OLE DB Provider for ODBC Drivers error '80040e10' [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 7. /oversigt.asp, line 53 linie 53 = Set rs = Conn.Execute(strSQL) men den har før fået fat i den..
13. oktober 2004 - 10:13
#9
ok dette er med reference til :
http://www.eksperten.dk/spm/549127 Saa vidt jeg kan se i den kode har du ikke defineret Constring. Hvis den ikke er defineret vil der slet ikke blive oprettet noget forbindelse til databasen.
13. oktober 2004 - 10:15
#10
jamen her virker den :-) det er jo inden vi roder med den der kan den sagtens finde dv og smide de rigt info fra Orders ind: <% strSQL = "Select * From orders Order by fFirma" Set rs = Conn.Execute(strSQL) Response.write "<table>" Response.write "<tr><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Adresse</td><td bgcolor='#f1ede7'><b>Postnr</td><td bgcolor='#f1ede7'><b>Bynavn</td><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Efternavn</td><td bgcolor='#f1ede7'><b>E.mail</td><td bgcolor='#f1ede7'><b>Orderdato</td><td bgcolor='#f1ede7'><b>Total</td><tr>" Do Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("fFirma") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("address1") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("postalcode") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("city") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("fName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("lName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write "<a href=""mailto:" & rs("email") & """>" & rs("email") & "</a>" Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("orderDate") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs("Total")& ".00" VAR = VAR + rs("Total") Response.write "</td></tr>" rs.MoveNext Loop While Not rs.EOF Response.Write "</table>" response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" Conn.Close Set Conn = Nothing %>
13. oktober 2004 - 10:21
#11
her er den: <% ' ADODB connection objektet Set Conn = Server.CreateObject("ADODB.Connection") ' Husk at angive den rigtige sti til din database DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("metacart.mdb") ' Åben databaseforbindelsen Conn.Open DSN %> <FONT SIZE="4" COLOR="#000000"><b><center>Bestillingsoversigt Julen 2004 </FONT>.</B><BR><BR><% strSQL = "SELECT orders.Fornavn, orders.Efternavn, orders.Adresse, orders.Postnr, orders.Bynavn, orders.email,orders.orderdato, orders.Total, itemsordered.Quantity, products.prodcutName FROM orders INNER JOIN (itemsOrdered INNER JOIN products ON itemsordered.productID = products.productID) ON orders.OrderId = itemsOrdered.OrderID" Set rs = Conn.Execute(strSQL)
13. oktober 2004 - 10:35
#12
ok jeg har slaaet fejlkoden op, og den opstaar naar den ikke kan finde en kolonne i Access tabellen/tabellerne. I dette tilfaelde er der 7(!) kolonner der ikke genkendes, men jeg kan ogsaa se at i den kode du har smidt i 13/10-2004 10:15:34 er feltnavnene paa engelsk. Saa SQL'en bliver: SELECT orders.ffirma, orders.ddress1, orders.postalcode, orders.postalcode, orders.city, orderders.fname, orders.lname, orders.email, orders.orderdate, orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid; Jeg har tilfoejet de felter der bruger i JOIN saetningen. I ren access er det ikke noedvendigt, men det er muligt at de skal med i ASP.
13. oktober 2004 - 10:38
#13
De syv kolonner der ikke genkendes stemmer overens med de sybv kolonner som andrer sig med dansk-engelske kolonnenavne.
13. oktober 2004 - 10:39
#14
og en fejl i den saetning jeg skrev - andet felt navn skal selvf vaere orders.address1 fremfor orders.ddress1
13. oktober 2004 - 10:40
#15
<% strSQL = "SELECT orders.fFirma, orders.address1, orders.postalcode, orders.city, orderders.fname, orders.lname, orders.email, orders.orderdate, orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid; fejl Microsoft VBScript compilation error '800a0409' Unterminated string constant /oversigt.asp, line 52 strSQL = "SELECT orders.fFirma, orders.address1, orders.postalcode, orders.city, orderders.fname, orders.lname, orders.email, orders.orderdate, orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid; ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------^
13. oktober 2004 - 10:43
#16
Eneste jeg umiddelbart kan set er at der manger en " i slutningen af strengen. strSQL = "SELECT orders.fFirma, orders.address1, orders.postalcode, orders.city, orderders.fname, orders.lname, orders.email, orders.orderdate, orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid;"
13. oktober 2004 - 10:47
#17
<FONT SIZE="4" COLOR="#000000"><b><center>Bestillingsoversigt Julen 2004 </FONT>.</B><BR><BR><% strSQL = "SELECT orders.fFirma, orders.address1, orders.postalcode, orders.city, orderders.fname, orders.lname, orders.email, orders.orderdate, orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid;" Set rs = Conn.Execute(strSQL) fejl: Microsoft OLE DB Provider for ODBC Drivers error '80040e10' [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. /oversigt.asp, line 54 det er linie 54:Set rs = Conn.Execute(strSQL)
13. oktober 2004 - 10:49
#18
det er i feltet til fornavn - der er en stavefejl: orderders.fname -> orders.fname
13. oktober 2004 - 10:51
#19
yes baby.... nu er der hul..
13. oktober 2004 - 10:52
#20
virker det som det skal?
13. oktober 2004 - 10:54
#21
der er to bestillinger og de kommer fre tre gange hver.. og nu skal jeg have produkterne på.. hjælp
13. oktober 2004 - 10:57
#22
ok det eneste ekstra du skal have i din ASP kode er noget i retning af Response.write rs("quantity") Response.write rs("productname")
13. oktober 2004 - 10:58
#23
som selv skal flettes ind i den eksisterende tabel-struktur paa siden.
13. oktober 2004 - 11:00
#24
Reelt set ville det nok vaere bedre at have haft en fjerde tabel med kunde-informationen separat, men det er nok en helt anden historie :-)
13. oktober 2004 - 11:00
#25
ok.. nu skal du høre.. kunde 1 har bestilt: 25 stk t-shirt 200st vanter 100stk sko og 52stk biler derfor kommer hans bestilling frem fire gange efterhinanden den skal den ikke den skal vises: Fornavn Adresse Postnr Bynavn Fornavn Efternavn E.mail Orderdato Total t-shirt jørgen HEJVEJ 3500 sldnn peter henanse daff@ 12.10.2004 150 25 vanter sko biler. 200 100 52 men på en linie.. :-)
13. oktober 2004 - 11:06
#26
den er svær... :-( men du er god
13. oktober 2004 - 11:29
#27
under tabellen: itemsordered står der "orderID" "productID" "quantity" 216 23 1 216 25 1 216 28 2 bare så det er nemmere for dig at se
13. oktober 2004 - 11:56
#28
jeps, jeg kan se hvad du mener. Istedet skal du have have lavet 2 queries og 2 recordsets. strSQL1 = "SELECT * FROM orders" set rs1 = conn.execute(strsql1) Do Udskriv rs1 -indholdet her strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.qunatity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE orderid = " & rs1("orderid") set rs2 = conn.execute(strsql2) Do Udskriv rs2-indholdet her set rs2 = nothing rs2.movenext Loop while not rs2.EOF rs1.movenext Loop while not rs1.EOF
13. oktober 2004 - 12:00
#29
Microsoft VBScript compilation error '800a0401' Expected end of statement /oversigt.asp, line 58 Udskriv rs1 -indholdet her -----------------------^
13. oktober 2004 - 12:01
#30
Jeg vil faktisk foreslaa at fremfor at smide alle ordrer paa en enkelt linje- saa smid dem i en tabel istedet. Paa den maade er du sikret at du ikke laver meget brede sider ved ordre af mange forskellige varer.
13. oktober 2004 - 12:02
#31
lol - ja det er der hvor du selv skal igang med at kode dine response.write's ;-)
13. oktober 2004 - 12:02
#32
den er jeg med på , hvordan gør vi det :-)
13. oktober 2004 - 12:05
#33
puha,.. måske du kan sætte det lidt op for mig.. den fejler helt vildt..
13. oktober 2004 - 12:07
#34
ok jeg er ved at have den..
13. oktober 2004 - 12:13
#35
<% strSQL1 = "SELECT * FROM orders" set rs1 = conn.execute(strsql1) Do Response.write "<table>" Response.write "<tr><td bgcolor='#f1ede7'><b>klub</td><td bgcolor='#f1ede7'><b>Adresse</td><td bgcolor='#f1ede7'><b>Postnr</td><td bgcolor='#f1ede7'><b>Bynavn</td><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Efternavn</td><td bgcolor='#f1ede7'><b>E.mail</td><td bgcolor='#f1ede7'><b>Orderdato</td><td bgcolor='#f1ede7'><b>Total</td><td bgcolor='#f1ede7'><b>antal</td><tr>" Do Response.write "<tr><td bgcolor='#FFF5D7'>" ' Personens navn strNavn = rs1("fFirma") ' lav et link til person.asp med Id-værdien i URL strLink = "<b><a href='faktura.asp?id=" & rs1("orderID") & "'><FONT SIZE='1' COLOR='#000000'>" & strNavn & "</a>" Response.Write strLink Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("address1") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("postalcode") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("city") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("fName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("lName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write "<a href=""mailto:" & rs1("email") & """>" & rs1("email") & "</a>" Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("orderDate") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("Total")& ".00" VAR = VAR + rs1("Total") Response.write "</td></tr>" Response.Write "</table>" strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.qunatity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE orderid = " & rs1("orderid") set rs2 = conn.execute(strsql2) Do Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs2("productname") set rs2 = nothing rs2.movenext Loop while not rs2.EOF rs1.movenext Loop while not rs1.EOF response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" Loop While Not rs.EOF Conn.Close Set Conn = Nothing %> Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] The specified field 'orderid' could refer to more than one table listed in the FROM clause of your SQL statement. /oversigt.asp, line 101 linie 101: set rs2 = conn.execute(strsql2)
13. oktober 2004 - 12:19
#36
ok i slutningen af strsql2: WHERE orderid = " & rs1("orderid") -> WHERE itemsordered = " & rs1("orderid")
13. oktober 2004 - 12:22
#37
strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.qunatity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE itemsordered = " & rs1("orderid") set rs2 = conn.execute(strsql2) samme fejl :-( vi er så tæt på
13. oktober 2004 - 12:23
#38
hov nu laver jeg flere fejl :-) WHERE orderid = " & rs1("orderid") -> WHERE itemsordered.orderid = " & rs1("orderid")
13. oktober 2004 - 12:25
#39
puha: strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.qunatity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE itemsordered.orderid = " & rs1("orderid") samme fejl---
13. oktober 2004 - 12:30
#40
fandt den:-) qunatity fejl... men den tager kun det første produkt med.. ikke de tre næste og laver tilsidst denne fejl: Microsoft VBScript runtime error '800a01a8' Object required /oversigt.asp, line 110 linie 110 = rs2.movenext
13. oktober 2004 - 12:35
#41
ok.....skummelt nu Hvad siger fejlmeddelelsen helt noejagtigt nu? Fuldstaendigt det samme eller hvad?
13. oktober 2004 - 12:36
#42
AARH - den er nem nok :-) Du skal flytte en enkelt linje find linjen der hedder set rs2 = nothing og flyt den ned under Loop while not rs2.EOF
13. oktober 2004 - 12:36
#43
nej den viser det første produkt der er bestilt rigtigt.. men den laver ikke move to next der viser ikke de 3 andre produkter kunden har bestilt.. og skriver så: Microsoft VBScript runtime error '800a01a8' Object required /oversigt.asp, line 110 linie 110 = rs2.movenext
13. oktober 2004 - 13:23
#44
ok der er et andet problem jeg lige lagde maerke til : nasten nederst i koden: Loop While Not rs.EOF -> Loop while Not rs1.EOF Jeg ved ikke om det loeser det....... Har du nogle dim statements laengere oppe i koden Dim rs1 as recordset Dim rs2 as recordset
13. oktober 2004 - 13:25
#45
nej jeg har ikke nogle Dim .. jeg har rettet til rs1 samme fejl :-)(
13. oktober 2004 - 13:27
#46
proev i starten af koden at tilfoeje: Dim rs1 Dim rs2
13. oktober 2004 - 13:27
#47
hvad kan det være ?
13. oktober 2004 - 13:28
#48
<% strSQL1 = "SELECT * FROM orders" Dim rs1 Dim rs2 set rs1 = conn.execute(strsql1) Do Response.write "<table>" Response.write "<tr><td bgcolor='#f1ede7'><b>klub</td><td bgcolor='#f1ede7'><b>Adresse</td><td bgcolor='#f1ede7'><b>Postnr</td><td bgcolor='#f1ede7'><b>Bynavn</td><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Efternavn</td><td bgcolor='#f1ede7'><b>E.mail</td><td bgcolor='#f1ede7'><b>Orderdato</td><td bgcolor='#f1ede7'><b>Total</td><td bgcolor='#f1ede7'><b>antal</td><tr>" Do Response.write "<tr><td bgcolor='#FFF5D7'>" ' Personens navn strNavn = rs1("fFirma") ' lav et link til person.asp med Id-værdien i URL strLink = "<b><a href='faktura.asp?id=" & rs1("orderID") & "'><FONT SIZE='1' COLOR='#000000'>" & strNavn & "</a>" Response.Write strLink Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("address1") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("postalcode") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("city") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("fName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("lName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write "<a href=""mailto:" & rs1("email") & """>" & rs1("email") & "</a>" Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("orderDate") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("Total")& ".00" VAR = VAR + rs1("Total") Response.write "</td></tr>" Response.Write "</table>" strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE itemsordered.orderid = " & rs1("orderid") set rs2 = conn.execute(strsql2) Do Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs2("productname") response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" set rs2 = nothing rs2.movenext Loop while not rs2.EOF rs1.movenext Loop while not rs1.EOF Loop While Not rs1.EOF Conn.Close Set Conn = Nothing %> samme fejl: Microsoft VBScript runtime error '800a01a8' Object required /oversigt.asp, line 111
13. oktober 2004 - 13:34
#49
ok du har ikke flyttet den jeg foreslog i 13/10-2004 12:36:20: <% strSQL1 = "SELECT * FROM orders" Dim rs1 Dim rs2 set rs1 = conn.execute(strsql1) Do Response.write "<table>" Response.write "<tr><td bgcolor='#f1ede7'><b>klub</td><td bgcolor='#f1ede7'><b>Adresse</td><td bgcolor='#f1ede7'><b>Postnr</td><td bgcolor='#f1ede7'><b>Bynavn</td><td bgcolor='#f1ede7'><b>Fornavn</td><td bgcolor='#f1ede7'><b>Efternavn</td><td bgcolor='#f1ede7'><b>E.mail</td><td bgcolor='#f1ede7'><b>Orderdato</td><td bgcolor='#f1ede7'><b>Total</td><td bgcolor='#f1ede7'><b>antal</td><tr>" Do Response.write "<tr><td bgcolor='#FFF5D7'>" ' Personens navn strNavn = rs1("fFirma") ' lav et link til person.asp med Id-værdien i URL strLink = "<b><a href='faktura.asp?id=" & rs1("orderID") & "'><FONT SIZE='1' COLOR='#000000'>" & strNavn & "</a>" Response.Write strLink Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("address1") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("postalcode") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("city") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("fName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("lName") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write "<a href=""mailto:" & rs1("email") & """>" & rs1("email") & "</a>" Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("orderDate") Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs1("Total")& ".00" VAR = VAR + rs1("Total") Response.write "</td></tr>" Response.Write "</table>" strSQL2 = "SELECT orders.orderid, itemsordered.orderid, itemsordered.quantity, itemsordered.productid, products.productid, products.productname FROM orders INNER JOIN (itemsordered INNER JOIN products ON itemsordered.productid = products.productid) ON itemsordered.orderid = orders.orderid WHERE itemsordered.orderid = " & rs1("orderid") set rs2 = conn.execute(strsql2) Do Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs2("productname") response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" rs2.movenext Loop while not rs2.EOF set rs2 = nothing rs1.movenext Loop while not rs1.EOF
13. oktober 2004 - 13:35
#50
hov ogsaa flytte linjen der hedder: response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" Flyt den saa den staar under linjen Loop while not rs2.EOF
13. oktober 2004 - 13:36
#51
øv samme fejl..:-(
13. oktober 2004 - 13:41
#52
he så fjernede jeg lige set rs2 = nothing og så fejler den ikke ?
13. oktober 2004 - 13:43
#53
men det står ikke pænt hvordan kommer det til at stå pænt ? jeg er så ringe til tabeller :-)
13. oktober 2004 - 13:43
#54
ok - det kunne evt vaere et problem med tomme poster, hvor den udskriver alle firmaer i orders, men ikke alle af dem har bestilt noget. .... set rs2 = conn.execute(strsql2) if rs2.eof = false then Do While Not rs2.EOF Response.write "</td><td bgcolor='#FFF5D7'>" Response.write rs2("productname") rs2.movenext Loop set rs2 = nothing response.write "<BR><BR><b>TOTAL OMSÆTNING: " & VAR * 0.8& ".00 ex.moms<BR><BR>" End if
13. oktober 2004 - 14:06
#55
stik lige et svar... jeg har fikset det sidste selv.. :-) og super mange tak for hjælpen
13. oktober 2004 - 14:07
#56
ok alle tider -saa bare glem hvad jeg sagde i 13/10-2004 13:43:55 - men du kan bruge det til at goere scriptet en lille tand hurtigere. TabelProblemet opstaar fordi du afslutter tabellen inden du gaar ind i rs2. Jeg ville nok stille det lidtd anerledes op I toppen af hver tabel har du 2 kolonner, til albels og vaerdier bf.eks Navn : Ole Olsen paa en linje Derunder i ordre-sektionen har du saa 4 kolonner: Ordrenummer, Varenavn, Antal, - og saa smider vi pt en blank kolonne ind til subtotal idet der ikke er priser i products lige nu.. Saa den generelle fremgangsmetode <table width = 500> Hent rs1 indhold her response.write "<tr><td colspan = 2>Firma-Navn:</td>" response.write "<td>" & rs1("ffirma") & "</tr></TR> osv for alle data i rs1 indtil rs2 loopet dukker op Naar du saa gaar ind i rs2 loopet ville jeg lavet det mere som en undertabel <tr><td> Ordrenummer</td><td>Vare</td><td>Antal</td><td>Subtotal</td></tr> og inde i rs2 loopet skriver du saa response.write "<tr><td>" & rs2("Ordreid") & "/td>" response.write "<td>" & rs2("productname") & "</td>" response.write "<td>" & rs2("quantity") & "</td> response.write "<td></td></tr>
13. oktober 2004 - 14:08
#57
ok glad for at det virker - det blev lidt af en omgang - men vi naaede da til en loesning :-)
19. oktober 2004 - 12:35
#58
er du online min ven ?
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser