GUARDAR DATOS AUTOMATICAMENTE (YA RESUELTO, MUCHAS GRACIAS)

GUARDAR DATOS AUTOMATICAMENTE (YA RESUELTO, MUCHAS GRACIAS)

Postby AIDA » Thu Apr 10, 2008 2:54 am

HOLA

NO SE SI SE PUEDA HACER QUE MI PROGRAMA GUARDE LOS DATOS QUE SE ESTAN CAPTURANDO AUTOMATICAMENTE POR PERIODOS DE TIEMPO COMOLO HACE EL Microsoft Office Word PARA QUE LOS DATOS ESTEN GUARDADOS ANTES QUE EL USUARIO SALGA DEL PROGRAMA POR SI ALGUN CORTE DE LUZ O ATORON DE LA COMPUTADORA Y NO PERDER LO CAPTURADO :shock: .

SALUDOS

AIDA :wink:
Last edited by AIDA on Fri Mar 06, 2009 5:54 am, edited 2 times in total.
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 879
Joined: Fri Jan 12, 2007 8:35 pm

Re: HOLA COMO PUEDO HACER QUE SE GUARDEN DATOS AUTOMATICAMEN

Postby andresreyes_mzt » Thu Apr 10, 2008 3:26 am

AIDA wrote:HOLA

NO SE SI SE PUEDA HACER QUE MI PROGRAMA GUARDE LOS DATOS QUE SE ESTAN CAPTURANDO AUTOMATICAMENTE POR PERIODOS DE TIEMPO COMOLO HACE EL Microsoft Office Word PARA QUE LOS DATOS ESTEN GUARDADOS ANTES QUE EL USUARIO SALGA DEL PROGRAMA POR SI ALGUN CORTE DE LUZ O ATORON DE LA COMPUTADORA Y NO PERDER LO CAPTURADO :shock: .

SALUDOS

SANDRA :wink:


Hola Aida,

Podrias hacerlo de la siguiente manera

Crear un Timer que este guardando los datos en un archivo cada determinado tiempo. Los mas logico seria guardar los datos en un array o un hash y despues utilizar un Hb_Serialize() y MemoWrit() para guardar los datos al disco.

Verificar si al Iniciar tu aplicacion existe ese archivo, en caso de que exista recuperar esos datos con un Memoread() y hb_deserialize(), ahi tienes de vuelta el hash o array con los datos recuperados y eliminar el archivo.

Es algo muy sencillo

Guardar:
Code: Select all  Expand view  RUN
hHash := {=>}
hHash["Dato1"] := 1024
hHash["Dato2"] := "Mi Dato"
hHash["Dato2"] := Date()

MemoWrit( "Salva.dat", hb_serialize( hHash ) )


Recuperar :
Code: Select all  Expand view  RUN
hHash := Hb_deserialize( Memoread("Salva.Dat") )

? hHash["Dato1"]   // 1024
? hHash["Dato2"]   // "Mi Dato"
? hHash["Dato2"]   // Date()

FErase( "Salva.dat" )
{{{ ---- xharbour + Borland C --- }}}
User avatar
andresreyes_mzt
 
Posts: 71
Joined: Fri Jan 11, 2008 6:55 am
Location: Mexico

HUY GRACIAS

Postby AIDA » Thu Apr 10, 2008 4:27 am

GRACIAS


PERO NO ENTENDI NADA :shock:

QUE PENA :oops:

PERO GRACIAS :D
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 879
Joined: Fri Jan 12, 2007 8:35 pm

Re: HUY GRACIAS

Postby andresreyes_mzt » Thu Apr 10, 2008 6:52 am

AIDA wrote:GRACIAS


PERO NO ENTENDI NADA :shock:

QUE PENA :oops:

PERO GRACIAS :D


Hola,

Espero esto sea un poco mas ilustrativo, es un ejemplo funcional, ejecutalo, captura los datos, cierralo desde el administrador de tareas, y vuelve a ejecutar el programa .. y ahi estan los datos de nuevo

Code: Select all  Expand view  RUN
STATIC hDatos
STATIC hCtrl

