Ayuda en Como registrar Auditorias de Ciertas tablas (Usar Trigger o No?)

09/02/2006 - 17:01 por Developers | Informe spam
Amigos, necesito que por favor me orienten en este problema que tengo.
Haber.
Tengo esta estructura de Tabla llamado DetalleAlmacen.
Tabla DetalleAlmacen
Fec_Mov Datetime
Alm_Mov Char(2)
Doc_Mov Char(10)
Cod_Prod Char(8)
Cant_Mov Decimal(10,4)
y.. Otros campos adicionales

Data de ejemplo:
Fec_Mov Alm_Mov Doc_Mov Cod_Prod Cant_Mov
15/01/2005 02 001-12345 1111111 10
15/01/2005 02 005-85742 4545454 5
13/01/2005 10 001-41154 7454545 100
25/01/2005 02 001-17884 5457861 59

Necesito tener otra tabla parecida a la estructura anterior pero para
efectos de auditoria, es decir con esta estructura
Tabla DetalleAlmacenAud
Fec_Mov Datetime
Alm_Mov Char(2)
Doc_Mov Char(10)
Cod_Prod Char(8)
Cant_mov Decimal(10,4)
Fec_Oper Datetime
Tipo_Oper Char(1)
Usuario Char(10)

los Campos siguientes tendrian :
Fec_Oper = Dia que realizo la Transacción
Tipo_Oper= Tipo de Operacion Realizada ((I)nsert,(D)elete,(U)pdate,(R)ecuperacion)

Su data de esta tabla tendria asi:
Data de ejemplo:
Fec_Mov Alm_Mov Doc_Mov Cod_Prod Cant_Mov Fec_Oper Tipo_Oper
15/01/2005 02 001-12345 1111111 5 15/01/2005 I
15/01/2005 02 001-12345 1111111 10 18/01/2005 U
15/01/2005 02 005-85742 4545454 5 15/01/2005 I
13/01/2005 10 001-41154 7454545 20 13/01/2005 I
13/01/2005 10 001-41154 7454545 100 20/01/2005 U
25/01/2005 02 001-17884 5457861 59 25/01/2005 I

Esta data es mas detallada que la Data Original porque contiene todas las operaciones
realizadas con los documentos(Especie de Historial)

Entonces mi duda es Si usar Trigger (Insert,Delete,Update) para realizar esta tarea
o Programarlo manualmente mediante Store Procedure


Gracias

Developers - Dany Acosta

Preguntas similare

Leer las respuestas

#6 Alfredo Novoa
10/02/2006 - 11:12 | Informe spam
On Thu, 09 Feb 2006 14:02:40 -0500, Developers
wrote:

Pero de esta manera se tendria que ver cual fue la ultima modificacion hecha al documento



Claro. En la select del datatable tienes que poner: where
fec_oper=select max(fec_oper) ...


Saludos
Alfredo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida