<% '============================================================== ' TableEditoR 0.81 Beta ' http://www.2enetworx.com/dev/projects/tableeditor.asp '-------------------------------------------------------------- ' File: te_compactall.asp ' Description: Bulk Compact databases ' Initiated By ? on ? '-------------------------------------------------------------- ' Copyright (c) 2002, 2eNetWorX/dev. ' ' TableEditoR is distributed with General Public License. ' Any derivatives of this software must remain OpenSource and ' must be distributed at no charge. ' (See license.txt for additional information) ' ' See Credits.txt for the list of contributors. ' ' Change Log: '-------------------------------------------------------------- ' # May 21, 2002 by Rami Kattan ' Fixes few bugs, when filename has ; for password ' # May 30, 2002 by Rami Kattan ' Backup now makes a copy of the original file itself, not ' a compacted version '============================================================== bOnlyBackup = (request.querystring("onlybackup") = "true") %> <% if bAdmin = False then response.write "Not authorized to view this page." %><% response.end end if if not bBulkCompact then %>

Bulk compact/backup is not allowed !!!

<% else %>

Home » Connections » <% if bOnlyBackup then response.write "Backup" else response.write "Compact" %> Databases <% if bProtected then response.write session("teFullName") response.write " (logout)" end if %>
<% dim lConnID sub ShowForm %>

<% If not bOnlyBackup Then %> All Access Databases will be compacted.
After compacting, the original files will be renamed to ".(date/time).bak" extension as a backup.

During the compact process, ".temp.mdb" files will be created, and after the compact is successful, they will be deleted.

Compacting may take some time depending on your databases sizes. The changes made to the database during the compacting will not be saved. <% Else %> All Access Databases will be backed-up.
The backup files will have the name with ".(date/time).bak" extension as a backup.

Backing up may take some time depending on your databases sizes. The changes made to the database during the backup will not be saved. <% End If %>

<% If not bOnlyBackup Then %> Are you sure that you want to compact all databases? <% Else %> Are you sure that you want to backup all databases? <% End If %>

Yes  ">No <% end sub if request("sure")<>"" then %>

Compact Databases

Please wait, compacting loaded connections...

 

<% For lConnID = 1 to iTotalConnections if arrType(lConnID) = tedbAccess Then Compact lConnID end if Next Response.Write "

Complete" else ShowForm end if Sub RenameFile(sFrom, sTo) Dim fso, f Set fso = CreateObject("Scripting.FileSystemObject") sDateTimeStamp = "." & year(now) & LeadingZero(month(now),2) & LeadingZero(day(now),2) & "-" & LeadingZero(hour(now),2) & LeadingZero(minute(now),2) & LeadingZero(second(now),2) ShortFileName = arrDBs(lConnID) sFileFromParts = split(ShortFileName, ";") ShortFileName = sFileFromParts(0) If not bOnlyBackup Then fso.MoveFile sTo, left(Server.MapPath(ShortFileName), InStr(Server.MapPath(ShortFileName), ".mdb")-1) & sDateTimeStamp & ".bak" fso.MoveFile sFrom, sTo Else fso.CopyFile sTo, sTo & sDateTimeStamp & ".bak" End If End Sub Sub Compact(lConnID) ShortFileName = arrDBs(lConnID) sFileFromParts = split(ShortFileName, ";") ShortFileName = sFileFromParts(0) If not bOnlyBackup Then response.write "

Compacting '" & arrDesc(lConnID) & "'..." else response.write "

Backing up '" & arrDesc(lConnID) & "'..." end if sFileFrom = Server.MapPath(ShortFileName) sFileTo = left(sFileFrom, InStr(sFileFrom, ".mdb")-1) & ".temp.mdb" If not bOnlyBackup Then sConnFrom = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & sFileFrom sConnTo = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & sFileTo set jro = server.createobject("jro.JetEngine") jro.CompactDatabase sConnFrom, sConnTo if err <> 0 then bError = True response.write "Error Compacting Database:
" & err.description end if err.clear end if RenameFile sFileTo, sFileFrom if err <> 0 then bError = True response.write "Error Renaming Tempory File:
" & err.description end if if not bError then If not bOnlyBackup Then response.write "
Compacting successful." else response.write "
Backing up successful." end if else response.write "
Errors occured." end if response.write "

" & vbCrLf end sub %>

<% end if %>