Conectar aplicación con la nube

Conectar aplicación con la nube

Postby santidedos » Wed Aug 18, 2021 8:12 pm

Buenas tardes compañeros,
Me gustaría poder realizar copias de seguridad de mi sistema en la nube. Muchas gracias de antemano!
santidedos
 
Posts: 45
Joined: Fri Aug 16, 2019 12:51 am

Re: Conectar aplicación con la nube

Postby leandro » Wed Aug 18, 2021 8:20 pm

Una idea
Code: Select all  Expand view

*********************************
//REALIZA LA COPIA DE SEGURIDAD
*********************************
Function copiaseguridad()
local oCn
Local cRutaSql := ".\copias\"
Local cNombSql :=   alltrim(oLamcla:vGnit) + "
_" + DTOS(DATE()) + "_" + SUBSTR(TIME(),1,2) +;
                    SUBSTR(TIME(),4,2) + SUBSTR(TIME(),7,2) + "
.Sql"
Local cRutFina := cRutaSql+cNombSql
Local documento := {=>}
Local cbCopia := <||

        verificaTablasCopias(oCnEmp)
       
        //ACTUALIZAMOS LA FECHA DE LA ULTIMA COPIA EN LA BASE DE DATOS
        oSlq:= TCad():New(oLamcla:tEmpr,oCnEmp)
        oSlq:Campos("
e_ultima_copia",dtos(date()))
        oSlq:Condicion("
e_codi",oLamcla:vGcod,"")
        oSlq:Actualiza()
        oSlq:=nil   
       
        //LEEMOS EL ARCHIVO PLANO PARA ENVIARLO AL SERVIDOR
        cText := MemoRead( cRutFina )

        //ENVIAMOS LA COPIA DE SEGURIDAD AL SERVIDOR
        tercero := alltrim(oLamcla:vGnit)
        pass := "
TuClave"   //TEMPORAL
        cBas64 := hb_base64encode(tercero+"
:"+pass,len(tercero+":"+pass))

        //DATOS PARA REGISTRO EN LA BASE DE DATOS
        documento["
tercero"] := tercero
        documento["
nombre_sql"] := cNombSql
        documento["
sql"] := cText
        documento["
sucursal"] := oLamcla:nEmpSucu
        enviar := hb_jsonEncode( documento )

        ohttp := CreateObject( "
MSXML2.XMLHTTP" )
        ohttp:Open( "
POST" ,"http://tudominio.com/dondeguardamos",.F.)
        oHttp:SetRequestHeader("cache-control", "no-cache")
        ohttp:SetRequestHeader("content-type", "application/json" )
        ohttp:SetRequestHeader("authorization", "Basic "+cBas64 )
        TRY
          ohttp:Send( enviar )
        CATCH
            msginfo("No Se Pudo Enviar Archivo ","Intente Nuevamente")
            return .t.
        END
        response:=ohttp:responseText

        aHasRes := hash()
        hb_jsondecode(response ,@aHasRes)

        if aHasRes["copia_confirma"]
       
            //ACTUALIZAMOS LA FECHA DE LA ULTIMA COPIA EN LA BASE DE DATOS
            oSlq:= TCad():New(oLamcla:tEmpr,oCnEmp)
            oSlq:Campos("e_ultima_nube",dtos(date()))
            oSlq:Condicion("e_codi",oLamcla:vGcod,"")
            oSlq:Actualiza()
            oSlq:=nil          
       
            MsgInfo("Proceso Completado Correctamente - Archivo Guardado "+cRutFina,"Confirma")
        else
            MsgInfo("Proceso NO pudo ser completado ","Error Datos")
        endif

    >

oCn := maria_Connect( alltrim(oLamcla:cHost),alltrim(oLamcla:cEmpDBda),alltrim(oLamcla:cUsuario),;
                    alltrim(oLamcla:cPassword) )
if oCn == nil
    msginfo(    "No se pudo comprobar la conexión con la base de datos"+CRLF+;
            "Por favor revise la ip en la configuración de la conexión","Error Conexión")
else
    MYSQL_CRYPTKEY( alltrim(oLamcla:cPassword) )
    oCn:BackUp( nil , cRutFina )
    MYSQL_CRYPTKEY( nil )
    oCn:close()
   
    MsgRun("Procesando Información...","Creando Archivo",{||CursorWait(),WaitRun(eval(cbCopia), 0 )})
   
endif
Return nil
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1489
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conectar aplicación con la nube

Postby santidedos » Thu Aug 19, 2021 2:03 pm

Mil gracias. Lo voy a probar.
santidedos
 
Posts: 45
Joined: Fri Aug 16, 2019 12:51 am

Re: Conectar aplicación con la nube

Postby Antonio Linares » Thu Aug 19, 2021 3:20 pm

Estimado Leandro,

muchas gracias por compartirlo
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41469
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 169 guests