Dick,
Here is what I use to keep 7 days of backup.
Needs some cleanup but you get the idea.
Jan
CLEAR VAR iv%,vCaption,vTotConnections,vYesNo,vPauseMsg,vCurrentDBName, +
vBackupFile1,vBackupFile2,vBackupFile3,vBackupFile4,vDialogMsg,vChkDir
DISCONNECT
SET STATICDB ON
SET FASTLOCK ON
SET ERROR MESSAGE 2495 OFF
CONNECT C:\EquipMgr91\EquipMgr IDENTIFIED BY NONE
SET ERROR MESSAGE 2495 ON
CD C:\EquipMgr91\
SET VAR vCaption TEXT = ' DB Maintenance - Reload Database'
SET VAR vTotConnections INTEGER = 0
SET VAR vYesNo TEXT = 'No'
IF (CVAL('DATABASE')) IS NULL THEN
PAUSE FOR 10 USING 'No Database Connected to RELOAD!' +
CAPTION .vCaption ICON STOP +
BUTTON 'Click here to ontinue ...' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_NAME Verdana +
|MESSAGE_FONT_COLOR RED +
|MESSAGE_FONT_SIZE 10 +
|MESSAGE_FONT_BOLD ON +
|MESSAGE_FONT_ITALIC OFF +
|MESSAGE_FONT_STRIKEOUT OFF +
|BUTTON_COLOR WHITE +
|BUTTON_FONT_COLOR GREEN
GOTO Done
ENDIF
-- Check connectons
SET VAR vTotConnections = (INT(CVAL('Connections')))
IF vTotConnections <> 1 THEN
PAUSE FOR 10 USING 'Someone else is still connected to the database!' +
CAPTION .vCaption ICON STOP +
BUTTON 'Click here to continue ...' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_NAME Verdana +
|MESSAGE_FONT_COLOR RED +
|MESSAGE_FONT_SIZE 10 +
|MESSAGE_FONT_BOLD ON +
|MESSAGE_FONT_ITALIC OFF +
|MESSAGE_FONT_STRIKEOUT OFF +
|BUTTON_COLOR WHITE +
|BUTTON_FONT_COLOR GREEN
GOTO Done
ENDIF
CLS
SET VAR vIntDayOfWeek = (IDWK(.#DATE))
--Setting Up directories and database
SET VAR vChkDir1 = (CHKFILE('C:\EquipMgr91\BACKUP\Day1'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day1
ENDIF
SET VAR vChkDir2 = (CHKFILE('C:\EquipMgr91\BACKUP\Day2'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day2
ENDIF
SET VAR vChkDir3 = (CHKFILE('C:\EquipMgr91\BACKUP\Day3'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day3
ENDIF
SET VAR vChkDir4 = (CHKFILE('C:\EquipMgr91\BACKUP\Day4'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day4
ENDIF
SET VAR vChkDir5 = (CHKFILE('C:\EquipMgr91\BACKUP\Day5'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day5
ENDIF
SET VAR vChkDir6 = (CHKFILE('C:\EquipMgr91\BACKUP\Day6'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day6
ENDIF
SET VAR vChkDir7 = (CHKFILE('C:\EquipMgr91\BACKUP\Day7'))
IF vChkDir1 <> 1 THEN
MD C:\EquipMgr91\BACKUP\Day7
ENDIF
--Reload DataBase
DISCONNECT
SET STATICDB ON
SET FASTLOCK ON
SET ERROR MESSAGE 2495 OFF
CONNECT C:\EquipMgr91\EquipMgr IDENTIFIED BY NONE
SET ERROR MESSAGE 2495 ON
-- Get the current database name
SET VAR vCurrentDBName = (CVAL('Database'))
SET VAR vBackupFile1 = ('C:\EquipMgr91\'+.vCurrentDBName+'.RX1')
SET VAR vBackupFile2 = ('C:\EquipMgr91\'+.vCurrentDBName+'.RX2')
SET VAR vBackupFile3 = ('C:\EquipMgr91\'+.vCurrentDBName+'.RX3')
SET VAR vBackupFile4 = ('C:\EquipMgr91\'+.vCurrentDBName+'.RX4')
SET VAR vDataBaseLocation = ('C:\EquipMgr91\')
SET VAR vBackUpLocation = +
('C:\EquipMgr91\BACKUP\Day'+(CTXT(.vIntDayOfWeek))+'\')
DISCONNECT
SET MULTI OFF
--Setting up messages and pause
SET VAR vB1 = (CHAR(003))
SET VAR vBar = (CHAR(003))
SET VAR vB5 = (.vB1 + .vB1 + .vB1 + .vB1 + .vB1)
SET VAR vB10 = (.vB5 + .vB5)
SET VAR vB25 = (.vB10 + .vB10 + .vB5)
SET VAR vBarSize INTEGER = 0
SET VAR vProcessing = 'AutoChecking DataBase'
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+ (CHAR(013)) )
PAUSE 3 USING .vMsg +
CAPTION 'Processing .... ' +
ICON APP +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON
GOTO Next
--AUTOCHECK DATABASE EquipMgr
SET VAR vAutoCheck = +
('C:\EquipMgr91\'+.vCurrentDBName)
SET ERROR VAR E1
AUTOCHK &vAutoCheck
IF E1 > 40 THEN
PAUSE 1 USING 'AUTOCHK has found errors in the database!'
GOTO Done
ENDIF
IF E1 > 0 and E1 < 50 THEN
PAUSE 1 USING 'AUTOCHK will not run - User Abort or Out of Memory'
GOTO Done
ENDIF
IF E1 = 0 THEN
GOTO Next
ENDIF
LABEL Next
SET VAR vProcessing = 'Deleting Previous Backups'
SET VAR vBarSize = 10
SET VAR vBar = (.vB10)
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+ (CTXT(.vBarSize))+'
%' +(CHAR(013))+ +
.vBar + (CHAR(009))+ (CHAR(013)))
PAUSE 4 USING .vMsg +
CAPTION 'Step 1 of 5 Completed .... ' +
ICON APP +
BUTTON 'OK' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON
--Delete Old Backups for DataBase EquipMgr
SET VAR vDeleteBackup = +
('C:\EquipMgr91\BACKUP\Day'+(CTXT(.vIntDayOfWeek))+'\'+.vCurrentDBName+'.RX?')
SET ERROR MESSAGE 2077 OFF
ERASE &vDeleteBackup
SET ERROR MESSAGE 2077 ON
SET VAR vProcessing = 'Copying Database to BACK2'
SET VAR vBarSize = 15
SET VAR vBar = (.vBar + .vB5)
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+ (CTXT(.vBarSize))+'
%' +(CHAR(013))+ +
.vBar + (CHAR(009))+ (CHAR(013)))
PAUSE 4 USING .vMsg +
CAPTION 'Step 2 of 5 Completed .... ' +
ICON APP +
BUTTON 'OK' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON
--Copying Database to BACK2 for DataBase EquipMgr
COPY &vBackupFile1 &vBackUpLocation
COPY &vBackupFile2 &vBackUpLocation
COPY &vBackupFile3 &vBackUpLocation
COPY &vBackupFile4 &vBackUpLocation
SET VAR vProcessing = 'Reloading Database'
SET VAR vBarSize = 40
SET VAR vBar = (.vBar + .vB25)
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+ (CTXT(.vBarSize))+'
%' +(CHAR(013))+ +
.vBar + (CHAR(009))+ (CHAR(013)))
PAUSE 4 USING .vMsg +
CAPTION 'Step 3 of 5 Completed ....' +
ICON APP +
BUTTON 'OK' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON
--Reloading Database for DataBase EquipMgr
DISCONNECT
SET STATICDB ON
SET FASTLOCK ON
SET MULTI OFF
SET ERROR MESSAGE 2495 OFF
CONNECT C:\EquipMgr91\EquipMgr IDENTIFIED BY NONE
SET ERROR MESSAGE 2495 ON
SET ERROR MESSAGE 2077 OFF
DELETE C:\EquipMgr91\ABC.RX?
SET ERROR MESSAGE 2077 ON
RELOAD C:\EquipMgr91\ABC
DISCONNECT
SET VAR vProcessing = 'Restoring Database'
SET VAR vBarSize = 95
SET VAR vBar = (.vBar + .vB25 + .vB25 + .vB5)
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+ (CTXT(.vBarSize))+'
%' +(CHAR(013))+ +
.vBar + (CHAR(009))+ (CHAR(013)))
PAUSE 4 USING .vMsg +
CAPTION 'Step 4 of 5 Completed .... ' +
ICON APP +
BUTTON 'OK' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON
--Copying Reloaded Database for DataBase EquipMgr
ERASE &vBackupFile1
ERASE &vBackupFile2
ERASE &vBackupFile3
ERASE &vBackupFile4
RENAME C:\EquipMgr91\ABC.RX1 EquipMgr.RX1
RENAME C:\EquipMgr91\ABC.RX2 EquipMgr.RX2
RENAME C:\EquipMgr91\ABC.RX3 EquipMgr.RX3
RENAME C:\EquipMgr91\ABC.RX4 EquipMgr.RX4
SET VAR vProcessing = 'Process Completed'
SET VAR vBarSize = 100
SET VAR vBar = (.vBar + .vB5)
SET VAR vMsg = +
((CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+
+
(CHAR(009))+(CHAR(009))+(CHAR(013))+ +
(CHAR(009))+ .vProcessing + (CHAR(009))+(CHAR(013))+ +
(CHAR(013))+ +
(CHAR(009))+(CHAR(009))+(CHAR(009))+(CHAR(009))+ (CTXT(.vBarSize))+'
%' +(CHAR(013))+ +
.vBar + (CHAR(009))+ (CHAR(013)))
--Process Completed
PAUSE FOR 1 USING .vMsg +
CAPTION 'Step 5 of 5 Completed .... ' +
ICON APP +
BUTTON 'OK' +
OPTION BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_BOLD ON +
|BUTTON_COLOR WHITE +
|BUTTON_FONT_COLOR GREEN
LABEL Done
CLEAR VAR iv%,vCaption,vTotConnections,vYesNo,vPauseMsg,vCurrentDBName, +
vBackupFile1,vBackupFile2,vBackupFile3,vBackupFile4,vDialogMsg,vChkDir
CLS
EXIT
RETURN
-----Original Message-----
From: Dick Fey <[email protected]>
To: [email protected] (RBASE-L Mailing List)
Date: Thu, 22 Sep 2011 15:42:05 -0500
Subject: [RBASE-L] - Re: Rename command
I have a backup program on the server that copies the DB overnight
to the other server. But it will only write to one folder.
Thought I could manipulate the folder names from our morning
startup file to keep a 5 day running backup.
Looks like I will have to resort to Plan B...... once I figure out
what the heck that might be.
Dick Fey
On 9/22/2011 3:33 PM, jan johansen wrote:
Can you do it outside of R:BASE?
There's been a few times that I just did it external.
I figured it had to permissions from inside R:BASE but I don't do
it very often.
-----Original Message-----
From: Dick Fey <[email protected]>
To: [email protected] (RBASE-L Mailing List)
Date: Thu, 22 Sep 2011 15:16:53 -0500
Subject: [RBASE-L] - Re: Rename command
No matter how I configure the command, it still gives the
error message
"ERROR - Syntax is incorrect for the command RENAME (2045)"
Including when I copy and paste Dennis' command line.
Dick Fey
On 9/22/2011 3:00 PM, [email protected] wrote:
Good catch, Dennis. That trips me up too. When you use the
"rename" command you cannot repeat the directory path.
Karen
In a message dated 9/22/2011 2:45:11 PM Central Daylight
Time, [email protected] writes:
Only the filename is to be changed so the syntax is:
Rename R:\server\backup MonBup
Dennis McGrath