The purpose of the tool is to download TeamDesk application data from site to the local machine for backup purposes. As the tool is provided with a source code it can also serve as an example of TeamDesk API programming.
TeamDesk backup tool is provided "as-is" and comes with ABSOLUTELY NO WARRANTY. USE IT AT YOUR OWN RISK. See license.txt for details.
Microsoft.NET Framework is required to run the tool. We used framework v1.1 and v2.0 to compile and perform basic tests for the tool. It may or may not work with other framework versions.
Click on the link to download the executable and the source code: tdbackup.zip
The tool scans tables in the application, finds non-formula, non-system columns and writes the data into CSV format. File attachments are downloaded to "files" subfolder of the backup folder. CSV file record will contain file URL to the downloaded file. As the tool operates in the context of the user account passed in the command line, the account should have at least 'read' access to all tables, columns and records intended for backup. No modifications will be performed on the TeamDesk database during the backup process.
The tool can operate in either full or incremental backup modes.
Full backup mode loads all the records and attachment files, regardless whether they were changed or not.
Incremental backup checks whether the record was updated against local CSV file, and downloads only updated records and attachment files. Prior to performing incremental backup of the table the code checks whether table structure has been changed. CSV data file is readable and in case of all the checks failure, reverts to the full backup logic for the table.
Usage:
tdbackup <url> option {option}
<url> is your application web service URL. You may get web service URL by logging into the application, entering Setup and clicking on Application / Integration API link. Typically it is https://www.teamdesk.net/secure/api/<app-id>/service.asmx
Options: -user=user :required user name to login -password=pwd :required password to login -type=full|incr :backup type, default is incremental -folder=folder :full or relative folder name -verbose :display multiple progress messages
You may abbreviate options to a first letter.
For the folder name you may use {0:format} to include current date and time to the folder name. Format is the combination of format patterns listed below:
dd or d: The day of the month. MM or M: The numeric month. yyyy: The year in four digits. hh or h: The hour in a 12-hour clock. HH or H: The hour in a 24-hour clock. mm or m: The minute. ss or s: The second.
Two-letter format patterns add leading zero to the output in the value are in range of 0..9. Default folder pattern is {0:yyyyMMdd}
-------------------------------------------- Detailed instructions: Download tdbackup.zip, and unpack the content to the folder of your choice, for example "TeamDesk Backup" on disk D:
Click on Start button, choose Run.
Type "cmd" and click OK button. The console will open. In the console window type: D: (or whatever is appropriate), then cd "\TeamDesk Backup"
So, we are at the folder where tdbackup is. Type the following to run the backup process, substituting <yourpassword> with your actual password and <app-id> with your particular application Id:
tdbackup https://www.teamdesk.net/secure/api/<app-id>/service.asmx -u=<yourusername> -p=<yourpassword> -v
Of course, actual yourusername and yourpassword parameters values should NOT be included into figure brackets. |  |