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

No grabar al actualizar

Estas en el tema de No grabar al actualizar en el foro de ASP Clásico en Foros del Web. Wenas: Tengo una página en la q tengo un formulario para introducción de datos. Cuando se hace el submit, se "llama" a si misma y ...
  #1 (permalink)  
Antiguo 24/05/2004, 04:35
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 22 años, 5 meses
Puntos: 1
No grabar al actualizar

Wenas:

Tengo una página en la q tengo un formulario para
introducción de datos.

Cuando se hace el submit, se "llama" a si misma y
dependiendo del valor de un campo del formulario
recibido, ejecuta la inserción de datos.

El problema es cuando después de q el usuario haya
solicitado grabar los datos, si actualiza/refresca, como
el valor de dicho campo de control sigue valiendo lo
mismo, se ejecuta el procedimiento de grabación,
duplicando el registro (se graba en una tabla con un solo
campo indice, de tipo identity).

¿Como se puede/suele solucionar este tipo de situaciones?.

Salu2 y gracias.
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #2 (permalink)  
Antiguo 24/05/2004, 09:55
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Checa antes de grabar que no exista el registro.

saludos
  #3 (permalink)  
Antiguo 24/05/2004, 09:59
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
mmmm, perdón si no me ví explícito. Puedes hacer una llamada "select" con la condición "where" a los registros clave que vas a ingresar. Si el BOF y el EOF son iguales, o si el @rowcont (transacsql), el num. de registros el cero, entonces ejecuta el insert de lo contrario no hagas nada o manda un error de que el registro ya existe.

Saludos
  #4 (permalink)  
Antiguo 24/05/2004, 10:28
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 22 años, 5 meses
Puntos: 1
Gracias MyaKire.

No puedo hacerlo como dices, puesto q en la tabla puede haber registros identicos excepto en el id.

Ya se q te parecerá q no tiene mucho sentido, pero es como tengo el modelo de datos, y en algunos casos tiene su explicación según la aplicación q estoy realizando.

Salu2
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #5 (permalink)  
Antiguo 24/05/2004, 10:31
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Luego de hacer el insert, hacé un response.redirect a la misma página. Así se pierde el valor de dicho campo de control y no te vuelve a insertar el registro.
__________________
...___...
  #6 (permalink)  
Antiguo 26/05/2004, 02:36
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 22 años, 5 meses
Puntos: 1
Dazuaga, con el redirect, me graba dos veces el registro, sin actualizar y sin .....
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #7 (permalink)  
Antiguo 26/05/2004, 15:35
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
solo te pasa eso cuando refrescas la página manualmente? o siempre? aparte... puedes hacer esto, en el formulario grabas la proxima ID q se va a guardar, a la hora de mandar miras si esa ID existe, sino, grabas.. entiendes?
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
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:49.