FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Exportar con TQRCommaSeparatedFilter
Estoy usando este código para exportar un QReport en fomato CSV:
Código:
TQRCommaSeparatedFilter *filtro = new TQRCommaSeparatedFilter(cInforme); Informe->ExportToFilter(filtro); delete filtro; El problema que tengo es que el fichero que saca no usa el punto y coma como separador de campos y me saca esto: Cita:
|
#2
|
||||
|
||||
Hola Angel.Matilla.
Cita:
Código:
void __fastcall TForm1::ExportToCVS(const char *FileName) { TQRCommaSeparatedFilter *CommaSF = new TQRCommaSeparatedFilter(FileName); __try { QRCSVFilter1->Separator = ';'; QuickRep1->ExportToFilter(CommaSF); } __finally { delete CommaSF; } } Código:
void __fastcall TForm1::Button1Click(TObject *Sender) { ExportToCVS("C:\\REPORTE.TXT"); }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 20-03-2013 a las 18:49:34. Razón: agregar cita |
#3
|
||||
|
||||
Muchísimas gracias. Llevaba mucho tiempo tratando de encontrar una solución. Sólo he encontrado un problema y es que me llena el listado de comillas, así:
Cita:
Cita:
|
#4
|
||||
|
||||
Hola Angel.Matilla.
Cita:
Código:
void __fastcall TForm1::ExportToCVS(const char *FileName) { TQRCommaSeparatedFilter *CommaSF = new TQRCommaSeparatedFilter(FileName); TStringList *SL = new TStringList; __try { QRCSVFilter1->Separator = ';'; QuickRep1->ExportToFilter(CommaSF); SL->LoadFromFile(FileName); SL->Text = StringReplace(SL->Text, '"', "", TReplaceFlags() << rfReplaceAll); SL->SaveToFile(FileName); } __finally { delete SL; delete CommaSF; } }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
||||
|
||||
Gracias por tu ayuda. Permite que te haga otra pregunta.
La exportación, dado que la uso en varios sitios distintos de la aplicación, la tengo metida en una función. Me ha llamado la atención que no pueda crear un TQRCSFilter de forma dinámica. Da lo mismo que ponga Código:
TQRCSVFilter *csv = new TQRCSVFilter Código:
TQRCSVFilter *csv = new TQRCSVFilter() Cita:
|
#6
|
||||
|
||||
Hola de nuevo.
Tenes que indicar el propietario (Owner) en la creación. Por lo que creo interpretar de tu mensaje, bién puede ser NULL. Código:
void __fastcall ExportToCVS(TQuickRep *QR, const char *FileName) { TQRCSVFilter *CVSF = new TQRCSVFilter(NULL); TQRCommaSeparatedFilter *CommaSF = new TQRCommaSeparatedFilter(FileName); TStringList *SL = new TStringList; __try { CVSF->Separator = ';'; QR->ExportToFilter(CommaSF); SL->LoadFromFile(FileName); SL->Text = StringReplace(SL->Text,'"',"", TReplaceFlags()<<rfReplaceAll); SL->SaveToFile(FileName); } __finally { delete SL; delete CVSF; delete CommaSF; } }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#7
|
||||
|
||||
¡Perfecto! No se me había ocurrido. Muchas gracias.
Última edición por Angel.Matilla fecha: 21-03-2013 a las 16:59:28. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Exportar con TQRCommaSeparatedFilter | Angel.Matilla | Impresión | 0 | 01-03-2012 18:51:44 |
Exportar en una DLL en C++ | Ege | C++ Builder | 1 | 05-04-2008 11:22:34 |
Exportar de .rpt a .pdf | principiante22 | Varios | 4 | 14-03-2008 16:28:31 |
Exportar | Alejandro73 | Conexión con bases de datos | 0 | 11-12-2007 16:20:21 |
Exportar a DBF o XLS | mRoman | Tablas planas | 1 | 16-06-2005 18:10:25 |
|