Configuring and Deploying Tracker.Net

System Requirements

This version of Tracker.Net requires the .NET 4.5 runtime on the web server. In addition, the Microsoft Report Viewer 2012 needs to be installed on the web server. The Tracker Configuration Program can launch this for you or you can run ReportViewer.exe yourself. If you need to support multiple languages, you need to install the localized versions of Report Viewer as well. Tracker distributes the Spanish, German, and French versions. They are contained in their own directories and are each named ReportViewer.msi. Again, the Tracker Configuration Program can launch these for you. You can download the 2012 Report Viewer and the various language packs at http://www.microsoft.com/en-us/download/details.aspx?id=35747. You want to change the language on the screen to language you want to download before downloading the language pack.

Database, Password Key, Access Key, and Timeout Settings (Web.config)

The Web.config file in the root of your Tracker.Net application directory controls access to the Tracker.Net and the location of your SQL Server database. The Tracker Configuration Program launched by the Installation and also available from the Start Menu writes the location, username, and password of your selected database, but you will need to edit the version of Web.config that you place on your production web server. For example, here is a typical Web.config from a Tracker.Net installation on your local development machine:

<configuration>
	<appSettings>
		<add key="ConnectionString" value="server=(local);uid=test;pwd=test;database=Tracker" />
		<add key="PasswordKey" value="xyz"/>
		<add key="TrackerNetAccessKey" value="12345"/>
        	<add key="TrackerScormWrapperAccessKey" value="6697859"/>
	</appSettings>

The server is usually (local) or localhost when running on your local machine, though it can also be something like JEFF-8\SQL2008. When connecting to another SQL Server (e.g., located on the Internet), you typically would use server name, an IP address, or an alias (created with SQL Server's Client Network Utility [SQL Server 2000] or Configuration Manager [SQL Server 2005/2008/2012]). Tracker.Net uses SQL Server rather than Windows authentication. If your SQL Server is not configured for SQL Server authentication, you can change this in the server properties (Security tab). One way to determine what to use for the server is to open Enterprise Manager [SQL Server 2000] or Management Studio [SQL Server 2005/2008/2012] and see what is listed as the server name.

The uid is the SQL Server username and the pwd is the corresponding password. This user must have sufficient permissions to view, add, and delete data.

The database is the name of the database which holds the various Tracker.Net tables and stored procedures. The Tracker Configuration Program will create a database if the user has sufficient permissions. For your production web server, you will typically be given a particular database name that you must use.

The PasswordKey affects the encrypted value of your passwords in the database. This is only relevant if Store Encrypted Student Passwords is set to False and Use Tracker.Net version 2 Encryption is also False on the Global Settings screen. If you need to change this key, all encrypted passwords in the database will be invalid. The best way to do this is to 1) allow Open Enrollment, 2) change the PasswordKey in Web.config, and 3) open the Tracker_Students table directly and enable Administrator access for that student. From there, you can use the Administrator to give known new passwords to existing students. If Force Students Added via Administrator to Change Password is set to True on the Global Settings screen, students whose passwords are adjusted this way will be prompted to change their passwords the next time they log in.

The TrackerNetAccessKey is used by the separate Tracker Scheduler program to send reports, check file dates/versions, and other tasks. You should customize this to a value of your choosing and then pass the key onto users of the Scheduler.

The TrackerScormWrapperAccessKey is used by the separate Remote Tracker program to allow the hosting to lessons on remote web sites. If you are using this program, you will want to customize this value and coordinate that value with your Remote Tracker instances.

When you place Tracker.Net on a web server, you need to manually edit Web.config to point to your production SQL Server. Here's an example (with the IP address, uid, and pwd changed for security reasons):

<configuration>
	<appSettings>
		<add key="ConnectionString" value="server=64.22.66.7;uid=platte;pwd=canyon;database=db49" />
		<add key="PasswordKey" value="xyz"/>
		<add key="TrackerNetAccessKey" value="12345"/>
		<add key="TrackerScormWrapperAccessKey" value="6697859"/>
	</appSettings>

