Primero busca si la biblioteca de clases que utilizas tiene algún método para exportar la base de datos a texto, sino...Supongo que no tienes problemas para acceder a los datos de la tabla, por tupla y luego por cada campo. Usa las funciones de archivos de texto que son las mismas de pascal con los nombres algo más específicos para guardar un archivo .txt No es cosa del otro mundo y es rápido y simple... podrías preparar cada linea de texto a guardar a partir de los campos de un tupla. Recorriendo la tabla de principio a fin.Usar archivos de texto u cadenas en delphi es extremadamente simple. Y mejor si te consigues una biblioteca de funciones extra para cadenas para hacer todo tipo de operaciones con las cadenas como en PHP.Código: Text var F: TextFile; S: string;begin if OpenDialog1.Execute then { Display Open dialog box } begin AssignFile(F, OpenDialog1.FileName); { File selected in dialog box } Reset(F); Readln(F, S); { Read the first line out of the file } Edit1.Text := S; { Put string in a TEdit control } Writen(F, Edit2.Text); { Read the first line out of the file } CloseFile(F); end;end;
Para el foro el codigo ponlo entre "[ C O D E ][/ C O D E ]" usando el boton del mismo nombre al lado de quote y list, para que sea legible y no se vea un asco. 1.- ¿Cual es el numero y mensaje de error?,Delphi tiene el "try except", usalo y en except muestra en pantalla el error eso lo obtienes con la propiedad ErrorCode del EInOutError. Sabiendo EXACTAMENTE cual es el error tal vez de des cuenta inmediatamente que hay que modificar.2.- Value es un "variant", asi que mejor te aseguras que puedas accederlo directamente asi o tal vez usar mejor un ".asFloat" o como veas conveniente. Fijate en la ayuda para más detalles.Ejemplo:Código: Text Memo1.Lines.Add(Form1.Table1.FieldByName('Prom1').asString);//como cadena Memo1.Lines.Add(Form1.Table1.FieldByName('Prom1').Value);//directo es variant Form1.Table1.FieldByName('Prom1').asFloat;//si lo necesitas como flotante 3.- sacale las comillas a la variable de tipo cadena prom...Código: Text Memo1.Lines.Add('prom'); ¿O quieres en el memo esto?prom prom prom prom ...
El problema es que llamas directamente al eof, sin indicar un objeto:"The Eof function tests whether or not the current file position is the end-of-file. F is a text file variable. If F is omitted, the standard file variable Input is assumed. "De esta forma no verificas el EOF del dataset del datasource de la tabla sino de la variable de archivo estándar que nada tiene que ver en este caso.Tendrías que acceder de esta forma: table.dataSource.dataSet.EOFSaludos y feliz noche de brujas. P.D.El tag [c o d e] va sin espacios intermedios.