FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Utilizar plantillas Excel...
Hola, tengo una duda con algo que tengo en mente voy a explicaros a ver si alguno le veis solucion....
Por un lado quiero tener un archivo de excel con ciertas celdas que deben ser rellenadas automaticamente con los datos de una base de datos (utilizo firebird) la idea es poner en las celdas que quiera algun dato algo como "CAMPOAuto.Logica.TClientes.Empresa.AsString" esto lo pondria dentro de una celda de excel, despues abriria ese fichero con delphi recorreria x filas y x columnas mirando si el contenido de la celda donde este posicionado empieza por "CampoAuto." y si es asi, miraria que campo es el que tengo que insertar aqui, es este caso seria "Logica.TClientes.Empresa.AsString", esa es la teoria ahora lo que no se es como acceder al valor de "Logica.TClientes.Empresa.AsString" dado que hasta este punto lo esto tratando como un string y lo que yo quiero es el valor, como si de un puntero se tratara... ¿ me he explicado bien o alguien se ha perdido ?
__________________
Borland Delphi XE2 // Interbase Server |
#2
|
||||
|
||||
Cita:
Creo que todo depende de las posibilidades que tengas de acceder a las clases de la lógica y a sus propiedades. En mi caso (modelo de lógica/persistencia), se puede acceder a una clase y a sus propiedades a partir de una string; En tu caso dependerá de cómo esté implementada la clase Cliente y el resto pertenecientes a tu lógica. No se si me he explicado bien.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Gracias Neftali por responder, aunque la verdad no he comprendido mucho, te doy mas datos...
en "Logica.TClientesEmpresa.AsString" Logica es un Data Module, TCliente un ClientDataSet y Empresa uno de sus campos, ahora lo que no se es como acceder al contenido de ese campo partiendo de esa string... Código:
Cadena : String; Cadena := 'Logica.TClientesEmpresa.AsString'; ShowMessage( Cadena ); --> "Logica.TClientesEmpresa.AsString" ShowMessage( Logica.TClientesEmpresa.AsString ); --> "EMPRESAS DEL SUR S.L."
__________________
Borland Delphi XE2 // Interbase Server |
#4
|
||||
|
||||
Cita:
En tu caso tal vez sea más sencillo. Puedes buscar los formularios de la aplicación haciendo un recorrido por la variables Screen:
Creo que con eso no puedes llegar a un TDataModule, que basta con que lo cambies por un TForm. Una vez que accedas al formulario, puedes hacer algo similar para acceder a los componentes (entre ellos los campos), utilizando:
Con esto, teniendo "Logica.TClienteEmpresa", suponiendo que Logica sea un formulario (no un datamodule), podrías acceder al TField Empresa. Para acceder cómo "AsString", sólo se me ocurre que hagas un CASE con las varias posibilidades segun el tipo de campo. Espero haberme explicado bien.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
plantillas aspnet | cmm07 | Varios | 1 | 23-08-2008 20:23:08 |
Plantillas de Diseño | jostrix | PHP | 1 | 17-10-2004 10:28:21 |
Realizar plantillas | acrophet | Varios | 6 | 18-08-2004 18:04:14 |
Intraweb y las Plantillas | Brewster | Internet | 4 | 20-04-2004 18:32:26 |
plantillas de excel | sledgehammer | Impresión | 1 | 21-10-2003 13:23:32 |
|