![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#3
|
|||
|
|||
|
Tienes razón, debería haber puesto el código.
Sería este. (más o menos) AssignFILE(F,'Com1'); ReWrite(F); Write(F, CHR(27) + CHR(64)); Writeln(F,' Reporte de Ventas'); Writeln(F,' Fecha: '+DateToStr(Date)); Writeln(F,'Del día: '+ EFecha1.Text+' al día: '+EFecha2.Text); Writeln(F, Espacios(20, 'Producto', 0)+Espacios(10, 'Cantidad'), 0)); DMModuloDatos.QVentas.First; // aquí están los datos de la consulta Total:=0; while (not DMModuloDatos.QVentas.eof) do begin writeln(F, Espacios(20, DBGVentas.DataSource.DataSet.FieldByName(['Producto']).AsString, 0)+ Espacios(20, DBGVentas.DataSource.DataSet.FieldByName(['Cantidad']).AsString, 0)) Total:=Total+DBGVentas.DataSource.DataSet.FieldByName(['Cantidad']).AsFloat; DMModuloDatos.QVentas.next; end; Writeln(F,'__________________________________________'); Writeln(F,Espacios(20,'Total: ', 1)+Espacios(10,FloatToStr(Total),1); Write(F,#12); System.CloseFile(F); End; Basicamente, lo que hace esto es recorrer el grid donde está la consulta y va llenando el Archivo F, al final lo cierra, y se imprime. Este código funciona perfectamente cuando la consulta tiene menos de unos 50 registros, pero cuando el resultado es más grande, hay problemas y no se imprime correctamente. No guarda la estructura en columnas que siguen los datos anteriores, y termina antes de tiempo. Por qué puede ser? Si abro y cierro el archivo en cada vuelta del ciclo, mejoraría? Esto no lo he probado, porque se me ha ocurrido ahora y estoy bien lejos de donde tengo el programa y mi ordenata. Muchas gracias por todo. |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|