Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-11-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
respaldar

Buen día Efren2006 espero esto te pueda ayudar o por lo menos puedas hacer algunas modificaciones este codigo utiliza un componente ShellTreeView dependiendo de la ruta en que desees respaldar dale un click y despues dale aceptar(puedes ponerle el nombre que quieras al boton o bitbtn) deacuerdo al sig. código.

Código Delphi [-]
procedure TForm24.BitBtn1Click(Sender: TObject);
var PathDestino, Origen, aPath, Destino, my_mensaje : string;
sr: TSearchRec;// para definir el tipo de busqueda
begin
my_mensaje:='Y se han guardado en la siguiente ubicación.'+#13;
PathDestino := ShellTreeView1.SelectedFolder.PathName+'\[ Respaldo Base de Datos Sistema Caja ]'; //creamos el nombre de mi carpeta y concatenamos al directorio
if not DirectoryExists(PathDestino) then // verifica que no exista una carpeta con el nombre Respaldo al directorio destino
   begin
   aPath := 'C:\sistema_caja\base de datos\';//asignamos el origen de mis tablas
   if FindFirst(aPath + '*.db', faAnyFile, sr) = 0 Then  //busca el primer archivo .db o cualquiera
   repeat
   CreateDir(PathDestino); //Creamos el directorio ...................
   Origen := aPath+sr.Name;//directorio origen o path
   Destino :=  PathDestino+'\'+ sr.Name; //aqui agregamos las tablas a la carpeta
   CopyFile(PChar(Origen), PChar(Destino), False);// copiamos de mi origen al destino
   until FindNext(sr) <> 0;// hacer todo el recorrido hasta encontrar mi archivo
   SysUtils.FindClose(sr);//cerramos la busqueda del archivo
   Application.MessageBox('Las bases de datos se han respaldado ! ! ! ','Información',MB_ICONINFORMATION);
   MessageDlg( my_mensaje + ShellTreeView1.SelectedFolder.PathName + '\[ Respaldo Base de Datos Sistema Caja ]',mtInformation,[mbOK],0);
   end
   else
   begin
   Application.MessageBox('La carpeta ya existe.','Error',MB_ICONERROR);
   Application.MessageBox('Por el momento no es necesario respaldar en esta ubicación ! ! !','Suerte',MB_ICONINFORMATION);
   end;
end;

Nota: Si deceas guardar un excel o word basta cambiar la extención del archivo *.db por *.xls *.doc etc.

Saludos y espero que esto sea lo que buscas! : )
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!
Responder Con Cita
  #2  
Antiguo 28-11-2009
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

si Me das un email te envio el ejemplo y solo tendrias que reemplazar la rutina de backup con lo que utilizan los componentes que estas usando
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #3  
Antiguo 28-11-2009
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

Cita:
Empezado por afunez2007 Ver Mensaje
si Me das un email te envio el ejemplo y solo tendrias que reemplazar la rutina de backup con lo que utilizan los componentes que estas usando
es raro que digas que te da error, yo descargue el archivo y lo puedo abrir sin problemas

Saludos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #4  
Antiguo 28-11-2009
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 17
afunez2007 Va por buen camino
Lightbulb

Partiendo del hecho que lo quieres hacer usando los componentes IB podria ser asi:
Código Delphi [-]
  try
    IBBackupService1.Active := true;
    IBBackupService1.Options := [IgnoreLimbo]+[NoGarbageCollection]+[NonTransportable];
    IBBackupService1.BackupFile.Clear;
    IBBackupService1.BackupFile.Text:=edtRuta.Text;
    IBBackupService1.BackupFile.Create;
    IBBackupService1.ServiceStart;
    while not IBBackupService1.Eof do
    begin
      s := IBBackupService1.GetNextLine;
    end;
  finally
    ShowMessage('Copia de seguridad realizada con exito');
  end;

La unica desventaja es que solo puedes escoger rutas que esten en el servidor, ya que el servicio no puede transportar el archivo automaticamente a otra pc si lo estas haciendo desde en equipo remoto.

a diferencia de la otra opcion que te habia enviado con el gbak.

edtRuta.Text es un t edit que lo debes llenar con un Save dialog que llamas desde un boton con el siguiente codigo:
Código Delphi [-]
if dlgSave1.Execute then
begin
  edtRuta.Text:=dlgSave1.FileName;
end;

en el save dialog debes configurar las siguientes propiedades:
DefaultExt=*.fbk
Filter=FireBird Backup (*.fbk)|*.fbk

Saludos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
  #5  
Antiguo 30-11-2009
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Cita:
Empezado por afunez2007 Ver Mensaje
Partiendo del hecho que lo quieres hacer usando los componentes IB podria ser asi:

Código Delphi [-]
try
IBBackupService1.Active := true;
IBBackupService1.Options := [IgnoreLimbo]+[NoGarbageCollection]+[NonTransportable];
IBBackupService1.BackupFile.Clear;
IBBackupService1.BackupFile.Text:=edtRuta.Text;
IBBackupService1.BackupFile.Create;
IBBackupService1.ServiceStart;
while not IBBackupService1.Eof do
begin
s := IBBackupService1.GetNextLine;
end;
finally
ShowMessage('Copia de seguridad realizada con exito');
end;





La unica desventaja es que solo puedes escoger rutas que esten en el servidor, ya que el servicio no puede transportar el archivo automaticamente a otra pc si lo estas haciendo desde en equipo remoto.

a diferencia de la otra opcion que te habia enviado con el gbak.

edtRuta.Text es un t edit que lo debes llenar con un Save dialog que llamas desde un boton con el siguiente codigo:

Código Delphi [-]
if dlgSave1.Execute then
begin
edtRuta.Text:=dlgSave1.FileName;
end;





en el save dialog debes configurar las siguientes propiedades:
DefaultExt=*.fbk
Filter=FireBird Backup (*.fbk)|*.fbk

Saludos
Amigo

Gracias por tu ayuda, efectivamente asi como me lo describes lo estoy haciendo solo me faltaba era que el usuario me indicara la carpeta donde hiba a registrar el Backup, con la opcion que me dio ROMAN todo quedo muy bien.

Saludos
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
SaveDialog y Windows CE manueljgomezc Varios 0 18-08-2008 17:36:20
SaveDialog rauros OOP 1 07-08-2008 14:47:21
problema con saveDialog .. tato_pincha87 Varios 5 26-03-2008 17:24:12
Problema por el SaveDialog tramjauer Varios 1 27-04-2007 18:12:17
SaveDialog con WinExec!! lduron Varios 2 16-06-2006 16:12:07


La franja horaria es GMT +2. Ahora son las 19:33:49.


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