Foros del Web » Programando para Internet » ASP Clásico »

pasar datos + inner join

Estas en el tema de pasar datos + inner join en el foro de ASP Clásico en Foros del Web. tengo 2 tabals dealers IDTienda = auto NOmbretienda = txt IDProvincia = numero direccion = txt provincias IDprovincia = auto Nombre provincia = txt La ...
  #1 (permalink)  
Antiguo 29/10/2007, 15:26
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 9 meses
Puntos: 1
pasar datos + inner join

tengo 2 tabals

dealers
IDTienda = auto
NOmbretienda = txt
IDProvincia = numero
direccion = txt

provincias
IDprovincia = auto
Nombre provincia = txt

La idea es paginar todas las provincias y despues listra las tiendas de esa provincia

Listo con el archivo provincias.asp

conexion
Código:
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("/cgi-bin/boss_dealers.mdb")&";"
SQL="SELECT * FROM provincias Order By IdProvincia asc "

y listado
Código:
response.write "<td id=odd><A HREF=dealers_provincia.asp?IdProvincia="&rs("IdProvincia") & "><p>"&RS("NombreProvincia")&" "&"</p> "&" </a></td>"
hasta aqui sin problemas

Ahora viene cuando paso los datos

dealers_provincia.asp

Código:
<%
set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("/cgi-bin/boss_dealers.mdb")&";"
SQL="SELECT * FROM dealers INNER JOIN provincias ON dealers.IdProvincia = provincias.IdProvincia WHERE dealers.IdProvincia="&Request.QueryString("IdProvincia")&""
set result = oConn.Execute(sql)
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>


<h2><%=result("dealers.Nombretienda")%></h2>
<P><%=result("dealers.direccion")%></P>
<P><%=result("dealers.provincia")%></P>

</body>
</html>

¿Alguien me puede echar un cable?

me dice
Código:
Tipo de error:
ADODB.Recordset (0x800A0CC1)
No se encontró el elemento en la colección que corresponde con el nombre o el ordinal pedido.

Última edición por tocalasam; 29/10/2007 a las 15:48
  #2 (permalink)  
Antiguo 29/10/2007, 20:08
 
Fecha de Ingreso: agosto-2007
Mensajes: 665
Antigüedad: 17 años, 9 meses
Puntos: 4
Re: pasar datos + inner join

Quiere decir que no existe el campo al cual haces referencia en tu consulta.
__________________
Al que le faltan las ideas le sobran los argumentos
  #3 (permalink)  
Antiguo 29/10/2007, 20:51
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Re: pasar datos + inner join

Solo para complementar, el error se encuentra como ya mencionó rcalle66, en que al recordset no le importa de qué tabla provienen los datos

<%=result("Nombretienda")%>
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #4 (permalink)  
Antiguo 30/10/2007, 10:55
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 9 meses
Puntos: 1
Re: pasar datos + inner join

gracias goldman

he conseguido solventarlo, pero ahora me encuentro con que cunado no hay ningun resultado da error.

Código:
<% While not result.EOF %>

 <center>
  <%=result("NombreTienda")%> <BR>
  <%=result("direcccion")%> <BR>
<center>

<% 
       result.moveNext()
wend %>

¿Sabes como puedo solucionarlo?

Última edición por tocalasam; 30/10/2007 a las 11:01
  #5 (permalink)  
Antiguo 30/10/2007, 11:16
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: pasar datos + inner join

solo antepon un sencillo IF

Cita:
<%
if result.EOF=false then
While not result.EOF
%><center>
<%=result("NombreTienda")%> <BR>
<%=result("direcccion")%> <BR>
<center>
<%result.moveNext()
wend
else
response.write "No se encontro dato"
end if%>
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #6 (permalink)  
Antiguo 30/10/2007, 16:00
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 9 meses
Puntos: 1
Re: pasar datos + inner join

hola sihryu libra

ahora me encuantro igual que antes, donde obtengo resultados, me muestra " no hay distribuidores" , y donde no existen campos para mostrar que deberia decir " no hay resultados me dice"


Código:
ADODB.Field (0x80020009)
El valor de BOF o EOF es True, o el actual registro se eliminó; la operación solicitada requiere un registro actual.
  #7 (permalink)  
Antiguo 31/10/2007, 09:50
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: pasar datos + inner join

habra alguna posibilidad que pongas tu codigo de busqueda completo, al parecer en algun momento de la funcion, se cierra el recordset
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #8 (permalink)  
Antiguo 31/10/2007, 14:46
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 21 años, 9 meses
Puntos: 1
Re: pasar datos + inner join

perdona, aqui te lo facilito

Código:
<%
set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("/cgi-bin/boss_dealers.mdb")&";"
SQL="SELECT * FROM dealers INNER JOIN provincias ON dealers.IdProvincia = provincias.IdProvincia WHERE dealers.IdProvincia="&Request.QueryString("IdProvincia")&" ORDER by Nombretienda asc"
set result = oConn.Execute(sql)
%>


<h2>Distribuidores <%=result("Nombreprovincia")%></h2>

<% While not result.EOF %>

<P><B>
<%
'link para web
	if len(result.fields("web") & "") > 0 then
	Response.Write ("<a href="&result.fields("web")&"  target=_blank>"&result.fields("Nombretienda")&"</a></B>")
	else
	Response.Write (""&result.fields("Nombretienda")&"")
	end if
%>

<BR><%=result("direccion")%> 
(<%=result("poblacion")%> - <%=result("cp")%>)
<BR>Tlfo: <%=result("telefono")%> - <%
'link para email
	if len(result.fields("email") & "") > 0 then
	Response.Write ("<a href=mailto:"&result.fields("email")&"  target=_blank>@mail</a>")
	else
	Response.Write ("")
	end if
%> 

<% 
       result.moveNext()
wend %>
  #9 (permalink)  
Antiguo 31/10/2007, 17:52
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: pasar datos + inner join


podrias verificar esta parte???
Cita:
SQL="SELECT * FROM dealers INNER JOIN provincias ON dealers.IdProvincia = provincias.IdProvincia WHERE dealers.IdProvincia="&Request.QueryString("IdProvi ncia")&" ORDER by Nombretienda asc"
Por esta otra
Cita:
SQL="SELECT * FROM dealers INNER JOIN provincias ON provincias.IdProvincia =(WHERE dealers.IdProvincia="&Request.QueryString("IdProvi ncia")&") ORDER by Nombretienda asc"


NOTA: email, web, poblacion, direccion, telefono, son parte de que tabla???
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:25.