FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#21
|
|||
|
|||
Como dices los compañeros, lo del formato despliegue lo defines tu.
Mencionas en tu primer post que usas los componentes FIBPlus. Bueno el TpfIBDataset tiene una propiedad 'DefaultFormats' en la cual puedes definir los siguientes formatos de despliegue:
Con esto das solución a el problema al formato de despliegue de datos. Saludos cordiales |
#22
|
|||
|
|||
Perdonad que os moleste de nuevo con este tema. He usado los parámetros como me habéis dicho pero con este código me da el error:
SQL Error code -303 Arithmetic excepcion, numeric overflow or string truncation. El código que uso es:
Cuando voy introduciendo la fecha en el Edit1 en este formato: ej."23.06.202" hasta aqui funciona bien y hace bien la consulta, pero cuando introduzco el último "0" de "año 2020" me da el error. He probado con Cast, Extract y este código es el que mas se aproxima a lo que quiero, sabéis que puede pasar para que me de ese error?? Gracias por anticipado. Última edición por Casimiro Notevi fecha: 07-06-2020 a las 21:19:06. |
#23
|
||||
|
||||
Presta atención al consejo: Sigues sin usar los tipos de datos correctos. Estas mandando como texto un fecha.
__________________
El malabarista. |
#24
|
||||
|
||||
Esto no tiene los tipos adecuados: fechas como fechas, enteros como enteros...
|
#25
|
||||
|
||||
Y agregaria: Deja de usar un control de texto para un campo fecha. Usa uno que no requiera uso de StrToDate, como TDateTimePicker
__________________
El malabarista. |
#26
|
|||
|
|||
Gracias por vuestros consejos y tenéis razón. Sólo deciros que cuando se hacen las grabaciones (append o edit) los campos están definidos correctamente los Date con DateTimePicker y los numericos con FloatEdit etc. Sólo he usado los CampoDate.AsString para filtrar las consultas con el LIKE según va cambiando el Edit de la busqueda caracter a caracter para intentar conseguir que si en el Edit de busqueda tecleo un 2, que me filtre TODOS aquellos registros que en cualquiera de sus campos contengan un "2", si luego tecleo "3", que aparezcan todos los campos que contengan "23", y así sucesivamente hasta acotar al máximo el resultado deseado.
|
#27
|
||||
|
||||
Cita:
Hola Como ya te explicaron los tipo datetime son representados internamente como numeros aunque al visualizarlos tengan el formato de fecha que conocemos. Haciendo una prueba rapida hice esto:
Obteniendo: 43990.6227021528 Si te das cuenta para la fecha 08/06/2020 obtengo este numero con lo cual al querer filtrar mientras este escribiendo la fecha no te va a funcionar; es mas te dara errores por todos lados. Te estas complicando innecesariamente. Las fechas debes filtrarlas cuando ya esten ingresadas completamente. Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar. Antonio Machado |
#28
|
||||
|
||||
Cita:
Es MUY problematico hacer esos brincos de tipos, porque eso afecta todo: El orden, la exactitud, lo correcto de esas operaciones, la velocidad (si esos campos tienen indices al pasar a texto LOS ANULASTE), etc. Mira por ejemplo: "Mentiras que los programadores creen sobre el tiempo": https://infiniteundo.com/post/253269...eve-about-time Con solo los primeros flipas: Cita:
Asi que lo que debes hacer es usar la funcion de fecha correcta, o traducir lo que hace LIKE al pensamiento de fechas. Si lo que quieres es filtrar por ejemplo "dame los registros del mes", entonces debe extraer el año/mes y comparar con año/mes. Para eso consulta la documentacion de la BD. Hay estan las funciones correctas de fecha. P.D: Aunque a nivel informativo te han explicado como internamente estan implementados los tipos de fecha, NO USES FECHAS ASI. Es incorrecto convertir fechas a flotantes* y hacer comparaciones. Es igual de erroneo que usar texto. *Porque hacer comparaciones con flotantes es de los mas flipante/absurdo que hay.
__________________
El malabarista. Última edición por mamcx fecha: 08-06-2020 a las 22:13:36. |
#29
|
||||
|
||||
Cita:
|
#30
|
||||
|
||||
Cita:
Si exactamente Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar. Antonio Machado |
#31
|
||||
|
||||
Cita:
Lo que debes comprender es que aunque uses Asstring para pasar un texto al parametro internamente al procesar la consulta firebird lo hara con el tipo real del campo osea Date, si le pasas "23" no lo podra manejar ya que no es un valor de fecha valido. Debes enviar una fecha completa. Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar. Antonio Machado |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ayuda BD Access? Ayuda al modificar!! | DarkArias | Conexión con bases de datos | 4 | 24-08-2013 23:47:41 |
Instalar Ayuda (.HLP) en la Ayuda de Delphi? | MasterXP | Varios | 6 | 12-04-2006 06:57:49 |
Ayuda para crear ayuda... | Gabriel2 | Varios | 2 | 10-06-2005 00:15:18 |
ayuda con strtofloat, ayuda punto flotante | TURING | Varios | 5 | 30-04-2004 08:03:59 |
Ayuda Con Instalacion De Archivos De Ayuda | Legolas | Varios | 1 | 01-12-2003 14:48:03 |
|