Ir al contenido


Foto

Fecha y Hora al insertar registros


  • Por favor identifícate para responder
8 respuestas en este tema

#1 pjesus

pjesus

    Member

  • Miembros
  • PipPip
  • 13 mensajes

Escrito 04 septiembre 2009 - 12:28

Hola buenas tardes, uso interbase 7, y tengo la necesidad de saber fecha y hora en que se agrego un registro , alguien saber si puedo saber como ver ese dato? La persona que desarrollo el modulo no se tomo el tiempo de agregar un campo en donde guardaria este  dato.Para ser mas especifico, necesito saber la fecha y hora de los registro ya insertados anteriormente,  los nuevos no tengo problema dado que ya le inserte ese campo. El detalle es que unos  auditores me piden fecha y hora de registros insertados hace como 2 años.
Pienso que Interbase tienen bitacoras de update de los registros, pero el detalle  es que no se como accesar  a ellos.


:sad:

Saludos..
Grx..

  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 04 septiembre 2009 - 12:33

Hola buenas tardes, uso interbase 7, y tengo la necesidad de saber fecha y hora en que se agrego un registro , alguien saber si puedo saber como ver ese dato? La perdona que desarrollo el modulo no se tomo el tiempo de agregar un campo en donde guardaria este  dato.
:sad:

Saludos..
Grx..



Se me ocurre que puedes modificar la tabla y agregar un campo llamado FecUltAct, cuyo valor por default sea la hora y fecha actual. además podrí­as agregar un disparador que después de cada update modifique ese campo.

saludos,
  • 0

#3 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 04 septiembre 2009 - 12:37

Hola pjesus, Bienvenido a DelphiAcess.

Coincido con Poliburro, puedes modificar la tabla y agrarle dicho campo. En lo que no coincido con Poli, es en trigger... creo que deberí­a un after insert ;).

Si necesitas ayuda en estos puntos, nos dices y ves como te vamos asesorando.

Saludos,
  • 0

#4 pjesus

pjesus

    Member

  • Miembros
  • PipPip
  • 13 mensajes

Escrito 07 septiembre 2009 - 09:12

Muchas  Gracias...
La parte que quiero saber es de los registros  anteriore (o ya insertados), dado que tengo auditorias, y me piden que es de fecha y hora de resgistros insertados  hace mas de 1 año.... 
:(

saludos..

grx..
:$$$:
  • 0

#5 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 07 septiembre 2009 - 09:15

Muchas  Gracias...
La parte que quiero saber es de los registros  anteriore (o ya insertados), dado que tengo auditorias, y me piden que es de fecha y hora de resgistros insertados  hace mas de 1 año.... 
:(

saludos..

grx..
:$$$:


:s :s, Pues así­ si no, es imposible. ES bueno que a partir de ahora incluir esos campos en la BD para futuras auditorí­as ;).

Saludos.
  • 0

#6 Al González

Al González

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 99 mensajes

Escrito 08 septiembre 2009 - 09:32

Desconozco qué motores llevan registro automático de la fecha y hora en que se guardan cada uno de los registros.

En Firebird empleo una solución como las sugerida por Edgar.  En todas mis tablas tengo este par de campos:

    USUARIOMODIFICACION      VARCHAR(31) NOT NULL
    FECHAMODIFICACION        TIMESTAMP NOT NULL

Y los lleno con un disparador Before Insert-Update como este:


sql
  1. CREATE TRIGGER TGBIUCONTRATOUSUARIOM FOR CONTRATO
  2. ACTIVE BEFORE INSERT OR UPDATE POSITION 0
  3. AS
  4. BEGIN
  5.   NEW.UsuarioModificacion = CURRENT_USER;
  6.   NEW.FechaModificacion  = CURRENT_TIMESTAMP;
  7. END



Para determinar la fecha de los registros que ya están en tu actual base de datos, creo que tendrás que consultar los campos que te indiquen algo al respecto, como algunos campos de tipo fecha y otros que guarden información que te dé una idea aproximada de cuándo ocurrió la alta de esos registros.  El análisis será un tanto manual.

Espero haber ayudado.

Un saludo.

Al González. :)
  • 0

#7 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 08 septiembre 2009 - 09:50

¡Hola!

Sin contar con registros de fechas difí­cil será determinar una auditorí­a. Cuanto mucho se podrí­a llegar a cruzar información de tablas (serí­a extraño que al menos alguna tabla no tuviera un campo con fechas). De todas formas el proceso será bastante manual.
La última opción, es irse por lo rudimentario: revisar toda documentación en papel que tengas y la que pueda rastrearse las fechas de los ejercicios.

Al, inicialmente estaba por preguntarte si es deseable que el campo USUARIOMODIFICACION sea de tipo VARCHAR. Luego leí­ el trigger y me percaté de la variable CURRENT_USER... Por poco y me como un chascarillo :D.

Yo vení­a elaborando la idea de que el campo debe ser numérico, siendo clave foránea hacia la clave primaria de una hipotética tabla USUARIOS. ;)

Saludos,
  • 0

#8 Chris

Chris

    Member

  • Miembros
  • PipPip
  • 36 mensajes
  • LocationJinotepe

Escrito 08 septiembre 2009 - 10:21

Sino lo hices antes, pues ya queda poco por hacer. Ahora hay que pensar en futuro. Esto es lo que yo hago. Agrego cuatro campos así­:



sql
  1. CREADO_FECHA TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  2. CREADO_POR VARCHAR(64) DEFAULT CURRENT_USER,
  3. MODIFICADO_FECHA TIMESTAMP,
  4. MODIFICADO_POR VARCHAR(64),
  5. ....



En el caso de los dos primeros campos (CREADO_FECHA y CREADO_POR) no necesitarí­an triggers (disparadores) pues automáticamente obtienen su valor cuando se crea el registro. Los otro dos sí­. Pero asignarles el valor a los campos con los disparadores puede tener sus ciertas ventajas.

saludos.
  • 0

#9 pjesus

pjesus

    Member

  • Miembros
  • PipPip
  • 13 mensajes

Escrito 08 septiembre 2009 - 02:36

Perfecto  mil gracias por  sus respuestas, si  hice un cruce de fechas y con ello  saque la mayoria de las dudas que tenian la gente de la auditoria,  ya les deje  un 25% de que analicen a patin la informacion..

gracias por  su apoyo  y su valioso  tiempo..  espero  en poco  yo poder  ayudarlos  a resolver  su  dudas...

:cheesy:
  • 0




IP.Board spam blocked by CleanTalk.