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

On error resume next qué hace exactamente?

Estas en el tema de On error resume next qué hace exactamente? en el foro de ASP Clásico en Foros del Web. Buenas, se me ha presentado el siguiente caso: tabla productos con codigos para cada producto, aparte de usar un id autoincrementable, uso un sistema "randomize" ...
  #1 (permalink)  
Antiguo 26/07/2010, 17:55
Avatar de Julcar  
Fecha de Ingreso: noviembre-2007
Ubicación: C:\inetpub\wwwroot\Guayaquil
Mensajes: 1.507
Antigüedad: 16 años, 6 meses
Puntos: 54
On error resume next qué hace exactamente?

Buenas, se me ha presentado el siguiente caso:

tabla productos con codigos para cada producto, aparte de usar un id autoincrementable, uso un sistema "randomize" para crear un codigo unico para cada producto en la estanteria.

Ese codigo de momento es de 6 letras y siempre que se crea uno no se suelta a menos que eliminen ese producto.

El tema es que por el azar que determina randomize() supongamos que realiza el mismo random dos veces daría error ovbiamente

ahora, pense que la forma correcta de evitar este comportamiento es un condicional que compruebe que el codigo no ha sido creado, pero eso es algo trabajoso tanto para el programador (yo) como para el servidor.

Estaba pensando que la sentencia On Error Resume Next sería la solución pues segun a mi parecer si se crea error por duplicado (en la base de datos tengo como indice sin duplicados) volveria a ejecutar la funcion y trataria de conseguir otro código las veces que sean necesarias hasta que encuentre uno sin usar.

Pero como no soy experto en el error handling, me gustaria que me expliquen si lo que digo es posible y además cómo en este caso trabajaria esa sentencia

saludos
__________________
Linux no es el único S.O. libre, conoce a ReactOS el Windows Libre!
"Si mis respuestas te dan la calma, espárceme un poco de karma"
  #2 (permalink)  
Antiguo 26/07/2010, 22:00
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Respuesta: On error resume next qué hace exactamente?

Creo que la forma correcta de proceder es la que vos mismo pensaste que es la correcta, por más laborioso que te parezca (vamos, no es tanto!!!)
__________________
...___...
  #3 (permalink)  
Antiguo 26/07/2010, 22:17
Avatar de Julcar  
Fecha de Ingreso: noviembre-2007
Ubicación: C:\inetpub\wwwroot\Guayaquil
Mensajes: 1.507
Antigüedad: 16 años, 6 meses
Puntos: 54
Respuesta: On error resume next qué hace exactamente?

a ver, veamos si estoy en lo cierto:

Código ASP:
Ver original
  1. codigo = Crearcode(5)
  2.     On Error Resume Next
  3.     sql = "Insert Into bla bla bla"

si el adodb diera error automaticamente volveria a ejecutar codigo = Crearcode(5) ?
gracias A.Z
__________________
Linux no es el único S.O. libre, conoce a ReactOS el Windows Libre!
"Si mis respuestas te dan la calma, espárceme un poco de karma"
  #4 (permalink)  
Antiguo 26/07/2010, 22:26
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Respuesta: On error resume next qué hace exactamente?

"CREO" que no. Digo que creo porque no soy amigo del on error y por tanto no me puse a investigar mucho al respecto. Para mi es así:

si hay un error en lo precedente, sigamos igual con el resto TAL CUAL ESTÁ EN EL FLUJO

Para mi, y reitero el para mi, no te sirve de nada (al menos en esta situación).
__________________
...___...
  #5 (permalink)  
Antiguo 26/07/2010, 22:31
Avatar de Julcar  
Fecha de Ingreso: noviembre-2007
Ubicación: C:\inetpub\wwwroot\Guayaquil
Mensajes: 1.507
Antigüedad: 16 años, 6 meses
Puntos: 54
Respuesta: On error resume next qué hace exactamente?

Cita:
Iniciado por AlZuwaga Ver Mensaje
"CREO" que no. Digo que creo porque no soy amigo del on error y por tanto no me puse a investigar mucho al respecto. Para mi es así:

si hay un error en lo precedente, sigamos igual con el resto TAL CUAL ESTÁ EN EL FLUJO

Para mi, y reitero el para mi, no te sirve de nada (al menos en esta situación).
Entonces qué solucion te piensas para que funcione segun el propósito que cité antes?

En resumidas cuentas, necesito que se ejecute de nuevo la funcion crearcode(5)
__________________
Linux no es el único S.O. libre, conoce a ReactOS el Windows Libre!
"Si mis respuestas te dan la calma, espárceme un poco de karma"
  #6 (permalink)  
Antiguo 26/07/2010, 22:39
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Respuesta: On error resume next qué hace exactamente?

Verificar si ya existe en la tabla. Si no existe, procedés. Si ya existe volvés a llamar a Crearcode(5)
__________________
...___...
  #7 (permalink)  
Antiguo 26/07/2010, 22:41
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Respuesta: On error resume next qué hace exactamente?

Ahora... Crearcode()... ¿ella misma, no puede verificar si ya existe el código, en la tabla, que ella misma genera?
__________________
...___...
  #8 (permalink)  
Antiguo 26/07/2010, 22:48
Avatar de Julcar  
Fecha de Ingreso: noviembre-2007
Ubicación: C:\inetpub\wwwroot\Guayaquil
Mensajes: 1.507
Antigüedad: 16 años, 6 meses
Puntos: 54
Respuesta: On error resume next qué hace exactamente?

Cita:
Iniciado por AlZuwaga Ver Mensaje
Ahora... Crearcode()... ¿ella misma, no puede verificar si ya existe el código, en la tabla, que ella misma genera?
a ver, no crearcode() simplemente bota un codigo escogido al azar y con ese codigo hago el insert into, como decias la condicional ya la habia pensado, pero es que sabes que un poquito de trabajo menos no viene mal, pero veo que tendré que hacerlo de todos modos.

muchas gracias.
__________________
Linux no es el único S.O. libre, conoce a ReactOS el Windows Libre!
"Si mis respuestas te dan la calma, espárceme un poco de karma"
  #9 (permalink)  
Antiguo 26/07/2010, 23:08
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Respuesta: On error resume next qué hace exactamente?

Es que ese "trabajo que tendrás que hacer de todos modos" te hubiese llevado menos tiempo si lo hacías de entrada. Está bien buscar otras alternativas, por supuesto, pero creo que el manejo controlado de errores es preferible a un "si hay error sigamos. después vemos que hacemos con él... independientemente que ello nos genere otro error que si o si debamos controlar luego"
__________________
...___...
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 22:18.