Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 10-03-2010
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.418
Poder: 24
fjcg02 Va camino a la fama
VAmos avanzando, ahora se compila bien. Observese que he aumentado el tamaño de la variable sentencia.

Pero a la hora de hacer un cambio en la tabla, me dice que no puede convertir a string un valor - no especifica cual - , pero que tiene que ser el propio valor del campo.

Seguimos a la espera.

Código SQL [-]
AS
declare variable WCAMPO varchar(50);
declare variable sentencia varchar(500);
begin
  /* Trigger text */

  FOR SELECT RF.RDB$Field_Name CAMPO  /* Nombre del campo */
      FROM RDB$Relation_Fields RF
      WHERE RF.RDB$Relation_Name = 'TABLA' /* Aqui la tabla del trigger */
      INTO :WCAMPO
  DO
    BEGIN
      WCAMPO= TRIM(WCAMPO);
      sentencia =  'IF (new.'||:WCAMPO ||'IS NOT NULL) THEN '||
       'BEGIN '||
         'IF (OLD.'||:WCAMPO||' <> NEW.'||:WCAMPO||' ) THEN ' ||
           'INSERT INTO AUDITORIA (IDAUDITORIA, FECHA, USUARIO, IDREGISTRO,'||
                                   'TABLA, CAMPO, VALORVIEJO,VALORNUEVO) '||
            'VALUES (GEN_ID(AUDITORIA,1), '||'''NOW'''||', NEW.USUARIOMODIF, NEW.IDPOLIZA,'||
                                 '''POLIZA'','''||:WCAMPO||''', CAST(OLD.'||:WCAMPO||' AS VARCHAR(50)),CAST( NEW.'||:WCAMPO||' AS VARCHAR(50)) ); '||
       'END' ;
    END
    execute statement sentencia;

end
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Sistema de Huellas (Pistas de auditoria) Hagen Firebird e Interbase 3 29-03-2011 13:47:12
Trigger dinámico para Auditoría de Tablas jwmoreira Firebird e Interbase 6 11-03-2010 22:53:07
Realizar auditoria de acciones de usuarios mantrax Seguridad 3 19-10-2007 05:42:33
Un trigger que dispara un procedimiento que dispara un trigger... sitrico Firebird e Interbase 5 04-06-2007 22:05:13
Triggers de auditoria en firebird 1.5 robertoe Firebird e Interbase 1 04-01-2007 04:18:11


La franja horaria es GMT +2. Ahora son las 21:53:41.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi