Contents
CyberMatrix Timesheets is a single or multi-user employee timesheet entry tool. It is an ideal solution for those companies wishing to move beyond their existing paper-based or spread-sheet timesheet system.
Installing Timesheets
Getting Started
Using Timesheets
Preventing Data Corruption
Multi-language support
Frequently Asked Questions
Purchase Information
License
Feedback
Other CyberMatrix Software
Find up to date information on all CyberMatrix software at:
http://www.cybermatrix.com
About Timesheets
Timesheets is a single or multi-user employee time entry tool. It is an ideal solution for those companies wishing to move beyond their existing paper-based or spread-sheet timesheet system.
Please note that Timesheets is not free software; it is trial software. You may evaluate it at no charge, but to continue using the program you must purchase a license to use it from CyberMatrix.
Timesheets is copyright (C) 2003-2008, by CyberMatrix Corporation, Inc. All rights reserved. Anything not explicitly allowed below is prohibited.
This software is provided "as is". In no event shall CyberMatrix Corporation be liable for any consequential, special, incidental or indirect damages of any kind arising out of the delivery, performance or use of this software. This software has been written with great care but CyberMatrix does not warrant that the software is entirely error free.
You may not attempt to reverse compile, modify, translate or disassemble the software in whole or in part.
You may freely distribute the trial version of Timesheets, provided that all the files are included and are unmodified and that no files have been added to the package. Please distribute it by copying the original zip file. You may not ask any money for the distribution.
If you want to put this application on a CD-ROM or other software compilation, please contact CyberMatrix before doing so. This is to ensure that old or incomplete files are not included in the compilation.
You may evaluate the trial version of Timesheets without any charge for a period of 30 days. After that time, the program must be registered with CyberMatrix or you must completely remove the program from your computer. Each person who will use the program must have a separate license. A site license allows every user in your company to use the software. After 30 days from the time of installation the software will cease functioning but can still be registered.
Installing Timesheets
Installing Timesheets Standard
Installing Timesheets Client/Server
Installing Timesheets Enterprise
Installing Timesheets Web
Installing Timesheets Standard
There are three ways Timesheets Standard can be installed:
On a single user's machine.
On a shared network location where the program and data is accessed by all users.
On every user's machine with only the data stored on the network.
Note: if installing this software for use by multiple people, all people must have read/write access to the Data folder on the shared drive.
Installing Timesheets on a single machine
Use the setup program to make the initial install on a local drive for a single-user. When prompted for an installation type, choose the first option, Standard. The data will be stored in the common Application Data\CyberMatrix\TimeSheets folder. i.e. C:\Documents and Settings\All Users\Application Data\CyberMatrix\TimeSheets. If you want to use a data folder in another location, you should choose the Client Only option, when at the installation type selection screen. Otherwise, you will have to change the Data Path setting in the configuration screen. The DataPath setting is stored in a text file called CMTimesheets.ini. This file can be found in the user Application Data\CyberMatrix folder. E.g. C:\Documents and Settings\Administrator\Application Data\CyberMatrix\CMTimesheets.Ini.
Installing Timesheets on one or more machines with network-shared data
There are two ways CyberMatrix Timesheets can be installed in order to share data with multiple people: fully-shared and shared-data-only.
Fully-Shared Setup
In a fully-shared setup, the program and all data are installed on a shared network location. Users will use icons to access the software. To tell the program where the shared data is located, you will need to either:
1) Enter the data path when you see the file missing message after trying to run the software on each client or
2) Copy over a CMTimesheets.ini file containing the DataPath setting to each client's C:\Documents and Settings\All Users\Application Data\CyberMatrix\ folder.
3) Install the shared data folder in a folder called "Data" off the shared program folder. That is, if you installed Timesheets into a folder called I:\Shared\Timesheets, just install the data to I:\Shared\Timesheets\Data.
To install only the data on the network and install CyberMatrix Timesheets on only one machine with network-shared data, do the following:
Run the setup program on a single machine.
Choose the Data Only option, when at the installation type selection screen.
Install the data in a folder everyone using it can write to.
After installing the data, run the setup program again to install CyberMatrix Timesheets on all the machine that will host the software. Choose the Client Only option when at the installation type selection screen.
At the Enter Network Data Location prompt screen, enter the network data folder where you installed the data previously.
Data Only-Shared Setup
In a shared-data-only setup, just the data resides on a shared network location. The software and other support files reside on the user's own computer. Installing CyberMatrix Timesheets in this way will generally be faster since the program executable will not always be pulled down through the network. However, installation and applying updates will involve significantly more work.
To install only the data on the network and install Timesheets Standard on one or machines with network-shared data, do the following:
Run the setup program on a single machine.
Choose the Data Only option when at the installation type selection screen.
After installing the data, run the setup program again to install Timesheets Standard on all the machines that need to use the software. If you are sharing the entire application on the network just install to this machine.
Choose the Client Only option when at the installation type selection screen.
At the Enter Network Data Location prompt screen, enter the network data folder where you installed the data previously.
Setting up the User's Workstations
In a fully shared multi-user setup, the Timesheets program files and data will reside in a common directory on the network. You will need to manually setup icons for your users.
Installing Timesheets Client/Server
Installing Timesheets Client/Server
There are two steps involved in installing Timesheets Client/Server: Installing the database server and installing the client
Installing the server
Run the setup program from your distribution. The distribution will either be a Timesheets CD that has been sent to you or a folder you created yourself, after downloading and running the Timesheets download. On the second screen of the setup, choose the Server and Data option and press the Next button. At the Enter Network Data Location prompt screen, enter the IP address of the machine that will host the shared data and server and continue with the rest of the setup.
The client gets the IP Address from the CMTimesheets.ini file. If the client can't read a valid IP Address, it will not run. The edbsrvr.exe database server application must be running at all times. If this application is not running, the client applications will not work.
If you are using a router or firewall, you may need to know the Port number this software uses. The Port number is 12010.
Installing the client
Run the setup program from your distribution. On the second screen of the setup, choose the Client Only option and press the Next button. At the Enter Network Data Location prompt screen, enter the IP address of the machine that is hosting the shared data and server and continue with the rest of the setup. If you are installing from a CD, you will need to manually copy over the CMTimesheets.Ini file (containing the server's e-mail address) over to each client install.
Security
The default password for the Administrator account is "magic". To ensure you have a secure system, change the admin password immediately. Write down the new password and store it in a secure location, such as the company safe.
Running the Server As A Service
It is possible to run the database server as an NT service. There aer several advantage of running the server as a service: you can ensure it restarts if the machine reboots unexpectedly for any reason; you can take actions if the service crashes; and you can run the service as a specified user fairly easily. To install the edbsrvr.exe database server as a service enter the following command at a command line prompt or from the Run Menu:
edbsrvr.exe /install
To install the database server so that it does not interact with the desktop at all, which is required in instances where the current user will be logged out of the system, then you should use the /nointeract flag along with the /install command-line switch:
edbsrvr.exe /install /nointeract
This will install the service as a non-interactive service and the database server will not display a user interface when it is started.
To start the edbsrvr.exe database server as a service enter the following command at a command line prompt or from the Run Menu:
net start edbsrvr.exe
Installing Timesheets Enterprise
There are two steps involved in installing Timesheets Enterprise: Setting up the database server and installing the client
Setting up the database server
The first step in setting up your back end database server is to decide which server you should use. Timesheets Enterprise should work with the following database servers: MySQL, Microsoft SQL Server, PostgresQL, Sybase, DB2, Oracle, Interbase and Firebird. We recommend MySQL or Microsoft SQL Server because they are both very easy to work with. When you have your database server running you will need to create the tables used in Timesheets Enterprise. The easiest way to do this is by running a single script. Timesheets Enterprise comes with database setup scripts for MySQL, Microsoft SQL Server and PostgresQL. If you create a script for another database and have trouble getting Timesheets to work with it please send it to us.
Installing the client
Run the setup program from your distribution. The distribution will either be a Timesheets CD that has been sent to you or a folder you created yourself, after downloading and running the Timesheets download. At the Database Settings prompt screen, enter the database connection settings. These settings include the IP address of the machine that is hosting the database server, the type of database server you will use, the database name (usually cmts) and the database user name and password. Then continue with the rest of the setup. If you are planning to install from a CD we recommend you instead copy the installation files to a shared network folder so the above database setting do not have to be re-entered each time.
The client gets the database connection settings from the CMTimesheets.ini file. If the client can't read these settings, it will not run properly. The CMTimesheets.ini file can be found in the common Application Data\CyberMatrix folder. E.g. C:\Documents and Settings\All Users\Application Data\CyberMatrix\CMTimesheets.Ini.
In addition, each client needs special connectivity libraries installed. If these libraries are not installed the clients will not be able to connect to the database server. These libraries are available from the vendor of the database server you are planning to use. An easy way to get these libraries is to install the database client software. This client software can be downloaded from the vendor's web site. For Microsoft SQL Server you can just copy the Ntwdblib.dll file to the Windows System folder (\winnt\system32 on XP). Libraries for MySQL and PostgreSQL are available on our web site at:
http://www.cybermatrix.com/tsdownloads.html
Security
The default password for the Administrator account is "magic". To ensure you have a secure system, change the admin password immediately. Write down the new password and store it in a secure location, such as the company safe.
Installing Timesheets Web
Setting up Timesheets Web
Run the setup program on the machine that will act as the web server. This software can be run in standalone mode or as a service. If you want to run this software as an ISAPI dll under Windows IIS or other web server contact us.
Standalone Deployment
For standalone deployment simply run the TimesheetsWeb.exe program. This program contains its own webserver so you don't need another web server like Microsoft's IIS.
By default the web server communicates on port 8888. However the port can be changed to whatever you like on this screen. To change the port, enter the new port number in the Port box and press the Update button. By clicking on the image of the globe, the default browser will be launched with the corresponding URL to test the application.
The standalone web server can be used to deploy a productive application. You can place the application on a server machine of yours and let it run on the desktop. The obvious disadvantage is that a user needs to logged in to keep the desktop open. This even works via remote desktop, while not being connected. For productive stand alone applications we recommend using service type applications.
Service Deployment
Running the Timesheets Web application as a service has its benefits and disadvantages. The disadvantages are that there is no log screen or browser execute button. The main advantage is that there is no requirement for logging on to the machine in order to run the application (like any other Windows service). A few steps have to be taken prior to running the application as a service. In particular, a separate application must be downloaded and it has to be installed as a service. To install Timesheets Web as a service, using the windows command prompt, change to the directory where the application resides and type:
TimesheetsWebService -install
This will install it and the application will appear in the Services Applet. From there, it can be configured to run automatically or manually. Look for the service called Timesheets. There is no need to activate the "Interact with Desktop" under the properties of the service, and doing so will have no effect whatsoever.
In a similar way, if the need arises to uninstall the application, you can do this by typing:
TimesheetsWebService -uninstall
Before executing this command, be sure to stop your service.
Running Timesheets Web on your clients
To launch Timesheets from a client browser, simply enter its URL. For example, "http://127.0.0.1:8888/". Replace the "127.0.0.1" part with whatever the tcp-ip address of the machine running the Timesheets web server is.
Security
The default password for the Administrator login is "magic". To maintain a secure system you should change this immediately. Write down the passwords and store in a safe location.
Upgrading From Desktop Edition
If you are upgrading from Version 4 of Timesheets Standard or Timesheets Client/Server and wish to use your old data perform these steps:
1. Make a backup of your existing old data
2. Copy the tables from your old data folder over to the new data folder on your server
Getting Started
Initial Administrator notes
When you run Timesheets after enabling security, a login dialog will appear. The default password is magic. So when you first login enter Administrator in the box labeled Enter LoginID and magic in the box labeled Enter Password. You should change this password if it is important that users cannot view or change other user's data.

When entering time with the Timesheets software, the time data is stored under the name of the person who is currently logged in. Therefore, employees should have their own login ID and password. When entering time, you can also optionally add a Client, a Project and a Task.
The first step in using Timesheets is to enter your employees and projects (if any) into the program. To do this, select View | Data Manager from the main menu. The Data Manager screen should pop up. In the radio group to the left, select Employees. This will cause the Employees table data to be displayed in the grid to the right. Enter your employee information in this grid. Repeat this step for your clients, projects and tasks, if any. See the Data Manager link for more information. The Timesheets database contains sample data, so you'll probably want to delete it first. See the section on deleting records to learn how to do this.
If you are using Timesheets Enterprise, there is no Data Manager. The data will have to be entered in the control center of your back-end database system. Alternatively, data can be entered using the forms listed on the Tools menu of the main form.
Note that you cannot simply enter new clients, projects and tasks in the pull-down lists on the main screen. All project information must be entered into the appropriate tables before they can have time assigned to them.
Initial User Notes
When you first run Timesheets a login dialog will appear. Your administrator should have setup a password for you and assigned you a user name. Enter your loginID and password at this screen.
Entering Timesheet Data
Timesheet data is entered in the Timesheet Entry Screen. After logging in, the Timesheet Entry Screen will appear. The currently logged in person can enter any combination of Client, Project and Task. Any number of these combinations can be entered in the timesheet entry grid. Clients, Projects and Tasks are chosen by clicking or tabbing into a cell, clicking on the pull-down list that appears and selecting an item from the list. For example, to select a client first click on a cell under the Client column. The time spent on that project combination is entered into the appropriate day cells after the Task column. An optional comment describing the weeks work can be entered in the comments cell.
Saving Timesheet Data
When timesheet entry has been finished, save the changes by pressing the Save button on the toolbar at the top of the screen. To logout without saving any changes made, choose File | logout from the menu.
Changing the Billing Type
Time is by default entered as normal time. However, time can also be entered for holidays, sick days and overtime. To change the type of time entered select the appropriate value in the Billing Type radio box. Note that you must save your time before changing to another time format.
Submitting Timesheets
Timesheets must be submitted before your manager can approve them. Once time data has been submitted, ordinary employees can no longer make any changes to the timesheet on the timesheet entry form. To submit your timesheet chose File | Submit Timesheet from the main menu.
Approving Timesheets
Only the Administrator or an employee that has been designated as Manager can approve Timesheets. When the Administrator or a Manager logs in, an Employee pull-down field will be seen under the Week start date field. By selecting an employee, the manager can see all the time that the employee has entered, make any needed corrections and then approve the time. Approve time by pressing the Approve Time button on the toolbar at the top of the screen.
See also: Using the Security Features.
Using Timesheets
Getting to Know the Timesheet Entry Screen
Configuring Timesheets
Managing Timesheet Data with the Data Manager
Printing Reports
Custom Reporting
Using the Security Features
Using Timesheets with Different Divisions
Getting to Know the Timesheet Entry Screen
After logging in the Timesheet Entry Screen will appear.

The Timesheet Entry Screen is for employees to enter weekly timesheet data. The Timesheet Entry Screen consists of two parts: a menu and a set of visual controls.
Menu
Below you will find an explanation of all the menu items.
File
Logout
Logs you out of the system and then brings up the login dialog that allows someone else to login to the system.
Change Password
Brings up the change password dialog that allows you to change your login password.
Save Timesheet
Saves the changes made to your timesheet entry. Editing a timesheet that has already been submitted or approved will require that the edited timesheet be resubmitted or approved.
Submit Timesheet
Submits your timesheet entry for approval.
Reject Timesheet
Rejects the timesheet data for the current Employee and week. Rejected timesheets are sent back to the employee to correct and then re-submit. Only Managers can see this menu item.
Approve Timesheet
Approves the timesheet data for the current Employee and week. Only Managers can see this menu item.
Approve Projects
Allows Approval by project instead of by Employee. Approves the timesheet data for the current Project and week. Only Managers can see this menu item. Select this menu item again to return to Employee timesheet mode.
Clear Timesheet
Clears the timesheet data for the current Employee and week.
Open registration key file
This item is only seen in the non-trial software. Choosing this menu item allows you to import a registration key file to properly register the software.
Exit
Closes the program.
View
Data Manager
Brings up the Data Manager screen. The Data Manager is used to administer the data used in Timesheets. This menu item is not seen in the Client/Server and Enterprise versions. See also: Getting to know the Data Manager.
Reports
Brings up the Time Reporting screen where several different reports may be viewed. See also: Reporting.
Expenses
Brings up the Expenses screen where expenses can be entered for the current employee. See also: Expenses.
Tools
Manage Employees
Brings up the Manage Employees screen, where employee information can be added or edited. See also: Managing Employees.
Manage Clients
Brings up the Manage Clients screen, where client information can be added or edited. See also: Managing Clients.
Manage Projects
Brings up the Manage Projects screen, where project information can be added or edited. See also: Managing Projects.
Manage Tasks
Brings up the Manage Tasks screen, where task information can be added or edited. See also: Managing Tasks.
Manage Phases
Brings up the Manage Phases screen, where phase information can be added or edited. See also: Managing Phases.
Manage Actions
Brings up the Manage Actions screen, where task information can be added or edited. See also: Managing Actions.
Manage Employee Projects
Brings up the Manage Employees Projects screen, where employees can be associated with projects. See also: Managing Employee Projects.
Manage Employee Tasks
Brings up the Manage Employees Tasks screen, where employees can be associated with tasks. See also: Managing Employee Tasks.
Manage Divisions
Brings up the Manage Divisions screen, where division information can be added or edited. See also: Managing Divisions.
Manage Estimates
Brings up the Manage Estimates screen, where project estimate information can be added or edited. See also: Managing Estimates.
Manage Leave Requests
Brings up the Manage Leave Requests screen, where employee leave requests can be added, edited or approved. See also: Managing Leave Requests.
Options
Brings up the Options screen where the different configuration options may be set. See also: Program Options.
Visual Controls
Below you will find an explanation of all the visual controls on the main screen.
Save Timesheet button
When timesheet entry has been finished, press the Save toolbar button to save the changes.
Submit Timesheet button
When timesheet entry has been finished, press the Submit toolbar button to submit the changes.
Reject Timesheet Button
Clicking this button will reject the timesheet data for the current Employee and week. Only Managers can see this button.
Approve Timesheet Button
Clicking this button will approve the timesheet data for the current Employee and week. Only Managers can see this button.
Expenses button
Brings up the Expenses screen where expenses can be entered for the current employee. See also: Expenses.
Reports button
Brings up the Time Reporting screen where several different reports may be viewed. See also: Reporting.
Configuration
Brings up the Options screen where the different configuration options may be set. See also: Program Options.
Data Manager
Brings up the Data Manager screen. The Data Manager is used to administer the data used in Timesheets. This button is not seen in the Client/Server and Enterprise versions. See also: Getting to know the Data Manager.
Week Start Date
This is the first date in the weekly period in which time is being charged to. The date will default to the start of the current week but it can be changed to add time data for previous weeks.
Employee
The employee to view timesheet data for. Only Managers see this field.
Changing the Billing Type
Time is by default entered as normal time. However, time can also be entered for holidays, sick days and overtime. To change the type of time entered select the appropriate value in the Billing Type radio box. Note that you must save your time before changing to another time format.
Timesheet Entry Grid
This is where timesheet data is entered. The currently logged in person can enter any combination of Client, Project and Task. Any number of these combinations can be entered in the timesheet entry grid. Clients, Projects and Tasks are chosen by clicking or tabbing into a cell, clicking on the pull-down list that appears and selecting an item from the list. For example, to select a client first click on a cell under the Client column. The time spent on that project combination is entered into the appropriate day cells after the Task column. An optional comment describing the weeks work can be entered in the comments cell.
The individual projects can be assigned clients and users in the Data Manager. If this has been done, when a new client is selected only the projects that are associated with that client or the current user will show up on the Project pull-down list. If no clients or users are associated with a project then all projects will be listed. The individual tasks can be assigned projects in the Data Manager. If this has been done, when a new project is selected only the tasks that are associated with that project will show up on the Task pull-down list. If no projects are associated with a task then all tasks will be listed. Administrators will be able to see all projects and tasks regardless of which user they are assigned to.
Status Bar
The status bar at the bottom of the screen gives additional details about the timesheet. The second column gives the status of the timesheet. It will indicate if the current timesheet has been saved, submitted approved or rejected. The third column of the status bar show the grand total of all the different hours: regular, holiday, overtime etc.
Managing Employees
To manage employees choose Tools | Manage Employees from the main screen menu. The following screen will appear:

This screen will allow you to view information on each employee. You can also use this form to add or edit employee information. To view information on an employee, select the employee from the employee pull-down list. To edit information on the currently listed employee press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new employee, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new employee. To delete the current employee click the Delete button.
Fields Explained
The EmployeeID field must be a unique ID for the employee. The DivisionID field indicates to which division, if any, the employee belongs to. The ShiftID field indicates in which shift the employee works. The Rate field indicates the rate at which this employee is charged out. The Password field indicated the login password for this employee. The Level field indicates the security level of the employee. This field can be A for Administrator, M for Manager or blank for an ordinary employee. The Manager field indicates the manager for this employee. The Type field indicates the type of employee. Employees can be regular (0) or hourly (1). Hourly employees, like consultants, cannot charge for holidays or sick days. The BankedTime field stores the overtime the employee has banked. The Active field indicates whether this employee shows up in the employee pull-down lists.
Managing Clients
To manage clients choose Tools | Manage Clients from the main screen menu. The following screen will appear:

This screen will allow you to view information on each client. You can also use this form to add or edit client information. To view information on a client, select the client from the client pull-down list. To edit information on the currently listed client press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new client, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new client. To delete the current client click the Delete button.
Fields Explained
The Client ID field is a unique identifier for the client. Every different client must have it's own ID. The Name field is a descriptive name for the client. The Rate field indicates the rate at which this client is charged. The Active field indicates whether this client shows up in the client pull-down lists. The AllowOvertime field indicates whether this client allows overtime to be charged to them.
Managing Projects
To manage projects choose Tools | Manage Projects from the main screen menu. The following screen will appear:

This screen will allow you to view information on each project. You can also use this form to add or edit project information. To view information on a project, select the project from the project pull-down list. To edit information on the currently listed project press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new project, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new project. To delete the current project click the Delete button.
Fields Explained
The ProjectID field must be a unique ID for the project. The Description field is a descriptive name for the project. The Rate field indicates the rate at which this project is charged. The ClientID field indicates which client, if any, the project belongs to. The DivisionID field indicates which division, if any the project belongs to. The active field indicates whether the project can have time billed to it. If the active field is not set, this project will not show up in any of the project pull-down lists. The deposit hours field indicates the number of hours this project has been paid for in advance. The deposit hours field would only be used by someone like a lawyer that is paid on retainer.
Managing Tasks
To manage tasks choose Tools | Manage Tasks from the main screen menu. The following screen will appear:

This screen will allow you to view information on each task. You can also use this form to add or edit task information. To view information on a task, select the task from the task pull-down list. To edit information on the currently listed task press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new task, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new task. To delete the current task click the Delete button.
Fields Explained
The TaskID field must be a unique ID for the task. The ProjectID field indicates which project, if any, the task belongs to. The Description field is a descriptive name for the task. The Rate field indicates the rate at which this task is charged. The Active field indicates whether this task shows up in the task pull-down lists.
Managing Phases
To manage phases choose Tools | Manage Phases from the main screen menu. The following screen will appear:

This screen will allow you to view information on each phase. You can also use this form to add or edit phase information. To view information on a phase, select the phase from the phase pull-down list. To edit information on the currently listed phase press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new phase, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new phase. To delete the current phase click the Delete button.
Fields Explained
The PhaseID field must be a unique ID for the phase. The Description field is a descriptive name for the phase. The Rate field indicates the rate at which this phase is charged. The Active field indicates whether this phase shows up in the phase pull-down lists.
Managing Actions
To manage actions choose Tools | Manage Actions from the main screen menu. The following screen will appear:

This screen will allow you to view information on each action. You can also use this form to add or edit action information. To view information on a action, select the action from the action pull-down list. To edit information on the currently listed action press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new action, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new action. To delete the current action click the Delete button.
Fields Explained
The ActionID field must be a unique ID for the task. The Description field is a descriptive name for the action. The Rate field indicates the rate at which this action is charged. The Active field indicates whether this action shows up in the action pull-down lists.
Managing Employee Projects
In Timesheets, projects can be assigned to employees. When projects have been assigned in this way, employees can only enter hours on projects to which they have been assigned.
To assign projects to employees select Tools | Manage Employee Projects from the main menu. The following screen will appear:

All employees will be listed in a treeview on the left. All projects will be listed on the right. To assign projects to an employee, simply select the desired projects and drag them over to the employee. Multiple projects can be selected by using the Ctrl and Shift keys. When projects have been dropped onto an employee they will show as sub items underneath that employee.
Note that changes are made in real time. You cannot cancel employee project assignments you have made.
Managing Employee Tasks
In Timesheets, tasks can be assigned to employees. When tasks have been assigned in this way, employees can only enter hours on tasks to which they have been assigned.
To assign tasks to employees select Tools | Manage Employee Tasks from the main menu. The following screen will appear:

All employees will be listed in a treeview on the left. All tasks will be listed on the right. To assign tasks to an employee, simply select the desired tasks and drag them over to the employee. Multiple tasks can be selected by using the Ctrl and Shift keys. When tasks have been dropped onto an employee they will show as sub items underneath that employee.
Note that changes are made in real time. You cannot cancel employee task assignments you have made.
Managing Divisions
To manage divisions choose Tools | Manage Divisions from the main screen menu. The following screen will appear:

This screen will allow you to view information on each division. You can also use this form to add or edit division information. To view information on a division, select the division from the division pull-down list. To edit information on the currently listed division press the Edit button. The fields will now allow changes to them and the Save button will become enabled. After making your changes press the Save button. To add a new division, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new division. To delete the current division click the Delete button.
Fields Explained
The DivisionID field must be a unique ID for the division. The Description field is a descriptive name for the division. The AdminID field indicates who the administrator is for this division.
Managing Estimates
To manage project estimates choose Tools | Manage Estimates from the main screen menu. The following screen will appear:

This screen will allow you to view information on each estimate. All estimate records that have been entered for this person in the current week will show up in the grid at the bottom. Administrators can see estimates for all users by ensuring the Employee is blank on the main screen pull-down list.
You can also use this form to add or edit estimate information and even search for existing estimates. To edit a previously entered estimate record, first double click on the record in the grid at the bottom. The estimate detail will appear in the fields above. To edit information on the currently listed estimate press the Edit button. The fields at the top will now allow changes to them and the Save button will become enabled. Make the changes you want and then press the Save button. To add a new estimate, press the New button. All the fields at the top will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new estimate. To delete the current estimate click the Delete button.
Fields Explained
The EstimateID field is a unique ID for the estimate. The Description field is a descriptive name for the estimate. You can optionally assign an employee, client, project and task to the estimate.
Managing Leave Requests
To manage employee leave time requests choose Tools | Manage Leave Requests from the main screen menu. The following screen will appear:

This screen will allow you to view information on each leave request. All leave request records that have been entered for this person will show up in the grid at the bottom. Administrators can see leave requests for all users by ensuring the Employee is blank on the Employee pull-down list.
You can also use this form to add or edit leave request information and even search for existing leave requests. To edit a previously entered leave request record, first double click on the record in the grid at the bottom. The leave request detail will appear in the fields above. To edit information on the currently listed leave request press the Edit button. The fields will now allow changes to them and the Save button will become enabled. Make the changes you want and then press the Save button. To add a new leave request, press the New button. All the fields will become blank allowing you to enter new information. When you are finished entering information press the Save button to add the new leave request record. To delete the current leave request record click the Delete button. Managers can press the Approve button to a approve a leave request. When a leave request is approved the current date will appear in the Approved Date field and the length of the leave time will be deducted from the employee's Holiday Time.
Fields Explained
The ID field is a unique ID for the leave request. The Description field is a descriptive name for the estimate. The EmployeeID field indicates which employee the leave request pertains to. The DateFrom and DateTo fields indicate when then employee's leave time starts and ends. The Reason field indicates why the employee is on leave, for vacation or medical reasons for example. The ApproveDate field indicates when the leave was approved by the employee's manager.
Expenses
Expenses for the current user can be entered by choosing View | Expenses from the main menu. The following screen will appear:

All expense records that have been entered for this person in the current week will show up in the grid at the bottom. Each expense record can include the following:
the date the expense was incurred
an optional client, project or task the expense relates to
a description of the expense
the amount of the expense
the invoice number the expense belongs to
the expense type
To add a new expense record, press the New button. If you check the Clear Fields On New Record check box, all the fields will clear when you create a new record. To save the new record, press the Save button. If the New Record After Save check box has been checked, the fields will be cleared after saving a record allowing you to enter a new record.
To edit a previously entered expense record, first double click on the record in the grid at the bottom. The expense detail will appear in the fields above. Make the changes you want and then press the Save button.
Configuration
On choosing Tools | Options from the Timesheets main menu you will see the configuration screen. The options are split up into seven different sections: the General Tab, the Intervals Tab, the Reporting Tab, the Timesheet Tab, the Default Timesheet tab, the Terms Tab, the E-Mail tab and the Data tab. Choose a section by clicking on the labeled tab corresponding to that section.
In Timesheets Standard and Timesheets Enterprise, ordinary users will only see only one tab in the Client configuration screen, the Default Timesheet Tab. Administrators will see all six sections
In Timesheets Client/Server you will see only two tabs in the Client configuration screen, the Default Timesheet Tab and an additional configuration section: the Network tab. The Server configuration screen has all seven sections.
To close this screen and save any changes made, press the OK button. To close this screen without saving any changes made, press the Cancel button.
General Options
The General Options section is for setting program options.
This is what the General Options section looks like.

Program Options
Enable Security
If this box is checked, security will be enabled. When security is enabled, a login dialog will show on program start-up. Employees will only be able to view and edit their own time. They can see their approved time only on reports. The Administrator can login as well as any users who have been set up in the Security table. To set up the users in the Security table and to change the current passwords use the Detail tab of the Data Manager. If you are using Timesheets Enterprise, there is no Data Manager. The users will have to be entered in the control center of your back-end database system. See also: Using the Security Features
Note that when security is enabled for the first time, the Administrator uses the default password of "magic". You should change this password immediately after enabling security to ensure a secure system. Write down your new password and store it in a secure location such as a safe.
Use Windows Login
If this box is checked, users will not have to login if they are already logged in to Windows and their login ID has been set up as an Employee ID in Timesheets.
Allow User Reporting
If this box is checked, users will be able to print and edit reports in the Reporting Screen. See also: Reporting
IDs in First Column
If this box is not checked, pull-down lists will show the description in the first column instead of the ID field.
Limit Projects by Employee
If this box is checked, employees will be able to bill time only to projects that have been assigned to them. Administrators, however, can select any project for any employee. Projects are assigned to employees in the Manage Employee Projects screen.
Limit Tasks by Employee
If this box is checked, employees will be able to bill time only to tasks that have been assigned to them. Administrators, however, can select any task for any employee. Tasks are assigned to employees in the Manage Employee Tasks screen.
Show Tips on Start Up
If this option is checked helpful tips will be seen when the software first runs.
Minimum Billing Increment
The value in this box indicates the minimum amount of time in hours that should be charged. For example, a minimum billing increment of 0.50 would mean you could not bill less than half an hour to a project.
Font
Indicates the font used through out the software. Languages using special characters (Unicode) should change the font to one that supports these characters.
Pressing the OK button will save the changes made and exit the program.
Press Cancel to exit without saving changes.
Interval Options
The Interval Options section is for setting time interval options.
This is what the Interval Options section looks like.

Hours Per Week
This indicates how many hours per week your normal work week has. Enter a value of 0 to ignore.
Maximum Hours Per Week
This indicates the maximum hours per week as employee can charge to a timesheet. If an employee attempt to submit a timesheet that goes over this limit they will see a warning. Leave the value at 0 to ignore. If the Enforce box is checked, the timesheet cannot be submitted.
Hours Per Day
This indicates how many hours per day your normal work day has. Enter a value of 0 to ignore.
Maximum Sick Days Per Year
This indicates the maximum number of sick days an employee can log. Enter a value of 0 to ignore.
Reporting Options
This is what the Report Options section looks like.

Round report totals
Use to round report totals either up or down.
Round Time By
This number indicates how time totals on the timesheet reports should be rounded. For example, a round time of 0.25 rounds all totals to the nearest quarter hour. A round time of 0.001 will not affect the totals at all.
Invoice Prefix
The optional invoice prefix is a one to six character value that is appended to every four-digit invoice number. This value is used for invoice reports. When you change this value, you must ensure that new invoices will always sort alphabetically at the bottom of the Invoices table.
Report Location
This is the path to the reports folder. To change to a new folder, click the folder icon to the right and select a new path. Ordinarily the Report Location field will be blank. When the Report Location field is blank, the report location will default to the Reports folder off the program folder (usually C:\Program Files\Timesheets\Reports\). In a multi-user setting, you may want everyone to use the reports stored in a shared network folder. In this case, you would set the Report Location field to this shared path.
Timesheet Options
This is what the Timesheet Options section looks like.

Week Start
Indicates on which day the week starts. Used for the reports to default to first day of the week.
Allow Past Entry for X Weeks
The value in this box indicates the maximum number of previous weeks that employees can enter time for. This option does not affect Administrators or Managers.
Timesheet rows
The value in this box indicates the number of rows that will be seen on the timesheet grid on the main screen.
Timesheet account column width
The value in this box indicates the size of account columns that will be seen on the timesheet grid on the main screen. If you want to set your own sizes, leave this value at 0.
Managers can Approve Timesheets
If checked, managers can approve timesheets just like administrators.
Monthly Timesheets
If checked, timesheets can be entered for a whole month at a time instead of a week.
No Holidays On Weekends
If checked, holiday hours will not be added to timesheets if they fall on Saturday or Sunday.
Force Project
If this option is checked, you must enter a Project for each timesheet entry before you can save the timesheet.
Force Task
If this option is checked, you must enter a Task for each timesheet entry before you can save the timesheet.
Force Client
If this option is checked, you must enter a client name for each timesheet entry before you can save the timesheet.
Hide Client Column
If checked, the Client column will not be visible on the timesheet entry form.
Hide Project Column
If checked, the Project column will not be visible on the timesheet entry form.
Hide Task Column
If checked, the Task column will not be visible on the timesheet entry form.
Hide Phase Column
If checked, the Phase column will not be visible on the timesheet entry form.
Hide Action Column
If checked, the Action column will not be visible on the timesheet entry form.
Hide Comments Column
If checked, the Comments column will not be visible on the timesheet entry form.
Default Timesheet Options
The Default Timesheet Options tab is used to configure a default timesheet. The default timesheet is used when entering a new timesheet in the Timesheet Entry Screen. Any Clients, Projects, Tasks and comments entered in the default timesheet will show up instead of a blank timesheet.
This is what the Default Timesheet Options section looks like.

To create a default timesheet template, simply enter a list of Clients , Projects, Tasks and Comments. When you next go to enter a new timesheet, this list will automatically be shown allowing you to simply enter your times.
Default to Previous Week's Timesheet
If checked, new timesheets will default to show the project list used for the employee's previous week timesheet.
Include Previous Data
If Checked, new timesheets will default to show the project data used for the employee's previous week timesheet.
Term Options
This is what the Term Options section looks like.

Timesheets uses the following terms: Employee, Client, Project, Task, Action and Phase. These terms are used throughout the program to breakup employee's time. If you would rather use different terms than these, you can use this form to change the names to anything you desire.
In this case Employee was changed to Staff, Client was changed to Customer, Project was changed to Account and Task was changed to Job Code.
To revert to the original terms, click the Restore Defaults button.
E-Mail Options
This is what the E-mail configuration tab looks like.

SMTP Server options
Send e-mail reminders
If checked, e-mail reminders will be sent out to users that have not entered their previous week's timesheet. Managers will also be alerted to timesheets that have not yet been submitted.
Send e-mail on approved timesheet
If checked, an e-mail notification will be sent out to users that have had their timesheet approved.
Use MAPI
If checked all e-mail will be sent using your default MAPI compliant mail program.
Enable Authentication
Check this box if your mail server requires password notification before sending mail.
Authentication Login ID
Enter your SMTP authentication loginID here.
Authentication Password
Enter your SMTP authentication password here.
SMTP Mail Host
This is the SMTP mail host used on your network. Usually it is mail, but enter whatever you enter for configuring other mail programs. If this option is not entered correctly, the e-mail features will not work.
SMTP Port
This is the SMTP port used to send email on your network. Usually it is 25, but you can enter another port number to get around port 25 blocking.
Default From E-Mail Address
The e-mail address here will show by default in the from field of any e-mails sent to clients or others.
Data Options
This is what the General Options section looks like.

Data Location
Local Data Location
This is the directory location of the database tables. This setting can only be changed in Timesheets Standard.
Click the folder icon to the right of the box to change the directory. Before changing the data path, you should move or copy the data files to this path. Timesheets will not do this for you. Note that if using Timesheets Standard on multiple machines the Data Path setting used must be identical on all machines. You cannot mix regular paths and UNC paths. The text must be identical. Also if the software detects a data folder called Data in the same folder that Timesheets is running from, it will default to using this folder as the data folder.
Backup options
Auto Backup
If checked, automatic data backups are performed. Enter the automatic backup interval in the text box. For example, if you enter a 60 in the edit box the data will be automatically backed up every hour (60 minutes).
Backup Every X Minutes
This number indicates how often an automatic backup is to be performed. For example, to backup every 2 hours enter 120 (2 x 60).
Network Options
The Network options tab is only seen in the Timesheets Client/Server and Timesheets Enterprise.
The Network options tab is used to set the IP address used by the Timesheets server application. To set the IP address, enter the IP address of the machine the server is running, into the IP Address field.
It is very important to set the correct IP address. If the wrong IP address is used, the client applications will not be able to connect to the server.
Timesheets Enterprise has four other important values on this tab.
Protocol
This is the back end SQL server database engine you wish to connect Timesheets to.
Port
This is the port number the back end SQL server database engine connects at. Leave it at 0 to connect at the database server's default connection port.
Database
This is the name of the database to use on the remote database server.
User Name
This is the user name required to connect to the remote database server.
Password
This is the password required to connect to the remote database server.
Data Features
Timesheets uses a database to store its data. The database consists of several tables. These tables can be edited and administered by using the Data Manager. See the links below for further information.
Note that Timesheets Enterprise uses an external database server to store its data. Therefore, this section is not applicable to Timesheets Enterprise. Instead, see your database server documentation on how to manage data.
Getting to Know the Data Manager
Viewing and Editing Table Data
Timesheets Table Details
Viewing SQL Queries
Executing SQL Queries
Deleting records
Inserting Records
Loading Timesheets Data into Excel
Exporting Project Clock Data into QuickBooks
Re-indexing Tables
Backing Up Data
Restoring Data
Inactivating Accounts
Preventing data corruption
Timesheets Table Details
Getting to Know the Data Manager
The Data Manager screen allows viewing and editing of all Timesheets data. To bring up this screen select View | Data Manager from the main menu. The following screen should pop up:

Note that in Timesheets Client/Server the Data Manager is only accessible from the Server application. Timesheets Enterprise does not have the Data Manager.
The Data Manager consists of three parts. The menu, the data navigation toolbar and the data view. The menu contains several data related functions. The data navigation toolbar is used to navigate through the different tables. The data view shows the data of a single table.
Menu
The menu consists of four sections File, Search, Records and Help. See below for descriptions of the different functions found within these sections.
File
Export to CSV - Exports the current table to text (CSV) format. See also: Importing and Exporting Data in CSV Format.
Import CSV File - Imports a text file in comma separated variable (CSV) format into the current table. See also: Importing and Exporting Data in CSV Format.
Export to QBXML - Exports data to newer versions of QuickBooks. See also: Exporting Project Clock Data into QuickBooks.
Export to IIS - Exports data to IIS format which older versions of QuickBooks can import. See also: Exporting Project Clock Data into QuickBooks.
Export Project to MS Project - Exports the current project data into MS Project. See also: Exporting Current Project to MS Project
New SQL File - Opens the Notepad text editor to allow you to create a new SQL file. See also: Viewing SQL Queries.
Edit SQL File - Opens the Notepad text editor to allow you to edit an existing SQL file.
Open SQL File - Allows you to choose an existing SQL file and shows the results of that query in the detail tab data grid.
Execute SQL File - Allows you to choose an existing SQL file and execute that query. Only Administrators can execute queries.
Re-index Table - Re-index the currently selected table. See also: Re-indexing Tables.
Close - Closes the Data Manager screen.
Search Section
The Search section allows you to find records when in the detail tab view. To search for a record you must first click in or tab over to the field in which you want to search. Then choose Find from the Search menu. In the dialog that pops up, enter the text you want to search for then press the Find Next button. To find the next occurrence of that text press the Find Next button again.
Records Section
The Records section contains the following functions:
Copy - Copies the selected record into the Windows clipboard for pasting later.
Paste - Pastes the record contained in the Windows clipboard into a new record.
Cut - Copies the selected record into the Windows clipboard for pasting later and then deletes the record.
Delete Selected Records - Delete all the selected records. See also: Deleting records.
Delete All Records - Deletes all the records in the current table.
Backup Data - Makes a time-stamped backup file of all tables. See also: Backing up Data.
Restore Data - Replaces your existing data with the tables from a previous data backup. See also: Restoring data.
Archive Old Time Records - Moves old time records into the Employee Time Archive table.
The Data navigator Bar
The bar at the top is the data navigator. The data navigator is for navigating the records of the current table. The first button |< will move to the first record of the current table. The second button < will move to the previous record. The third button > will move to the next record. The fourth button >| will move to the last record. The + button will add a new record. The - button will delete the current record. The button with the check mark will save changes made to the current record. The x button will cancel any changes made to an unsaved record. The last button refreshes the current table to show the latest changes made to it.
The Data Tabs
The data tabs show all the tables used in Timesheets and allow you to view and edit the data in them. See the Viewing and Editing Table Data section for more details.
Viewing and Editing Table Data
There are two ways to enter table data: form view and detail view.
Entering data in form view
To enter data by form view, choose the tab corresponding to the table for which you wish to enter data. A form will appear showing all the fields in that table. The screen should look like this:

To add a new record press the + button on the data navigator bar. A blank record field will appear. Enter data in the fields and press the check mark on the data navigator bar. This saves the record changes.
Entering data in detail view
To view a table's data in detail view, first choose the Detail tab. The screen should look like this:

To view the data for a table choose the table's radio button in the left box. The table's data should then appear in the grid to the right. The data may now be edited directly in the grid. After editing a record, the changes will be saved after you move off the edited record.
Currently, data from SQL queries may not be edited in this way.
You can cancel any changes you made to a record by either clicking the Cancel button (the big X) on the Database Navigator at the top of the screen or by simply hitting the ESC key.
Table Details
Timesheets has 18 tables: Actions, Audit, Clients, Divisions, EmployeeProjects, Employees, EmployeeTasks, EmployeeTime, EmployeeTimeArchive, Estimates, Expenses, Holidays, Invoices, LeaveRequests, Phases, Projects, Tasks and Users.
Actions
This table lists all phases along with a description and charge out rate. Here are the field sizes and descriptions:
ActionID - Text - 15 - unique
Description - Text - 25
Rate - Currency
Active - Boolean
The ActionID field must be a unique ID for the action. The Description field is a descriptive name for the action. The Rate field indicates the rate at which this action is charged. The active field indicates whether the action can have time billed to it. If the active field is not set, this action will not show up in any of the action pull-down lists.
Audit
This table records changes to the timesheets. Here are the field sizes and descriptions:
EmployeeID - Text - 15 - unique
LoginID - text 30
TimesheetDate - Date
ModifyDate - TimeStamp
State - Text - 20
The EmployeeID field links to the EmployeeID field in the Employees table. The LoginID field links to the LoginID field in the Users table. The TimesheetDate field links to the Date field in the EmployeeTime table. The ModifyDate filed indicates the time and date when the timesheet was modified. The State field describes how the timesheet was modified.
Clients
This table list all the client data. Here are the field sizes and descriptions:
ClientID - Text - 15 - unique
Name - Text - 50
Contact - Text - 50
Address1 - Text - 20
Address2 - Text - 20
City - Text - 15
State - Text - 15
Country - Text - 15
Postal - Text - 15
EMail - Text - 50
Web - Text - 50
Phone - Text - 20
Fax - Text - 20
Rate - Currency
Active - Boolean
AllowOvertime - Boolean
The Client ID field is a unique identifier for the client. Every different client must have it's own ID. The ClientID field links to the ClientID field in the Projects table. The Name field is a descriptive name for the client. The Rate field indicates the rate at which this client is charged. The Active field indicates whether this client shows up in the client pull-down lists. The AllowOvertime field indicates whether this client allows overtime to be charged to them.
Divisions
This table list all the division data. Here are the field sizes and descriptions:
DivisionID - Text - 15 - unique
Description - Text - 25
AdminID - Text - 15
The DivisionID field must be a unique ID for the division. The Description field is a descriptive name for the division. The AdminID field indicates who the administrator is for this division. The AdminID field links to an Administrator EmployeeID field in the Employees table.
EmployeeProjects
This table lists the projects that have been assigned to employees and the rate at which they are billed out. Here are the field sizes and descriptions:
EmployeeID - Text - 15 - unique
ProjectID - Text - 15
Rate - Currency
The EmployeeID and ProjectID fields must be a unique combination for the employee project. The EmployeeID field links to the EmployeeID field in the Employees table. The ProjectID field links to the ProjectID field in the Projects table. The Rate field indicates the rate at which this project is charged for this employee.
Employees
This table lists all employees, their passwords and security level, the shift they work on and the rate at which they are billed out. Here are the field sizes and descriptions:
EmployeeID - Text - 15 - unique
Name - Text - 25
DivisionID - Text - 15
ShiftID - Text - 10
Rate - Currency
PayRate - Currency
Password - Text - 10
Level - Text - 1
Manager - Text - 15
EMail - Text - 50
Type - Unsigned Integer
BankedTime - Float
HolidayTime - Float
Active - Boolean
The EmployeeID field must be a unique ID for the employee. The EmployeeID field links to the EmployeeID field in the EmployeeTime table. The DivisionID field indicates to which division, if any, the employee belongs to. The DivisionID field links to the DivisionID field in the Divisions table. The ShiftID field indicates in which shift the employee works. The Rate field indicates the rate at which this employee is charged out. The Password field indicated the login password for this employee. The Level field indicates the security level of the employee. This field can be A for Administrator, M for Manager or blank for an ordinary employee. The Manager field indicates the manager for this employee. The Manager field links to a Manager EmployeeID field in the Employees table. The Type field indicates the type of employee. Employees can be regular (0) or hourly (1). Hourly employees, like consultants, cannot charge for holidays or sick days. The BankedTime field stores the overtime hours the employee has banked. The HolidayTime field stores the holiday hours the employee has banked. The Active field indicates whether this employee shows up in the employee pull-down lists.
EmployeeTasks
This table lists the tasks that have been assigned to employees and the rate at which they are billed out. Here are the field sizes and descriptions:
EmployeeID - Text - 15 - unique
TaskID - Text - 15
Rate - Currency
The EmployeeID and TaskID fields must be a unique combination for the employee task. The EmployeeID field links to the EmployeeID field in the EmployeeTime table. The TaskID field links to the TaskID field in the Tasks table. The Rate field indicates the rate at which this project is charged for this employee.
Employee Time
This table lists all the timesheet records. It is a history of all time billed by the different employees. Here are the field sizes and descriptions:
EmployeeID - Text - 15 - unique
Date - Date
ClientID - Text - 15
ProjectID - Text - 15
TaskID -Text - 15
Hours - Float
Comments - Text - 180
Submitted - Boolean
Approved - Boolean
ProjectApproved - Boolean
BillingType - Word
Invoice -Text - 10
Archived - Boolean
The EmployeeID field links to the EmployeeID field in the Employees table. The ProjectID field links to the ProjectID field in the Projects table. The TaskID field links to the TaskID field in the Tasks table. The ClientID field links to the ClientID field in the Clients table. The Invoice field links to the Invoice field in the Invoices table.
The Date field indicates for which date the hours were entered. The Hours field indicates how many hours the employee worked on this date for the project combination. The Submitted field indicates as to whether the employee's hours have been submitted to their manager. The Approved field indicates as to whether an administrator has approved the employee's hours. The ProjectApproved field indicates as to whether an administrator has approved the employee's project hours. The archived field can be set to indicate that these records have been exported to the accounting department, for example. The BillingType field indicates which type of hours the employee logged. The value for this field can be:
0 - normal hours
1 - holiday hours
2 - sick day hours
3 - overtime hours
Employee Time Archive
This table stores all archived timesheet records. It is identical to the Employee Time table.
Estimates
This table keeps track of all the different project estimates. Here are the field sizes and descriptions:
EstimateID - AutoInc - unique
Description - Text - 15
EmployeeID - Text - 15
ProjectID - Text - 15
TaskID -Text - 15
ClientID - Text - 16
EstHrs - Float
ActHrs - Float
EstCost - Currency
ActCost - Currency
EstStart - Date
EstFinish - Date
ActStart - Date
ActFinish - Date
Priority - Word
Status - Word
The EmployeeID field links with the EmployeeID field in the Employees table. The ProjectID field links to the ProjectID field in the Projects table. The TaskID field links to the TaskID field in the Tasks table. The ClientID field links to the ClientID field in the Clients table.
Expenses
The Expenses table keeps track of all the expenses for different employees. Here are the field sizes and descriptions:
ExpenseID - AutoInc - unique
Description - Text - 50
ExpenseDate - Date
EmployeeID - Text - 15
ClientID - Text - 15
ProjectID - Text - 15
TaskID -Text - 15
Invoice - Text - 10
Amount - Currency
ExpenseType - Text - 15
The EmployeeID field links to the EmployeeID field in the EmployeeTime table. The ClientID field links to the ClientID field in the Clients table. The ProjectID field links to the ProjectID field in the Projects table. The TaskID field links to the TaskID field in the Tasks table. The Invoice field links to the Invoice field in the Invoices table.
Holidays
The Holidays table lists all the statutory holidays. Holidays are used to automatically fill in holiday hours on the timesheets. Here are the field sizes and descriptions:
HolidayDate - Date - unique
DivisionID - Text - 15
Holiday - Text - 30
The DivisionID field links to the DivisionID field in the Divisions table.
Invoices
The Invoices table lists all the invoices. Here are the field sizes and descriptions:
Invoice - Text - 10 - unique
Date - Date
ClientID - Text - 15
Paid - Boolean
The Invoice field must be a unique ID for the invoice. The Client field links to the ClientID field in the Clients table. The Paid field indicates whether the invoice had been paid or not.
Leave Requests
The Leave Requests table keeps track of all the vacation and other leave for different employees. Here are the field sizes and descriptions:
ID - AutoInc - unique
EmployeeID - Text - 15
DateFrom - Date
DateTo - Date
Reason - Text - 255
ApproveDate - Date
The EmployeeID field links to the EmployeeID field in the Employees table. The DateFrom and DateTo fields indicated when then employee's leave time starts and ends. The Reason field indicates why the employee is on leave, for vacation or medical reasons for example. The ApproveDate field indicates when the leave was approved by the employee's manager.
Phases
This table lists all phases along with a description and charge out rate. Here are the field sizes and descriptions:
PhaseID - Text - 15 - unique
Description - Text - 25
Rate - Currency
Active - Boolean
The PhaseID field must be a unique ID for the phase. The Description field is a descriptive name for the phase. The Rate field indicates the rate at which this phase is charged. The active field indicates whether the phase can have time billed to it. If the active field is not set, this phase will not show up in any of the phase pull-down lists.
Projects
This table lists all projects along with a description, charge out rate and the client to which the project belongs. Here are the field sizes and descriptions:
ProjectID - Text - 15 - unique
Description - Text - 25
DivisionID - Text - 15
Rate - Currency
ClientID - Text - 15
Type - Text - 15
Active - Boolean
DepositHours - Integer
The ProjectID field must be a unique ID for the project. The Description field is a descriptive name for the project. The Rate field indicates the rate at which this project is charged. The ClientID field indicates which client, if any, the project belongs to. The ClientID field links to the ClientID field in the Clients table. The DivisionID field indicates which division, if any the project belongs to. The DivisionID field links to the DivisionID field in the Divisions table. The optional Type field can be used to categorize projects for reporting purposes etc. The active field indicates whether the project can have time billed to it. If the active field is not set, this project will not show up in any of the project pull-down lists. The deposit hours field indicates the number of hours this project has been paid for in advance. The deposit hours field would only be used by someone like a lawyer that is paid on retainer.
Tasks
This table lists all the different job codes and their description. Here are the field sizes and descriptions:
TaskID - Text - 15 - unique
Description - Text - 25
ProjectID - Text - 15
Rate - Currency
Active - Boolean
The TaskID field must be a unique ID for the task. The ProjectID field indicates which project, if any, the task belongs to. The ProjectID field links to the ProjectID field in the Projects table. The Description field is a descriptive name for the task. The Rate field indicates the rate at which this task is charged. The Active field indicates whether this task shows up in the task pull-down lists.
Users
This table lists the different users of the software along with the times they last opened and closed the software. Here are the field sizes and descriptions:
LoginID - text 30 - unique
LastIn - TimeStamp
LastOut - TimeStamp
The LoginID field must be a unique ID for the user.
Viewing SQL Queries
It is possible to view the results of simple SQL statements stored in external text files. SQL stands for Structured Query Language; it is a way to extract information from databases using English-like commands.
To create a new SQL file either create one using any text editor or choose File | New SQL File from the menu. Save the SQL file to a folder, usually the Timesheets Data folder. Remember to save with the .SQL extension.
To open a previously saved SQL file choose File | Open SQL File from the menu. A file select dialog will pop up allowing you to choose a SQL file. After selecting a file, you should see the results of the query in the data grid.
Here is an example of a simple SQL Select query:
Select EmployeeID, ProjectID, TaskID, Hours
From EmployeeTime
Where WorkDate Between DATE "2007-03-09" And DATE "2007-04-03" And ClientID = "CYBER"
Order By EmployeeID
This query shows all time charge records, sorted by EmployeeID for the client "CYBER" between March 09 and April 03.
Note that when using dates in SQL, you must use the ISO format (i.e. yyyy-mm-dd).
For more information on SQL, consult a good introductory database textbook. There is also some documentation on the supported SQL calls in the database engine manual. To read this manual choose Help | DB Engine Manual from the Data Manager menu.
Executing SQL Queries
It is possible to execute simple SQL statements stored in external text files. SQL stands for Structured Query Language; it is a way to manipulate information from databases using English-like commands.
To create a new SQL file, either create one using any text editor or choose File | New SQL File from the menu. Save the SQL file to a folder, usually the Project Clock Data folder. Remember to save with the .SQL extension.
To open a previously saved SQL, file choose File | Open SQL File from the menu. A file select dialog will pop up allowing you to choose a SQL file. After selecting a file, you should see the results of the query in the data grid.
Here is an example of a simple SQL Update query:
UPDATE EmployeeTime SET ProjectID='Test' WHERE ProjectID='STest'
This query will update all time records where the ProjectID is "STest". For these records, the ProjectID will be renamed to "Test".
For more information on SQL, consult a good introductory database textbook. There is also some documentation on the supported SQL calls in the database engine manual. To read this manual, choose Help | DB Engine Manual from the Data Manager menu.
Deleting records
To delete a record when in form view, navigate to the record and press the - button on the navigator bar.
To delete one or more records in the detail view, select the records to delete. To select multiple records, click on the first record then hold down the [Ctrl] Key and click to select individual records or hold down the [Shift] key to select a range of records. To delete the selected records either press the [Ctrl]+[D] key combination or choose File | Delete Selected Records from the menu. To delete all the records in the current table choose File | Delete All Records from the menu.
Inserting Records
To insert a record when in form view, press the + button on the navigator bar.
To insert a record in the detail view, click on the record above which you wish to insert a record. Then either press the [Ctrl]+[I] key combination or choose File | Insert Record from the menu.
Importing and Exporting Data in CSV Format
Importing Data
Timesheets can import data in the form of comma-separated CSV files. If you have existing data from another application, this data can be imported into Timesheets provided it is saved in the right format. CSV files used for importing must follow the exact same format as the table into which they will be imported. That is, if you look at a table in the detail view of the Data Manager you will notice the order of the fields in the table. This is the same order that your CSV file must be in. Most spreadsheet programs like Microsoft Excel allow you to easily load in CSV file and move columns around.
See the section Table Details for more details on field types and sizes.
To import a CSV file choose File | Import From CSV from the Data Manager menu. A wizard will guide you through importing the CSV file.
Note that when running the wizard, your import time format string must be exactly the same as what is in the CSV file. Most people leave in the .zzz in the import format string when their CSV data does not have microseconds. The import is not smart enough to determine what date/time formats you are using. You have to tell it. If the first row of your CSV file contains the field names, the field names in the header must exactly match the field names in the table you are importing into.
Exporting Data
Data can also be exported in CSV file format from Timesheets. This data can be imported into other applications that can handle CSV imports.
To export a CSV file first select the table to export from the Data Manager. Then choose File | Export To CSV from the menu. A file select dialog will allow you to select the CSV file to export.
Loading Data into Excel
To load a Timesheets data file into Excel 97 perform the following steps:
1. From the Timesheets main menu, choose View | Data Manager.
2. When the Data Manager form pops up, select the Detail tab and then select the desired radio button from the radio group that corresponds to the table you wish to export.
3. Select File | Export to CSV from the menu. You will be asked for a filename to export to.
4. Start Excel and choose File Open from the menu.
5. In the Files of Type pull down list, choose All Files (*.*).
6. In the Look In pull-down list, find the Timesheets program data directory (usually in C:\Program Files\Timesheets\Data).
7. Select the CSV file you just exported to and then click the Open button.
8. The Text Import Wizard should pop up. Make sure the Delimited button is darkened. Click the Next button.
9. In the next screen, check the comma check box in the Delimiters section. Click the Finish button.
The Timesheets data should now show up in an excel sheet.
Exporting Data into QuickBooks
Timesheet data can be exported to Intuit QuickBooks in two ways: using QBXML and IIS files.
Exporting using QBXML
If you have a newer