![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
TIBquery y campos persistentes en tiempo de ejecucion
Hola, este tema no se si deberia estar aca, pero tiene que ver con una consulta y campos persistentes (o al menos creo que se llaman asi).
Tengo una aplicación que utiliza TIBQuery para cunsultar a una BD Firebird. En tiempo de diseño he creado algunos campos persistentes (propios de la query en cuestion "Fields Editor"). La aplicacion puede consultar a 2 BD distintas, lo cual se selecciona con un radiobutton. En el evento OnClick del radiobutton tengo el siguiente codigo.
Esto funciona perfecto, el problema es que los campos persistentes definidos en tiempo de diseño no se asignan al query creado nuevamente, a pesar que tiene el mismmo nombre. Algun de estos son IBQuery2SUBTOTAL, IBQuery2CANTIDAD, etc. La idea des esto es poder darle un formato "lindo" al campo en cuestión, lo que defino en diseño así:
Como puedo resolver esto? Existe alguna forma de asignar los campos persistentes, después de volver a crear al query. Nota: Anteriormente solo cambiaba la BD del query despues de cerrarla, pero al volver abrirla me arrojaba un error, por eso decidí destruir el componente y volver a crearlo. Espero me puedan ayudar. |
|
#2
|
|||
|
|||
|
Hola...
Tendrías que crear de nuevo los campos un tiempo de ejecución. Para hacer lo que deseas, puedes hacerlo en tiempo de ejecución (sin crear los campos persistente en tiempo de diseño), más o menos así:
Saludos... |
|
#3
|
|||
|
|||
|
No hay caso, no logro resolver esto.
Una cosa que me percaté es que al destruir el query, no se destruyen los campos persistentes. Una idea... podré volver asignar esos campos al query nuevo creado en ejecución? como lo hago? Ayuda porfa. |
|
#4
|
|||
|
|||
|
Hola...
¿Leiste las recomendaciones que te hice? Saludos... |
|
#5
|
|||
|
|||
|
claro que si, pero no logro que esto funcione.
Recuerda que en el evento onclick del radiobutton, destruyo el query. En ese mismo evento destruyo los campos persistentes y vuelvo a crearlos con las propiedades correctas, sin embargo, me arroja un error que no concuerda el tipo de dato... espera BCD y es wildstring, en un campo de varchar de 200.
Además tengo que hacerlo con cada campo, y son varios... tiene que existir una mejor forma de hacerlo. |
|
#6
|
|||
|
|||
|
Hola...
Leyendo mejor tu duda, veo que estás haciendo mal algunas cosas. Primero, veo que destruyes el objeto ibquery2 y creas un nuevo objeto y lo asignas a la variable ibquery al cual le pones como nombre 'ibquery2'. Esto no significa que automáticamente los campos persistentes van a reconocer el nuevo objeto como padre. Y todo esto sin contar con el detalle de los tipos de campos. Para lograr lo que deseas, podrías hacer algo como:
Si las tablas son exactamente iguales en ambas bases de datos, no deberías tener problemas. Ahora, esto nunca lo he hecho así y el código que te pongo no lo he probado. Saludos... |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Creando campos en tiempo de ejecucion | edgwin | Conexión con bases de datos | 7 | 31-03-2009 18:08:14 |
| Creación de campos en tiempo de ejecución | fjcg02 | OOP | 5 | 27-08-2008 08:05:35 |
| Problema con DBGRiD y campos en Tiempo de ejecución | EITB | OOP | 0 | 14-10-2004 17:59:17 |
| Añadir campos persistentes en tiempo ejecucion | Firibiri | Conexión con bases de datos | 3 | 22-12-2003 11:43:08 |
| Agregando campos en tiempo de ejecucion | Markoz | Firebird e Interbase | 3 | 31-10-2003 02:32:23 |
|