Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

TstringGrid

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: TstringGrid Responder citando

Hola,
no me gusta hacer este tipo de preguntas tan basicas en el foro pero estoy un poco "quemada". Mi aplicacion realiza una serie de consultas a una base de datos, esa consulta la muestro en un DBGrid y la exporto a excel si el usuario lo desea. Mi probla es que al exportar a excel es muy lento y he leido en el foro que podemos exportar en rangos en lugar de fila a fila lo cual agiliza mucho la exportacion de los datos. Para ello en lugar de un DBGrid debo utilizar un TStringGrid. Pues bien, este es mi problema, utilizo borlan 2006 y no encuentro ese componente por ningun sitio!!!! alguien puede indicarme como puedo incluir ese componente??
gracias
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Dentro del BDS2006 y en la paleta Additional - existe el componente TStringGrid
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Muchas gracias... tendre que ponerme gafas.....
Mi problema ahora es que no puedo linkarlo con una consulta. sabes como puedo mostrar los datso de uan consulta en este componente o la otra solucion... como puedo de un DBGrid acelerar la exportacion de sus datos a excel?
gracias.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

puedes mostrarme parte del codigo, para que pueda ver si tienes alguna complicación en el mismo. es decir, la manera de exportar tus registros puede que tenga algun fallo
_________________
Cool


Ultima edición por Cesar C. Salazar Gonzalez el Sab 31 Mar, 2007 4:35 am, editado 1 vez
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Gracias, aqui va mi codigo, te comento donde esta el problema;

1º al exportar a excel no me saca el titulo de la columna, por eso he intentado insertar los titulos del DBGrid mientras que los datos los saco directamente de la consulta para que sea mas rapido
2º la razon por la que escribi en el foro, mi base de datos va ha ser muy grande y las consultas ahora son "pequeñas" pero cuando la base de datos tenga un año las consultas van ha tardar horas.. pro eso queria agilizar al maximo el exportar a excel.

muchisimas gracias.


void __fastcall TForm3::BexcelClick(TObject *Sender)
{
int titulo=0;
if (Form3->DBGrid1->Columns->Count == 0) {
ShowMessage("La consulta realizada no tiene datos");
}
else
{
//Creamos un objeto de tipo aplicacion 'Excel'
Variant Excel = Variant::CreateObject("Excel.Application");

//accedo a sus propiedades y metodos con 'OlePropertySet'
Excel.OlePropertySet("Visible", true);

//Crean una hoja nueva
Variant Libro = Excel.OlePropertyGet("WorkBooks").OleFunction("Add");
Variant Hoja = Libro.OlePropertyGet("ActiveSheet");
Query2->First();
int Ligne = 1;
Variant Cell, Valeur;

//Aqui intento poner titulo a las columnas pero me da un error de tipos qeu todaviai no he solucionado
/*for (int columna=0; columna <Form3>DBGrid1->Columns->Count ; columna++) {

Cell = Hoja.OlePropertyGet("Cells", Ligne, columna+1);
Valeur =(Variant)(Form3->DBGrid1->Columns->Items[columna]->Title->Caption);
ShowMessage(Valeur);
Cell.OlePropertySet("Value",Valeur);
} */

Ligne ++;
while (!(Query2->Eof))
{
for (int Colonne = 0; Colonne <Query2>FieldCount; Colonne++)
{
Cell = Hoja.OlePropertyGet("Cells", Ligne, Colonne+1);
Valeur = Query2->Fields->Fields[Colonne]->AsVariant;
Cell.OlePropertySet("Value", Valeur);
}
Ligne++;
Query2->Next();
}
Excel = Unassigned;
}

}
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.