Web Results Manager for Team Manager - 2004 Matric Project

Examples of the meets generated from this program can be found here:

http://www.swimdynamics.co.za/old_websites/meets/2003-2004.htm

A modified version output still use can also be found here at:

http://wp.rsa.swimdynamics.co.za/perfanal_v2/main/meets/index.php?db=league&ss=2010

This document is a raw copy of the help file/project report..

Contents

BY

W I P

Introduction

This program provides you with a basic manner in which for you to connect to your TMII (Team Manager 2)

database, through a graphic user interface to compile meet results of swimming galas into a highly

sophisticated HTML document, which would be easy to use and upload to the Web.

My main objectives at the start of the development of this program was that I needed to provide HTML

documents with high efficiency without the use of an active scripting server to generate these documents.

I had to meet the requirements of being able to have a high compression ratio as well as providing basic

filtering functionalities.

This project was developed when I was faced with the need to place meet results on the web and was not

provided with an easy manner of doing this on a continuous basis. The reason for this was that the program

“Meet Manager” did not provide for a highly efficient set of results in HTML documents. Apart from this

they were unable to compile more than one meet at a time into HTML and were of a poor functionality,

as they used improper methods of formatting (to be discussed later).

I believe that this will be the way of the future in which results and various other types’ of documents are

designed. Because of the fact that database are becoming ever so more complicated, and requiring too

many high performance Server’s. Example ‘ebucks.com’ banking, when one wants to print a report of a

current page it requires the database when it could be done one the clients side.

Background to Project

There have mainly been two versions of this program.

The 1st version featured a relatively good compression ratio of about 230KB for 3500 individual results.

It provided basic filter functionality but the more intense (complicated) your filter got the longer it took to

process. This version did not feature any graphic user interface at that point.

The latest release version 2 received a much needed optimization in both code as well as compression,

both of these were achieved. The compression ratio has drastically increased to what it is now,96KB for

the same set of 3 500 meet results. Code optimization has also made an extreme impact on filter functions

as they now filter twice as fast as before and no matter how complex your filter is it will never take

longer than it took for the initial display processing.

The new version features the following improvements and advances:

HTML Web Results

· One can select any combination of filter options.

· A new filter has been introduced so that you may now filter by sessions.

· When filtering via a club or age and including the specified amount of swimmers to display

before and after matches to age or/and club, it now highlights those results which now match club

and age to be seen amongst the others, making it easier for your club and age amongst the rest.

· One is now able to click on the surname of the swimmer, which will trigger a pop up window in

which it will list only that swimmer’s results and then click on any one of those event numbers in the

window it will go to the location of the swimmer’s results in and amongst everyone else’s.

The Manager, Website Compiler

This program provides one with an easy to use graphic user interface consisting of two main parts being

the ODBC driver connection window setup and the compiling window which will compile all the selected

meets into a specified output directory using either the default index template (to be discussed later) or

a selected template of the users preference.

How this project works

This project makes use of two main java programs, one which is java script (the manager/compiler) and

the other which makes use of HTML text/java script (the web page).

The Manager/Compiler access the TM2 Database using query’s to retrieves the information and compile

it in to HTML JavaScript, it is then upload to the web.

When one downloads the HTML results page it will request another file which contains all, of the filter

functions java script which is common for all meets for processing the results. The reason for this is

that, one can change the layout, and introduce new functions and they will work with all previous compiled

meets. Once this was done it was on to how I was going to store this information in HTML java script

with a high compression ratio. I determined that the best way for me to do this was to create a miniature

relational database using arrays for its structure. As seen above in picture, but using arrays with

selected information from the database only.

Problems that arose

TMII’s data base is consistent for 70% of all the data, but for unknown reasons will feature invalid entries

which would have no relationships which match, making all results appear wrong. A solution was found

to this problem by eradicating invalid entries. This then gave me a very good result! So far I have

achieved a success rate of 95% and increasing, the more meets I compile.

One of the latest features in problems is that Norton firewall which likes to add script of its own to ones

HTML documents once they have been downloaded from the internet on the clients side. When using

HTML documents one is limited to only two JavaScript tags in the header; (initial execution) one pulls

in my common template, the other stores my meet results for the current meet. By Norton Firewall

controlling the document it inserts its script above mine, which causes there to be three tags. So

Norton’s script executes and my template does, but not my other script tag which is three.

At this point there has been no solution found, as I have been unable to contact Norton Developers to

ask for help as to how to stop Norton Firewall inserting script of its own into my documents causing

them to mess up.( does not execute)

Output Produced – Html page Results

Limitations

This project as of yet I have not found any limitations to the compiler. Though, on the other hand there

is a slight problem with the web client, if his machine is really…slow (+-600)MHz low amounts of free

memory 30mb), when he has downloaded a rather large meet, say 3500 results. Internet Explorer may

