UGTS Document #14 - Last Modified: 8/29/2015 3:23 PM
ACT 7.0 (2005) Maintenance

ACT 2005 (7.0) is a database program produced by Sage Software. Support for it is available online through Sage's Knowledge Base. ACT works by a client server model using MSDE for database storage and access, and a shared 'personal files' folder on the ACT server using a share name of '[DBName]-Database Files' = [ShareName]. The server can be any machine running Windows XP or later. 

ACT can be installed on a 64-bit machine (XP or 2003), but to do so you must run the ACT7\setup.exe directly.  If you run the setup.exe in the root folder, you will get the error 'The image file ... is valid, but is for a machine type other than the current machine'.

The MDSE database is installed to the instance name 'ACT7', and the database is named [DbName] in this instance (the DbName is chosen by you when you install ACT). The database file has the .MDF database file renamed to an .ADF file extension. You get to choose the path where this database file is stored on the server, but the path is mostly irrelevant to the clients, since they will access the database through a network port directly, and the database files through the share name.

Direct access to the database using SQL server management tools involves a password reset recovery procedure which is not too difficult but doing so breaks the license agreement, and so you may not do it if you use ACT, though that would be useful for automated backup and recovery, and for exploring the file format of the database for data migration and reporting.

The personal files are stored in a folder placed in the same folder as the '[DbName].ADF' file, named '[DbName]-Database Files', and shared with the [ShareName] = '[DbName]-Database Files'. This shared directory should grant full read-write access to every user of ACT. If there is already a directory shared with this share name, then an indexed [ShareName] = '[DbName]-Database Files[N]' will be created instead where N >=1, and the database will point the connecting clients to this alternate share name.

The clients must have ACT installed locally with the same version that is on the server, because the client executable runs on the client, and the shortcut file to the server will only be recognized if ACT is installed.  ACT shortcut files have the file extension .PAD file, which is a text XML file containing simply the name of the host server (name or IP address) and the name of the database [DbName].  There is a local path attribute in the file, but it is ignored.  The PAD file only contains the information needed to find the database.  The database contains the information about where the database file share is.  Double-clicking a PAD file will run ACT and cause the client to open the server pointed to by the PAD file.  This is what a PAD file looks like:

<?xml version="1.0" standalone="no"?>
<!DOCTYPE ACT2005DatabasePADFile>
<!--This file represents a Pointer to an Act Database or [PAD]-->
<ACT2005Database name="PFC" host="PFCD8" location="C:\DATA\ACT\PFC.ADF" type="Sql" /> 

In the above PAD file, the name and host attributes point the client to the database, and the host can be a name or IP address. The location attribute is ignored.

To move an ACT database from one machine to another is a 4-step process:
  • Backup the database and personal files through ACT to two zip files. To do this, run ACT on the server and go to File, Back Up, Database... and select a path for the zip file that will be saved. Repeat for the database files through File, Back Up, Personal Files...

  • Restore these two zip files to the new server machine running ACT. To do this, run ACT on the new server and go to File, Restore, Database... and browse to the zip file backed up from the other server. Then restore the personal files through File, Restore, Personal Files...

  • Share the database on the new server. To do this, run ACT on the new server and go to Tools, Database Maintenance, Share Database. This ensures that the database is accessible from outside, and that the Personal Files share is created, and that the database points correctly to this share. It also creates the PAD file that clients can use to connect to this database on the new server. If you omit this step, you may get the error that the clients cannot find the personal files for the database when they try to connect with a PAD file:  'Cannot find database supplemental files folder [ShareName]' in this location [Server]'.

  • Manually update the PAD file that the clients are using. To do this, just take the existing PAD file, and update the name and host values (again, the location attribute is ignored).
If you encounter additional problems, here is an ACT KB article to help you troubleshoot the problems.

As mentioned before, the ACT MSDE database instance is password protected, and even the local administrator account is not allowed to connect to it. This is done to protect ACT/Sage from reverse engineering by competitors. This also makes it difficult to do an automated unattended backup of the database, because the only supported way to back it up is through the ACT client program. However, you can do an unsupported backup simply by stopping the MSDE services and making a copy of the ADF/LDF files for the database and all of the other database files in the ACT7 instance, along with the personal files folder. Here is a batch file which uses 7-zip to do this:
 
SET ACTSrc="C:\DATA\Act\*.*"
SET ACTDst="C:\DATA\Backup\Act.7z"

NET STOP SQLAGENT$ACT7
NET STOP MSSQL$ACT7

del %ACTDst%
7z a -r -y -mx9 %ACTDst% "C:\Program Files\Microsoft SQL Server\MSSQL$ACT7\Data"
7z a -r -y -mx9 %ACTDst% %ACTSrc%
xcopy %ACTDst% "\\file\recovery\ACT\" /R /Y

NET START MSSQL$ACT7
NET START SQLAGENT$ACT7

Note that this will backup all the files to the destination 7-zip file specified by the path in ACTDst. Restoring from this backup is also unsupported, but in general the procedure (in principle) would be to install a fresh copy of ACT to a new server, and the stop the MSDE services on this server, copy the database files (both the ACT database and the system databases for the ACT7 instance to the same paths as the old server used, and the personal files likewise. Then start the MSDE services, launch ACT and verify that you could connect to the database locally, then share the database again to ensure that other clients are able to connect to it, and update the PAD file used by the clients to point to the new server.