FMain:
' gambas class file
Public Respaldo1 As Respaldo
Public Sub Form_Open()
Respaldo1 = New Respaldo(1, txtOrigen.Text, txtDestino.Text)
cbxMes.Index = 9
End
Public Sub Button2_Click()
Dialog.Path = User.Home
If Dialog.OpenFile() Then Return
txtOrigen.Text = Dialog.Path
End
Public Sub cbxPeriodo_Click()
Select Case cbxPeriodo.Index
Case 0
Respaldo1.Periodo = 1
Case 1
Respaldo1.Periodo = 2
Case 2
Respaldo1.Periodo = 3
Case 3
Respaldo1.Periodo = 7
Case 4
Respaldo1.Periodo = 15
Case 5
Respaldo1.Periodo = 30
End Select
End
Public Sub Button1_Click()
If Respaldo1.Verificar() Then
LabInfo.Text = "se efectuo el respaldo"
Else
LabInfo.Text = "No se realizo respaldo"
Endif
End
Public Sub Button3_Click()
Dialog.Path = User.Home
If Dialog.SelectDirectory() Then Return
txtDestino.Text = Dialog.Path
End
Public Sub Button4_Click()
Shell "stat " & txtOrigen.Text
End
Public Sub Button5_Click()
Shell "touch -a -m -t " & cbxAnios.Text & cbxMes.Text & txtDia.Text & "0000.00 " & txtOrigen.Text
End
Public Respaldo1 As Respaldo
Public Sub Form_Open()
Respaldo1 = New Respaldo(1, txtOrigen.Text, txtDestino.Text)
cbxMes.Index = 9
End
Public Sub Button2_Click()
Dialog.Path = User.Home
If Dialog.OpenFile() Then Return
txtOrigen.Text = Dialog.Path
End
Public Sub cbxPeriodo_Click()
Select Case cbxPeriodo.Index
Case 0
Respaldo1.Periodo = 1
Case 1
Respaldo1.Periodo = 2
Case 2
Respaldo1.Periodo = 3
Case 3
Respaldo1.Periodo = 7
Case 4
Respaldo1.Periodo = 15
Case 5
Respaldo1.Periodo = 30
End Select
End
Public Sub Button1_Click()
If Respaldo1.Verificar() Then
LabInfo.Text = "se efectuo el respaldo"
Else
LabInfo.Text = "No se realizo respaldo"
Endif
End
Public Sub Button3_Click()
Dialog.Path = User.Home
If Dialog.SelectDirectory() Then Return
txtDestino.Text = Dialog.Path
End
Public Sub Button4_Click()
Shell "stat " & txtOrigen.Text
End
Public Sub Button5_Click()
Shell "touch -a -m -t " & cbxAnios.Text & cbxMes.Text & txtDia.Text & "0000.00 " & txtOrigen.Text
End
Clase Respaldo:
' gambas class file
'by postapase (humilde aporte a la comunidad gambera)
Property Periodo As Byte ''1=un día,2=dos días, 3=tres días,7 una semana, 15 una quincena, 30 un mes
Property RutaOrigen As String '' Ruta completa del archivo a respaldar
Property RutaDestino As String '' Lugar donde se respaldara el archivo
Private $Periodo As Byte
Private $RutaOrigen As String
Private $RutaDestino As String
Private $Diferencia As Integer
Private $NameArchivo As String
Private $Rutafinal As String
Private $UltimaModificacion As Date
Public Sub _new(periodo As Byte, origen As String, destino As String) ''Periodo,Origen,Destino
$Periodo = periodo
$RutaOrigen = origen
$RutaDestino = destino
$NameArchivo = File.BaseName($RutaOrigen)
End
Private Function Periodo_Read() As Byte
Return $Periodo
End
Private Sub Periodo_Write(Value As Byte)
$Periodo = Value
End
Private Function RutaOrigen_Read() As String
Return $RutaOrigen
End
Private Sub RutaOrigen_Write(Value As String)
$RutaOrigen = Value
End
Private Function RutaDestino_Read() As String
Return $RutaDestino
End
Private Sub RutaDestino_Write(Value As String)
$RutaDestino = Value
End
Public Sub Respaldar()
If Exist($Rutafinal) Then
Kill $Rutafinal
Wait 0.2
Copy $RutaOrigen To $RutaFinal
Else
Copy $RutaOrigen To $RutaFinal
Endif
End
Public Sub Verificar() As Boolean
$Rutafinal = $RutaDestino &/ $NameArchivo & "_" & Replace$(CString(Date), "/", "-")
$UltimaModificacion = Stat($RutaOrigen).LastModified
$Diferencia = DateDiff($UltimaModificacion, Date, gb.Day) '
If $Diferencia >= $Periodo Then
Respaldar()
Return True
Else
Return False
Endif
End
'by postapase (humilde aporte a la comunidad gambera)
Property Periodo As Byte ''1=un día,2=dos días, 3=tres días,7 una semana, 15 una quincena, 30 un mes
Property RutaOrigen As String '' Ruta completa del archivo a respaldar
Property RutaDestino As String '' Lugar donde se respaldara el archivo
Private $Periodo As Byte
Private $RutaOrigen As String
Private $RutaDestino As String
Private $Diferencia As Integer
Private $NameArchivo As String
Private $Rutafinal As String
Private $UltimaModificacion As Date
Public Sub _new(periodo As Byte, origen As String, destino As String) ''Periodo,Origen,Destino
$Periodo = periodo
$RutaOrigen = origen
$RutaDestino = destino
$NameArchivo = File.BaseName($RutaOrigen)
End
Private Function Periodo_Read() As Byte
Return $Periodo
End
Private Sub Periodo_Write(Value As Byte)
$Periodo = Value
End
Private Function RutaOrigen_Read() As String
Return $RutaOrigen
End
Private Sub RutaOrigen_Write(Value As String)
$RutaOrigen = Value
End
Private Function RutaDestino_Read() As String
Return $RutaDestino
End
Private Sub RutaDestino_Write(Value As String)
$RutaDestino = Value
End
Public Sub Respaldar()
If Exist($Rutafinal) Then
Kill $Rutafinal
Wait 0.2
Copy $RutaOrigen To $RutaFinal
Else
Copy $RutaOrigen To $RutaFinal
Endif
End
Public Sub Verificar() As Boolean
$Rutafinal = $RutaDestino &/ $NameArchivo & "_" & Replace$(CString(Date), "/", "-")
$UltimaModificacion = Stat($RutaOrigen).LastModified
$Diferencia = DateDiff($UltimaModificacion, Date, gb.Day) '
If $Diferencia >= $Periodo Then
Respaldar()
Return True
Else
Return False
Endif
End
dropbox: Clase_Respaldo-0.1.tar.gz
No hay comentarios.:
Publicar un comentario