Punch Clock Help Contents

Getting Started

What is Punch Clock?

How do I use Punch Clock?

Setting user options

Punch Clock limitations

Registration and Distribution

Disclaimer

About Fountainhead Environmental

Procedures

Punching into and out of projects

Displaying project data

Adding, deleting, and editing project names

Adding, deleting, and editing project data

Saving changes to project data

Creating reports

Commands

Manage Projects

Create Reports

Sound

Always On Top

Save Position

Menus

File

Utilities

Options

Advanced Topics

Editing PUNCHCLK.INI

Custom versions of Punch Clock


What Is Punch Clock?

Many professionals still track hours by hand. While this is adequate, it is not the most efficient way of accomplishing this task. Our sense of how much time we spent completing a task and the actual amount of time it took do not always coincide. In addition, at the end of the month (or week, or whatever time period you use), you have to add everything together. Ugh!

Punch Clock automates this process by making it easy to punch into and out of projects as necessary and generating custom reports that total hours for each project by the day, week, month, quarter, year, or report period.

Punch Clock is like an electronic time sheet that tracks time spent on various projects or tasks. Not everyone needs to do this, but it is crucial to businesses, such as consulting and legal services, that are billed on an hourly basis. Other businesses that track hours for profitability analysis will also find it very useful.

The Punch Clock interface was designed with the user in mind. Most tasks can be completed with a single click of the mouse (although you may have to use three or four once in awhile). And because we hate bloated programs that chew up hard disk space and resources, we did everything we could to keep the code small, fast, and efficient. Why did we go through all this trouble to make the user happy? Because we have to use it too! You'd be amazed at how responsive programmers are when they're surrounded by users who are less than stone's throw away. (Ouch!)


How Do I Use Punch Clock?

Do you remember the punch clock that Fred Flintstone used to punch into every day when he arrived to work? He'd put his stone time card into the clock and a bird would peck the time into it? Well, that's basically how Punch Clock works, only it's a little more sophisticated.

When you first start Punch Clock, it comes up with a single project called "Sample Project." To start recording time for this project, click on the button next to it. To stop recording time, click on it again. Whenever this button (or any of the others next to projects that you add) is depressed, Punch Clock is tracking time for that project, Keep in mind that Punch Clock tracks by the minute, not the second (although some of our engineers had a hard time parting with that kind of precision), so it doesn't record any time until your computer's clock has changed minutes.

Setting up your projects

The first thing you'll want to do is set up your own projects. Hit the Manage Projects button. Now click on Sample Project and then click the Edit button. Type in your first project name and click OK. You've just edited Sample Project and changed it to your first project. If you want to add additional projects, click on the Add Project button and type in another project name.

When you're all finished, hit OK to save your changes and return to the main screen.

Punching into and out of projects

To punch into or out of a project just click the button next to it. Or if you want to punch out of one project and directly into another, just click the button next to the project you want to punch into.

Displaying project data

Punch Clock can display current project data for any of your projects, even if you're punched into a different project. Just click on the project name and it's data will be displayed. If you're punched into another project, Punch Clock will continue recording time for that project.

Reducing Punch Clock's size

After you have everything set up and running, you may want to reduce the amount of screen real estate Punch Clock takes. This can be accomplished by clicking the Restore button (i.e., the one on the far right side of the title bar with a couple of arrows on it). This will shrink Punch Clock to a Reduced view. To switch back to Full view, hit the Maximize button (i.e., the one on the far right side of the title bar with an up arrow on it).

In the Reduced view, you get a single button with the current project's name on it. You can punch into or out of the project by clicking this button. If you want to switch projects, select the project you want to punch into from the File menu.

One last note: Punch Clock must be running to record time. For those of you who want to be able to close it and still have it magically record time, we apologize. We're good, but not that good.

This should be enough to get you started. For more detailed information on specific commands and procedures, check the Table of Contents or search the help file.


Setting User Options

Punch Clock provides three basic user options under the Options Menu:

Sound

When this option is checked, Punch Clock will play a *.wav file whenever you punch into or out of a project. The default for this option is off.

Always On Top

This option is only available when Punch Clock is in the Reduced view. When checked, Punch Clock will stay on top of all other windows you have open. (Gee, that makes sense!)

Save Position

The default position for Punch Clock is the upper left corner of the screen, but we know that you have your own preferences about where you want it. That's where this option comes in handy. When you select in Punch Clock records its location.


Punch Clock Limitations

As wonderful as Punch Clock is, it does have some limitations. In order to use it effectively, we recommend that you determine which limitations may cause problems for you and avoid them. These limitations include:

•	You must have between 1 and 20 projects. If you try to delete all projects or add more than 20, Punch Clock will let you know that it doesn't like what you're doing and then ignore your request.

•	Project names are limited to 50 characters. The full name will show up in any reports, but due to screen limitations, the name may be truncated on the Punch Clock interface.

•	You can only punch into one project at a time. While this makes it more difficult to rack up billable hours, it does keep you honest.

•	Punch Clock will not record punch entries less than one minute or more than 24 hours. (If you stay punched in for more than 24 hours without a break, you need to seriously evaluate your relationship to your job!) Note, however, Punch Clock rounds down to the current minute. Thus, if you punch into a project at 9:28:59 and punch out at 9:29:00, it will record an entry.

•	Punch Clock can handle approximately 6517 punch entries. If you have more than this, you will not be able to edit the entries through the Manage Projects dialog.

•	You cannot manage projects if you are punched into a project.

•	The report view/edit mode is limited to reports less than 32,767 characters in length.

If any of these limitations are a major problem, Fountainhead Environmental may be able to develop a custom version of Punch Clock to suit your needs. While there would be a software development fee associated with this process, we will recycle as much code as possible to keep this cost reasonable.


Registration
Registration and Distribution

Registration

Punch Clock is NOT Freeware. Rather, this program is distributed as shareware. This simply means that you are allowed to try the program for a reasonable trial period before purchasing it. In the case of Punch Clock, the allowed trial period is 30 days. This should provide you sufficient time use all aspects of the software, including the reporting capabilities. At the end of this period, you are required by law to either register the software or remove it from your computer.

