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

Pequeño Gran Problema (parte 1)

Estas en el tema de Pequeño Gran Problema (parte 1) en el foro de ASP Clásico en Foros del Web. Tengo el siguiente codigo generico: Sql1 = “Select (dos subrubros principales)” RS1 del SQL1 Do while not RS1.eof (2 repeticiones) if (session("mostrarchksub") = 0) then ...
  #1 (permalink)  
Antiguo 27/06/2002, 22:57
 
Fecha de Ingreso: abril-2002
Mensajes: 34
Antigüedad: 22 años, 2 meses
Puntos: 0
Pequeño Gran Problema (parte 1)

Tengo el siguiente codigo generico:

Sql1 = “Select (dos subrubros principales)”
RS1 del SQL1
Do while not RS1.eof (2 repeticiones)
if (session("mostrarchksub") = 0) then
Check1 (dos checks generados dinámicamente según los subrubros, con los campos nombres = a los subrubros)
End if
i = i + 1
Elec(i) = request.form(check1)
If ((elec(i) <> “”) and (session(“enviar”) > 1)) then
Sql2 = “Select (marcas de acuerdo a los rubros elegidos)”
RS2 del SQL2
Do while not RS2.eof
If (session(“enviar”) < 2) then
Check2, name = i, value = RS2(“IdentMarcaDelSubrubro”) (varios checks generados dinámicamente según las marcas de los subrubros elegidos)
End if
RS2.Movenext
Loop
Marc1 = request.form(i) // “i” es el nombre del array Check2. Por ejemplo si hay 3 marcas del subrubro 1, y 2 marcas del subrubro 2, enconces se me generarian 5 checkboxes, 3 para un subrubro, y 2 para el otro. Los campos name y value serian asi: name=1, value = 1,2,3 y name=2, value = 1,2
If (marc1<>””) and session(“enviar”) > 1) then
SQL3 = “Select (Subrubro = i, campo marca in (“marc1”)” // con este Select, yo elijo las marcas de acuerdo a lo que está en el array marc1, que contiene las marcas elegidas en el array de checkboxes previo”
RS3 del SQL3
Do while not RS3.eof
Response.write (subrubros, y debajo cada una las marcas elegidas)
RS3.Movenext
Loop
End if
End if
RS1.Movenext
Loop
Session(“enviar”) = Session(“enviar”) + 1
session("mostrarchksub") = 1

La explicacion en Parte 2
  #2 (permalink)  
Antiguo 27/06/2002, 23:20
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 8 meses
Puntos: 3
Re: Pequeño Gran Problema (parte 1)

<juntando explicación para entender mejor>

Entonces, el problema es el siguiente. Si yo elijo los 2 subrubros, cuando presiono Enviar, me aparecen las 3 marcas del primer subrubro, y las 2 marcas del segundo subrubro. Luego, en ese estado, puedo hacer cualquier selección de cualquier marca de cualquiera de los 2 subrubros, y no hay ningún inconveniente en el resultado impreso. El problema surge cuando elijo no todos los subrubros, sino solo algunos (o al menos eso sospecho, dado que tengo solo 2 subrubros). Por ejemplo, si solo selecciono el primer subrubro, y luego presiono Enviar, paso luego a elegir las marcas de ese subrubro en particular. Pero cuando vuelvo a presionar Enviar, elija 1 o varias o todas las marcas de ese unico subrubro elegido, me genera un error en el SQL3, que dice lo siguiente:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][Controlador ODBC Microsoft Access] Pocos parámetros. Se esperaba 1.

Sospecho que este error se relaciona con que entra un parámetro vacío (marc1). Session("enviar") entra como 0 al formulario, y luego se autoincrementa. ¿Puede ser que esté entrando un parámetro vacío o nulo en el SQL3, posiblemente marc1?
Si es asi, ¿que posible solucion puedo tener? Espero puedan ayudarme, porque ya me estoy volviendo medio loco con este problema. Un afectuoso saludo.

</juntando explicación para entender mejor>
  #3 (permalink)  
Antiguo 29/06/2002, 14:09
 
Fecha de Ingreso: abril-2002
Mensajes: 34
Antigüedad: 22 años, 2 meses
Puntos: 0
Re: Pequeño Gran Problema (parte 1)

Por favor denme una manito con esto porque ya no le puedo encontrar la vuelta, probe cambiando media docenas de cosas, incluso poniendo el SQL3 y toda esa instruccion de decision IF en otro bucle fuera del Do While RS1.EOF, que es el bucle mas grande que se recorre 2 veces... pero nada, sigue apareciendo el mismo error. Toda esta sentencia IF la puse debajo de este ultimo DO While, con un bucle FOR que se recorre de acuerdo a la cantidad de subrubros que elegi en pasos previos... pero es el mismo problema... ¿Que solucion puedo encontrarle?
Un saludo a todos y gracias anticipadas
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 23:55.