Datensicherung mit Makro

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Datensicherung mit Makro

Re: Datensicherung mit Makro

von Hansi » Di, 16.08.2011 16:36

Hallo,

ich habe eine Lösung für mein Problem gefunden.Im unteren Code seht ihr das ich einfach die Datei nochmal speichere mit einem Datumanhang.Da wird es zwar täglich mit gespeichert,aber das ist der Kompromiss den ich mache.Eine Sache wäre aber doch noch.Es wäre gut wenn die Sicherheitsdatei unter folgenden Verzeichnis gespeichert wird.

file:///C:/Dokumente und Einstellungen/Rene/Eigene Dateien/Winddaten/Backup

Ich bin aber noch nicht dahinter gekommen,wie das mit dem FilePicker geht,ohne noch mal den FilepIcker aufrufen zu müssen.

Code: Alles auswählen

sub AuslagernSpeichern
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object

document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 2

dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(2) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Daten1"
args2(0).Value = ""
args2(1).Name = "Index"
args2(1).Value = 32767
args2(2).Name = "Copy"
args2(2).Value = true

dispatcher.executeDispatch(document, ".uno:Move", "", 0, args2())
  dim dummy()
    odoc = thiscomponent
SFileDialog=createunoservice("com.sun.star.ui.dialogs.FilePicker") 
SFileDialog.Initialize(Array(com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_SIMPLE))
SFileDialog.appendFilter("Windberechnung (*.wsb)", "*.wsb")
SFileDialog.setDisplayDirectory("file:///C:/Dokumente und Einstellungen/Rene/Eigene Dateien/Winddaten/" )
SFileDialog.setTitle("Daten speichern")

iAccept = SFileDialog.Execute()
If iAccept = 1 Then
  If Right(SFileDialog.Files(0),4) =".wsb" then
   mDatei = SFileDialog.Files(0)
   mDateis = SFileDialog.Files(0)+"_"+ date 
    else   
   mDatei = SFileDialog.Files(0)+".wsb"
   mDateis = SFileDialog.Files(0)+".wsb_"+ date
   print mdateis 
  endif  
   oDoc.storeasURL(mDatei,dummy())
   oDoc.storeasURL(mDateis,dummy()) 
  else
   odoc.close(true)
   dim args3(0) as new com.sun.star.beans.PropertyValue
          args3(0).Name = "Nr"
          args3(0).Value = 3
          dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args3())
   beep 
   exit sub  
end if
Speichern2 = msgbox ("Ihre Datei ist gespeichert.Möchtern Sie das Programm beenden ?",4+32,MyString)  
       If Speichern2 = 6 then
          document.close(true)
          odoc.close(true)
       else        
          odoc.close(true)  
          dim args4(0) as new com.sun.star.beans.PropertyValue
          args4(0).Name = "Nr"
          args4(0).Value = 3
          dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args4())
          beep
       end if
end sub 

@@@ Stephan

Du hast mir hier viewtopic.php?f=18&t=48719 einen Code von mottcxo reingestellt.Der gefällt mir sehr gut,nur wann oder durch was beendet der sich ? Das hab ich noch nicht gefunden.

Gruß Hansi

Re: Datensicherung mit Makro

von Stephan » So, 14.08.2011 15:08

ich hab da etwas gefunden,weiß nur noch nicht wie ich den eingelesende Dateinamen aus dem FilePicker herausbekomme
Siehe:
http://www.starbasicfaq.de/Wiekannmanei ... Dialo.html


Gruß
Stephan

Re: Datensicherung mit Makro

von Hansi » So, 14.08.2011 08:45

komma4 hat geschrieben:Warum nimmst Du nicht das Änderungsdatum aus den Dateieigenschaften?
Hmm,ich glaub geht nicht bei mir.

Erklärung,

ich arbeite mit der Datei " Test".Dessen Sicherungsdatei "Testsave" wird in einem anderen Ordner gespeichert.Über den FilePicker hol ich mir die Datei "Test".Nun muß gesprüft werden,wie alt davon die Sicherungsdatei "TestSave" ist.Und wenn ich mit der Datei "Start" über den FilePicker hole,ist es die Sicherungsdatei "StartSave" die überprüft werden sollte.

Re: Datensicherung mit Makro

von komma4 » Sa, 13.08.2011 17:51

Hansi hat geschrieben:Im spezielen FileDateTime.
Warum nimmst Du nicht das Änderungsdatum aus den Dateieigenschaften?

Beispiel;

Code: Alles auswählen

If ThisComponent.DocumentProperties.ModifiedBy > "" Then
      With ThisComponent.DocumentProperties.ModificationDate
         sLastSavedTimeStamp =_
         .Year & "-" & _
         Format( .Month, "00" ) & "-" & _
         Format( .Day, "00" ) & " " & _
         Format( .Hours, "00" ) & ":" & _
         Format( .Minutes, "00" ) & ":" & _
         Format( .Seconds, "00" )          
      End With

Re: Datensicherung mit Makro

von Hansi » Sa, 13.08.2011 15:25

Hi,

ich hab da etwas gefunden,weiß nur noch nicht wie ich den eingelesende Dateinamen aus dem FilePicker herausbekomme.

Hier mal der Link http://www.ooowiki.de/StarBasic

Im spezielen FileDateTime.

Ihr wisst das bestimmt.

Gruß

Re: Datensicherung mit Makro

von komma4 » Sa, 13.08.2011 12:30

Hansi hat geschrieben:Sprich wenn 10 Tage der letzten Datensicherung vorbei sind,muß man an eine neue Datensicherung erinnert werden.
Würde ich über das Betriebssystem lösen...

Linux: cronjob, der eine Liste der zu sichernden Dateinamen ausliest und Kopien (mit angehängtem Zeitstempel) in einem Archivverzeichnis erstellt.

Kann mir gut vorstellen, dass es unter Windows entsprechende Freeware Programme gibt.

Re: Datensicherung mit Makro

von F3K Total » Sa, 13.08.2011 11:20

Hallo,
wenn es sich um ein Calc Dokument handelt, kann man das letzte Backup Datum in einer Zelle speichern. Siehe Anlage.
Das Makro überprüft das aktuelle Datum, meldet wenn das Datum in der Zelle A1 mindestens 10 Tage älter ist und trägt dann das aktuelle Datum in die Zelle ein.

Gruß R
Dateianhänge
remind_backup.ods
(9.07 KiB) 74-mal heruntergeladen

Datensicherung mit Makro

von Hansi » Sa, 13.08.2011 10:42

Hallo Leute,

nun ist es passiert,ich habe meine Daten von 6 Monaten ausversehen gelöscht.Dadurch bin ich auf ein neues Problem gestoßen.Ist es möglich eine Datensicherung per Makro zu machen.Sprich wenn 10 Tage der letzten Datensicherung vorbei sind,muß man an eine neue Datensicherung erinnert werden. 10 Tage deswegen,da ich die letzen 10 Tage noch in meiner Datenfernauslesung drin habe.

Gruß Hansi

Nach oben