Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Mensajes de de error desde trigger
Message
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Environment versions
Visual FoxPro:
VFP 6 SP5
OS:
Windows XP SP2
Network:
Windows 2003 Server
Miscellaneous
Thread ID:
01138066
Message ID:
01138116
Views:
18
This message has been marked as the solution to the initial question of the thread.
Deberías estar dentro de una transacción del lado del cliente y usar TRY / CATCH y en base al resultado hacer el COMMIT o ROLLBACK correspondiente.
Este es un ejemplo muy simple para capturar el error que dispara el server cuando usas SQL P.T.
n = SQLEXEC(nHandle,"exec miStoreProcedure")
IF n < 0
    AERROR(laErr)
    MESSAGEBOX(laErr[2])
ENDIF
>Salud2 a todo2!!!!
>
>Quisiera por favor solicitar su valiosa ayuda en un problema que estoy teniendo con un sistema que esta desarrollado con "paso a travez de sql" usando una base de datos sybase...cuando se realiza un "insert" o "update" las tablas de sistema tienen Triggers que evaluan ciertas condiciones para que un registro pueda ser insertado o actualizado...
>
>
>en algunos casos se invoca un procedimiento almacenado para actualizar una tabla 'x' y si dicha tabla tiene a su ves un trigger relacionado y este se "disparara" un mensaje correspondiente a la accion que no puede relacionarse...e aqui un ejemplo del codigo de un trigger :
>
>if NOT EXISTS(select 1
>           from   TAFU_CUEN_AHOR_MUNI t1, inserted t2
>           where  t1.CODI_BANC = t2.CODI_BANC
>            and   t1.NUME_CUEN_AHOR = t2.NUME_CUEN_AHOR)
>          begin
>             select @errno  = 30002,
>                    @errmsg = 'No existe referencia en "TAFU_CUEN_AHOR_MUNI". No se creo registro en "TAFU_INGR_CUEN_AHOR".'
>            raiserror @errno @errmsg
>            rollback  transaction
>            RETURN
>          end
>
>
>El problema que tengo es que algunas veces "el mensaje de error" no se muestra en visual foxpro, simplemente aparece un tipo MESSAGEBOX "vacio"....
>y de esta manera el usuario del sistema no puede saber que debe hacer....quita tiempo este asunto ya que hay que tomar el procedimiento + sus parametros y "correrlos" manualmente para entonses ver el mensaje de error.
>
>¿alguna sugerencia, o mejor practica para resolver este problema?
>
>de antemano muchas gracias
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform