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