![]() |
Crear campo calculado en tiempo de ejecucion-Ibquery
Saludos amigos...
El problema es el siguiente. Tengo almacenado en un campo de base de datos un SQL que luedo es cargado a un Ibquery para ser usado como fuente de datos para un reporte. Dependiendo de un parametro que uso en la tabla que almacena el SQL necesito crear dos campos calculados informacion que es traida desde otras bases de datos. he esdo buscando pero no encuentro la forma de hacerlo. Me pueden ayudar ???...muchas garcias.:D |
Sinceramente en lo personal no entendi muy bien el asunto, ¿Podrias ponerlo mas claro?
|
Gracias por contestar.
la idea es que al crear un sql en tiempo de ejecucion y se le asigna a un Ibquery. Los campos del sql pueden variar, pero necesito poner dos campos calculados sobre el Ibquery tambien en tiempo de ejecucion. Gracias. |
Para crear un campo calculado en ejecución en un DataSet, puedes hacer lo siguiente... donde DataSet1 es tu Dataset...
|
Gracias....
Tu solucion me funciono, y crea el campo calculado pero si tengo cargados todos los campos del query, como son querys que se crean en tiempo de ejecucion tendria que cargar los campos en tiempo de ejecucion...como puedo hacer esta parte ?? y de nuevo gracias por tu ayuda. |
Pues al abrir la consulta tu TQuery cargara todos esos campos automaticamente... en el orden de ideas sera despues de esto cuando puedes crear el campo calculado.
|
Perdonad que reabra esta consulta,
Exactamente donde se crea el campo calculado, en el evento oncalcfields del query?. Antes lo hacia directamente en el query en tiempo de diseño, era mas facil desde el mismo query pero por codigo se me complica. Perdon yo uso los componentes zeos pero imagino que es lo mismo. |
Lo crea donde quieras.
Se calcula en el oncalcfields |
gracias por contestar,
si aplico la creacion de un campocalculado como esta arriba, y llamo al procedimiento, antes claro de activar el dataset, el resto de campos del query me da error porque no los encuentra. Quiere decir que tengo que cargar cada campo entonces?. de todas formas haciendolo:
me da error que el nombreproducto no existe en el query |
Perdon,
Efectivamente, si creo por codigo un calculado, tengo que cargar todos los campos del query primero. Y, ya puestos. Si tengo el codigo de un producto por ejemplo en un query y lo quiero mostrar en otro dbgrid pero por el nombre, tambien es un campo calculado no?. |
Un campo calculado es, por ejemplo, si tienes los campos "cantidad" y "precio" y quieres presentar el resultado de multiplicar ambos. Es un campo que no existe en la base de datos.
|
sí perdón me lie solo. el enlace de un query con otro es meter un campo calculado para poder usarlo en dbgrid
|
Como no puedo editar, me respondo, para enlazar dos querys he creado un campo fklookup
nombres es el campo de busqueda, id_producto en el keyfields es el campo con el que se relaciona compras con productos id_producto en el lookupkeyfields es el campo primary key donde busca en productos nombreproducto es el resultante. para poder ver el nombre del producto en vez del id_producto en el dbgrid, asignamos el campo nombres. No se si a alguien le ayude esto, pero lo comparto por si sirve. Gracias a todos por vuestra ayuda. |
La franja horaria es GMT +2. Ahora son las 02:14:11. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi