FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Firebird y CURRENT_TIME
Hola, amigos.
A ver si alguien tiene la amabilidad de 'iluminarme' sobre el asunto que planteo a continuación. Trataré de ser sintético. 1.- Módulo de pedidos de una aplicación Delphi ejecutándose desde distintos puestos de red y atacando la misma BD en un servidor. No hay problema con la fecha y hora. Siempre aparecen los datos correctos. En este caso dichos datos se toman de los componentes de pantalla (TJvDBDateEdit y TJvDBDateTimePcker) 2.- Módulo de pedidos de otra aplicación similar, aunque más 'pequeñita', ejecutándose en modo terminal y atacando la misma BD. Aunque no siempre pero sí con relativa frecuencia, la fecha y la hora de una serie de pedidos es la misma. Por ejemplo: fecha 04/02/2024 hora 19:34:12. Esto ocurre en pedidos que esté realizando un mismo usuario o varios. 3.- Pensado que el problema podría venir de los componentes, al hacer INSERT en la tabla puse FECHA = CURRENT_DATE y HORA = CURRENT_TIME. No obstante el resultado no ha cambiado. Según el manual de usuario de Firebird, textualmente pone: CURRENT_DATE returns the current server date. CURRENT_TIME returns the current server time. Entonces, y aquí va la pregunta, ¿cómo es posible que se guarde una fecha y hora concreta en varios pedidos hechos en momentos distintos, ya que es imposible que un usuario introduzca varios pedidos en la misma hora, minuto y segundo. La BD es Firebird 3.0 De antemano, muchas gracias. |
#2
|
||||
|
||||
Imposible responder con certeza si no vemos el código, ni cuándo toma la fecha/hora, si al iniciar un pedido, si al guardarlo, si lo toma algúmn evento del dataset, si lo hace la propia base de datos en un trigger, etc.
Lo ideal es que la fecha/hora se tome automáticamente al guardar el pedido en un trigger en la BD, en el beforeinsert, por ejemplo.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
Gracias Casimiro Notevi por responder.
A ver. No puedo hacer FECHA = CURRENT_DATE y HORA = CURRENT_TIME en un disparador de la BD porque entonces esta asignación se haría siempre que el trigger saltara y, como dije anteriormente, a la BD se accede desde dos aplicaciones distintas. En una los campos FECHA y HORA son establecidos por el usuario y en la otra, no. Por eso lo hago en el componente (TpFIBDataSet) cuando se hace INSERT. Lo extraño es que esto ocurre de forma esporádica, por ejemplo hoy ha funcionado perfectamente, y siempre cuando se trabaja en modo terminal, como puede ser un comercial desde una table. En fin, seguiré machacando. |
#4
|
||||
|
||||
¿Quieres decir que el usuario pone la fecha y hora que le parece?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
Sí, Casimiro.
Los comerciales pasan los pedidos diariamente, pero puede ocurrir que, por circunstancias, esto no sea así, de manera que realizan los pedidos según el orden de fechas en que se los han hecho a ellos los clientes y, para orden interno del servicio, la hora. Es así como funcionan. Por eso es que decía no es posible hacer la asignación FECHA y HORA en un trigger de la tabla correspondiente de la BD. Gracias por tu interés. |
#6
|
||||
|
||||
Pues si se guarda la misma fecha/hora en varios pedidos, y lo lee de un componente en pantalla, es porque no se ha refrescado ese componente y tiene la misma fecha/hora que el pedido anterior.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
|||
|
|||
Pues voy a asegurarme que esto no ocurre.
Gracias otra vez. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Migración Firebird 2.5 a Firebird 4. Error Unknown SQL Data type (32752). | Jose99mir | Firebird e Interbase | 5 | 10-11-2023 11:07:15 |
Correr aplicacion delphi firebird 2.1 en servidor firebird 3 | gmontes | Firebird e Interbase | 5 | 08-06-2020 21:58:53 |
base de datos creada con firebird 2.5 abrirla con firebird anteriores | anubis | Firebird e Interbase | 5 | 20-11-2013 22:35:32 |
Firebird 1.5.3 Error:No puede ejecutarse Firebird Guardian xq ya hay una instancia | Delphius | Firebird e Interbase | 5 | 26-01-2007 11:19:20 |
Problemas Firebird Super Server 1.5 con RFunc Firebird v 1.0 | Prophoenix | Firebird e Interbase | 1 | 09-03-2004 12:40:48 |
|