VSS Data Export
VSS Data Export extracts all the file
and project information from MS Visual SourceSafe to an SQL server or Access
database. The application is ideal for:
- Monitoring and enforcing SourceSafe usage policies.
- Performing advanced queries.
- Extraction of source history for record keeping (e.g. version, comments,
labels).
The export may include labels, comments, checkout
status, SourceSafe paths, local paths, item version information etc. etc. The
only piece of data not extractable is the file data itself!!

VSS Data Export - User Guide
Minimum requirements:
- NT4 or higher
- MS Visual SourceSafe 6
- MS Access 2000 or MS SQL Server 7 (or higher) or MSDE
- On NT4 make sure MDAC2.5 is installed, on Windows2000 this is installed
by default
To install, download the application and run the self
extracting installation. Follow the installation wizard steps.
back to top
Start
the application from the VSS Data Export program group. The user interface is
organized in two tabs. The first tab configures MS Visual SourceSafe export
settings, the second configures the target database.

Performing an export will at least require you to select the Visual SourceSafe database, enter the VSS login
credentials and click Export. Through the VSS tab you can further specify the
data to be
exported. In this manner the export is faster and contains only
the required elements. The following VSS export parameters can be configured:
- The base SourceSafe path to start exporting from.
- Selection to include/exclude sub-projects.
- Selection between exporting
projects only or both
projects and file items.
- Selection to include/exclude version and checkout information.
- Selection to include/exclude
deleted files and projects.

Through the VSS Project browser you can quickly choose the
root from which to start the export. This also enables you to browse deleted
(but not purged) projects. If you do choose a deleted project make sure to
enable export of deleted items by setting the 'Include Deleted Items'
check-box, otherwise the export fails.
back to top


By default VSS Data Export will use an Access database as a
target destination. When exporting to MS Access, just make sure that the DB tab has its
'Export To:' set to 'MS Access Database'. Hit the Export button to start
exporting. The 'VSS Data Export Progress' dialog will open showing the export
status. Once completed, click on 'Save As...' button in order to specify the
destination mdb file where the data should be saved.
back to top
Exporting to SQL Server 7 (or higher) involves two steps
- Creating the database
- Performing the export
On the DB tab select 'SQL Server/MSDE Database' in the 'Export
To:' selection option. This will enable the SQL configuration settings.
Specify the SQL/MSDE server machine name and the SQL login credentials. In
order for us to create the database the SQL login user must have enough access
rights to create databases. Click on 'Create DB' button to start the
database creation process. Once ready a database named vss2sql will be created
on the destination server.
Creating the database is only required when running the
application for the first time. Once created VSS Data Export will always
re-use the same database. This means that SQL login credentials for performing
an export need not have database creation access rights. Of course if the
export needs to run against a new SQL server then Database creation must be
run again.
After creating the database click on the Export button. The 'VSS
Data Export Progress' dialog will open showing the export status. Once ready, run
the SQL Enterprise Manager to see the data that was exported.
SQL enables performing exports from a single
machine. Once the data is within the SQL server, client applications such as MS Access
could be used to retrieve the data from any machine. Using MS Access
simply involves creating a project file linked to the SQL server database.
When used in combination with SQL, VSS Data Export always re-uses the same database.
This gives the possibility to customize the database with frequently used
queries making them available to all users. In case
of MS Access the export always involves re-creating a new mdb, hence any saved
queries are lost whenever re-running the export.
back to top
VSS Data Export creates databases with four linked tables:
Projects, Files, File Checkouts, and File Versions. The linkage enables you to
easily join tables to form complex queries. The diagram that follows shows the
table linkage view from MS Access.

back to top
List the files under the Project '$/OLE/DragDrop'
SELECT VSSPath
FROM FileTable
WHERE VSSPath LIKE "$/OLE/DragDrop/*";
Get the list of files labeled as "Build1234"
SELECT [FileTable].[VSSPath]
FROM FileTable INNER JOIN VerTable ON [FileTable].[FileID]=[VerTable].[FileID]
WHERE ([VerTable].[Label]="Build1234");
Get the list of Projects having files labeled as
"Build1234"
SELECT DISTINCT [ProjectTable].[VSSPath]
FROM (ProjectTable INNER JOIN FileTable ON [ProjectTable].[ProjectID]=[FileTable].[ProjectID])
INNER JOIN VerTable ON [FileTable].[FileID]=[VerTable].[FileID]
WHERE ([VerTable].[Label]="Build1234");
Get all Projects checked-out to the user "Administrator"
SELECT DISTINCT [ProjectTable].[VSSPath]
FROM (ProjectTable INNER JOIN FileTable ON [ProjectTable].[ProjectID]=[FileTable].[ProjectID])
INNER JOIN COutTable ON [FileTable].[FileID]=[ COutTable].[FileID]
WHERE ([COutTable].[UserName]="Administrator");
List all deleted files that were not purged yet.
SELECT VSSPath
FROM FileTable
WHERE Not (IsDeleted=0);
back to top
VSS Data Export creates a text report whenever performing an
export. The report has a fixed path and filename <VSS Data Export dir.>\ExportResult.txt
This file is over-written with every new export. Hence if you need to save the report, the file must be copied to some other location.
You will find reporting most useful when running VSS Data
Export in command-line non-interactive mode. The reports contain the
information that follows:
Export Headers - This includes the date and time when the
export was performed.
Export Parameters - The settings used to perform the
export such as VSS database path, VSS User login name, SQL server details etc.
VSS Projects/Files Exported - A list of VSS paths
identifying which items were exported.
Error Reports - If the export fails the report will
contain valuable details through which it is normally easy to identify the
cause of the problem.
back to top
In all, VSS Data Export can be run in three modes listed below:
-
Standard Interactive Mode - This is the default
mode in which the application runs if you select 'VSS Data Export' from
the program group.
-
Command-Line Interactive Mode - In this mode VSS
Data Export takes export parameters through command-line. It is still
interactive since a number of dialogs pop-up at various stages of
execution.
-
Command-Line Non-Interactive Mode - The application
takes export parameters though command-line and performs the export
silently without any dialogs.
The two command-line modes are activated by specifying
/QUIET OFF for command-line interactive and /QUIET ON for command line
non-interactive. Details
on all possible parameters is available from the application program group, 'Command-line Export'.
The most common use of the command-line
non-interactive mode is to setup scheduled tasks using the Windows Task
Scheduler. In this manner the VSS data can be automatically kept in sink with
the target database. For a step-by-step description of how to setup automated
exports and troubleshooting check the article Scheduling VSS Exports.
back to top
Scheduling VSS Exports
Click here for details on how to
setup scheduled VSS exports using VSS Data Export and the windows scheduler.
back to top
VSS Data Export is a freeware application. Nevertheless we would like to make sure that the
application works without any problems and that its functionality meets your
needs. Hence if you have any feedback or support please mail to: support@windeveloper.com
When reporting export failure problems, please make sure
to include a copy of the export report file. This is automatically generated
whenever performing an export and is located under <VSS Data Export dir.>\ExportResult.txt
back to top