Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-10-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
problemas al exportar archivo...solo detalles

Hola amigos...

tengo una aplicación que exporta unos datos desde un StringGrid a un Archivo de Texto... todo me funciona bien, para lo cual utilizo el sgte codigo:


Código Delphi [-]
nFile := Concat(Copy(Proceso.Text,1,1),'-',FormatDateTime('mm',Fecha.Date),FormatDateTime('yyyy', Fecha.Date),'.cdh');
nDir := Concat('D:\Sistemas\','BCI\');
Str := '';
For i := 0 to Grilla.RowCount-1 do
Begin
If (i <> 0) Then Str := Str + #13#10;
For j := 0 to (Grilla.Rows[i].Count - 1) do
Begin
If (j <> 0) Then Str := Str + '';//#9;
Str := Str + Grilla.Rows[i].Strings[j];
end;
TS := TStringList.CReate();
TS.Text := Str;
TS.SAveToFile(Concat(nDir,nfile));
TS.Free;
End;





A esto quiero decirle que lo almacene en una ruta específica, pro lo cual con nDir defino la ruta, y con nFile defino en nombre del archivo... hasta aquí todo bien... pero mi consulta es como le digo que esto me lo almacene usando un dialogo tipo SaveDialog....

puse ese codigo antes de almacenar el archivo,,, pero entra en un bucle.. asiq ue no me funciona...

Código Delphi [-]
SaveDialog1.InitialDir := nDir; // Asigno ruta_donde_almacenar
SaveDialog1.FileName := nFile; // asigno nombre_de_Archivo
with SaveDialog1 do
if Execute then TS.SAveToFile(Concat(nDir,nfile))
Else
ShowMessage('Error al guardar archivo');
TS.Free;






Si bien la funcion funciona para almacenar el archivo, la idea es que el usuario seleccione solo la ruta...

mi otra consulta.. este proceso se hace 1 vez al mes... como puedo hacer para que el sistema me almacene la última ruta seleccionada... (debere guardar la info en un .ini )....

y como evito que el usuario modifique el nombre del archivo...

bueno.. eso seria todo...gracias por cualquier ayudita..
__________________
BlueSteel
Responder Con Cita
  #2  
Antiguo 02-10-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Código Delphi [-]
   nFile := Concat(Copy(Proceso.Text,1,1),'-',FormatDateTime('mm',Fecha.Date),FormatDateTime('yyyy', Fecha.Date),'.cdh');
   nDir := Concat('D:\Sistemas\','BCI\');
   Str := '';
   For i := 0 to Grilla.RowCount-1 do
   Begin
      If (i <> 0) Then Str := Str + #13#10;
      For j := 0 to (Grilla.Rows[i].Count - 1) do
      Begin
         If (j <> 0) Then Str := Str + '';//#9;
         Str := Str + Grilla.Rows[i].Strings[j];
      end;
{desde aqui}
      TS := TStringList.CReate();
      TS.Text := Str;
      SaveDialog1.InitialDir := nDir; // Asigno ruta_donde_almacenar
      SaveDialog1.FileName := nFile; // asigno nombre_de_Archivo
      with SaveDialog1 do
         if Execute then TS.SAveToFile(Concat(nDir,nfile))
         Else
         ShowMessage('Error al guardar archivo');
      TS.Free;
{hasta aqui se ejecuta tantas veces como el For i := 0 to Grilla.RowCount-1 do
 por eso creo que dices que entra en un bucle...}
   End

Última edición por duilioisola fecha: 02-10-2007 a las 19:05:42.
Responder Con Cita
  #3  
Antiguo 02-10-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Creo que deberías hacerlo de esta forma:
Código Delphi [-]
   nFile := Concat(Copy(Proceso.Text,1,1),'-',FormatDateTime('mm',Fecha.Date),FormatDateTime('yyyy', Fecha.Date),'.cdh');
   nDir := Concat('D:\Sistemas\','BCI\');
   Str := '';
   For i := 0 to Grilla.RowCount-1 do
   Begin
      If (i <> 0) Then Str := Str + #13#10;
      For j := 0 to (Grilla.Rows[i].Count - 1) do
      Begin
         If (j <> 0) Then Str := Str + '';//#9;
         Str := Str + Grilla.Rows[i].Strings[j];
      end;
   End
   TS := TStringList.CReate();
   TS.Text := Str;
   SaveDialog1.InitialDir := nDir; // Asigno ruta_donde_almacenar
   SaveDialog1.FileName := nFile; // asigno nombre_de_Archivo
   with SaveDialog1 do
      if Execute then TS.SAveToFile(SaveDialog1.FileName)
      Else
      ShowMessage('Error al guardar archivo');
   TS.Free;

SaveDialog1.FileName es el nombre que has elegido con el SaveDialog.
Responder Con Cita
  #4  
Antiguo 02-10-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Lo del ini, extraido más o menos igual del help de Delphi TIniFiles:
Código Delphi [-]
  var
  MyIniFile: TIniFile;
  begin
  MyIniFile := TIniFile.Create('myapp.ini');
  MyIniFile.WriteString('Transfer', 'Title1', 'Picture Painter');
  MyIniFile.Free;

Código Delphi [-]
var
  MyIniFile: TIniFile;
begin
  MyIniFile := TIniFile.Create('myapp.ini');
  with MyIniFile do
  begin
      Caption := ReadString('FormOptions', 'Caption', 'Main');
  end;
  MyIniFile.Free;
end;
Quedaría algo asi :
Código Delphi [-]
nDir := ReadString('Datos', 'Ruta', 'C:\');
y
Código Delphi [-]
MyIniFile.WriteString('Datos', 'Ruta', nDir);
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Exportar una Tabla de SQL a un archivo TXT sanfer1ec SQL 5 11-04-2007 18:05:35
Exportar un DBGRID a un archivo txt egarc Varios 8 08-02-2007 16:02:33
exportar varios reports en un solo rtf usando rave Eusebio Impresión 0 05-02-2006 22:39:20
Exportar en un archivo txt alfredosg19 Varios 10 11-04-2005 18:00:37
Exportar un StringGrid a un Archivo.TxT kokoyweb Varios 1 24-08-2004 22:04:26


La franja horaria es GMT +2. Ahora son las 04:53:45.


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