tend to crash. One needs Internet Explorer/Netscape 4.0 and later or compatible java enabled browser

. Program only open results form manager if one has internet explorer, else go to the compile directory

(output dir) and open the index.htm file manually.

Input Requirements

· One is required to supply a TMII database, so that the program may retrieve the results out of this database.

Files required and File layout

Removed

Equipment required

A recommended personal computer with +/- 800 MHz with a 128mb of memory – average disk

space of 1.5Mb. Mouse key, Board, CD Rom

Software required

Ready to program version 1.72 or Java version 1.4 to view the meet results as they would appear

on the web, Internet Explorer or Netscape versions 4+ with Java scripting enabled. My program

can only open HTML documents with internet explorer if it is installed to the default directory.

Error recovery procedures

· In the event of the programme crashing during running, please make sure that all of

its processors have closed before trying to open the programme once again.

· Other than this there should not be any other errors that should occur that have not

been compensated for by informing the user on what to do.

Future developments

Generally there would be no future developments for the Manager programme other than bug fixes

if any are discovered. While on the other hand the web based I would like to make feature a print

function that will allow the user to print in columns, saving paper - more economical. The other

will be to allow the user to select between two different profiles being:

· By event as currently done.

· By athlete in which the results will be grouped together by

athlete and sorted by club, then by athlete and then under each

athletes name will appear his/her results that he swam through-

out the gala. Similar to the pop-up window when one clicks on

an athletes surname.

Unusual functions used

None that I would think of to my knowledge. Most functions will appear to be self-explanatory of

ask the developer if you are still “confussed”.

Relationships between modules and programmes

All the methods that appear in the WebResults.java are required to run in a specified order as

information that is retrieved from one method is required to be used in the next.

The Manager.java file features the graphic user interface for the program. It makes use of the

WebResults.java program by creating an instance of it and then executing its top method

Meets to achieve the required output.

Installation

Please copy the ‘Web Results V2.0’ folder of the distribution medium to a fast medium which

has write access (can write to the disk). Please ensure that none of the files in the Web Results V2.0

folder where you copied it to have ‘read only’ selected (see Windows Help on Read only).

Please install Ready to program v1.7.1 which is found on the root directory of the Medium.

Once installed Open Ready to program then select file menu>open and go to the ‘Web Results V2.0’

which is located where you copied it to and in that folder select the file ‘Manager.java’ and

click open once it is open click the run button or press ‘F1’ the program will now Execute(Run).

Program Test procedure /Using Program

Run the manager program (Manager.java) if you are not prompted to setup the database select the

managers menu then ODBC Manager on it. Then click. A window will open, then click on the

‘ODBC Manager’ Button you will see this on your screen >>>>>>>

Then Click add select the Microsoft access Driver and click finish. \/ \/ \/ \/ \/

Type a Data Source name: i.e Swim Click select and go and select the TM2 database for exampl

e select the ‘WPA 2003-2004.mdb’ found in the folder Test Data in the Web Results V2.0 Then

Click OK. 5 meets may have error's

Please make sure that the name you type in as the Data Source name is the same name

in the Swim Results field (Case sensitive, red arrow)

The click connect you will be prompted for a user name enter nothing (no password needed

if you entered something you will still be authenticated connect just fine (no password).Window will connect and close.

Then select the Manager menu and then process. The following window will open

Template: This is a pre-designed Html which will be used as a template to place a list of

meets in. The advantage of this is that you can design a page and were you want the results to be place

type the following in you document, ‘<--WebResults-->’ (Case Sensitive) There is a another template

in the ‘Test Data’ Folder which can we used.

Publish Dir: This is the directory in which the compiled meets Results will be placed.

Published Meets: With every compile there is a file that is created in the output directory

in which contains the meets that were compiled. Open a file like this will cause the program

to not recompile those meets, but one is ask on compile if he would like them to be added to

the index file (meet list). Very Help full when hosting one the net to keep an update list of meets.

Warnings don’t try use an in valid Published meets file! Many results in un-wanted problems and output.

From: Is from how many days ago till now you would like to retrieve results out of the database, 0 is all results

Customize You can customize all the files in the ‘HTML Customize’ folder and add to it they will always be copied

into the Output dir on compile. It is suggested thought that you all ways keep the ‘Compiled Meets’ link in the left

hand plain so that the person can go back to the list of meets.

Once you are satisfied with all the settings (the default ones should work just fine) click Compile.

Once it has compiled you can view your results in the ‘Output dir’. Click stop at any time to stop compiling.

(': Happy Compiling :')

Conclusions

For a further and better scope for what this programme is used for, please visit:

www.strandaquatics.za.net which was developed by me (WIP). Then to ‘Meet Results’ to view the section which my program creates.

Reference and acknowledgements

· Wesley Oliver

· Strand Aquatics for supplying me with the TMII database

Screen Shots