PROCEDURE Main()

   LOCAL oDlg
   LOCAL oTimer
   
   DEFINE DIALOG oDlg ;
         TITLE "Test Guardar Datos Automaticamente";
         SIZE 300, 110 ;
         PIXEL

   
   ACTIVATE DIALOG oDlg CENTERED ;
         ON INIT Dlg_Init( oDlg, @oTimer )

   RELEASE TIMER oTimer
   
   // Si al salir Normalmente del Programa existe el Archivo
   // Donde Guardamos la Informacion de Emergencia ... Lo Eliminamos
   
   IF File( "Salva.Dat")
      FErase( "Salva.Dat" )
   ENDIF

   RETURN

PROCEDURE Dlg_Init( oDlg, oTimer )

   DEFINE TIMER oTimer ;
      INTERVAL 5000 ;
      ACTION Guardar_Datos_Automaticamente() ;
      OF oDlg

   ACTIVATE TIMER oTimer

   

   @ 020, 010 SAY "Nombre :";
               PIXEL
               
   @ 050, 010 SAY "Direccion :";
               PIXEL
               
   @ 080, 010 SAY "Telefono :";
               PIXEL
   
   IF File( "Salva.Dat" )
      hDatos := Hb_DeSerialize( Memoread("Salva.dat") )
   ELSE
      hDatos := {=>}
      hDatos["Nombre"]     := SPACE(50)
      hDatos["Direccion"]  := SPACE(50)
      hDatos["Telefono"]   := SPACE(10)
   ENDIF
   
   hCtrl := {=>}
   hCtrl["Nombre"]      := Nil
   hCtrl["Direccion"]   := Nil
   hCtrl["Telefono"]    := Nil

   
   
   @ 020, 070 GET hCtrl["Nombre"] VAR hDatos["Nombre"] ;
               SIZE 220, 20 ;
               PIXEL

   @ 050, 070 GET hCtrl["Direccion"] VAR hDatos["Direccion"] ;
               SIZE 220, 20 ;
               PIXEL
               
   @ 080, 070 GET hCtrl["Telefono"] VAR hDatos["Telefono"] ;
               SIZE 60, 20 ;
               PIXEL

   RETURN
   
PROCEDURE Guardar_Datos_Automaticamente()

   hCtrl["Nombre"]:Assign()
   hCtrl["Direccion"]:Assign()
   hCtrl["Telefono"]:Assign()
   
   MemoWrit( "Salva.dat", Hb_Serialize( hDatos ) )
   
   RETURN
{{{ ---- xharbour + Borland C --- }}}
User avatar
andresreyes_mzt
 
Posts: 71
Joined: Fri Jan 11, 2008 6:55 am
Location: Mexico

Postby Patricio Avalos Aguirre » Thu Apr 10, 2008 2:43 pm

un poco de información no esta de mas..

http://xharbour.wiki.mailxmail.com/hash
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Patricio Avalos Aguirre
 
Posts: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

GRACIAS!!!!!!

Postby AIDA » Thu Apr 10, 2008 3:14 pm

OOOOH :shock: SI YA ENTENDI MAS

ES COMO MAGIA :D YA VI QUE HACE UN ARCHIVITO SALVA.DAT PERO CUANDO LO CIERRO DESDE EL ADMINISTRADOR DE TAREAS COMO ME DIJISTE TAMBIEN SE BORRA EL ARCHIVO :shock: SALVA.DAT

PERO YA ABRI EL ARCHIVO DAT ANTES DE CERRAR EL PROGRAMITA Y SI ESTAN LOS DATOS VERE POR QUE SE BORRA EL ARCHIVITO.

MUCHAS GRACIAS QUE LINDO POR AYUDARME :D

TAMBIEN A PATRICIO MUCHAS GRACIAS :D

SALUDOS

AIDA :wink:

ya ya lo cerre bien con el admintrador y si si si se quedan los datos yuuuupi :D muchas gracias!!!! :wink:
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 879
Joined: Fri Jan 12, 2007 8:35 pm

YA ME QUEDO MUY BIEN!!!!!!!!!!!!

Postby AIDA » Thu Apr 10, 2008 10:33 pm

YA IMPLEMENTE EL EJEMPLO QUE AMABLEMENTE ME DISTE Y QUEDO MUY BIEN EN MI PROGRAMA SI QUEDA TODO GUARDADO EN EL .DAT Y SE RECUPERA EN CUANTO EJECUTO EL PROGRAMA.

REALMENTE MUCHAS GRACIAS

HOY ES DIA DE SONRISA PARA MI :D



GRACIAS POR TODO Y SALUDITOS

AIDA :wink:
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 879
Joined: Fri Jan 12, 2007 8:35 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 19 guests