Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   delphi crear y usar archivo de excel como db (https://www.clubdelphi.com/foros/showthread.php?t=77520)

vroa74 03-02-2012 16:49:02

delphi crear y usar archivo de excel como db
 
buenos dias:
tengo la necesidad de de hacer esta pregunta ya que he tratado de resolverla, he visitado los post y no he hayado nada.
necesito crear una aplicación que guarde información en excel, si no exite el archivo de excel lo cree. mas la verdad no tengo la minima idea de como poder hacer esto. Les agradesco su ayuda ya que la aplicacion que necesito hacer es urgente, y tengo que validar algunos campos adicionales
les agradesco

kapcomx 03-02-2012 17:00:20

excel
 
aqui te dejo un ejemplo que hice hace un tiempo haber si te sirve....

en este ejemplo guardo en un archivo excel, en formato csv el resultado de una consulta espero te sirva :cool:


Código Delphi [-]
var
OutputFile : textFile;
NumFields,i : Integer;
nombrefile : string;
nombreFileE : PChar;
CadenaStr, CadenaFin: string;
begin
with querydesgloce do
begin
close;
sql.clear;
sql.add('SELECT * FROM CAJACHICA');
execSQL;
open;
end;

nombrefile := 'z:\RESPALDOCAJACHICA.CSV';
FileCreate(concat(nombreFile,'.CSV'));
AssignFile(OutputFile,nombrefile);
rewrite(OutputFile);

CadenaFin:='FOLIO, FECHA, DESCRIPCION, INGRESO, EGRESO, FONDO, IVA, AUTORIZA, ENTREGA, RECIBE, NOTA, FACTURA, TIPO, STATUS, FOLIOSER, COMENTARIOS, PROVEEDOR';
WriteLN(OutputFile,CadenaFin,',');
querydesgloce.First;
While not (querydesgloce.Eof) do
begin
CadenaFin:=IntToStr(querydesgloce.FieldValues['FOLIO']);
IF (querydesgloce.FieldValues['FECHA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + DATETOSTR(querydesgloce.FieldValues['FECHA']);
IF (querydesgloce.FieldValues['DESCRIPCION']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +'NULL'
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['DESCRIPCION']);
IF (querydesgloce.FieldValues['INGRESO']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + FLOATTOSTR(querydesgloce.FieldValues['INGRESO']);

IF (querydesgloce.FieldValues['EGRESO']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + FLOATTOSTR(querydesgloce.FieldValues['EGRESO']);
IF (querydesgloce.FieldValues['FONDO']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + FLOATTOSTR(querydesgloce.FieldValues['FONDO']);
IF (querydesgloce.FieldValues['IVA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + FLOATTOSTR(querydesgloce.FieldValues['IVA']);
IF (querydesgloce.FieldValues['AUTORIZA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['AUTORIZA']);
IF (querydesgloce.FieldValues['ENTREGA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['ENTREGA']);
IF (querydesgloce.FieldValues['RECIBE']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['RECIBE']);
IF (querydesgloce.FieldValues['NOTA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + INTTOSTR(querydesgloce.FieldValues['NOTA']);
IF (querydesgloce.FieldValues['FACTURA']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + INTTOSTR(querydesgloce.FieldValues['FACTURA']);
IF (querydesgloce.FieldValues['TIPO']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['TIPO']);

IF (querydesgloce.FieldValues['STATUS']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + INTTOSTR(querydesgloce.FieldValues['STATUS']);
IF (querydesgloce.FieldValues['FOLIOSER']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + INTTOSTR(querydesgloce.FieldValues['FOLIOSER']);
IF (querydesgloce.FieldValues['COMENTARIOS']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['COMENTARIOS']);

IF (querydesgloce.FieldValues['PROVEEDOR']= NULL) THEN
CadenaFin:= CADENAFIN + ',' +''
ELSE
cadenafin := CadenaFin + ',' + (querydesgloce.FieldValues['PROVEEDOR']);


WriteLN(OutputFile,CadenaFin,',');
querydesgloce.Next;
end;


La franja horaria es GMT +2. Ahora son las 11:20:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi