Daan. Posted March 2, 2006 Share Posted March 2, 2006 Is er iemand in de zaal die weet hoe ik een scriptje kan maken zodat er een back-up gemaakt word van het hele filemaker bestand. De naam van dat bestand moet dan zijn: datum+tijd.fp7 Ik ben zover dat hij bij het opstarten een backup maakt met het commando: Save a Copy as[ "bestandsnaam.fp7" ;copy] in het opstart script. Het probleem is alleen dat dit steeds de oude backup overschrijft. Ik zou dus graag de datum en tijd aan het bestandsnaam toevoegen. Gewoon // in bestandsnaam zetten werkt niet. Het moet helaas ook op een windows werken, anders had ik er applescript voor kunnen gebruiken. Iemand een idee, of het al voor elkaar gekregen. Quote Link to comment
0 hbrendel Posted March 2, 2006 Share Posted March 2, 2006 Ik doe dit met behulp van de Troi File plug-in. In FM8 is deze niet nodig. Als je de Troi File plug-in hebt, of deze wilt kopen, maak dan twee globale tekstvelden: 'gExportBestand' en 'gFileResult'. Zet dan de volgende scriptstappen in je script: Set Field [ DatabaseName::gExportBestand; Substitute ( Get ( CurrentTimeStamp ) ; [ ":" ; "_" ] ; [" " ; "_" ] ; [ "-" ; "_" ] ) ] (of hoe je de datum+tijd wilt weergeven) Export Records [ File Name: "file:../Documents/qrstuvwxyz.fp7"; Character Set: "Unicode (UTF-16)"; Field Order: Whatever ] [ No dialog ] Set Field [ DatabaseName::gFileResult; TrFile_CopyFile ( "" ; "qrstuvwxyz.fp7" ; DatabaseName::gExportBestand ) ] Set Field [ DatabaseName::gFileResult; TrFile_DeleteFile ( "" ; "qrstuvwxyz.fp7" ) ] Lees de manual van Troi File plug-in en experimenteer met de syntax van de FileSpecs (deze zijn verschillend voor Mac en Windows) voor een correct resultaat. De cursief weergegeven tekst in de scriptstappen moet je uiteraard vervangen door je eigen tekst. Succes Quote Link to comment
0 Daan. Posted March 2, 2006 Author Share Posted March 2, 2006 Bedankt voor je antwoord, ik ga er mee aaan het stoeien. Quote Link to comment
0 Durk Posted March 6, 2006 Share Posted March 6, 2006 Ik heb dat in een script zo opgelost: Eerst een kopie opslaan. Omdat die naam niet 'interactief' te bepalen valt, krijgt het bestand altijd dezelfde naam. Save a Copy as ["BestandCopy.fp7";copy] Dan hernoemen we die kopie met behulp van een DOS commando (dat ik met Send Event direkt aan het OS stuur), waarbij, gebruik makend van het feit we in Send Event wel 'interactief' een veranderlijke naam kunnen meegeven, calc_backup_date een berekend veld is dat de huidige datum en tijd in het volgende formaat uitspuugt: 6_3_2006_16_10_23, op deze manier: Day (Get (CurrentDate)) & "_" & Month (Get (CurrentDate)) & "_" & Year (Get (CurrentDate) & "_" & Hour (Get (CurrentTime) & "_" & Minute (Get (CurrentTime) & "_" & Seconds (Get (CurrentTime) Het scriptbevel: Send Event ["aevt"; "odoc"; "CMD /c ren BestandCopy.fp7 Bestand_Backup_" & calc_backupdate & ".fp7"] Zodat het hele bestand nu heet: Bestand_Backup_6_3_2006_13_10_23.fp7 Dat is het eigenlijk, maar omdat ik het geheel een beetje overzichtelijk wilde houden en bovendien van DOS-commando's houd heb ik nog vijf subdirectories gemaakt die 'Monday', 'Tuesday', 'Wednesday', 'Thursday' en, je raadde het, 'Friday' heten, om daar de gebackupte bestanden in te bewaren. Die krijg ik daarin door ze via Send Event te verplaatsen. Send Event ["aevt"; "odoc"; "CMD /c move BestandBackup*.* "& DayName (Get (CurrentDate))] Beetje voorzichtig daarmee: ongelukkigen die in het weekend moeten werken, moeten nog mappen voor Zaterdag en Zondag toevoegen en zij die op een niet-Engelstalig OS werken moeten de mappen namen in de taal van dat OS geven. Quote Link to comment
Question
Daan.
Is er iemand in de zaal die weet hoe ik een scriptje kan maken
zodat er een back-up gemaakt word van het hele filemaker bestand.
De naam van dat bestand moet dan zijn: datum+tijd.fp7
Ik ben zover dat hij bij het opstarten een backup maakt met het commando:
Save a Copy as[ "bestandsnaam.fp7" ;copy] in het opstart script.
Het probleem is alleen dat dit steeds de oude backup overschrijft.
Ik zou dus graag de datum en tijd aan het bestandsnaam toevoegen.
Gewoon // in bestandsnaam zetten werkt niet.
Het moet helaas ook op een windows werken, anders had ik er applescript voor kunnen gebruiken.
Iemand een idee, of het al voor elkaar gekregen.
Link to comment
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.