PDA

Ver la Versión Completa : Ayuda en el evento OnPostError de un ADOTable


n03l
30-04-2007, 18:26:17
hola tengo el siguiente problema en el evento OnPostError de un ADOTable

if (E is EDatabaseError) then
begin
Action := daAbort;
Showmessage('Codigo Repetido'); //Aqui funciona todo bien
end else
begin
Showmessage('Codigo Cambiado con exito');
end


Cuando el codigo no esta repetido deberia salir Showmessage('Codigo Cambiado con exito'); pero no sale?, claro aqui yo quiero poner otras instrucciones pero para no complicar la explicacion pongo un mensaje

alguien tiene alguna idea que estoy haciendo mal?

salu2

egostar
30-04-2007, 18:35:28
Pues creo que en ese evento siempre te dará el mensaje de error, su nombre lo dice no crees?

.....ON POST ERROR.....

Porque no usas mejor un Try...except.

Salud OS.

n03l
30-04-2007, 18:40:46
okey gracias por responder, boy a probar a ver q tal me va...
salu2.

egostar
30-04-2007, 18:44:03
okey gracias por responder, boy a probar a ver q tal me va...
salu2.

Solo para aclarar algo, no uses el try...except en el evento OnPostError, usalo donde estas realizando el post.

Algo asi:


Try
Post;
Showmessage('Codigo Cambiado con exito');
except
Showmessage('Codigo Repetido');
end;


Salud OS.

Caral
30-04-2007, 18:46:51
Hola
Que puedo decir, eres grande maestro.
Saludos

roman
30-04-2007, 18:52:58
Yo, de hecho, usaría el evento AfterPost para el código que sigue a un post exitoso y OnPostError para los errores. De esta manera controlamos todo independientemente de cómo se hace el post, porque no siempre es explícito, puede hacerse desde un dbgrid, por ejemplo.

// Saludos

Caral
30-04-2007, 18:58:30
Hola
Y yo pregunto, para que?
No se para que tanto esfuerzo, amerita?
No os parece hacer el post y ya, se necesita saber si se hizo o no?
Que yo sepa si no se efectua el post correctamente de echo no sale un mensaje de error?
Saludos

roman
30-04-2007, 19:06:21
Toma en cuenta que lo del mensaje sólo es un ejemplo


claro aqui yo quiero poner otras instrucciones pero para no complicar la explicacion pongo un mensaje


No sabemos realmente cual sea la finalidad que persigue el compañero, pero por algo existe el evento AfterPost: cualquier cosa que deba hacerse después de un post exitoso. El uso de los eventos del dataset tiene como finalidad centralizar el manejo de los datos para no depender de cómo se inician las acciones.

// Saludos

egostar
30-04-2007, 19:06:31
Amigo Caral

Yo creo que un programa mas o menos decente debería de mostrar mensajes de error para actuar en consecuencia, de otra manera se asumiría que todo se hizo correctamente y en su momento los errores nos darían dolores de cabeza.


Que yo sepa si no se efectua el post correctamente de echo no sale un mensaje de error?


Si sale ya que en este caso existe un error de violación de una llave primaria, por lo que nos mostraría un error de Violation......., lo que se debería de hacer es poner un mensaje mas entendible.

Edito: Perdon, Cuando es satisfactorio no manda mensaje pero si podemos indicar que se hizo bien.

Salud OS.

roman
30-04-2007, 19:10:33
No sé, pero creo que Caral se refería a lo contrario de lo que escribió:

Si no hay error, no hay mensaje

Y es en ese sentido mi respuesta anterior. En caso contrario, con mayor razón hay que dejar paso a los mensajes. Aún así, reitero mi opinión de que es mejor hacerlo en los eventos.

// Saludos

egostar
30-04-2007, 19:16:41
No sé, pero creo que Caral se refería a lo contrario de lo que escribió:

Si no hay error, no hay mensaje

Y es en ese sentido mi respuesta anterior. En caso contrario, con mayor razón hay que dejar paso a los mensajes. Aún así, reitero mi opinión de que es mejor hacerlo en los eventos.

// Saludos

Estoy totalmente de acuerdo contgo roman, lo que debemos de estar muy concientes es que en la capa 8 del modelo OSI (usuario final :D ) es donde debemos de poner especial atención, es por eso que los mensajes son muy importantes en ambos sentidos.

Salud OS.

Caral
30-04-2007, 19:18:29
Hola
Sera la costumbre, pero siempre lo hago como dice egostar con Try Except, como en la mayoria de las ocasiones no actualizo una sino varias tablas a la vez me parece un medio bueno para hacerlo, nunca he utilizado los enventos mencionados, pero me parece interesante, aprendo cada dia mas.
Saludos

Caral
30-04-2007, 19:20:30
Hola
capa 8 del modelo OSI
Donde me perdi, como se come esto?:D
Como se nota que no soy programador para no conocer vuestros terminos.:)
Saludos

egostar
30-04-2007, 19:25:18
Hola

Donde me perdi, como se come esto?:D
Como se nota que no soy programador para no conocer vuestros terminos.:)
Saludos

Fue una pequeña broma mi estimado Caral pero si quieres aqui puedes ver que es el modelo OSI (http://es.wikipedia.org/wiki/Modelo_OSI).

Salud OS.

roman
30-04-2007, 19:25:40
Aunque por más que busco, no encuentro la capa 8; debe ser eso que está entre el teclado y la silla :D

// Saludos

n03l
30-04-2007, 19:31:38
Bueno gracias a todos por responder, ya logre lo que queria justo como dijo Roman con el evento AfterPost para no complicame y listo...

nota: yo no quiero poner un mensaje lo que quiero es poner otras instrucciones.




salu2...

Caral
30-04-2007, 19:35:26
Hola
Con todo esto estoy pensando en hacer una subscripcion a Wikipedia por que a cada rato me mandais por ahi.
Y si la capa 8 esta entre el teclado y la silla debe ser mas dificil de estudiar, abra capa 8 , flacas, gordas o robustas, cortas, largas, bueno hui que tarea.:D
Saludos