You must register each copy of Punch Clock that you may have in use simultaneously. If you are unsure what this means, think of each copy of Punch Clock as a book that can only be read by one person at a time. You must register each copy of the "book" you require. Site licenses are available for sites with five or more copies in use. You can register your copy of Punch Clock by typing GO SWREG (#6552) on CompuServe or by sending a check or money order for $20.00 US per copy (non-US residents add $5.00 US for shipping and handling) to the following address (include your name, company, address, and phone number):

Fountainhead Environmental

720 Birch Street

Denver, Colorado 80220-4954

303-393-0787

303-377-5773 (fax)

webere@ix.netcom.com

Upon registration, you will receive a Tech Support ID number, free tech support for one year, a registered version of the latest copy of the program, and the warmth of knowing that our engineers may get some extra treats thrown into their cages besides the normal newspaper and lettuce.

IF, FOR SOME REASON, YOU ARE UNABLE TO USE THE PROGRAM ON YOUR SYSTEM WITHIN SIX MONTHS AFTER REGISTRATION, WE WILL REFUND YOUR REGISTRATION FEE. We'd rather keep you as a potential customer, than burn you.

NOTE: EXCEPT FOR UNUSUAL CIRCUMSTANCES, TECH SUPPORT REQUESTS WILL NOT BE PROCESSED WITHOUT A TECH SUPPORT ID NUMBER.

Distribution

You are allowed to freely copy the unregistered version of this program so that other users may try it out as long as you copy it in its entirety. Any such copy of this program MUST include the following files:

PUNCHCLK.EXE

PUNCHCLK.HLP

PUNCHCLK.WAV

STDREPPD.DAT

COMMDLG.DLL

CMDIALOG.VBX

MSGHOOK.VBX

MSOUTLINE.VBX

SPIN.VBX

THREED.VBX

READ1ST.TXT

Failure to include all files is a violation of the distribution terms and a violation of U.S. and international copyright laws.


Disclaimer

You are granted the right to use and to make an unlimited number of copies of the unregistered SHAREWARE version of this software in compliance with the registration and distribution terms. You may not disassemble, decompose, reverse engineer, or alter any of the files in the package. This includes, but is not limited to modifying any icons, menus, or displays associated with the software.

This software is provided as SHAREWARE and cannot be sold. This restriction does not apply to connect time charges, or flat rate connection/download fees for electronic bulletin board services. This software cannot be bundled with any commercial package or distributed by itself or accompanying books or magazines without express written permission from Fountainhead Environmental.

Fountainhead Environmental accepts no responsibility for any damages resulting from the use of this product and makes no warranty or representation, either express or implied, including but not limited to, any implied warranty of merchantability or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume all risks when using it.


About Fountainhead Environmental

Fountainhead Environmental is a consulting firm specializing in environmental regulatory analysis services, products, and tools, including software. The company's main focus is on hazardous waste management and air pollution control regulations. As a direct result of the its environmental work, the company has developed expertise in technical writing, desktop publishing, computer programming, and computer software/hardware configuration.

Founded in 1991, Fountainhead Environmental is committed to excellence in every product it releases. While many organizations claim this same commitment, we take it seriously.

Fountainhead Environmental

720 Birch Street

Denver, Colorado 80220-4954

303-393-0787

303-377-5773 (fax)

webere@ix.netcom.com


Punching into and out of Projects

There are two ways to punch into and out of projects. First, you can just  click the button next to the project name. If you want to punch out of one project and directly into another, just click the button next to the project you want to punch into. Alternatively, you can use the File menu. All project names are listed on this menu. If you are punched into a project, a check mark appears next to that project's name.

In the Reduced view, a single button with the current project's name on it is shown. You can punch into and out of this project by clicking the button. If you want to switch project's use the File menu to switch projects. This will punch into the project you select and activate the Reduced view button for that project.


Displaying Project Data

Punch Clock displays various totals for projects in the Project Data portion of the interface. In order to view data for a different project, click on that project's name (not the button). The name will indent and the project's data will be displayed.

Note that Punch Clock can display current project data for any of your projects, even if you're punched into a different project. Just click on the project name and it's data will be displayed. If you're punched into another project, Punch Clock will continue recording time for that project.

One final note, Project Data is only displayed in the Full view.


Adding, Deleting, and Editing Project Names

Project names can be added, edited, and deleted through the Manage Projects dialog. Note that this dialog is only available in the Full view.

Click the Manage Projects button, or select it from the Utilities menu. Note that you must punch out of all projects before you can manage projects.

To add a project name, click the Add Project button.

To edit a project name, select the project name and click the Edit button.

To delete a project select the project name and click the Delete button. Alternatively, you can select the project and hit the Delete key. Note that deleting a project, deletes all of its data.

You can also Cut (Ctrl-X) or Copy (Ctrl-C) the project name to the clipboard, but the project name cannot be pasted back into the Manage Projects outline.


Adding, Deleting, and Editing Project Data

Project data (also known as punch entries) can be added, edited, and deleted through the Manage Projects dialog. Note that this dialog is only available in the Full view.

Click the Manage Projects button, or select it from the Utilities menu. Note that you must punch out of all projects before you can manage projects.

To add project data, click the Add Data button.

To edit a project data, either double click the project data or select the project data and click the Edit button.

To delete project data, select the project data and click the Delete button. Alternatively, you can select the project and hit the Delete key. Note that deleting a project, deletes all of its data.

You can also Cut (Ctrl-X) or Copy (Ctrl-C) the project data to the clipboard. you can then Paste (Ctrl-V) the data into a project by selecting the project name, or any project data entry under it. As a safety precaution, pasting project data over other project data will add the new data, but will not overwrite the old data.


Saving Changes to Project Data

You can save changes you have made to your project names and data in the Manage Projects dialog in two ways:

•	Clicking the Save Changes button will save all current changes and allow you to continue editing.

•	Clicking the OK button will also save all current changes, but closes the Manage Projects dialog.

Clicking the Cancel button will close the Manage Projects dialog and discard all current changes. Note that once a set of changes has been saved with either the Save Changes or OK button, it cannot be undone.


Creating Reports

Reports are created through the Create Reports dialog by following these steps:

1.	Select the projects you want to include in the report.

2.	Set the report period. Standard report periods can be selected from a list box.

3.	Select the report detail options.

4.	Select whether you want the report to sort by date or by project.

5.	If you want to View or edit the report, click the View/Edit button.

6.	If you want to Save the report to a text file, click the Save button.

7.	If you want to Print the report, click the Print button. [Note: Print Setup and Print
Margins commands are provided to allow you to customize your printer options.]

8.	When you are finished creating reports, select OK to save your current options,
select Cancel to discard them.


Manage Projects Dialog

The Manage Projects dialog works on an outline paradigm, much like the Windows File Manager. When first called, it displays a list of projects. If you double click on one of the project names, the list will expand to show all the punch entries for that project or collapse to the project name, depending on its current state. Double clicking on a project name with no punch entries has no effect.

From the Manage Projects dialog, you can perform several tasks:

Adding, deleting, and editing project names

Adding, deleting, and editing project data

Saving changes to project data


Create Reports Dialog

The Create Reports dialog allows you to customize your report output. It has four groups of settings:

Select projects

You can select or deselect a project by single clicking on it. You can also use the Select All or Select None buttons to do just that. Punch Clock automatically selects all projects when the Create Reports dialog is opened.

Report period

This group of controls allows you to select the report period. A list box of standard report periods is also provided to make this process easier.

Report detail

The options in this control group are used to determine whether punch entries are shown in the report and how the report should be totaled.

Sort by

This control group allows you to select whether the report should be sorted by project or by date.

In addition to these settings, the Create Reports dialog has buttons that allow you to setup your printer and printer margins. The Print Setup dialog is standard Windows, and the print margins control group appears on the bottom of the Create Reports dialog when the button is clicked.

Once you have selected your options, you can view or edit the report, save the report to a text file, or print the report using the buttons in the top right corner of the dialog.

When you are finished with the dialog, you can save your current options (except the selected projects and nonstandard report periods) by clicking OK. To discard your options, click Cancel.


Sound

When this option is checked, Punch Clock will play a *.wav file whenever you punch into or out of a project. The default for this option is off. In order for this option to work you must have a sound card and appropriate drivers installed on your system. This option will play sounds through your PC Speaker, if you have installed Microsoft's driver for the PC speaker.

Punch Clock comes with its own distinctive punchclk.wav sound, but you can have it play a different sound if you really want. All you have to do is edit the PUNCHCLK.INI file (in your Punch Clock directory). Look under [Options] for the entry that reads "PunchSound=punchclk.wav" and edit the WAV filename, or if this entry does not exist, add it. [Note: if your WAV file is not located in the Punch Clock directory, be sure to include the full pathname for the file (e.g., C:\MYSTUFF\WAVS\MYFILE.WAV).]


Always On Top

This option is only available when Punch Clock is in the Reduced view. When checked, Punch Clock will stay on top of all other windows you have open. (Gee, that makes sense!)


Save Position

The default position for Punch Clock is the upper left corner of the screen, but we know that you have your own preferences about where you want it. That's where this option comes in handy.

This option is really more of a command than an option, but it's a pretty slick little hummer. When you choose this option, Punch Clock remembers where it's located on your screen and stores this in PUNCHCLK.INI. The command works independently in both the Full view and the Reduced view, so you can save the position for each.

Here's a little tip to use this option more effectively. Punch Clock will automatically adjust itself so it is within your screen. So, if you want Punch Clock right at the edge of your screen, drag the window so that it is just past the edge of the screen and select Options|Save Position. Punch Clock will automatically align its edge with the edge of the screen and save that position.


File Menu

Projects

Print Setup

Exit


Projects

Punch Clock displays a list of projects in the File menu. Clicking on a project punches into or out of the project. If you are punched into a project, a check mark appears next to that project's name.

This feature is most useful in the Reduced view, where it allows you to switch projects


Print Setup

This menu command brings up the standard Windows Print Setup dialog.


Exit

If you can't figure out what this menu command does, you've got a steep learning curve ahead of you! (OK, we'll tell you: it exits the program!) One item that should be noted is that if you are punched into a program when you exit Punch Clock, Punch Clock will automatically punch out of the project at that time.


Utilities Menu

Manage Projects

Create Reports


Options Menu

Sound

Always On Top

Save Position


Editing PUNCHCLK.INI

The following list describes the various PUNCHCLK.INI settings. Note that PUNCHCLK.INI is located in your Punch Clock directory to avoid clutter in your WINDOWS directory.

[Options] Section

PunchSound=filename	Sets the name of the *.WAV file that Punch Clock plays when

punching into or out of a project. Default is PUNCHCLK.WAV.

Sound=integer	Turns Sound option on (-1) or off (0). Default is 0.

MaxTop=integer 	Sets the top edge of Punch Clock in pixels for Full view.

Default is 0.

MaxLeft=integer	Sets the left edge of Punch Clock in pixels for Full view.

Default is 0.

MinTop=integer 	Sets the top edge of Punch Clock in pixels for Reduced view.

Default is 0.

MinLeft=integer 	Sets the left edge of Punch Clock in pixels for Reduced view.

Default is 0.

AlwaysOnTop=integer	Turns the Always On Top option on (-1) or off (0) for Reduced

view. Default is 0.

[Projects] Section

CurProject=integer	Sets the project number (1 to 20) that will be displayed when

Punch Clock starts up. Default is 1

[Printer] Section

TopMargin=integer	Sets the top margin in 1/100ths of an inch for printing reports

Default is 0.

BottomMargin=integer	Sets the bottom margin in 1/100ths of an inch for printing reports

Default is 0.

LeftMargin=integer	Sets the left margin in 1/100ths of an inch for printing reports

Default is 0.

RightMargin=integer	Sets the right margin in 1/100ths of an inch for printing reports

Default is 0.

[Reports] Section

DefaultReportPeriod=integer	Sets the default standard report period used when the Create

Reports dialog is called. Valid values are 1 to 11, corresponding

to the Report Period list box. Default is 8.

PunchTimes=integer	Determines whether Punch In/Out Times option is selected (-1)

or not selected (0). Default is -1.

DailyTotal=integer	Determines whether Daily Totals option is selected (-1) or not

selected (0). Default is 0.

WeeklyTotal=integer	Determines whether Weekly Totals option is selected (-1) or not

selected (0). Default is 0.

MonthlyTotal=integer	Determines whether Monthly Totals option is selected (-1) or not

selected (0). Default is 0.

QuarterlyTotal=integer	Determines whether Quarterly Totals option is selected (-1) or

not selected (0). Default is 0.

YearlyTotal=integer	Determines whether Yearly Totals option is selected (-1) or not

selected (0). Default is 0.

ReportPeriodTotal=integer	Determines whether Report Period Totals option is selected (-1)

or not selected (0). Default is -1.

SortBy=integer	Determines whether report is sorted by Project (1) or Date (2).

Default is 1.


Custom Versions of Punch Clock

If you desire a custom version of Punch Clock, Fountainhead Environmental can develop one for you. This might be necessary if any of the program limitations are a major problem or if you need additional features that go beyond the normal bounds of the program. While there would be a software development fee associated with this process, we will recycle as much code as possible to keep this cost reasonable.

Fountainhead Environmental

720 Birch Street

Denver, Colorado 80220-4954

303-393-0787

303-377-5773 (fax)

webere@ix.netcom.com


Reduced View

Punch Clock's Reduced view shows a single project button, the file menu and the Help menu. This view takes up very little screen space while supporting Punch Clock's basic functions.


Full View

Punch Clock's Full view shows all project buttons and menus. This view supports all of Punch Clocks functions.


Punch Entry

A punch entry consists of a punch-in date, punch-in time, and punch-out time.