There are various timeout settings in Internet Information Services (IIS) as well as on the Global Settings screen. But along with setting these to desired values (at least longer than the longest expected session), you may want to edit the session timeout value in Web.config. The value is in minutes:

<sessionState timeout="240"/>

The Tracker Configuration Program

The Tracker Configuration Program allows you to 1) automatically create the "Tracker" and "TrackerSamples" virtual directories in IIS needed to run Tracker.Net on your local machine, 2) install the Report Viewer 2012 and optional language packs on your server and, most importantly, 3) transfer the Tracker.Net tables, relationships, and stored procedures to the selected SQL Server database. You can access this editor via Start Menu - Programs - VBTrain - Tracker.Net 6 - Tracker Configuration Program. We recommend that you use this editor to configure your production SQL Server database as well.

The Tracker Student Import Utility

The Tracker Student Import Utility allows you to convert import students from a text file. You can choose the delimiter, default options for various parameters, the type of encryption for the password, etc. It also allows you to assign the imported students to one or more classes. You can access this program via Start Menu - Programs - VBTrain - Tracker.Net 6 - Tracker Student Import Utility.

Tracker Scheduler

The Tracker Scheduler is a separately-priced client-side (Windows) application that allows you to schedule various course, class, and organization emails. It also has the ability to compare your file dates and versions against a master list stored on the Internet. See the Tracker Scheduler help file for more information.

Tracker Store

The Tracker Store is a separately-priced online store for selling your courses and classes online. See its help file for more information.

Remote Tracker

Remote Tracker is a separately-priced web application for hosting your lessons on a different domain/web site. See its help file for more information.

Tracker Reports / Tracker Reporter

Tracker Reports is a separately-priced Microsoft SQL Server Reporting Services application similar to the reports within Tracker.Net itself. Tracker Reporter is a separately-priced client-side (Windows) reporting application. It allows the user to connect directly to the database and created reporters without using a web application at all. You can learn more about both products at http://www.trackerreports.com.

Administrator and Reporter Security

Tracker.Net uses both "Forms" and "Roles" security. The "Forms" part keeps Students from going to any web page except Default.aspx until they successfully log on or are verified via Windows Authentication. In addition, "Roles" security prevents Students from accessing Administrator or Reporter pages if they have not been given appropriate permissions in the Administrator Students screen. The Web.config files in the /Administrator and /Reporter directories are critical to this process. Be sure not to edit or forget to transfer these files. Beyond that, you should not need to make changes to the security mechanism.

Transferring Tracker.Net to a Web Server

To deploy Tracker.Net, use FTP to transfer the Tracker.Net project to your server. Ask your System Administrator to configure Internet Information Services (IIS) on the server so that the directory with Tracker.Net is its own application. Then transfer the entire directory structure. For those of you who have purchased source code, you can omit .sln, .vbproj, and .vb files if you would like, but it does not hurt anything to put them on the server as well. The rest of you won't have these files anyway. It is critical that all .aspx, Web.config (see edits above), and .dll files are transferred. Be sure to preserve the directory structure as well.

Configuring SQL Server

We recommend using the Tracker Configuration Program to configure both your local and product SQL Servers. However, with appropriate permissions, you can use SQL Server's Enterprise Manager [SQL Server 2000] or Management Studio [SQL Server 2005/2008/2012] to attach a completely configured database to the server supporting your web site. Contact your System Administrator or contact Platte Canyon technical support for details on this process. Another alternative is to copy contents of the tracker.sql file and use SQL Server Query Analyzer [SQL Server 2000] or Management Studio - New Query [SQL Server 2005/2008/2012] on a blank database to configure it. Still another alternative is to edit the tracker.sql file located in the same directory as the program in order to customize the data in the Courses, Students, and other tables. Platte Canyon does not provide support on this process, however. If you need to maintain both a local/test server and a production server, we recommend using products like Red-Gate Software's Sql Data Compare (http://www.red-gate.com/products/sql-development/sql-data-compare) and Sql Compare (http://www.red-gate.com/products/sql-development/sql-compare) to keep your databases synchronized.

See Also

Administrator screen