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

Conexiones dentro de un bucle

Estas en el tema de Conexiones dentro de un bucle en el foro de ASP Clásico en Foros del Web. Esto creando una aplicacion donde tengo una serie de elementos, cada elemento tiene varios tipos, supongamos elemento 1: elemeto1.1 elemento2.2 elemento3.3 elemento 2: elemento 2.1 ...
  #1 (permalink)  
Antiguo 14/11/2002, 13:23
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
Conexiones dentro de un bucle

Esto creando una aplicacion donde tengo una serie de elementos, cada elemento tiene varios tipos, supongamos

elemento 1:
elemeto1.1
elemento2.2
elemento3.3

elemento 2:
elemento 2.1
elemento2.2

no tienen el mismo numero de elementos y en mi bd los coloque asi tabla elemento y tabla elementossub.

cuando realizao mi consulta necesito que me quede asi:
elemento 1:
elemeto1.1
elemento2.2
elemento3.3

elemento 2:
elemento 2.1
elemento2.2

por lo que cree un bucle donde me muestra los elementos y dentro de ese bucle otro donde me muestre los subelementos, la conexion a la tabla de elementossub la estoy colocando dentro del bucle.

mi pregunta es si hay otra forma de hacerlo o esta es la unica?

es esta forma eficiente?? es decir , ocupa demasiados recursos del sistema?
  #2 (permalink)  
Antiguo 14/11/2002, 13:33
Avatar de GhostRider  
Fecha de Ingreso: julio-2001
Ubicación: en mi propio infierno
Mensajes: 248
Antigüedad: 23 años, 9 meses
Puntos: 0
justo lo estoy haciendo tambien ahora por priemera vez, solo que yo puse el set de la conexión fuera del bucle y adentro solo cierro la conexión, pongo el SQL y la abro de nuevo, y mu funciona bien.

Este es mas o menos el código:

al principio de la pagina:

Set Schedules= Server.CreateObject("ADODB.Recordset")
Schedules.ActiveConnection = MM_MBClientes_STRING
Schedules.Source = "SELECT * FROM Schedules"
Schedules.CursorType = 0
Schedules.CursorLocation = 2
Schedules.LockType = 1
Schedules.Open()

y dentro del bucle:

while Repeat_numberofrows bla bla (hecho con macromedia)

una tabla con los datos principales de otro recorset

if lastorder2 <> orderini2 then
Schedules.Close()
Schedules.source = "Select * from schedules where idPedido = " & (simplot.fields.item("idPedido").value) & "" (aqui selecciono el registro necesario dependiendo del renglon del primer recordset)
Schedules.CursorType = 0
Schedules.CursorLocation = 2
Schedules.LockType = 1
Schedules.Open()
%>

<% if not Schedules.EOF then %>

aqui pongo una tabla con los resultados

<%else%>

la misma tabla pero vacía

<%end if %>

Wend
  #3 (permalink)  
Antiguo 14/11/2002, 13:50
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
Si yo hize algo por el estilo, lo que pasa es que no estoy seguro si sea la mejor forma, bueno apenas yengas tu ejemplo montado pasame la direccion para verlo funcionando yo voy a montar el mio dentro de poco para ver como se comporta en linea
  #4 (permalink)  
Antiguo 14/11/2002, 13:52
Avatar de GhostRider  
Fecha de Ingreso: julio-2001
Ubicación: en mi propio infierno
Mensajes: 248
Antigüedad: 23 años, 9 meses
Puntos: 0
lo acabo de montar y aunque solo tengo un par de registros de ejemplo en la base de datos, esta funcionando aparentemente bien, desgraciadamente no te lo puedo mostrar porque es parte de una intranet protegida con contraseña. Supongo que mi cliente lo va a probar esta misma semana, cargando la base de datos, cualquier error que encuentre lo comentamos aqui (espero que no)
  #5 (permalink)  
Antiguo 14/11/2002, 15:05
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
Lo que estoy haciendo es para un carrito de compras donde el producto tiene varios tamaños, creo que para el mes que viene ya debe estar montado, por los momentos no me arroja ningun erro, solo uno cuando agregaba un producto pero es por el adio button que ninguno estaba preseleccionado, a parte de eso funciona perfecto.

Me comentas cualquier cosa que necesites
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 18:21.