Igual y si me pueden ayudar

19/12/2005 - 23:52 por bonsweet | Informe spam
Hola...

Tengo una gran pregunta... aunque no se si corresponda a este foro:

Tengo un recordset que me trae los registros de una tabla y los muestro en
la pantalla en una tabla, es decir, muestro registro por registro.

Al lado de cada renglon tengo una imagen en la cual al darle click puedo
borrar ese registro, pero antes manda llamar un JavaScript preguntando si
realmente el usuario quiere eliminar ese registro.

Mi problema es que tambien quiero por medio de otro recordset, checar si
ese renglon que quiero eliminar tiene elementos relacionados, porque si
tiene elementos relacionados entonces no lo debe eliminar y debe enviar un
mensaje diciendo que no se puede eliminar.

Mi codigo en la imagen es el siguiente:

<TD ALIGN="CENTER">
<A HREF="javascript:VerificarBorrado(<%= RSSecciones("PadreId") %>, <%=
RSSecciones("MenuId")%>);">
<img src="../../../img/boton_borrar.gif" border=0 alt="Borrar" WIDTH%
HEIGHT >
</A>
</TD>

El codigo que tengo de Java es el siguiente:

<SCRIPT LANGUAGE="JavaScript">
<!--
function VerificarBorrado(PadreId, menuId){
if (confirm("¿Está seguro de que desea eliminar esta sección?"))
location.href = "menu_accion.asp?accion=b&direc=1&menuId=" + menuId
+ "&PadreId=" + PadreId;
}
//-->
</SCRIPT>

Como ven este Script me envía a otra página que es donde tengo todas las
acciones de altas, modificaciones y bajas. El código que tengo alli es:

If request("accion") = "b" Then
direc = Request("direc")
PadreId = Request("PadreId")
MenuId = Request("menuId")
query = "BusqMenuPortadaPadre " & MenuId
'response.write query
Set RSBusq = Conn.Execute(query)
With RSBusq
If .EOF And .BOF Then
query = "DelMenuPortada " & PadreId & "," & MenuId
Set RS = Conn.Execute(query)
Conn.close
If direc = "1" then
Response.redirect("default.asp?MenuId=" & PadreId)
Conn.Close
End if
Else
If direc = 1 then %>
<script languaje="VBScript">
alert("No puede borrar este elemento porque tiene elementos
relacionados")
</script>
<% Response.redirect("default.asp?MenuId=" & PadreId)
Conn.Close
End if
End If
End with
End If

Como ven el codigo anterior checa si hay registros en el recordset RSBusq
y si no hay borra ese elemento que seleccioné. Pero si el recordset no
está vacío entonces manda un mensaje y redirecciona a la pantalla
principal que es donde están todos los registros.

Hasta aqui es donde llevo y si me respeta que cuando no haya registros
relacionados entonces borre el registro que le pedí que borrara, y si hay
registros relacionados entonces no me lo borra, pero no me manda el
mensaje...

Quiza esta un poco confusa mi pregunta, espero que no y espero que me
puedan ayudar, pues siempre lo han hecho.

Gracias!

Preguntas similare

Leer las respuestas

#1 bonsweet
19/12/2005 - 23:59 | Informe spam
Lo que estaba pensando es que puedo hacer esta validacion con el recordset
RSBusq desde el default.asp (pantalla principal) y no en menu_accion.asp
(archivo donde tengo las acciones de modificar, borrar, etc), pero no se
como hacerlo =S



Esmeralda wrote:

Hola...

Tengo una gran pregunta... aunque no se si corresponda a este foro:

Tengo un recordset que me trae los registros de una tabla y los muestro en
la pantalla en una tabla, es decir, muestro registro por registro.

Al lado de cada renglon tengo una imagen en la cual al darle click puedo
borrar ese registro, pero antes manda llamar un JavaScript preguntando si
realmente el usuario quiere eliminar ese registro.

Mi problema es que tambien quiero por medio de otro recordset, checar si
ese renglon que quiero eliminar tiene elementos relacionados, porque si
tiene elementos relacionados entonces no lo debe eliminar y debe enviar un
mensaje diciendo que no se puede eliminar.

Mi codigo en la imagen es el siguiente:

<TD ALIGN="CENTER">
<A HREF="javascript:VerificarBorrado(<%= RSSecciones("PadreId") %>, <%=
RSSecciones("MenuId")%>);">
<img src="../../../img/boton_borrar.gif" border=0 alt="Borrar" WIDTH%
HEIGHT >
</A>
</TD>

El codigo que tengo de Java es el siguiente:

<SCRIPT LANGUAGE="JavaScript">
<!--
function VerificarBorrado(PadreId, menuId){
if (confirm("¿Está seguro de que desea eliminar esta sección?"))
location.href = "menu_accion.asp?accion=b&direc=1&menuId=" + menuId
+ "&PadreId=" + PadreId;
}
//-->
</SCRIPT>

Como ven este Script me envía a otra página que es donde tengo todas las
acciones de altas, modificaciones y bajas. El código que tengo alli es:

If request("accion") = "b" Then
direc = Request("direc")
PadreId = Request("PadreId")
MenuId = Request("menuId")
query = "BusqMenuPortadaPadre " & MenuId
'response.write query
Set RSBusq = Conn.Execute(query)
With RSBusq
If .EOF And .BOF Then
query = "DelMenuPortada " & PadreId & "," & MenuId
Set RS = Conn.Execute(query)
Conn.close
If direc = "1" then
Response.redirect("default.asp?MenuId=" & PadreId)
Conn.Close
End if
Else
If direc = 1 then %>
<script languaje="VBScript">
alert("No puede borrar este elemento porque tiene elementos
relacionados")
</script>
<% Response.redirect("default.asp?MenuId=" & PadreId)
Conn.Close
End if
End If
End with
End If

Como ven el codigo anterior checa si hay registros en el recordset RSBusq
y si no hay borra ese elemento que seleccioné. Pero si el recordset no
está vacío entonces manda un mensaje y redirecciona a la pantalla
principal que es donde están todos los registros.

Hasta aqui es donde llevo y si me respeta que cuando no haya registros
relacionados entonces borre el registro que le pedí que borrara, y si hay
registros relacionados entonces no me lo borra, pero no me manda el
mensaje...

Quiza esta un poco confusa mi pregunta, espero que no y espero que me
puedan ayudar, pues siempre lo han hecho.

Gracias!
Respuesta Responder a este mensaje
#2 Jose A. Fernandez
20/12/2005 - 00:59 | Informe spam
Esmeralda
A ver si entendi? Consultas en tu base de datos por unos registros que
pueden eliminarlos mediante un boton...
pero algunos registros estan excentos de ser eliminados porque tienen
algunarelacion .. ok?

bueno en la misma consulta anterior.."BusqMenuPortadaPadre "
puedes traeer un campo por ejemplo ELiminarPermitido 0/1 que cuando es
1 puede eliminar

o sea en ves de ir a la base de datos por cada registros en la misma
consulta lo traes a todos los datos

Luego tienes en la misma consulta la columna que verifica si armar o no
el boton de eliminado

Espero que te sirva...
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida