FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Exportar en un archivo txt
Hola, estoy intentando exportar de un TADO a un archivo de texto, el problema es que a la hora de guardarme los datos en el archivo sólo me guarda el primer registro, no entiendo el motivo por el cual se salta el While y se sale del bucle,. Si alguien pudiera ayudarme le estaría muy agradecido. GRAAACIASSS.
Código:
procedure TfrmClients.sbExportaClick(Sender: TObject); var NomArxiu: String; S:string; f:Textfile; begin If sdGuarda.Execute then Begin NomArxiu:=sdGuarda.Filename; AssignFile(F,'Dades.txt'); Rewrite(F); ADOTClient.First; While not ADOTClient.EOF do Begin s:='#'; s:=s+ADOTClient.FieldbyName('CodiT02').asString+'#'; s:=s+ADOTClient.FieldbyName('NomT02').asString+'#'; s:=s+AdoTClient.FieldbyName('DireccioT02').asString+'#'; s:=s+AdoTClient.FieldbyName('PoblacioT02').asString+'#'; s:=s+AdoTClient.FieldbyName('CodiPostalT02').asString+'#'; s:=s+AdoTClient.FieldbyName('ProvinciaT02').asString+'#'; s:=s+AdoTClient.FieldbyName('Telf1T02').asString+'#'; s:=s+AdoTClient.FieldbyName('Telf2T02').asString+'#'; s:=s+AdoTClient.FieldbyName('FaxT02').asString+'#'; Writeln(F,s); ADOTClient.Next; end; end; Closefile(F); end;
__________________
"La perseverancia es el camino del éxito" |
#2
|
||||
|
||||
Es más que probable que ese archivo se vaya a parar a c:\windows, ahí si debe estar todos los registros. El archivo que solo tiene un registro, será de pruebas anteriores.
Pasa siempre la ruta completa 'c:\dades.txt' Por cierto, el CloseFile, no está dentro del bloque del IF. Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#3
|
|||
|
|||
Sigue el error..., detallo más.
El error continua, he arreglado lo del Closefile (gracias Lepe) y lo de la ubicación del archivo, pero aún así sigue fallando. Lo que pasa es que entra en el bucle anterior pero sólo una vez, después se sale (sin respetar la condición).
__________________
"La perseverancia es el camino del éxito" |
#4
|
||||
|
||||
Por más vueltas que le doy al bucle no le veo fallo alguno. ¿Por qué no pones una rejilla conectada alADOTClient ?
No vaya a ser que por algún motivo solamente te esté devolviendo un registro. Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#5
|
|||
|
|||
¿Qué es una rejilla?.
Hola, y antes que nada agradezco tu ayuda, lo que pasa es que no sé a que te refieres con lo de la rejilla. ¿Me lo podria explicar alguien?. Muchas gracias.
__________________
"La perseverancia es el camino del éxito" |
#6
|
||||
|
||||
Rejilla es la traducción oficial para DBGRID
Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#7
|
|||
|
|||
lo he probao y funciona, app_path es el directorio donde se ejecuta la aplicacion
Última edición por marcoszorrilla fecha: 11-04-2005 a las 17:06:19. |
#8
|
||||
|
||||
Hola alfredo:
Bien, de todo lo anterior, deducimos que el bucle no es el problema, así que habrá que mirar por otro sitio. - Haces algo en los eventos beforeScroll, AfterScroll de la tabla ? - Tienes algun código escrito para el Datasource, OnStateChange,OnDataChange? - Algún código en los eventos de los campos, quizás en el OnGetText ? - Algún dato a exportar es nulo ? - Ocultas alguna excepción en tu aplicación ? Algo del estilo try ... except on e:except do ; - Cierras la tabla en algún momento ? Un saludo, y suerte!!
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
|
|