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

Seleccion y borrado multiple

Estas en el tema de Seleccion y borrado multiple en el foro de ASP Clásico en Foros del Web. Hola. Como podria resolver la siguiente cuestion: Mostrar un listado de registros. Añadir un check box por cada uno de ellos. Con un boton, eliminar ...
  #1 (permalink)  
Antiguo 29/07/2003, 16:25
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 20 años, 11 meses
Puntos: 0
Seleccion y borrado multiple

Hola.

Como podria resolver la siguiente cuestion:

Mostrar un listado de registros.
Añadir un check box por cada uno de ellos.
Con un boton, eliminar los seleccionados.

Tengo la solucion a medias, en el foro de JavaScript me apoyaron con lo necesario para hacer una seleccion multiple en una tabla y evaluarla en una funcion..

Ahora bien, donde estoy perdido es el el borrado..
de que manera indico en mi instruccion sql los registros a eliminar.

1-si tuviera un valor logico al cual tuviera una referencia el checkbox, eso seria simple

la cuestion es que al marcar el checkbox no estoy haciendolo directamente a mi RecordSet (¿o si?)

haber si alguien puede orientarme.. de pronto me perdi un poco

saludos
  #2 (permalink)  
Antiguo 30/07/2003, 03:12
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años, 2 meses
Puntos: 0
Pues una vez que tienes los códigos a borrar sólo tienes que montar la SELECT de borrado

Separa los códigos a borrar por comas y listo

strSQL = "DELETE FROM TuTabla WHERE Codigo IN (" & strDatos & ")"

Ejecutas la sentencia y listo
  #3 (permalink)  
Antiguo 30/07/2003, 08:55
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 20 años, 11 meses
Puntos: 0
si.. exactamente a eso me referia, y creo que en eso es donde estoy un poco confundido.

Hacer una sentencia SQL para borrar un grupo de registros basandonos en el contenido de un campo no es problema.

Yo estoy marcando checkbox... al dar click en el boton de eliminar se ejecuta una rutina que explora el formulario y detecta cual check box esta marcado... lo siguiente seria indicar que quiero borrar ese registro.. pero ahi seria 'uno por uno'

Como estoy apenas entrando a ASP tengo todavia la logica normal que aplicamos a un programa 'local', localmente seria algo tan simple como dar un delete en ese momento para eliminar el registro actual; situacion que por lo que he aprendido en ASP, no es asi..

Creo que no he podido expresar bien en que es en lo que tengo complicaciones...

:(
  #4 (permalink)  
Antiguo 31/07/2003, 02:36
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años, 2 meses
Puntos: 0
Exacto.... lo que debes hacer, es poner todos esos checkbox en un formulario, entonces mandas la información a una página asp en el servidor, comrpuebas que quieres borrar y ejecutas una sola instrucción DELETE, como la que te puse antes.

Un saludo
  #5 (permalink)  
Antiguo 31/07/2003, 08:38
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 20 años, 11 meses
Puntos: 0
YA YA..
que pena.. pero acabo de entender la sentencia SQL
me ha quedado claro como es que me decias que hiciera..

Gracias ...
  #6 (permalink)  
Antiguo 25/08/2003, 08:32
 
Fecha de Ingreso: enero-2002
Ubicación: Monterrey, Nuevo León
Mensajes: 42
Antigüedad: 22 años, 4 meses
Puntos: 0
Hola chicos!

Bueno yo estoy haciendo algo similar y me funciona, la duda que tengo es cómo puedo hacer que el checkbox sea un campo requerido, es decir, si oprimo el botón "eliminar" sin haber seleccionado una casilla me manda un error:

Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing
 operator) in query expression 'consecutivo IN()'.
Como puedo hacer que el usuario no avance sin antes haber seleccionado al menos una casilla?? (algo así como validar que sea un valor requerido).
Saludos!!
Gaby
  #7 (permalink)  
Antiguo 25/08/2003, 09:14
 
Fecha de Ingreso: agosto-2003
Ubicación: Providencia - Santiago
Mensajes: 31
Antigüedad: 20 años, 10 meses
Puntos: 0
Prueba con este script.

<input type="button" value="Continuar" onClick="anyCheck(this.form);">

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function anyCheck(form) {
var total = 0;
var max = form.ckbox.length;
for (var idx = 0; idx < max; idx++) {
if (eval("document.NOMBRE_FORMULARIO.ckbox[" + idx + "].checked") == true) {
total += 1;
}
}
if (total>=4)
alert("Debes seleccionar como maximo 3 accesorios");
else
document.NOMBRE_FORMULARIO.submit()
}
//-->
</script>
__________________
No solo de pan vive el hombre y solo de errores se aprende.
  #8 (permalink)  
Antiguo 25/08/2003, 12:06
 
Fecha de Ingreso: enero-2002
Ubicación: Monterrey, Nuevo León
Mensajes: 42
Antigüedad: 22 años, 4 meses
Puntos: 0
gracias, lo voy a probar y te aviso como me fué....
saludos!
Gaby
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 00:07.